Назад | Перейти на главную страницу

Как выключить Ubuntu автоматически через X минут после запуска?

Как можно автоматически выключить ОС Ubuntu через 30 минут после включения? Или через 15 минут после включения? И т.д?

Я пробовал создать сценарий init.d вот так:

shutdown -h +5

Но мой бокс не выключается через 5 минут.

Вы могли бы использовать cron и флаг @reboot чтобы запланировать выключение, если вы добавите это в корневой crontab:
@reboot shutdown -h +30

/etc/init.d содержит сценарии запуска, но на самом деле не сообщает каждому уровню запуска, что он должен делать. Фактические скрипты вызываются как символические ссылки из /etc/rc[0-6 ].d, где [0-6] - это уровень запуска, который вы вводите.

В частности, символическим ссылкам дается имя:

[SK] nnScript, где [SK] - это запуск или завершение, nn - это порядок (сначала нижний), а Script - это имя файла в /etc/init.d. Запланированные для запуска сценарии вызываются с помощью --start, а те, которые должны быть остановлены --stop в качестве переключателей.

В debian / ubuntu вы можете заполнить эти сценарии:

update-rc.d --defaults <yourscript>

чтобы соответствующие символические ссылки были созданы в /etc/rc[0-6 provided.d/

Я настоятельно рекомендую вам просто сделать символьную ссылку на уровень запуска 2 (по умолчанию):

ln -s /etc/init.d/<myscript> /etc/rc2.d/S50<myscript>

Вызов выключения при выключении (уровень 0), переход в однопользовательский режим (уровень 1) или перезагрузка (уровень 6), вероятно, не так уж и мудро.