До основного вмісту

Оновлення Ubuntu Server: apt upgrade і do-release-upgrade

VDS / VPS · 19.04.2026 · 4 хв читання
Ілюстрація до статті «Оновлення Ubuntu Server: apt upgrade і do-release-upgrade»

Регулярне оновлення сервера закриває вразливості, додає нові функції та забезпечує сумісність з актуальним софтом. Ubuntu Server має два рівні оновлень: пакети (minor) і версія ОС (major) — і плутати їхній порядок не можна, інакше можна отримати систему з несумісними залежностями.

Оновлення пакетів (щоденне завдання)

# Оновити список пакетів
sudo apt update

# Подивитися доступні оновлення
apt list --upgradable

# Оновити всі пакети
sudo apt upgrade -y

# Оновити з дозволом зміни залежностей (рекомендується)
sudo apt full-upgrade -y

# Прибрати непотрібні пакети
sudo apt autoremove -y
sudo apt autoclean

Різниця: upgrade vs full-upgrade vs dist-upgrade

КомандаПоведінкаКоли використовувати
apt upgradeОновлює без зміни залежностейБезпечне оновлення
apt full-upgradeМоже видаляти/додавати пакетиРекомендується для серверів
apt dist-upgradeЗастарілий псевдонім full-upgradeНе рекомендується, використовуйте full-upgrade

Розбір типових помилок під час apt upgrade

  • E: Unable to lock the administration directory (/var/lib/dpkg/), is another process using it? — паралельно вже запущено інший apt/dpkg або нещодавно стався силовий обрив оновлення; зачекайте завершення процесу або видаліть зависший lock-файл лише після перевірки, що процес справді мертвий.
  • dpkg was interrupted, you must manually run 'sudo dpkg --configure -a' — попереднє оновлення перервалося посередині; команда з повідомлення дозавершує налаштування пакетів і зазвичай виправляє проблему.
  • Some packages could not be installed... held back — пакет вимагає встановлення нової залежності, яку apt upgrade не ставить за замовчуванням; вирішується через apt full-upgrade.
  • The following signatures couldn't be verified because the public key is not available — застарілий або відсутній GPG-ключ репозиторію; потрібно перевстановити ключ, а не вимикати перевірку підпису.

Автоматичні оновлення безпеки

Оновлення пакетів — лише частина загального захисту сервера; базові кроки одразу після купівлі VPS зібрано у статті перші кроки після купівлі VDS, а про окреме оновлення ядра — у статті оновлення ядра Linux.

# Встановити unattended-upgrades
sudo apt install unattended-upgrades -y

# Налаштування
sudo dpkg-reconfigure unattended-upgrades

# Конфігурація: /etc/apt/apt.conf.d/50unattended-upgrades
# Дозволити лише security-оновлення (безпечно для продакшну)

Оновлення версії Ubuntu (Major Upgrade)

# Встановити update-manager-core
sudo apt install update-manager-core -y

# Перевірити доступні версії
do-release-upgrade -c

# Запустити оновлення (рекомендується через screen/tmux!)
sudo screen -S upgrade
sudo do-release-upgrade

# Якщо сесія перерветься -- перепідключитися:
sudo screen -r upgrade

КРИТИЧНО перед major upgrade: зробіть знімок або бекап VPS, запускайте лише через screen або tmux — обрив SSH уб'є процес оновлення на півдорозі, перевірте сумісність застосунків з новою версією і виконуйте апгрейд послідовно (20.04 → 22.04 → 24.04), пропускати проміжні релізи не можна.

Порівняння способів оновлення

СпосібЩо оновлюєРизик простоюВідкат
apt full-upgradeПакети в межах поточної версіїНизькийЗазвичай не потрібен
unattended-upgradesЛише security-патчі автоматичноДуже низькийНе потрібен
do-release-upgradeУся версія ОС цілкомВисокийЛише зі знімка

Підтримувані версії Ubuntu LTS

ВерсіяПідтримка доСтатус
Ubuntu 20.04 LTS (Focal)Квітень 2025Закінчується
Ubuntu 22.04 LTS (Jammy)Квітень 2027Поточна
Ubuntu 24.04 LTS (Noble)Квітень 2029Актуальна

Рекомендація: використовуйте лише LTS-версії на продакшн-серверах. Регулярні релізи (23.10, 24.10) підтримуються лише 9 місяців — це занадто короткий термін для сервера, який не хочеться чіпати щокварталу.

Коли major upgrade робити не варто

  • На сервері працює продакшн-застосунок із жорсткою залежністю від старої версії PHP чи Python, яку нова LTS уже не постачає з основного репозиторію — спершу мігруйте застосунок, потім оновлюйте систему.
  • Немає свіжого перевіреного бекапу — оновлення версії ОС незворотне без знімка; відкотити пакети назад після major upgrade практично неможливо.
  • Сервер обслуговує критичний сервіс без вікна обслуговування — major upgrade вимагає часу простою і перезавантаження, плануйте його на заздалегідь оголошене вікно, а не «між іншим».

Як перевірити, що оновлення пройшло успішно

# Версія системи після апгрейду
lsb_release -a

# Завантажилося нове ядро (після перезавантаження)
uname -r

# Чи є пакети, що залишилися у зламаному стані
sudo apt --fix-broken install
sudo dpkg -l | grep -E '^.[^i]'

# Ключові сервіси піднялися і не падають
systemctl --failed

Якщо lsb_release показує очікувану версію, systemctl --failed повертає порожній список, а команда dpkg -l не знаходить пакетів у статусі, відмінному від встановленого, — оновлення пройшло без критичних проблем.

Чи була стаття корисною?
← Назад до бази знань Поставити питання підтримці