为什么我的脚本不能通过 crontab 运行?

为什么我的脚本不能通过 crontab 运行?

我有这个 Teamspeak 服务器,它有时会崩溃。因此,我想每 5 分钟运行一次脚本,这样即使我不在家,服务器也可以重新启动。我得到了这个脚本,它是可执行的(chmod +x),但它似乎没有运行,我添加了一些回显来确认它是否运行以及它是否失败或成功,但我没有得到任何响应,我也无法从日志中获取任何信息。(/var/log/cron)

#!/bin/sh

VALID_CHECK="Server seems to have died"
RESULT=`/home/zuusu/teamspeak3-server_linux-x86/ts3server_startscript.sh status`
TEST_CHECK="Server is running"


/bin/echo "Initiating Server Check"

if [ "$RESULT" == "$TEST_CHECK" ]; then
/home/zuusu/teamspeak3-server_linux-x86/ts3server_startscript.sh status
/bin/echo "Server Restarted"
else
/bin/echo "Server Check Done"
fi

以下是 crontab 中的一行:

*/5 * * * * /home/zuusu/teamspeak3-server_linux-x86/server_check.sh

我使用 readlink 来获取完整路径。

[root@forum teamspeak3-server_linux-x86]# readlink -f server_check.sh
/home/zuusu/teamspeak3-server_linux-x86/server_check.sh

您可能注意到,我对 Linux 还很陌生,但我有一些编程经验。

你们觉得这个看起来还好吗?为什么它不起作用?

答案1

我认为如果你crontab -e以 ...身份运行zuusu并在其中添加你的 cron 作业行它应该可以工作。

相关内容