с помощью следующей команды вы убиваете терминал 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"'
Yum загружает пакеты в /var/cache/yum/<repo>/packages
. Поэтому, если вы скопируете пакеты из этого каталога на другой сервер по тому же пути, это должно сработать. Но имейте в виду:
Наилучшим подходом будет сначала очистить пакеты на компьютере, подключенном к Интернету, чтобы остались и скопированы только обновленные/установленные из последнего yum update
запуска. С другой стороны, это будет означать, что механизм дельта-об/мин не будет использоваться, и придется загружать полный размер каждого об/мин, а не только различия.
Если целевая машина вообще не имеет доступа к Интернету, yum не будет уведомлен о новых доступных пакетах. Таким образом, после копирования пакетов вы должны использовать yum install./*.rpm
для их установки. Подход, который я использовал на машинах с низкой пропускной способностью Интернета, состоит в том, чтобы запустить yum check-update
при подключении к сети, а затем, после того, как все пакеты будут скопированы в /var/cache/yum/<repo>/packages
для обновления. Yum найдет пакеты в кеше и не будет скачивать их из сети.
Если вам нужно часто обновлять большое количество компьютеров, лучше всего настроить локальный репозиторий и сервер обновлений. Это простая задача, вы найдете множество руководств, -как это сделать.
В Red Hat есть статья с решением, в которой рассматриваются возможные подходы к обновлению отключенной системы.:Как мы можем регулярно обновлять отключенную систему? (Система без подключения к Интернету )? .
Доступны следующие параметры.:
Настройте сервер Red Hat Satellite. Для этого требуется дополнительная подписка. Сервер Satellite подключается к онлайн-репозиториям Red Hat. Все системы подключаются к серверу Satellite для загрузки обновлений.
Загрузите обновления в другую подключенную систему. Перенесите пакеты в целевую систему и обновите.
Использовать выпускной носитель (Образы DVD/ISO определенных выпускных версий ).
Вручную загрузите пакеты с веб-сайта Red Hat. Это трудоемкий -подход, который трудно автоматизировать, и вам придется иметь дело с разрешением зависимостей вручную.
Создайте локальный репозиторий. Этот подход предполагает использование инструмента reposync
для загрузки пакетов в одну систему. Затем пакеты передаются в другую систему как репозиторий yum с использованием HTTP/NFS/FTP.
В вашем случае, похоже, вы работаете со вторым подходом. Более подробную информацию об этом методе можно найти здесь:Как обновить автономный сервер Red Hat Enterprise Linux без сетевого подключения к Red Hat/Proxy/Satellite? . В этой статье рекомендуется скопировать базу данных RPM из целевой системы, а затем использовать yum update --downloadonly
для получения новых пакетов.
Вы также можете исследовать другие варианты и посмотреть, подходят ли они лучше для задачи. Поскольку в настоящее время вы пытаетесь выполнить обновление с версии 7.2 до версии 7.6, использование носителя версии 7.6 (третьего подхода )может сработать.
Для более долгосрочного -временного решения я бы посоветовал рассмотреть первый подход (Satellite )или пятый подход (локальное хранилище ). Эти методы более централизованы и предлагают лучшие возможности автоматизации.