Как настроить автоматическое обновление в Debian 12

Debian - это широко используемая операционная система на базе Linux, известная своей универсальностью и обширной коллекцией пакетов программного обеспечения и инструментов. Однако поддержание системы в актуальном и безопасном состоянии может быть сложной задачей, учитывая значительный объём пакетов и доступных обновлений. Чтобы упростить этот процесс, можно использовать пакет обновлений Unattended Upgrades Package.

Содержание

Unattended Upgrades Package - это ценная утилита, которая автоматизирует процесс обновления и обеспечения безопасности системы Debian. Он позволяет автоматически загружать, устанавливать и настраивать обновления безопасности и программного обеспечения, обеспечивая тем самым безопасность и актуальность системы без какого-либо ручного вмешательства.

Этот пакет может похвастаться несколькими преимуществами и возможностями, включая:

  • Автоматические обновления: Пакет Unattended Upgrades Package может автоматически загружать и устанавливать обновления безопасности и программного обеспечения без ручного вмешательства.
  • Безопасность: Пакет устанавливает последние обновления безопасности, обеспечивая дополнительную безопасность и защищая систему от потенциальных уязвимостей и атак.
  • Персонализация: Пользователи могут настроить пакет на установку обновлений для определенных пакетов или исключить определенные пакеты из процесса обновления, исходя из своих потребностей.
  • Ведение журнала и уведомления: Пакет регистрирует все обновления и отправляет уведомления пользователю, когда обновления установлены, обеспечивая полную видимость процесса обновления.

Конфигурирование и настройка пакета Unattended Upgrades - это простой процесс, который можно выполнить с помощью терминала командной строки. В этом руководстве мы опишем пакет Unattended Upgrades Package, его возможности и преимущества и проведём вас через его установку и настройку на Debian 12 Bookworm, Debian 11 Bullseye или Debian 10 Buster с помощью терминала командной строки.

Шаг 1: Обновление Debian

Перед установкой и настройкой пакета обновлений Unattended Upgrades Package рекомендуется обновить систему Debian, чтобы избежать любых конфликтов. Чтобы обновить систему Debian, откройте терминал и введите следующую команду:

sudo apt-get update && sudo apt-get upgrade -y

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

Шаг 2: Установка пакета Unattended-Upgrades

Чтобы установить пакет Unattended Upgrades на вашу систему Debian, вам нужно открыть терминал и ввести следующую команду:

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

Если вы хотите, чтобы ваша система Debian автоматически перезагружалась после применения обновлений, требующих перезагрузки системы, вы должны установить пакет apt-config-auto-update. Используйте следующую команду для его установки:

Для пользователей ноутбуков рекомендуется установить пакет powermgmt-base для использования любых неуправляемых опций, использующих параметры батареи. Чтобы установить этот пакет, откройте терминал и введите следующую команду:

После установки пакета вы должны настроить его в соответствии с вашими потребностями. Например, вы можете захотеть настроить, какие обновления устанавливать автоматически, какие игнорировать и когда их устанавливать. Обратите внимание, что пакет Unattended Upgrades Package требует прав root, поэтому все команды, упомянутые в этом руководстве, необходимо выполнять с помощью команды sudo.

Также рекомендуется проверить правильность работы пакета обновлений Unattended Upgrades Package. Для этого откройте терминал и введите следующую команду:

Знакомство с командами systemctl для Unattended Upgrades очень важно, так как вам может понадобиться проверить состояние после внесения изменений или перезапуска. Чтобы проверить статус обновлений Unattended Upgrades, используйте следующую команду:

Следующие команды systemctl позволят вам запустить, остановить, включить при загрузке, отключить при загрузке или перезапустить службу Unattended Upgrades:

Запустите службу неуправляемых обновлений:

Остановите неуправляемые службы:

Включите при загрузке неуправляемые службы:

Отключите при загрузке неуправляемые службы:

Перезапустите неуправляемые службы:

Раздел 3: Настройка пакета Unattended Upgrades

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

Опций CLI для пакета Unattended Upgrades

Прежде чем перейти к конфигурационному файлу, здесь приведено краткое описание всех опций CLI для пакета Unattended Upgrades с пояснениями:

Опция Описание
-h, –help Выводит сообщение справки и завершает работу
-d, –debug Включает отладочные сообщения
–apt-debug Заставляет apt/libapt выводить подробные отладочные сообщения
-v, –verbose Включает информационные сообщения
–dry-run Имитирует процесс обновления, загружает, но не устанавливает.
–download-only Только загружает обновления; не пытается их установить
–minimal-upgrade-steps Обновляет пакеты за минимальное количество шагов (и позволяет прервать процесс с помощью SIGTERM) - это поведение по умолчанию
–no-minimal-upgrade-steps Обновляет все пакеты вместе, а не небольшими наборами

Эти опции важны при выполнении команды unattended-upgrades в терминале, вы можете использовать несколько опций для управления поведением процесса автоматического обновления. Например, опция -dry-run может быть полезна для тестирования процесса обновления без внесения изменений в систему, а опция -download-only может использоваться для загрузки обновлений без их установки.

