yum + как захватить все rpm, которые были установлены обновлением yum

с помощью следующей команды вы убиваете терминал gnome -:

kill $PPID

Я попробовал это с помощью xterm, но у меня нет gnome.

 xterm -hold -e "/temp/test.sh; ps -fp \$PPID; sleep 5; kill \$PPID"

Вот как это работает с терминалом gnome -:

gnome-terminal -e '/bin/ksh -c "/temp/test.sh; kill $PPID"'
0
13.09.2020, 16:28
2 ответа

Yum загружает пакеты в /var/cache/yum/<repo>/packages. Поэтому, если вы скопируете пакеты из этого каталога на другой сервер по тому же пути, это должно сработать. Но имейте в виду:

  • Наилучшим подходом будет сначала очистить пакеты на компьютере, подключенном к Интернету, чтобы остались и скопированы только обновленные/установленные из последнего yum updateзапуска. С другой стороны, это будет означать, что механизм дельта-об/мин не будет использоваться, и придется загружать полный размер каждого об/мин, а не только различия.

  • Если целевая машина вообще не имеет доступа к Интернету, yum не будет уведомлен о новых доступных пакетах. Таким образом, после копирования пакетов вы должны использовать yum install./*.rpmдля их установки. Подход, который я использовал на машинах с низкой пропускной способностью Интернета, состоит в том, чтобы запустить yum check-updateпри подключении к сети, а затем, после того, как все пакеты будут скопированы в /var/cache/yum/<repo>/packagesдля обновления. Yum найдет пакеты в кеше и не будет скачивать их из сети.

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

1
18.03.2021, 23:05

В Red Hat есть статья с решением, в которой рассматриваются возможные подходы к обновлению отключенной системы.:Как мы можем регулярно обновлять отключенную систему? (Система без подключения к Интернету )? .

Доступны следующие параметры.:

  1. Настройте сервер Red Hat Satellite. Для этого требуется дополнительная подписка. Сервер Satellite подключается к онлайн-репозиториям Red Hat. Все системы подключаются к серверу Satellite для загрузки обновлений.

  2. Загрузите обновления в другую подключенную систему. Перенесите пакеты в целевую систему и обновите.

  3. Использовать выпускной носитель (Образы DVD/ISO определенных выпускных версий ).

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

  5. Создайте локальный репозиторий. Этот подход предполагает использование инструмента reposyncдля загрузки пакетов в одну систему. Затем пакеты передаются в другую систему как репозиторий yum с использованием HTTP/NFS/FTP.


В вашем случае, похоже, вы работаете со вторым подходом. Более подробную информацию об этом методе можно найти здесь:Как обновить автономный сервер Red Hat Enterprise Linux без сетевого подключения к Red Hat/Proxy/Satellite? . В этой статье рекомендуется скопировать базу данных RPM из целевой системы, а затем использовать yum update --downloadonlyдля получения новых пакетов.

Вы также можете исследовать другие варианты и посмотреть, подходят ли они лучше для задачи. Поскольку в настоящее время вы пытаетесь выполнить обновление с версии 7.2 до версии 7.6, использование носителя версии 7.6 (третьего подхода )может сработать.

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

3
18.03.2021, 23:05

Теги

Похожие вопросы