Недавно я столкнулся с ошибкой в скрипте, когда я попытался сделать следующее:
yum -y install another_package.x86_64 some_package.x86_64 && run_my_script
Сценарий хорошо работал на новом CentOS, но когда я попытался выполнить его на Cent OS 5, он some_package.x86_64
был недоступен. Но вместо ошибок и остановки yum
просто напечатали сообщение:
No package some_package.x86_64 available.
Как я могу вызвать yum
ошибку в таких ситуациях (какой IMO должен быть по умолчанию), чтобы сделать мои сценарии более надежными?
yum
счастливо возвращается0
в этом случае. Мой сценарий уже проверяет возвращаемое значение, прежде чем продолжить. Заметьте&&
?Ответы:
Как вы обнаружили, это поведение изменилось между RHEL 5 и 6 (см. Обсуждение https://bugzilla.redhat.com/show_bug.cgi?id=736694 ). По этой ссылке проверка кода возврата
yum info <pkg>
должна позволить вам прервать выполнение сценария по мере необходимости. Что-то вроде:источник
Согласно ошибке 1274211 , это было исправлено в yum-3.4.3-133.el7. Однако вам необходимо включить строгий режим.
Самый простой способ сделать это для сценариев - через переключатель командной строки:
Тем не менее, вы также можете установить его как параметр конфигурации в вашем
yum.conf
:источник