Опция -minimal-upgrade-steps - это поведение по умолчанию для неуправляемых обновлений, а опция -no-minimal-upgrade-steps обновляет все пакеты вместе, а не небольшими наборами. Понимание этих опций при настройке Unattended Upgrades очень важно для того, чтобы поведение соответствовало вашим предпочтениям и требованиям.
Изменение конфигурационного файла Unattended Upgrades

Изменение конфигурации Unattended Upgrades

Для изменения конфигурационного файла рекомендуется использовать текстовый редактор с правами root, например, nano. Вы можете использовать следующую команду, чтобы открыть файл конфигурации в редакторе nano:

После открытия файла вы можете изменить различные параметры в соответствии с вашими требованиями. Важно удалить все комментарии (строки, начинающиеся с "//" или "#") в файле, чтобы активировать опции.

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

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

Существует несколько опций, которые можно изменить в конфигурационном файле. Вот некоторые примеры:

Разрешенные источники

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

Черный список пакетов

Этот параметр позволяет выбрать пакеты, которые вы не хотите обновлять автоматически. Для этого удалите комментарий из этого параметра и добавьте имена пакетов, которые вы хотите исключить, как показано в примере ниже:

AutoFixInterruptedDpkg

Этот параметр определяет, должна ли система автоматически исправлять прерванные установки "dpkg". Чтобы активировать автоматическое исправление, измените значение на "true", как показано в примере ниже:

DevRelease "auto"

Этот параметр определяет, следует ли автоматически обновляться до релиза разработки. По умолчанию эта опция выключена. Чтобы включить автоматическое обновление до релиза разработки, установите значение "auto", как показано в следующем примере:

MinimalSteps "true"

Этот параметр определяет, следует ли выполнять обновление за минимальное количество шагов. По умолчанию эта опция включена. Чтобы отключить минимальные шаги и выполнять обновления за один шаг, установите значение "false", как показано в примере ниже:

InstallOnShutdown "false"

Этот параметр определяет, устанавливать ли обновления во время выключения системы. По умолчанию эта опция отключена. Чтобы включить установку при выключении, установите значение "true", как показано в примере ниже:

Почта

Этот параметр указывает адрес электронной почты, на который должны отправляться уведомления. По умолчанию уведомления не отправляются. Чтобы задать конкретный адрес электронной почты, добавьте его как строковое значение, как показано в примере ниже:

MailReport "on-change"

Этот параметр определяет, когда отправлять уведомления по электронной почте. По умолчанию уведомления отправляются только при наличии изменений. Чтобы отправлять уведомления каждый раз, установите значение "on-start", как показано в примере ниже:

Remove-Unused-Kernel-Packages

Этот параметр определяет, следует ли удалять пакеты ядра, которые больше не используются после обновления. По умолчанию эта опция включена. Чтобы предотвратить удаление неиспользуемых пакетов ядра, установите значение "false", как показано в примере ниже:

Remove-New-Unused-Dependencies

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

Если вы хотите сохранить новые зависимости, вы можете отключить эту опцию, установив значение "false". Но имейте в виду, что это может привести к накоплению неиспользуемых зависимостей в вашей системе, которые могут занимать значительное дисковое пространство.

Remove-Unused-Dependencies

Эта опция позволяет удалить неиспользуемые зависимости после обновления. По умолчанию эта опция не включена. Чтобы активировать эту опцию и удалить неиспользуемые зависимости, установите значение "true", как показано в примере ниже:

Automatic-Reboot

Этот параметр определяет, должна ли система автоматически перезагружаться после обновления. По умолчанию эта опция отключена. Чтобы включить автоматическую перезагрузку, установите значение "true", как показано в примере ниже:

Automatic-Reboot-WithUsers

Этот параметр определяет, должна ли система автоматически перезагружаться при входе пользователей в систему после обновления. По умолчанию эта опция включена. Чтобы отключить автоматическую перезагрузку, установите значение "false", как показано в примере ниже:

Automatic-Reboot-Time

Этот параметр определяет время автоматической перезагрузки системы после обновления. По умолчанию время перезагрузки установлено на "02:00". Чтобы изменить время перезагрузки, измените значение, как показано в примере ниже:

Acquire::http::Dl-Limit

Этот параметр устанавливает максимальную скорость загрузки пакетов в килобайтах в секунду. По умолчанию эта опция не включена. Чтобы активировать ограничение скорости загрузки, установите значение желаемой скорости в килобайтах в секунду, как показано в примере ниже:

SyslogEnable

Этот параметр определяет, следует ли записывать события обновления в системный журнал. По умолчанию эта опция включена. Чтобы отключить протоколирование, установите значение "false", как показано в примере ниже:

SyslogFacility

Этот параметр определяет, на какой объект регистрировать события обновления. По умолчанию события регистрируются на объекте "daemon". Чтобы изменить объект, измените значение, как показано в примере ниже:

OnlyOnACPower

Этот параметр определяет, следует ли выполнять обновления только тогда, когда система подключена к сети переменного тока. По умолчанию эта опция отключена. Чтобы включить обновление только при питании от сети переменного тока, установите значение "true", как показано в примере ниже:

Skip-Updates-On-Metered-Connections

