1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 |
Как правило, после установки APT требуется откорректировать некоторые конфигурационные файлы, чтобы система могла автоматически скачивать обновления, а при необходимости и устанавливать их. Нужные конфигурационные файлы входят в состав пакета unattended-upgrades, который по умолчанию устанавливается в Debian и Ubuntu. Для автоматизации скачивания и установки обновлений была разработана программа Cron, которая ежедневно выполняет сценарий /etc/cron.daily/apt. Этот сценарий интерпретирует конфигурационный файл /etc/apt/apt.conf.d/* и при необходимости выполняет команду обновления unattended-upgrade. Чтобы активизировать автоматические обновления, нужно вручную внести в конфигурационные файлы следующие изменения: // Файл /etc/apt/apt.conf.d/10periodic // Активизировать ежедневные обновления APT::Periodic:unattended-Upgrade «1»; // Файл /etc/apt/apt.conf.d/50unattended-upgrades // Проводить стандартные обновления и обновления системы безопасности Unattended-Upgrade::Allowed-Origins { "${distro_id} stable": "${distro_id} ${distro_codename}-security"; "${di stroi d} ${di strocodename}- updates"; }; // He обновлять следующие пакеты Unattended-Upgrade::Package-Blacklist { // "vim"; // ... }; // Прислать электронное сообщение о статусе обновления // Unattended-Upgrade::Mail "root@localhost": APT:: Periodic:: Unattended-Upgrade указывает, с каким интерпалом (в днях) система должна пытаться скачивать обновления. С помощью Allowed-Origins укажите, какие репозитории должны учитываться при проведении обновлений. С использованием Package-Blacklist можно автоматически исключить определенные пакеты при проведении обновлений. Наконец, команда mail позволяет указать адрес, на который команда unattended-upgrade посылает краткое статусное уведомление после того, как обновление будет успешно завершено. Для рассылки электронной почты необходимо настроить на компьютере почтовый сервер (МТА) и дополнительно установить пакет mailx. В заключение скажу еще несколько слов о процессе обновления: в каталоге /etc/cron.daily/apt содержится команда sleep, задерживающая выполнение сценария на случайное количество секунд (до 1800). Такая принудительная пауза позволяет избежать ситуации, в которой тысячи компьютеров, использующих стоп, одновременно обращались бы к одним и тем же репозиториям. Сценарий /usr/bin/unattended-upgrade протоколирует все обновления или попытки обновлений в файлах регистрации в каталоге /var/log/unattended-upgrade. Кроме того, /etc/cron.daily/apt закладывает в каталоге /var/lib/apt/periodic/ файлы с отметками времени, показывающими, когда именно в последний раз проводилась определенная операция. Команда unattended-upgrade не обновляет те пакеты, в которых имеется так называемая инструкция conffile prompt, то есть конфигурационные файлы которых были обновлены вручную. К сожалению, эти данные можно узнать только из файлов регистрации, но не из статусного сообщения, пришедшего по электронной почте. Поскольку на практике такие изменения проводятся довольно часто, несмотря на автоматические обновления, вам придется регулярно проверять, появились ли обновления, которые необходимо установить вручную. Обновления ядра вступают в силу только после перезагрузки компьютера. Команда unattended-upgrade этим не занимается, то есть вы сами должны перезапустить компьютер командой reboot. !!!Автоматические обновления хороши тем, что снижают риск проникновения злоумышленника в случайную брешь в системе безопасности вашего компьютера. Если из-за такого неправильного обновления некоторые функции сервера перестанут работать, то последствия могут быть катастрофическими. Альтернатива автоматических обновлений — сценарий Cron, ежедневно проверяющий, доступны ли свежие обновления (например, с помощью команды apt-get dist-upgrade -simulate), и пересылающий результат администратору по электронной почте. |