Чтобы уточнить, я смотрю, как сохранить переменную yum как РЕЗУЛЬТАТ команды. Команда, которую я использую для получения версии ОС, для меня не имеет значения, я уверен, что есть способы получить ее лучше, чем то, что я сделал ниже.
Я хочу создать настраиваемую переменную yum, которая является результатом выполнения
cat /etc/redhat-release | awk '{ print $3 }'
Документация по созданию переменных, похоже, позволяет создавать статические переменные внутри файла в /etc/yum/vars/$variablename
.
Так что я хочу иметь /etc/yum/vars/dotrelease
быть результатом моей команды выше, основанной на системе, в которой я нахожусь.
Затем я могу установить репо baseurl на http://localrepo.com/repo/centos/$ dotrelease / os / $ basearch /
Мое настраиваемое репо разделено точкой выпуска, где по умолчанию $ releasever смотрит только нумерованный выпуск, например, переменная $ releasever в centos6.4 равна «6».
Я понимаю, что могу просто
echo (cat /etc/redhat-release | awk '{ print $3 }') > /etc/yum/vars/dotrelease
но мне пришлось бы запускать это на каждой машине, которую я развертываю, вместо того, чтобы просто хранить переменную в файле.
Марионетка вообще присутствует в вашем окружении?
# facter operatingsystemrelease
6.5
Довольно чисто ...
Но в вашем локальном репозитории, действительно ли вы распространяете разные пакеты в зависимости от версии вашей EL-системы? Это может не иметь смысла, поскольку EL имеет тенденцию автоматически перемещаться / обновляться до последней версии в основной версии. Например. Вы не увидите много людей, использующих RHEL 6.2. Cегодня, потому что нет доступных обновлений.