Гид по технологиям

Как обновить Ubuntu через командную строку

4 min read Linux Обновлено 20 Dec 2025
Обновление Ubuntu через терминал
Обновление Ubuntu через терминал

Кратко: Обновление Ubuntu через терминал быстрое, прозрачно и удобно для удалённых серверов. В этой статье показаны команды apt/apt-get для обновления рабочего стола и сервера, инструкции для SSH, распространённые ошибки и практический чеклист для безопасного обновления.

Ноутбук с открытым терминалом Ubuntu, где видны команды обновления системы

Зачем обновлять систему через командную строку

Обновление через CLI (интерфейс командной строки) полезно потому что:

  • Быстрее, чем графические утилиты.
  • Показывает прогресс и сообщения об ошибках в реальном времени.
  • Удобно для автоматизации и удалённого доступа по SSH.

Эти инструкции применимы для Ubuntu и большинства дистрибутивов на его базе (Linux Mint, Kali и т. п.). Учтите: для выполнения обновлений нужны права администратора — команду потребуется выполнить через sudo и подтвердить пароль.

Основные команды для обновления Ubuntu

Apt — основной пакетный менеджер в Ubuntu. Команда update обновляет локальную базу пакетов по источникам в /etc/apt/sources.list и в каталогах /etc/apt/sources.list.d.

sudo apt update

Примечание: в некоторых старых руководствах используют apt-get (например, sudo apt-get update). По сути обе команды выполняют те же задачи. apt удобнее в повседневной работе, поэтому его чаще рекомендуют для интерактивного использования.

Команда apt update в терминале Ubuntu

После успешной команды update примените обновления с помощью upgrade:

sudo apt upgrade

sudo apt upgrade установит доступные обновления, если для этого не требуется удаление установленных пакетов. Если обновления блокируются из-за конфликтов пакетов, можно использовать более агрессивный режим:

sudo apt full-upgrade

Или объединить команды и автоматически подтверждать установку:

sudo apt update && sudo apt upgrade -y

Обновление сервера через командную строку

На сервере часто предпочитают apt-get и последовательность с dist-upgrade для учёта изменений зависимостей:

sudo apt-get update
sudo apt-get upgrade
sudo apt-get dist-upgrade

dist-upgrade (или full-upgrade) может удалять старые пакеты ради установки новых версий — это нормально для серверного окружения при плановом обслуживании, но требует внимательности.

Обновление Ubuntu по SSH

Для удалённых машин подключитесь по SSH и выполните те же команды:

ssh username@REMOTE.IP.ADDRESS.HERE
sudo apt-get update
sudo apt-get upgrade

Замените username и REMOTE.IP.ADDRESS.HERE на реальные учётные данные. По возможности используйте SSH-ключи и двухфакторную аутентификацию для повышения безопасности.

Типичные проблемы и их решения

Важно знать распространённые ошибки и как их исправлять.

  • Блокировка apt (dpkg/apt lock): если apt говорит, что система занята, убедитесь, что нет других процессов apt/dpkg. При необходимости завершите процесс или удалите lock-файл с осторожностью:
sudo killall apt apt-get
sudo rm /var/lib/apt/lists/lock /var/cache/apt/archives/lock /var/lib/dpkg/lock-frontend
sudo dpkg --configure -a
  • Испорченные зависимости или «broken packages»: выполниет команды восстановления:
sudo apt --fix-broken install
sudo dpkg --configure -a
  • Недостаточно места на диске: освободите место через autoremove и очистку кэша:
sudo apt-get autoremove
sudo apt-get autoclean
sudo apt-get clean
  • Ошибки GPG (подписи репозиториев): проверьте дату и время на сервере, затем импортируйте публичные ключи репозитория или удалите проблемный PPA.

  • Пакеты удерживаются (held): проверьте вручную и снимите удержание, если это безопасно:

sudo apt-mark showhold
sudo apt-mark unhold 

Важно: перед силовыми действиями делайте резервную копию конфигураций и данных.

