Например, мне нужно, чтобы при запуске выполнялся следующий сценарий
service httpd start
service mysqld start
service sshd start
service pure-ftpd start
/usr/local/bin/noip2 start
Я НЕ хочу создавать псевдонимы в папке init.d для каждой программы. Скорее, могу ли я сделать один текстовый файл, чтобы все они вызывались. Это было бы намного проще. Спасибо!
Для запуска служб te не нужен сценарий. В дистрибутивах на основе RedHat (которые, похоже, вы используете) выполните следующее:
chkconfig servicename on
Автоматически создаст символические ссылки для запуска для соответствующих уровней выполнения (в данном случае (от 3 до 5). В дистрибутивах на основе debian вы бы сделали
update-rc.d servicename defaults
Сделать то же самое. Фактически, вы также можете изменить порядок своих стартовых приоритетов с помощью этого инструмента:
update-rc.d servicename defaults 91
С выскочкой (это то, что использует текущая версия Ubuntu и к чему переходит Red Hat), вы даже можете добавить зависимости, чтобы один процесс запускался только после того, как определенная служба будет запущена. Больше информации здесь:
http://upstart.ubuntu.com/
В любом случае, если вы не хотите использовать любой из этих механизмов, вы всегда можете использовать /etc/rc.local для запуска ваших скриптов. Если нет очень веской причины, просто работайте с инструментами, которые уже предоставлены вашим дистрибутивом - это, скорее всего, лучше, чем то, что вы можете придумать.
Создайте сценарий с вашими командами, а затем добавьте задание cron с @reboot следующим образом:
crontab -e
@reboot / путь / к / скрипту
Вы можете добавить эти строки в /etc/rc.local
. Обратите внимание, что он запускается как «root».
Вы можете просто поместить один скрипт с каждой из этих команд в папку init.d. Я сделал то же самое, и это сработало потрясающе.
Помечено для перехода к ошибке сервера.
Создайте сценарий bash, содержащий эти команды, и поместите его в каталог /etc/init.d/.
Допустим, вы назвали это FOO. Затем вы бежите
% update-rc.d FOO defaults
Вы также должны сделать файл, который вы создали, FOO, исполняемым, используя
$chmod +x FOO
http://embraceubuntu.com/2005/09/07/adding-a-startup-script-to-be-run-at-bootup/