Другое

Обновление Linux: полное руководство для всех дистрибутивов

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

Обновлено 15 февраля 2026 г.
15-30 мин
Средняя
FixPedia Team
Применимо к:Ubuntu 20.04/22.04 LTSDebian 10/11/12CentOS 7/8Fedora 35-40Arch LinuxВсе дистрибутивы с apt/yum/dnf/pacman

Введение / Зачем это нужно

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

После выполнения вы получите актуальную систему с последними исправлениями и улучшениями.

Требования / Подготовка

Перед началом убедитесь, что выполнены следующие условия:

  • Права администратора: вам понадобится доступ к sudo или вход под root.
  • Стабильное интернет-соединение: обновления скачиваются из репозиториев.
  • Свободное место на диске: минимум 1-2 ГБ для временных файлов и обновлений.
  • Резервная копия (рекомендуется):
    • Создайте бэкап важных данных в домашней директории (/home) и конфигурационных файлов (/etc).
    • Если возможно, сделайте снимок системы (snapshot) через LVM, Btrfs или инструмент виртуальной машины.
  • Отсутствие прерванных операций: завершите все установки пакетов (dpkg, apt, yum и т.д.) и закройте приложения.

Пошаговая инструкция

Шаг 1: Определите менеджер пакетов вашего дистрибутива

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

Для дистрибутивов на базе Debian/Ubuntu (apt):

which apt

Если команда возвращает путь (например, /usr/bin/apt), у вас apt.

Для RHEL/CentOS/Fedora (yum/dnf):

which yum

или

which dnf

Для Arch Linux (pacman):

which pacman

Также можно посмотреть файл /etc/os-release:

cat /etc/os-release

Обратите внимание на поле ID или NAME.

💡 Совет: Если у вас несколько менеджеров (например, и apt, и snap), обновляйте систему через основной менеджер дистрибутива (apt для Ubuntu/Debian).

Шаг 2: Обновите кэш пакетов

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

Для apt (Debian, Ubuntu, Mint и производные):

sudo apt update

Эта команда синхронизирует локальные списки пакетов с репозиториями.

Для yum (CentOS 7, RHEL 7):

sudo yum check-update

Команда проверяет обновления, но не устанавливает их.

Для dnf (CentOS 8+, Fedora, RHEL 8+):

sudo dnf check-update

Для pacman (Arch Linux, Manjaro):

sudo pacman -Sy

Флаг -Sy обновляет базу данных пакетов.

⚠️ Важно: На Arch Linux избегайте использования sudo pacman -Syy (двойной y), если только это не требуется для принудительного обновления базы. Это может привести к проблемам с синхронизацией.

Шаг 3: Установите обновления системы

После обновления кэша установите доступные обновления.

Для apt:

sudo apt upgrade

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

sudo apt full-upgrade

Обычно достаточно upgrade.

Для yum:

sudo yum update

Для dnf:

sudo dnf update

Для pacman:

sudo pacman -Syu

Флаг -Syu синхронизирует, обновляет и обновляет всю систему.

⚠️ Важно: В процессе обновления могут появиться вопросы о конфигурационных файлах (например, если вы изменяли файлы в /etc). Внимательно читайте сообщения. Если вы не уверены, сохраните локальную версию файла (по умолчанию при обновлении через apt или dnf сохраняется копия с расширением .dpkg-old или .rpmnew).

Шаг 4: Перезагрузите систему (если требуется)

После обновления ядра или системных библиотек (например, glibc, systemd) перезагрузка обязательна. В противном случае система может работать нестабильно.

Выполните:

sudo reboot

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

💡 Совет: Чтобы проверить, требуется ли перезагрузка, на Ubuntu/Debian можно использовать:

ls /var/run/reboot-required

Если файл существует, перезагрузка нужна. На других дистрибутивах проверьте, обновлялось ли ядро:

uname -r

и сравните с установленной версией пакета ядра (например, rpm -qa | grep kernel для yum/dnf).

Шаг 5: Проверьте результат обновления

После перезагрузки убедитесь, что обновление прошло успешно.

  1. Проверьте версию дистрибутива:
    lsb_release -a
    

    или
    cat /etc/os-release
    
  2. Проверьте версию ядра:
    uname -r
    
  3. Убедитесь, что нет доступных обновлений (повторите шаг 2 и 3):
    sudo apt update && sudo apt list --upgradable
    

    Список должен быть пустым.
  4. Проверьте статус служб:
    systemctl list-units --state=failed
    

    Не должно быть служб в состоянии failed.

Проверка результата

Кратко: система обновлена, если:

  • Команда sudo apt list --upgradable (или аналоги для вашего менеджера) не показывает пакеты.
  • Версия дистрибутива (lsb_release -d) соответствует ожидаемой (например, после обновления с Ubuntu 20.04 до 22.04).
  • Все критические службы (systemctl) работают без ошибок.
  • Нет необходимости в перезагрузке (файл /var/run/reboot-required отсутствует).

Возможные проблемы

Ошибка "Недостаточно места на диске"

Симптом: менеджер пакетов сообщает о нехватке места. Решение:

  1. Очистите кэш пакетов:
    sudo apt clean   # для apt
    sudo dnf clean all   # для dnf
    sudo pacman -Sc   # для pacman (осторожно, удаляет старые версии)
    
  2. Удалите ненужные пакеты:
    sudo apt autoremove   # для apt
    sudo dnf autoremove   # для dnf
    
  3. Освободите место вручную (старые логи, временные файлы).

Сбой обновления из-за проблем с сетью

Симптом: обрыв соединения, ошибки 404 Not Found, Temporary failure resolving. Решение:

  1. Проверьте интернет-соединение:
    ping -c 3 8.8.8.8
    
  2. Переключитесь на другое зеркало (репозиторий). Для Ubuntu/Debian редактируйте файл /etc/apt/sources.list, для других дистрибутивов — конфигурацию менеджера пакетов.
  3. Повторите обновление. Менеджеры пакетов (apt, dnf, pacman) обычно возобновляют загрузку.

Конфликты пакетов или зависящие пакеты

Симптом: сообщения о "неудовлетворённых зависимостях" или "конфликтах". Решение:

  1. Для apt попробуйте исправить зависимости:
    sudo apt --fix-broken install
    
    Затем снова sudo apt upgrade.
  2. Для dnf/yum:
    sudo dnf distro-sync   # синхронизирует пакеты с репозиториями
    
  3. Если проблема не решается, вручную найдите пакеты, вызывающие конфликт (сообщение укажет их имена), и попробуйте удалить/переустановить их.

Ошибки конфигурационных файлов

Симптом: при обновлении пакета менеджер спрашивает, сохранить ли текущий конфиг. Решение: Если вы не вносили важные изменения в конфиг, можно установить обновлённую версию (выбрать "Yes"). Если конфиг был изменён вручную, сохраните локальную версию (выбрарите "No" или оставьте старый файл). После обновления сравните файлы (diff /etc/package.conf /etc/package.conf.dpkg-old) и при необходимости слейте изменения.

Часто задаваемые вопросы

Нужно ли создавать резервную копию перед обновлением Linux?
Можно ли обновить Linux без перезагрузки?
Что делать, если обновление прервалось из-за ошибки сети?
Как откатить обновление в Linux?

Полезное

Определите менеджер пакетов вашего дистрибутива
Обновите кэш пакетов
Установите обновления системы
Перезагрузите систему
Проверьте результат обновления