Альтернативные подходы и автоматизация

  • Графический интерфейс: Software Updater удобен для рабочих столов, но не для серверов.
  • Unattended-upgrades: пакет для автоматической установки обновлений безопасности. Подходит для серверов, где допустимы автоматические патчи.
  • Canonical Landscape: коммерческое решение для управления множеством Ubuntu-серверов.
  • Скрипты и планировщики (cron/systemd timers): для кастомных сценариев обновления и уведомлений.

Когда автоматизировать: если важнее минимизировать эксплуатационные риски и патчи не меняют критических версий ПО. Не автоматизируйте крупные минорные обновления без тестирования в стейджинге.

Мини-методология безопасного обновления (шаги)

  1. Создать резервную копию критичных данных и конфигураций.
  2. Тестировать обновления в стейджинг-окружении.
  3. Планировать окно обслуживания (низкая нагрузка).
  4. Выполнить обновление (sudo apt update && sudo apt upgrade).
  5. Проверить журналы и сервисы (systemctl status, проверка логов).
  6. Откатить изменения по плану, если сервисы не восстановились.

Контрольные списки по ролям

Администратор:

  • Проверил резервные копии.
  • Сообщил временно затронутым пользователям.
  • Отслеживает дисковое пространство и логи.

Разработчик/DevOps:

  • Проверил совместимость зависимостей в стейджинге.
  • Обновил CI/CD пайплайны при необходимости.

Оператор/Support:

  • Готов к быстрому rollback-скрипту.
  • Мониторит метрики после обновления.

Небольшой глоссарий (1 строка)

  • apt: интерактивный пакетный менеджер Debian/Ubuntu; apt update обновляет индексы, apt upgrade устанавливает обновления.
  • apt-get: классическая версия того же менеджера, чаще используется в скриптах.
  • dist-upgrade/full-upgrade: расширяет логические зависимости и может удалять пакеты.
  • SSH: безопасный протокол удалённого доступа.

Советы по безопасности

  • Используйте sudo вместо работы под root, чтобы уменьшить риск ошибок.
  • Настройте unattended-upgrades только для критичных обновлений безопасности, если вы не готовы к ручной проверке.
  • Поддерживайте SSH-ключи и отключайте аутентификацию по паролю, если возможно.

Когда CLI не подходит (контрпримеры)

  • Новые пользователи, которые предпочитают графический интерфейс.
  • Компьютеры без сетевого доступа к репозиториям.
  • Сложные окружения с множеством малоизвестных PPA: лучше тестировать каждое обновление в изолированной среде.

Критерии приёмки

  • Команда sudo apt update завершилась без ошибок.
  • Все критичные сервисы поднялись после обновления.
  • Записи в журнале ошибок отсутствуют или не критичны.
  • Есть план отката и рабочая резервная копия.

Важно: всегда тестируйте обновления вне продакшена, если есть такая возможность.

Краткое резюме

Обновлять Ubuntu через терминал просто и надёжно: используйте sudo apt update для проверки и sudo apt upgrade для применения. Для серверов применяйте dist-upgrade/ full-upgrade по расписанию, а для удалённого доступа выполняйте обновления через SSH. Подготовьте резервные копии, план отката и мониторинг после обновления.

Дополнительные ресурсы: документация Ubuntu по apt, man-страницы apt/apt-get, пакет unattended-upgrades для автоматизации.

Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

Настройка сети для малого бизнеса — пошагово
Сетевое администрирование

Настройка сети для малого бизнеса — пошагово

Синхронизация медиа с Android — Synx
Руководство

Синхронизация медиа с Android — Synx

Как посмотреть историю дружбы на Facebook
Социальные сети

Как посмотреть историю дружбы на Facebook

Как снять таймлапс и собрать видео
Фотография

Как снять таймлапс и собрать видео

WebTools для Plex — неофициальный магазин и утилиты
Plex

WebTools для Plex — неофициальный магазин и утилиты

Управление Android с Windows через SnapPea
Mobile

Управление Android с Windows через SnapPea