У меня есть VPS, и я хочу выполниться, сценарий на VPS запускается. Сценарий расположен в /home/user_name/unicorn_start.sh
со следующим содержанием:
#!/bin/bash
exec /etc/init.d/unicorn_appname start
Как корень, я дал разрешение сценарию, таким образом, это может быть выполнено: 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
Но это не помогло также.
Что я делаю неправильно? Любая справка будет цениться.Спасибо.
Так @Alex, Вы делаете хороший бит неправильно здесь... Вы сказали предоставление "разрешения" сценарию, чтобы быть исполняемым файлом в действительности, который означает, при создании исполняемого файла сценария. Можно найти фактические полномочия файла путем выполнения stat --format "%a" file_name
но Вы были правы, Вам нужен сценарий, чтобы быть исполняемым файлом для выполнения. Так или иначе, когда Вы работали stat --format "%a" file_name
это на Вашем файле, были полномочия 755
?. Если они не были, работают chmod 755 file_name
, это должно устранить проблему (при тихом использовании crontab).