2017-06-21 99 views
0

我有一个bash脚本来备份数据库并将其发送到另一台服务器上,在ssh(root)上运行该脚本时它正确地发送文件,但是当使用cPanel cron时,出现此错误:lftp在cPanel cron上失败

CD:致命错误:伪终端分配失败:没有这样的文件或目录

放:致命错误:伪终端分配失败:没有这样的文件或目录

它看起来像在lftp上更改为上传失败文件夹

克朗

/bin/sh /home/test/backup/script.sh >> /home/test/backup/log.txt 2>&1 

猛砸

/bin/lftp sftp://user:[email protected]:22/uploads -e "put $FILE2; bye" 
+0

如何通过SFTP登录?使用ssh密钥或密码? –

回答

0

我想你的问题是:您正在使用SSH密钥通过SFTP登录(否则每次尝试sftp你通常会被要求输入一个密码,并且会搅乱cron)。可能你有ssh密钥保存在root用户下,但是当你执行cron时,它会作为一个cpanel用户执行(除非你直接在root crontab中执行)。如果作为cPanel用户执行,并且该用户没有ssh密钥,则cron会挂起询问sftp密码。请确保以root身份使用SFTP的ssh私钥也被添加到执行cron的cPanel用户帐户中。它应该工作然后