Yum
yum lockfile 被另一個使用者持有
Amazon Linux 2
實例由 Ansible Playbook 操作,該手冊一個接一個地執行多個yum
任務。需要對以下語法進行哪些特定更改才能使連續
yum
任務執行而不會因程序衝突而停止?目前,
yum
下面的第二個任務失敗了,因為 Ansible 不知道如何處理聽到前面的yum
任務還沒有放開yum
lockfile
.
yum
這是呼叫以下第二個任務 時歸檔的目前錯誤消息:TASK [remove any previous versions of specific stuff] ************************************************************************************************************************************ fatal: [10.1.0.232]: FAILED! => {"changed": false, "msg": "yum lockfile is held by another process"}
兩個連續的
yum
任務目前寫成如下:- name: Perform yum update of all packages yum: name: '*' state: latest - name: remove any previous versions of specific stuff yum: name: thing1, thing2, thing3, thing4, thing5, thing6 state: absent
我想解決方案只是添加一些東西告訴 Ansible 等到第一個任務的
yum
鎖被釋放。但是應該使用什麼語法呢?
我很確定你在使用 Ansible 2.8 時遇到了這個問題,它現在想在執行 YUM 包安裝時崩潰。解決此問題的簡單方法是將
lock_timeout
var 設置為 100 +,因為預設設置為 0。- name: Install yum utils yum: name: - yum-utils - "@Development tools" lock_timeout: 180
不幸的是,這樣做的麻煩在於,當您有很多安裝 YUM 包的 Ansible 任務時,您需要將此 var 添加到每個任務中。我一直在尋找一種方法來在全球範圍內設置它,但並不快樂。希望有幫助!
連結: https ://github.com/ansible/ansible/issues/57189 https://docs.ansible.com/ansible/latest/modules/yum_module.html