Я пытаюсь написать cronjob, который регулярно обновляет пакеты из данного репозитория yum, выполнив следующую команду:
yum -q -e 0 -d 0 -y update --disablerepo='*' --enablerepo='my-yum-repo'
Чтобы предотвратить «предупреждения блокировки yum», как показано ниже ...
Existing lock /var/run/yum.pid: another copy is running as pid 4902.
Another app is currently holding the yum lock; waiting for it to exit...
The other application is: yum
Memory : 42 M RSS (325 MB VSZ)
Started: Wed Apr 3 01:10:07 2019 - 00:01 ago
State : Running, pid: 4902
... Я попытался заключить код в цикл while для проверки существования файла yum.pid следующим образом:
*/5 * * * * root while [ -f /var/run/yum.pid ]; do sleep 1; done && yum -q -e 0 -d 0 -y update --disablerepo='*' --enablerepo='my-yum-repo'
К сожалению, время от времени по-прежнему появляются «предупреждения блокировки yum».
Я тоже так пробовал, и время от времени по-прежнему появляются «предупреждения блокировки yum»:
while [ `pgrep 'yum|rhn_check'` ]; do sleep 1; done && yum -q -e 0 -d 0 -y update --disablerepo='*' --enablerepo='my-yum-repo'
У вас есть идея, как я мог предотвратить их появление? Я хотел бы избежать перенаправления stdout в / dev / null, потому что мне нужно знать, если во время обновления пакетов возникают "настоящие" проблемы.
Заранее спасибо за помощь!