Как безопасно обновить программы и ядро в Ubuntu: apt update && apt upgrade
Почему регулярные обновления критически важны для сервера
Каждый месяц специалисты по информационной безопасности находят сотни критических уязвимостей (CVE) в ядре Linux, OpenSSH, веб-серверах и базах данных. Сервер, не получающий обновления безопасности, становится легкой добычей ботнетов в течение нескольких недель. Однако слепое обновление рабочей системы без соблюдения регламента может привести к остановке веб-сайтов или сбою загрузки операционной системы.
Разница этапов обновления
| Этап | Команда | Что происходит |
|---|---|---|
| 1. Синхронизация | apt update | Скачивание свежего списка доступных версий программ из интернета. |
| 2. Обновление софта | apt upgrade | Безопасная установка новых версий установленных приложений. |
| 3. Обновление ядра | apt dist-upgrade | Установка обновлений ядра с добавлением новых системных зависимостей. |
| 4. Очистка | apt autoremove | Удаление старых, больше не используемых версий ядер. |
Пошаговый регламент безопасного обновления
Шаг 1: Создание точки восстановления (Снапшот)
Перед любым мажорным обновлением обязательно создайте снимок состояния (Snapshot / Backup) виртуальной машины в панели вашего облачного хостинга.
Шаг 2: Обновление индексов пакетов
sudo apt updateШаг 3: Просмотр списка пакетов, готовых к обновлению
apt list --upgradableУбедитесь, что в списке нет мажорных скачков критического софта (например, внезапного перехода с PHP 8.1 на несовместимый PHP 8.3 для старого сайта).
Шаг 4: Запуск безопасного обновления
Запустите установку патчей:
sudo apt upgrade -y(Если во время обновления появится диалоговое окно с вопросом о перезаписи конфигурационных файлов, всегда выбирайте вариант «keep the local version currently installed», чтобы не затереть ваши рабочие настройки сайтов).
Шаг 5: Обновление ядра Linux и зависимостей
sudo apt dist-upgrade -yШаг 6: Безопасное удаление старых ядер и мусора
Очистите раздел /boot от скопившихся старых версий ядер:
sudo apt autoremove --purge -y
sudo apt cleanШаг 7: Проверка необходимости перезагрузки
Проверьте, требуется ли серверу перезагрузка для применения нового ядра:
if [ -f /var/run/reboot-required ]; then echo "Требуется перезагрузка сервера!"; sudo reboot; fiТиповые ошибки администраторов
- Переполнение раздела /boot старыми ядрами: Если годами не запускать
apt autoremove, раздел/bootзабьется на 100%, после чего любое обновление пакетов будет падать с фатальной ошибкой нехватки диска. - Игнорирование перезагрузки после обновления ядра: Сервер продолжает работать на старом уязвимом ядре из оперативной памяти до тех пор, пока вы физически не выполните команду
sudo reboot.
ITSTM настроит бесшовное обновление серверов в кластерах высокой доступности (HA Cluster) с автоматическим переключением трафика без единой секунды простоя.
Частые вопросы (FAQ)
Как посмотреть текущую активную версию ядра Linux?
Выполните системную команду: uname -r или uname -a.
Как обновить только пакеты безопасности (Security Updates) без изменения программ?
Установите и запустите unattended-upgrade вручную: sudo unattended-upgrade -d.
Что делать, если после обновления ядра сервер перестал загружаться?
В меню загрузчика GRUB выберите пункт 'Advanced options for Ubuntu' и выберите предыдущую стабильную версию ядра для успешной загрузки системы.
Можно ли обновлять ядро Linux без перезагрузки сервера (Livepatch)?
Да, сервис Canonical Livepatch позволяет применять патчи безопасности к ядру Linux на лету без перезагрузки (бесплатно до 5 машин для персонального использования).