При необходимости загрузите, установите и перезагрузите компьютер ночью

9

Как мне написать скрипт в Ubuntu, чтобы он загружал обновления ночью, когда я спал, и перезагружал компьютер, если ему нужна перезагрузка?

ubuntunovice
источник

Ответы:

16

Вы можете сделать это, установив в unattended-upgradesпакет ; см. его документацию для деталей его конфигурации.

sudo apt install unattended-upgrades

установит его для вас.

Установка должна быть достаточной для его включения. Чтобы разрешить его перезагрузку при необходимости, вам необходимо добавить файл конфигурации, например /etc/apt/apt.conf.d/52unattended-upgrades-local , содержащий

Unattended-Upgrade::Automatic-Reboot "yes";

По умолчанию в Ubuntu он устанавливает любое обновление из основных репозиториев, независимо от того, связано оно с безопасностью или нет. При необходимости вы можете настроить больше репозиториев, переопределив Unattended-Upgrade::Allowed-Originsключ конфигурации.

Стивен Китт
источник
Насколько официальным является этот источник программного обеспечения? Я не рекомендовал бы ни одному пользователю устанавливать что-либо из другого источника, кроме репозитория их ОС. Возможно, в Ubuntu есть что-то встроенное (например, CentOS yum-cron)?
Нед64
6
@ Ned64, он доступен как пакет в Debian и Ubuntu и написан разработчиком Ubuntu. Это отрывает крючки в aptсебе.
Стивен Китт
Как вы думаете, что делает этот пакет, если файл /var/run/reboot-requiredникогда не генерируется системой? То есть, некоторые системы генерируют этот файл, другие нет.
Симус
1
@ Seamus есть ли производные Debian или Ubuntu, где они reboot-requiredне генерируются?
Стивен Китт
Единственный, в чем я уверен - это Raspbian (стандартная ОС Raspberry Pi). Просто из любопытства - разве Ubuntu не является «потомком» Debian?
Симус