在 VPS 启动时运行脚本

在 VPS 启动时运行脚本

我有一台 VPS,我想在 VPS 启动时执行一个脚本。该脚本位于/home/user_name/unicorn_start.sh以下内容:

#!/bin/bash
exec /etc/init.d/unicorn_appname start

以root身份,我授予了该脚本权限,因此它可以执行:chmod +x unicorn_start.sh

然后,在/etc/rc.local

#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.
/home/user_name/unicorn_start.sh || exit 1

exit 0

但是我重启服务器后,脚本似乎没有执行。

另外,我尝试将其添加到crontab,方法是crongtab -e

@reboot /home/user_name/unicorn_start.sh

但这也没有帮助。

我做错了什么?任何帮助都将不胜感激。谢谢。

答案1

所以@Alex,你在这里做错了很多事情……你说你给了脚本可执行的“权限”,但实际上这意味着你让脚本可执行。你可以通过执行找到文件的实际权限,stat --format "%a" file_name但你是对的,你需要脚本可执行才能运行。无论如何,当你stat --format "%a" file_name在文件上运行这个时,权限是什么755?。如果没有执行chmod 755 file_name,这应该可以解决问题(如果你仍在使用 crontab)。

相关内容