我使用 PuTTY 会话将夜间备份复制到另一个位置。我以用户身份登录root
,并将目录更改为/store/BackupLocation
保存最近 100 天的备份。然后我可以运行:
bash /bin/ScriptThatCopiesBackup.sh
该脚本将我的备份复制/store/BackupLocation
到另一个目录/store/BackupArchive
这一切都很完美,但我似乎无法安排这个脚本在 crontab 中自动运行。相反,我每天都会收到以下权限错误:
/bin/bash: /bin/ScriptThatCopiesBackup.sh :Permission denied
我的问题是,为什么我会收到此错误消息,即使一切都是由 root 完成的?我能做些什么来解决这个问题?
以下是我的脚本的权限:
-rw-r--r-- 1 root root 213 June 19 2013 ScriptThatCopiesBackup.sh
这是我的 crontab 设置:
30 16 * * * /bin/ScriptThatCopiesBackup.sh
答案1
问题是您的脚本未设置为可执行。 chmod u+x /bin/ScriptThatCopiesBackup.sh
将使脚本可由其所有者运行(在本例中为root
)。
答案2
您的问题可能是您编辑了错误的crontab
文件。 (即使你说你正在做所有事情root
)。尝试crontab
使用 编辑文件crontab -u root
。
您的脚本也可能无法执行。chmod +x /path/to/yourscript.sh
应该使其可执行。