Это взято из статьи в блоге, которую я написал некоторое время назад.
Вы можете попросить yum получить все пакеты и их зависимости на вашей ВМ, а затем создать из них репозиторий, который затем будет использоваться вашим сервером.
Обратите внимание, что ВМ должна иметь только минимальные пакеты, необходимые для ее работы; поскольку вы не знаете, что установлено на сервере, вы хотите, чтобы yum загрузил как можно больше зависимостей.
На ВМ:
# mkdir /root/tmppkg
# yum --downloadonly --downloaddir=/root/tmppkg install <packages>
# chown -R root:root /root/tmppkg
# createrepo /root/tmppkg
# chmod -R 755 /root/tmppkg
Перенесите каталог tmppkg
на сервер, скажем, в /opt
.
Затем создайте файл /etc/yum.repos.d/local.repo
на сервере в таком виде:
[local]
name=Local repository
baseurl=file:///opt/tmppkg
enabled=1
gpgcheck=0
protect=1
Теперь запустите на сервере:
# yum install <packages>
и пакеты будут установлены из локального репо.
После завершения работы yum вы можете удалить /etc/yum.repos.d/local.repo
и /opt/tmppkg
для экономии места.
Сценарий / etc / profile
обычно создает файлы в /etc/profile.d
, заканчивающиеся на .sh
и не обрабатывает вложенные папки.
Таким образом, вам придется связать каждый файл .sh
из вашего каталога /usr/manual/profile.d
, либо вы должны написать оболочку, которая находится внутри /etc/profile.d
, который заботится о ваших собственных файлах .sh
в /usr/manual/profile.d
. Если подумать, последний может быть более элегантным.