Регулярное обновление вашей системы Ubuntu является одним из наиболее важных аспектов общей безопасности системы. Если вы не обновите пакеты своей операционной системы последними исправлениями безопасности, вы сделаете свою машину уязвимой для атак.

При управлении несколькими машинами Ubuntu ручное обновление системных пакетов может занять много времени. Даже если вы управляете одной системой, иногда вы можете пропустить важное обновление. Вот тут-то и пригодятся автоматические автоматические обновления.

В этом руководстве вы узнаете, как настроить автоматические автоматические обновления в Ubuntu 18.04.

Установка пакета unattended-upgrades

Пакет unattended-upgradesвключает инструменты, которые могут автоматически загружать и устанавливать обновленные пакеты.

Скорее всего, этот пакет уже установлен в вашей системе Ubuntu. Если нет, вы можете установить его, введя следующую команду в своем терминале:

sudo apt install unattended-upgrades

После завершения установки автоматически запустится служба автоматических обновлений. Вы можете проверить это, набрав:

systemctl status unattended-upgrades

Настройка автоматических обновлений без участия пользователя

Пакет unattended-upgradesможно настроить, отредактировав /etc/apt/apt.conf.d/50unattended-upgradesфайл.

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

/etc/apt/apt.conf.d/50unattended-upgrades

Unattended-Upgrade::Allowed-Origins {
  "${distro_id}:${distro_codename}";
	"${distro_id}:${distro_codename}-security";
	// Extended Security Maintenance; doesn't necessarily exist for
	// every release and this system may not have it installed, but if
	// available, the policy for updates is such that unattended-upgrades
	// should also install from here by default.
	"${distro_id}ESM:${distro_codename}";
//	"${distro_id}:${distro_codename}-updates";
//	"${distro_id}:${distro_codename}-proposed";
//	"${distro_id}:${distro_codename}-backports";
};

Первый раздел определяет, какие типы пакетов будут автоматически обновляться. По умолчанию будут установлены только обновления безопасности, если вы хотите включить обновления из других репозиториев, вы можете раскомментировать соответствующий репозиторий, удалив двойную косую черту //в начале строки. Все, что следует после //, является комментарием и не читается пакетом.

Если по какой-либо причине вы хотите отключить автоматическое обновление определенных пакетов, просто добавьте их в черный список пакетов:

/etc/apt/apt.conf.d/50unattended-upgrades

Unattended-Upgrade::Package-Blacklist {
//      "vim";
//      "libc6";
//      "libc6-dev";
//      "libc6-i686";
};

Вы также можете получить электронное письмо, если по какой-то причине возникла проблема с автоматическим обновлением. Для этого раскомментируйте следующие две строки и введите свой адрес электронной почты. Убедитесь, что в вашей системе установлен инструмент для отправки электронных писем, например mailxили postfix .

/etc/apt/apt.conf.d/50unattended-upgrades

Unattended-Upgrade::Mail "your@email.com";
Unattended-Upgrade::MailOnlyOnError "true";

Включение автоматических обновлений без участия оператора

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

/etc/apt/apt.conf.d/20auto-upgrades

APT::Periodic::Update-Package-Lists "1";
APT::Periodic::Unattended-Upgrade "1";

Приведенная выше конфигурация обновляет список пакетов и устанавливает доступные обновления каждый день.

Вы также можете добавить следующую строку, которая очищает локальный архив загрузки каждые 7 дней.

/etc/apt/apt.conf.d/20auto-upgrades

APT::Periodic::AutocleanInterval "7";

Другой способ включения/отключения автоматических обновлений — запустить следующую команду, которая изменит (или создаст, если не существует) файл /etc/apt/apt.conf.d/20auto-upgrades.

sudo dpkg-reconfigure -plow unattended-upgrades

Тестирование

Чтобы проверить, работает ли автоматическое обновление, выполните пробный запуск:

sudo unattended-upgrades --dry-run --debug

История автоматических автоматических обновлений записывается в /var/log/unattended-upgrades/unattended-upgrades.logфайл.