Получение сценария для запуска при загрузке, а не при входе в систему

10

Как я могу получить конкретный скрипт для запуска (желательно не как суперпользователь) всякий раз, когда машина загружается, но до входа в систему. Это может быть последнее, что нужно запустить при загрузке. В основном я просто хочу, чтобы скрипт работал, даже если пользователь не входит в систему.

    
задан Malabarba 27.10.2010 в 18:51
источник

2 ответа

8

Я бы рекомендовал использовать cron . Специальное значение времени @reboot вызовет вашу работу при каждой перезагрузке в качестве пользователя. Например, запустите crontab -e и используйте:

@reboot /home/yourself/bin/some_script_to_run

Подробнее о специальных форматах времени см. в разделе man 5 crontab

    
ответ дан Kees Cook 27.10.2010 в 23:14
источник
4

Одна из возможностей - использовать Upstart. Это позволяет указать, когда вы хотите запустить свой скрипт с точки зрения зависимостей, например. «Когда монтируются файловые системы и запущен и запущен сетевой интерфейс eth0 ». Создайте файл /etc/init/bruce_script.conf (вам нужно создать файл как root), содержащий что-то вроде этого:

description "Bruce's boot script"
start on filesystem and net-device-up IFACE=eth0
task
exec su -c '/home/bruce/script' bruce

Дополнительную информацию см. в документации upstart , в частности, init(5) manual для списка того, что вы можете поместить в этот файл конфигурации.

    
ответ дан Gilles 27.10.2010 в 22:57