У меня есть несколько серверов Ubuntu, которые я хочу иметь все обновления, примененные автоматически. Я раньше использовал простой сценарий, который работал apt-get update && apt-get upgrade
но это не было очень устойчиво, таким образом, я пытаюсь мигрировать на unattended-upgrades
вместо этого, который, кажется, официально рекомендуемый способ сделать это.
Однако я изо всех сил пытаюсь достигнуть следующих задач:
unattended-upgrades
выполнения каждый день). В данный момент я только, кажется, получаю электронные письма, когда пакеты обновлены (я предпочитаю получать электронное письмо каждый день как тот способ, которым я знаю, не прибывает ли электронная почта, что-то пошло не так, как надо).Все учебные руководства я могу найти, включая официальную документацию Ubuntu, сказать мне редактировать существующие файлы в /etc/apt/apt.conf.d
. Однако я предпочитаю переопределять опции с помощью дополнительных файлов, частично так, чтобы я не добирался, 'конфигурационный файл отличается от обслуживающей' ошибки позже и также потому что это помогает сохранить все переопределения в управлении конфигурацией и управлении версиями.
Действительно ли возможно переопределить все параметры конфигурации таким образом? Я попытался делать это и нашел, что некоторые переопределения, кажется, работают, пока другие не делают.
Мои текущие файлы переопределений в /etc/apt/apt.conf.d/99zz-overrides
(названный для проверки это читало в последний раз), и содержит следующее:
Unattended-Upgrade::Mail "hello@example.org";
APT::Periodic::Download-Upgradeable-Packages "1";
APT::Periodic::Update-Package-Lists "1";
APT::Periodic::Unattended-Upgrade "1";
Я не изменил ничто больше в /etc/apt/apt.conf.d
.
Таким образом, если Вы хотите:
unattended-upgrades
unattended-upgrades
самостоятельно(так в основном имейте свой пирог и съешьте его также ;-))
Вы будете иметь к:
grep
s сегодняшняя дата в var/log/dpkg.log
если электронная почта пуста: ничего не произошло, иначе у Вас будет журнал, таким образом, все пустые и полные электронные письма вместе будут тем, что Вы попросили.
Рисование от https://gist.github.com/roybotnik/b0ec2eda2bc625e19eaf и https://wiki.debian.org/UnattendedUpgrades:
Файл /etc/apt/apt.conf.d/50unattended-upgrades
содержит все опции, доступные для его конфигурации и объяснения каждого.
Там не кажется опции послать электронное письмо каждый раз, когда это выполняется, только когда существуют обновления или проблемы. Можно, однако, установить, хотите ли Вы электронные письма для всех обновлений или только проблемы (Unattended-Upgrade::MailOnlyOnError ["true"/"false"]
Для ответа на вторую часть вопроса можно установить источники, которые необслуживаемые обновления будут использовать следующим образом:
Unattended-Upgrade::Allowed-Origins {
"${distro_id}:${distro_codename}-security";
// "${distro_id}:${distro_codename}-updates";
// "${distro_id}:${distro_codename}-proposed";
// "${distro_id}:${distro_codename}-backports";
};
Путем некомментария updates
или другие строки, Вы автоматически обновили бы те соответствующие наборы пакетов.