Как проверить наличие обновлений системы в Linux

LinuxLinuxBeginner
Практиковаться сейчас

💡 Этот учебник переведен с английского с помощью ИИ. Чтобы просмотреть оригинал, вы можете перейти на английский оригинал

Введение

В этом практическом занятии (лабораторной работе) вы узнаете, как проверять наличие доступных системных обновлений на системе Linux с использованием пакетного менеджера apt. Мы рассмотрим основные шаги, необходимые для того, чтобы убедиться, что ваша система обновлена и безопасна.

Вы начнете с обновления списка доступных программных пакетов, чтобы получить актуальную информацию из репозиториев. Затем вы узнаете, как вывести список пакетов, для которых доступны обновления. Наконец, вы имитируете процесс обновления, чтобы увидеть, какие пакеты будут обновлены, не выполняя на самом деле установку.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL linux(("Linux")) -.-> linux/PackagesandSoftwaresGroup(["Packages and Softwares"]) linux/PackagesandSoftwaresGroup -.-> linux/apt("Package Handling") subgraph Lab Skills linux/apt -.-> lab-558806{{"Как проверить наличие обновлений системы в Linux"}} end

Обновление списка пакетов с помощью команды apt update

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

Мы будем использовать пакетный менеджер apt, который обычно используется на системах на основе Debian, таких как Ubuntu.

Сначала откройте терминал. Вы можете сделать это, кликнув на значок Xfce Terminal слева на рабочем столе.

Теперь введите следующую команду и нажмите Enter:

sudo apt update

Разберем эту команду по частям:

  • sudo: Как вы узнали в предыдущей лабораторной работе, это сокращение от "SuperUser DO" и позволяет выполнять команды с административными привилегиями. Обновление списка пакетов требует этих повышенных прав.
  • apt: Это командная утилита для взаимодействия с системой управления пакетами APT.
  • update: Это конкретная команда, которую мы передаем apt. Она сообщает apt скачать актуальную информацию о доступных пакетах из настроенных программных репозиториев.

При выполнении этой команды вы увидите вывод, похожий на следующий:

Hit:1 http://archive.ubuntu.com/ubuntu jammy InRelease
Get:2 http://archive.ubuntu.com/ubuntu jammy-updates InRelease [119 kB]
Get:3 http://archive.ubuntu.com/ubuntu jammy-backports InRelease [109 kB]
Get:4 http://security.ubuntu.com/ubuntu jammy-security InRelease [118 kB]
Fetched 346 kB in 1s (301 kB/s)
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
...

Этот вывод показывает, как apt подключается к различным серверам (репозиториям) для получения обновленных списков пакетов. Точный вывод может немного отличаться в зависимости от настроенных на вашей системе репозиториев и текущего состояния обновлений.

После завершения выполнения команды ваша система знает о последних версиях всех программных пакетов, которые можно установить.

Нажмите Продолжить, чтобы перейти к следующему шагу.

Вывод списка обновляемых пакетов с помощью команды apt list --upgradable

На предыдущем этапе вы обновили список доступных пакетов. Теперь давайте посмотрим, какие из пакетов, в настоящее время установленных на вашей системе, имеют более новые версии в репозиториях.

Мы будем использовать команду apt list с опцией --upgradable.

В терминале введите следующую команду и нажмите Enter:

apt list --upgradable

Разберем эту команду:

  • apt: Инструмент управления пакетами.
  • list: Эта команда сообщает apt, что вы хотите вывести список пакетов.
  • --upgradable: Эта опция фильтрует список, чтобы показать только те пакеты, которые можно обновить.

В выводе будет показан список пакетов, для которых доступны более новые версии. Формат обычно имеет вид название_пакета/распределение версия -> новая_версия.

Например, вы можете увидеть что-то вроде этого:

Listing... Done
bind9-dnsutils/jammy-updates 1:9.18.1-1ubuntu1.6 -> 1:9.18.1-1ubuntu1.7
bind9-host/jammy-updates 1:9.18.1-1ubuntu1.6 -> 1:9.18.1-1ubuntu1.7
bind9-libs/jammy-updates 1:9.18.1-1ubuntu1.6 -> 1:9.18.1-1ubuntu1.7
...

Этот вывод показывает, что для пакетов, таких как bind9-dnsutils, bind9-host и bind9-libs, доступны более новые версии. Первое номер версии - это текущая установленная версия, а второе номер версии после -> - это более новая версия, доступная для обновления.

Если нет пакетов для обновления, вывод будет просто показывать Listing... Done, за которым следует пустая строка.

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

Нажмите Продолжить, чтобы перейти к следующему шагу.

Симуляция обновления с помощью команды apt-get upgrade --dry-run

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

Мы будем использовать команду apt-get upgrade с опцией --dry-run. Обратите внимание, что apt-get - это более старый командный инструмент для APT, но он по-прежнему широко используется и работает вместе с более новым командом apt.

В терминале введите следующую команду и нажмите Enter:

sudo apt-get upgrade --dry-run

Разберем эту команду по частям:

  • sudo: Опять же, нам нужны административные привилегии для симуляции обновления.
  • apt-get: Командный инструмент для управления пакетами.
  • upgrade: Эта команда сообщает apt-get, что вы хотите обновить установленные пакеты до их последних версий.
  • --dry-run: Это ключевая опция здесь. Она сообщает apt-get пройти процесс определения, какие пакеты будут обновлены, установлены или удалены, но без фактического выполнения любых из этих действий.

В выводе будет показан обзор действий, которые были бы выполнены, если бы вы запустили команду без опции --dry-run.

Вы можете увидеть вывод, похожий на следующий:

Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
Calculating upgrade... Done
The following packages will be upgraded:
  bind9-dnsutils bind9-host bind9-libs ...
...
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.

В этом выводе перечислены пакеты, которые были бы обновлены. Также сообщается, сколько пакетов было бы обновлено, установлено новыми (как зависимости), удалено или оставлено без обновления (не обновлено из-за проблем с зависимостями).

Использование опции --dry-run - это безопасный способ предварительно просмотреть эффекты обновления перед его выполнением.

Нажмите Продолжить, чтобы завершить эту лабораторную работу.

Резюме

В этой лабораторной работе мы научились проверять наличие доступных обновлений системы в Linux с помощью менеджера пакетов apt. Мы начали с обновления списка доступных программных пакетов из репозиториев с использованием команды sudo apt update. Это гарантирует, что наша система имеет актуальную информацию о версиях пакетов.

Затем мы обычно выводим список пакетов, для которых доступны обновления, с помощью команды apt list --upgradable, а затем симулируем процесс обновления без фактической установки с использованием команды apt-get upgrade --dry-run. Эти шаги позволяют нам увидеть, какие пакеты будут обновлены, и выявить возможные проблемы перед выполнением реального обновления.