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

Зачем обновлять систему через командную строку
Обновление через 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 удобнее в повседневной работе, поэтому его чаще рекомендуют для интерактивного использования.
После успешной команды update примените обновления с помощью upgrade:
sudo apt upgradesudo 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-upgradedist-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): для кастомных сценариев обновления и уведомлений.
Когда автоматизировать: если важнее минимизировать эксплуатационные риски и патчи не меняют критических версий ПО. Не автоматизируйте крупные минорные обновления без тестирования в стейджинге.
Мини-методология безопасного обновления (шаги)
- Создать резервную копию критичных данных и конфигураций.
- Тестировать обновления в стейджинг-окружении.
- Планировать окно обслуживания (низкая нагрузка).
- Выполнить обновление (sudo apt update && sudo apt upgrade).
- Проверить журналы и сервисы (systemctl status, проверка логов).
- Откатить изменения по плану, если сервисы не восстановились.
Контрольные списки по ролям
Администратор:
- Проверил резервные копии.
- Сообщил временно затронутым пользователям.
- Отслеживает дисковое пространство и логи.
Разработчик/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 для автоматизации.
Похожие материалы
Настройка сети для малого бизнеса — пошагово
Синхронизация медиа с Android — Synx
Как посмотреть историю дружбы на Facebook
Как снять таймлапс и собрать видео
WebTools для Plex — неофициальный магазин и утилиты