Этот параметр определяет, следует ли пропускать обновления, если система подключена к дозированному соединению. По умолчанию этот параметр включен, поэтому обновления не будут загружаться при использовании дозированного соединения. Чтобы загружать обновления при использовании дозированного соединения, установите значение "false", как показано в примере ниже:

Verbose

Этот параметр указывает, следует ли отображать подробную информацию об обновлении. По умолчанию эта опция отключена. Чтобы включить вывод подробной информации, установите значение "true", как показано в примере ниже:

Отладка

Эта опция определяет, выводить ли отладочную информацию во время обновления. По умолчанию эта опция отключена. Чтобы включить вывод отладочной информации, установите значение "true", как показано в примере ниже:

Allow-downgrade

Этот параметр определяет, разрешено ли понижение пакетов во время обновления. По умолчанию эта опция отключена. Чтобы разрешить понижение пакетов, установите значение "true", как показано в примере ниже:

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

Раздел 4: Планирование автоматических обновлений с помощью задания Cron

Чтобы запланировать автоматическое обновление без присмотра в системе Debian, вы можете использовать задание cron. Cron - это планировщик заданий на основе времени в Linux, который позволяет вам автоматически запускать команды или скрипты в указанное время или интервалы.

Чтобы создать задание cron для неуправляемых обновлений, выполните следующие шаги.

Откройте файл конфигурации crontab, выполнив следующую команду:

После открытия файла добавьте следующую строку в нижней части:

После добавления вышеуказанной строки команда unattended-upgrade будет запускаться ежедневно в полночь (0 0 * * * *). Чтобы сохранить и выйти из файла, нажмите "Ctrl+X", затем "Y", а затем "Enter".

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

Раздел 5: Проверка журналов неуправляемого обновления

Пакет Unattended-Upgrades по умолчанию записывает все действия по обновлению в журнал syslog. Эти журналы находятся в файле /var/log/syslog и других системных журналах.

Чтобы просмотреть журналы Unattended-Upgrades, вы можете использовать следующую команду:

Чтобы отобразить последние 50 записей в файле syslog, относящихся к Unattended-Upgrades, вы можете использовать следующую команду:

Используя различные опции grep, вы можете фильтровать журналы по определенным критериям. Например, чтобы отфильтровать журналы по дате и времени, вы можете использовать следующую команду:

Замените "YYYY-MM-DD" нужной вам датой в формате год-месяц-день. Таким образом, эта команда покажет все записи журнала, которые включают ключевое слово "unattended-upgrades" и соответствуют указанной вами дате.

Чтобы отфильтровать журналы по имени пакета, используйте следующую команду, заменив "имя_пакета" на имя пакета:

Чтобы отфильтровать журналы по имени пакета, используйте следующую команду и замените "<имя_пакета>" на имя пакета, который вы хотите найти. Эта команда отобразит все записи журнала, которые содержат ключевое слово "unattended-upgrades" и соответствуют указанному имени пакета.

Вышеупомянутые команды позволяют быстро проверять и фильтровать журналы Unattended-Upgrades в системе Debian, позволяя вам выявлять и устранять любые проблемы, которые могут возникнуть в процессе обновления.

FAQ по неуправляемому обновлению в Debian

Каковы преимущества установки неуправляемых обновлений в Debian Linux?

Неуправляемые обновления в Debian Linux могут обеспечить обновление системы последними патчами безопасности и исправлениями ошибок без ручного вмешательства. Это может сэкономить время и усилия системных администраторов и помочь сохранить систему безопасной и стабильной.

Как часто неуправляемые обновления запускаются по умолчанию в Debian Linux?

По умолчанию в Debian Linux неуправляемые обновления выполняются раз в день. Однако, точное время суток может меняться в зависимости от конфигурации системы, которую вы можете изменить.

Могу ли я настроить неуправляемые обновления только на установку обновлений безопасности в Debian Linux?

Да, в Debian Linux можно настроить неуправляемые обновления только на установку обновлений безопасности. Это можно сделать, изменив конфигурационный файл и указав, какие репозитории включать.

Каковы риски включения неуправляемых обновлений в Debian Linux?

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

Рекомендуется ли планировать автоматическое обновление без присмотра в рабочее время в Debian Linux?

Вообще, в Debian Linux не рекомендуется планировать автоматические обновления без присмотра в рабочее время, так как обновления могут потребовать перезагрузки системы или перезапуска приложений, что может привести к простоям и нарушению бизнес-операций. Рекомендуется планировать обновления в нерабочее время, чтобы минимизировать влияние на производительность.

Заключение

В заключение, установка неуправляемых обновлений в Debian Linux может быть отличным способом поддерживать вашу систему в актуальном и безопасном состоянии, не требуя постоянного внимания. С помощью пакета Unattended-Upgrades и заданий cron вы можете настроить автоматические обновления и отслеживать их по журналам, чтобы обеспечить плавное и эффективное обслуживание системы. Не забывайте учитывать риски и планировать обновления в периоды низкой загрузки системы, чтобы избежать возможных сбоев.

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

Понравилась статья? Поделиться с друзьями:
Добавить комментарий