DNF Automatic - это инструмент CLI, предназначенный для обновления пакетов в системе Linux. В отличие от стандартной команды dnf upgrade, DNF Automatic специально разработана для автоматического и регулярного запуска по таймерам systemd, заданиям cron и подобным инструментам. С помощью DNF Automatic можно синхронизировать метаданные пакетов, проверять наличие обновлений, а также автоматически загружать и устанавливать обновления.
Что такое DNF Automatic?
DNF Automatic - это альтернатива команде dnf upgrade, которая специально разработана для автоматического и регулярного запуска. Конфигурационный файл или таймерные блоки, специфичные для конкретной функции, обычно управляют инструментом. Команда принимает только один необязательный аргумент, указывающий на файл конфигурации, и некоторые управляющие аргументы, предназначенные для использования службами, которые поддерживают блоки таймера. Если из командной строки не передан файл конфигурации, используется /etc/dnf/automatic.conf.
Установка DNF Automatic
Чтобы установить DNF Automatic на Fedora, откройте терминал и выполните следующую команду:
1 | sudo dnf install dnf-automatic |
Настройка DNF Automatic
Чтобы настроить поведение DNF Automatic, вы можете отредактировать файл конфигурации, расположенный по адресу /etc/dnf/automatic.conf. Файл конфигурации разделен на тематические разделы, включая раздел [commands], раздел [emitters], раздел [command] и раздел [email].
В руководстве будет использоваться редактор nano для открытия файла конфигурации:
1 | sudo nano /etc/dnf/automatic.conf |
раздел [commands]
В разделе [commands] вы можете задать режим работы программы. Ниже приведены примеры опций, которые вы можете настроить:
Чтобы включить автоматическую загрузку и установку обновлений, установите для параметров apply_updates и download_updates значение True:
1 2 3 | [commands] apply_updates = True download_updates = True |
Чтобы задать случайную задержку перед загрузкой обновлений, установите random_sleep на нужное количество секунд:
1 2 | [commands] random_sleep = 3600 |
Чтобы указать, что должны устанавливаться только обновления безопасности, установите upgrade_type в security:
1 2 | [commands] upgrade_type = security |
Чтобы указать, что система должна перезагружаться только при необходимости, установите для параметра reboot значение when-needed:
1 2 | [commands] reboot = when-needed |
Раздел [emitters]
В разделе [emitters] вы можете выбрать способ представления результатов. Ниже приведены примеры опций, которые вы можете настроить:
Чтобы сообщить о результатах по электронной почте, установите emit_via на email и укажите адрес электронной почты в email_to:
1 2 3 | [emitters] emit_via = email email_to = user@example.com |
Чтобы сообщить о результатах на стандартный вывод, установите emit_via в stdio:
1 2 | [emitters] emit_via = stdio |
Раздел [command]
В разделе [command] вы можете настроить конфигурацию командного эмиттера. Ниже приведены примеры опций, которые можно настроить:
Чтобы задать пользовательскую команду, которая будет выполняться после завершения обновления, установите command_format на нужную команду:
1 2 | [command] command_format = /path/to/custom/command {body} |
Чтобы задать пользовательский ввод команды, установите stdin_format в нужную строку формата:
1 2 | [command] stdin_format = {body} |
В этом примере {body} указывает, что вывод обновления должен быть передан в качестве входных данных пользовательской команды в исходном формате.
Раздел [email]
В разделе [email] вы можете настроить конфигурацию эмиттера электронной почты. Ниже приведены примеры опций, которые можно настроить:
Чтобы указать пользовательский адрес электронной почты для поля "От", установите email_from на нужный адрес электронной почты:
1 2 | [email] email_from = user@example.com |
Чтобы указать пользовательский SMTP-сервер для отправки писем, установите email_host на желаемое имя хоста:
1 2 | [email] email_host = smtp.example.com |
С помощью этих примеров вы можете настроить конфигурационный файл в соответствии с вашими потребностями и позволить DNF Automatic автоматически и регулярно обновлять вашу систему.
Включить таймер DNF Automatic
Чтобы активировать автоматический таймер DNF, выполните следующую команду:
1 | sudo systemctl enable --now dnf-automatic.timer |
Эта команда запускает таймер DNF Automatic и планирует проверки обновлений.
Чтобы контролировать состояние таймера DNF Automatic, используйте следующую команду для проверки системного таймера:
1 | systemctl list-timers --all | grep -i 'dnf-automatic' |
Пример вывода:
Как показано на рисунке, таймеру осталось 19 часов до начала следующей проверки обновлений.
Часто задаваемые вопросы о DNF Automatic и Fedora
Здесь приведены некоторые часто задаваемые вопросы о DNF Automatic и Fedora Linux:
Что такое DNF Automatic и как он работает в Fedora Linux?
DNF Automatic - это инструмент CLI, который автоматически обновляет пакеты в системе Fedora Linux, используя таймеры systemd, задания cron и подобные инструменты. Он синхронизирует метаданные пакетов, проверяет наличие обновлений, загружает и устанавливает обновления автоматически.
Как настроить DNF Automatic в Fedora Linux?
Чтобы настроить DNF Automatic в Fedora Linux, отредактируйте файл конфигурации, расположенный по адресу /etc/dnf/automatic.conf. Файл конфигурации разделен на тематические разделы, включая раздел [команды], раздел [эмиттеры], раздел [команда] и раздел [email].
Как я могу запланировать запуск DNF Automatic в определенное время в Fedora Linux?
Вы можете запланировать запуск DNF Automatic в определенное время в Fedora Linux с помощью таймеров systemd. Чтобы запустить таймер для DNF Automatic, выполните следующую команду: sudo systemctl start dnf-automatic.timer. Затем вы можете настроить таймер на выполнение через определенные промежутки времени с помощью команды systemctl.
Как устранить неполадки с DNF Automatic в Fedora Linux?
Чтобы устранить неполадки в работе DNF Automatic в Fedora Linux, проверьте журналы на наличие сообщений об ошибках с помощью команды journalctl. Например, чтобы просмотреть журналы для таймера DNF Automatic, выполните следующую команду: sudo journalctl -u dnf-automatic.timer.
Могу ли я настроить поведение DNF Automatic в Fedora Linux?
Да, вы можете настроить поведение DNF Automatic в Fedora Linux, отредактировав файл конфигурации, расположенный по адресу /etc/dnf/automatic.conf. В конфигурационном файле можно указать, следует ли загружать и устанавливать обновления, установить расписание перезагрузок, а также настроить способ сообщения о результатах.
Заключение
DNF Automatic - это мощный инструмент для автоматизации процесса обновления в Fedora. Настройка его под ваши нужды гарантирует, что ваша система Fedora останется безопасной, стабильной и актуальной при минимальных усилиях.