Как я могу запланировать ночную перезагрузку?

Невозможно заменить два полных ядра. Я уверен, что вы можете понять значение монолитного ядра, такого как Linux, и почему это делает невозможным простое замену.

Ближе всего вы можете использовать процесс обновления с использованием Ksplice. Он преобразует обновления ядра в волшебные прокладки, которые могут вставлять отверстия в запущенном ядре, что позволяет вам поддерживать компьютер на неопределенный срок, не перезагружая компьютер. Для ваших целей он также позволяет вам откатываться от изменений.

Это бесплатно для выпусков Ubuntu Desktop, поэтому вы можете играть с ним, но вы должны оплачивать подписку на серверы (где такая вещь больше всего

Просто видел ваше редактирование. Ksplice, вероятно, не поможет, если вы вручную взломаете и создаете свои собственные ядра для отладки, поскольку «служба» заключается в том, что они предоставляют специальные обновления, и они не могут быть созданы вами самим.

Если вы просто строите вещи против официального ядра, это может все еще работать.

Еще одна идея: виртуализация. Вы можете создать новое ядро ​​и поменять местами на своей виртуальной машине и перезагрузить компьютер. По-прежнему потребуется время, необходимое для перезагрузки, но вы можете сделать VM намного легче, чем ваша машина разработки (основывайте ее на сервере Ubuntu, удалите X-сервер, если он вам не нужен, и т. Д.).

1
задан 16 December 2013 в 02:23

3 ответа

Добавление этого параметра в /etc/cron.daily/zz-reboot должно работать:

#!/bin/sh
shutdown -r now

И sudo chmod a+x /etc/cron.daily/zz-reboot. Префикс «zz» заставит его запустить последний из всех других скриптов в этом каталоге. Проверьте /etc/crontab, чтобы узнать, какое время дня на самом деле произойдет:

grep daily /etc/crontab | awk '{print $2 ":" $1}'

Если это не сработает, значит, «регулярная» запись cron также может работать через sudo crontab -e [!d2 ]

MINUTE HOUR * * * shutdown -r now

И, наконец, если вы хотите просто выполнить однократные перезагрузки, вы можете использовать at:

echo "shutdown -r now" | sudo at 04:30
9
ответ дан 26 May 2018 в 00:22
  • 1
    насколько я знаю, это перезагрузит вашу систему в то же время, когда вы создадите этот файл каждый день, пожалуйста, исправьте меня, если я ошибаюсь – sBlatt 18 November 2010 в 01:22
  • 2
    Не совсем: он будет перезагружаться один раз в день в любое время cron.daily, что немного непредсказуемо. Если у вас нет anacron, это 06:25 по местному времени, что может быть хорошо (или может быть ужасно, если вы ранний подъем). Если вы это сделаете, и я думаю, что это по умолчанию, вполне может быть 10 минут после того, как машина будет включаться в первый раз каждый день, что будет приводить в бешенство. Во всяком случае, cron.daily не подходит для этого. – poolie 18 November 2010 в 01:27
  • 3
    cron.daily запускается каждую ночь в 6:25 в моей системе. Обычно это устанавливается в случайную минуту между 06:00 и 06:59. См. Ваш / etc / crontab на время в вашей системе. – elzapp 18 November 2010 в 01:30
  • 4
    Самая большая проблема с использованием cron.daily для этого заключается в том, что он может мешать другим заданиям в cron.daily. – elzapp 18 November 2010 в 01:31

Я работаю с cronjobs около месяца на моей работе и расписанию poweroff, и перезагружаюсь. Это очень просто. Я знаю, что это было спрошено около 5 лет назад, но если у кого-то еще есть проблемы, вы можете использовать этот метод, и вы будете установлены.

откройте терминал (ctrl + T)

sudo nano /etc/crontab

прокрутите весь путь до нижнего уровня и введите следующую команду

00 6 * * * root reboot 

, которая настроена для перезагрузки в 6 часов каждый день, и нажмите enter

Если вы хотите запланировать отключение питания в 11 вечера каждый день вы можете войти в

00 23 * * * root poweroff

Мне все еще нужно выяснить, как управлять машиной с помощью cronjob, когда она выключена. Я отредактирую этот ответ, когда увижу его.

P.S. это мой первый ответ на публикацию любых форм; надеюсь, что это поможет кому-то! :

D
1
ответ дан 26 May 2018 в 00:22
  • 1
    Существует ответ с тем же контентом от 5 лет назад с более подробной и автоматической проверкой синтаксиса (через crontab -e). – David Foerster 1 August 2015 в 21:00
  • 2
    Не забудьте перезапустить cron: sudo /etc/init.d/cron restart – BriceB 12 May 2016 в 10:23

Вы должны создать скрипт, используя указания, данные Kees Cook ...

Вы можете просто скопировать и вставить информацию ниже в любом текстовом редакторе и создать файл zz-reboot в предложенной директории.

После этого просто запомните правой кнопкой мыши по файлу и назначьте его разрешение на выполнение. Если вам нравится просто использовать терминал:

sudo chmod +x /etc/cron.daily/zz-reboot

Чтобы лучше понять, что вы делаете, помните, что в папке /etc вы обычно находите файлы конфигурации, и там вы можете найти cron.hourly, [ f7] и других папках cron.

Если вы хотите строго соблюдать время перезагрузки, просто цифру

sudo crontab -e

, чтобы вы могли редактировать crontab для пользователя root.

Если вам лучше делать это графически, вы можете установить его из Gnome-расписания Software Center. Если вы хотите изменить gnome-schedule для пользователя root, убедитесь, что вы запустили его из терминала:

gksudo gnome-schedule

Удачи! :)

p.s .: отличная точка sBlatt! Мне было интересно, есть ли способ принудительно выполнить cron.daily время выполнения.

0
ответ дан 26 May 2018 в 00:22
  • 1
    В / etc / crontab есть запись, чтобы отрегулировать время, но afaik, если компьютер в это время не работает, он будет выполняться через несколько минут после запуска компьютера – sBlatt 18 November 2010 в 01:46

Другие вопросы по тегам:

Похожие вопросы: