Важно поддерживать операционную систему в актуальном состоянии, поскольку обновления содержат исправления ошибок, улучшения производительности, исправления безопасности и другие. В случае Linux обновление системы в основном означает поддержание всех установленных пакетов в актуальном состоянии.
Автономное обновление – интересная концепция, когда необходимо обновить систему, но без надежного подключения к Интернету. В такой ситуации пакеты обновлений загружаются вручную из другого источника и применяются к автономному компьютеру.
В этом руководстве вы узнаете, как обновить рабочую станцию Fedora в автономном режиме.
Автономное обновление Fedora
Fedora – это современный дистрибутив Linux с надежным управлением пакетами. Благодаря менеджерам пакетов (DNF и YUM) можно обновлять Fedora без подключения к Интернету. Тем не менее, для наилучшего восприятия автономный компьютер может быть подключен к Интернету на короткое время.
Настоятельно рекомендуется использовать интерфейс командной строки для обновления Fedora в автономном режиме.
Получение списка обновлений пакета
Первый шаг – определить, для каких пакетов доступны обновления. Только для этого шага необходимо подключение к системе через Интернет.
Список обновлений пакетов с использованием YUM:
Следующая команда YUM выведет список всех пакетов, для которых доступны обновления.
$ yum repoquery --upgrade --queryformat '%{name}.%{arch}'
Для следующего шага нам нужно, чтобы этот список был экспортирован в текстовый файл.
$ yum repoquery --upgrade --queryformat '%{name}.%{arch}' > update_list.txt
Список обновлений пакетов с использованием DNF:
Следующая команда DNF выведет список всех пакетов, для которых доступны обновления.
$ dnf repoquery --upgrade --queryformat '%{name}.%{arch}'
Экспортируйте список в текстовый файл.
$ dnf repoquery --upgrade --queryformat '%{name}.%{arch}' > update_list.txt
Список пакетов с использованием RPM:
Если подключение к Интернету недоступно, альтернативной стратегией является получение списка всех установленных пакетов и работа с ним. Конечно, такой способ значительно увеличит продолжительность процесса. Это не рекомендуется и следуйте только в случае необходимости.
Скачайте все установленные пакеты в удобном формате.
$ rpm -qa --queryformat "%{NAME}\n"
Экспортируйте этот список в текстовый файл.
$ rpm -qa --queryformat "%{NAME}\n" > update_list.txt
Скачивание пакетов
Пришло время загрузить нужные пакеты. Экспортируйте текстовый файл, содержащий список пакетов для загрузки, загрузите его на другой компьютер Fedora и выполните любой из следующих методов, чтобы загрузить их.
Сначала проверьте, содержит ли текстовый файл только список пакетов и ничего больше.
$ vim update_list.txt
Загрузите пакеты обновлений с помощью YUM:
Следующая команда YUM загрузит пакеты, перечисленные в текстовом файле, и сохранит их в указанном каталоге. Чтобы избежать проблем, связанных с зависимостями, используйте флаг «–resolve».
$ yum download --resolve $(cat update_list.txt) --downloaddir="<directory> "
Загрузите пакеты обновлений с помощью DNF:
Подобно YUM, следующая команда DNF загрузит и сохранит все пакеты (и зависимости) в определенном каталоге.
$ dnf download --resolve $(cat update_list.txt) --downloaddir="<directory>"
Установка обновлений
Наконец, пришло время обновить автономную машину. Экспортируйте пакеты обновлений в автономную систему и выполните любой из следующих методов для установки пакетов RPM.
Установите обновления с помощью YUM:
Следующая команда установит все пакеты RPM с помощью YUM.
$ sudo yum install /<path_to_rpm>/*.rpm
Установите обновления с помощью DNF:
Следующая команда установит все пакеты RPM с использованием DNF.
$ sudo dnf install /<path_to_rpm>/*.rpm
Последние мысли
Это полное руководство по автономному обновлению рабочей станции Fedora. Этот метод будет работать в любой современной версии Fedora, и это совсем не сложная задача.
Единственный недостаток этого подхода – время и усилия, которые он требует. Хотя ручная задача минимальна, самая трудоемкая часть – это загрузка и установка всех этих пакетов RPM (особенно, если список слишком длинный).
Удачных вычислений!