เป็นส่วนหนึ่งของเวิร์กโฟลว์ของฉัน ฉันใช้เซิร์ฟเวอร์ Ubuntu 20.04.3
ดังนั้นฉันจึงเตรียมอิมเมจสำหรับ VM และปรับใช้โดยใช้ Ansible
เนื่องจากเป็น env ที่ไม่มีการเข้าถึงอินเทอร์เน็ต แพ็คเกจทั้งหมดที่ฉันติดตั้งจึงดาวน์โหลด .deb ไว้ก่อนหน้านี้ โดยดำเนินการคำสั่งเชลล์อย่างง่าย:
dpkg -i deb_1.deb deb_2.deb deb_3.deb deb_4.deb
dpkg -i deb_5.deb deb_6.deb deb_7.deb deb_8.deb
บางครั้งประมาณ 5% ของกรณี ฉันได้รับข้อผิดพลาดนี้เป็นระยะๆ อาจเกิดขึ้นได้ในการติดตั้งครั้งแรก
"stderr_lines": ["dpkg: ข้อผิดพลาด: การล็อกส่วนหน้า dpkg ถูกล็อกโดยกระบวนการอื่น",
"E: กระบวนการย่อย dpkg --set-selections ส่งคืนรหัสข้อผิดพลาด (2)", "E: การดำเนินการ dpkg ล้มเหลว คุณรูตไหม"]
ฉันได้พยายามแก้ไขปัญหานี้โดย:
- รายการ
ก่อนการติดตั้งแต่ละขั้นตอน ให้ดำเนินการลบไฟล์ล็อกด้วยตนเอง
- /var/lib/dpkg/lock
- /var/lib/dpkg/lock-frontend
- /var/cache/apt/archives/lock
แต่แม้หลังจากการลบด้วยตนเอง ข้อผิดพลาดยังคงปรากฏขึ้น
พยายามติดตั้งแพ็คเกจด้วยโมดูล Ansible apt และ "deb" arg - แต่ลักษณะการทำงานเหมือนกัน
พยายามหาว่ากระบวนการใดเป็นเจ้าของไฟล์ล็อคด้วย "lsof" แต่กระบวนการใดไม่ได้เป็นเจ้าของไฟล์
มีวิธีแก้ไขพฤติกรรมที่แปลกประหลาดและบั๊กนี้หรือไม่?
กระบวนการใดที่รับผิดชอบในการสร้างไฟล์ล็อคในบางครั้งเมื่อเริ่มต้นระบบ