Puncte:0

Comportament ciudat al dpkg cu ansible

drapel in
Aki

Ca parte a fluxului meu de lucru, folosesc serverul Ubuntu 20.04.3.

Așa că pregătesc imaginea pentru VM și o implementez folosind Ansible.

Deoarece este env fără acces la internet, toate pachetele pe care le instalez au fost descărcate anterior .deb. prin executarea unei comenzi simple de shell:

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 

Uneori, ~5% din cazuri, primesc această eroare sporadic, poate apărea la prima instalare

"stderr_lines": ["dpkg: eroare: blocarea front-end dpkg este blocată de un alt proces",
„E: Sub-procesul dpkg --set-selections a returnat un cod de eroare (2)”, „E: Executarea dpkg a eșuat. Sunteți root?”]

Am încercat să rezolv asta prin:

  1. Element din listă

Înainte de fiecare pas de instalare, efectuați ștergerea manuală a fișierului de blocare

  • /var/lib/dpkg/lock
  • /var/lib/dpkg/lock-frontend
  • /var/cache/apt/archives/lock

Dar chiar și după ștergerea manuală, eroarea continuă să apară.

  1. Am încercat să instalez pachete cu modulul Ansible apt și „deb” arg - dar comportamentul este același.

  2. Am încercat să aflu ce proces deține de fapt fișierele de blocare cu „lsof”, dar fișierul nu a fost deținut de niciun proces.

Există vreo modalitate de a remedia acest comportament ciudat și cu erori?

Ce proces este responsabil pentru crearea fișierelor de blocare uneori la pornirea sistemului?

Puncte:0
drapel cn

Raspunsul este in mesaj:

Executarea dpkg a eșuat. Esti root?

Trebuie să pui sudo în fața comenzii la modificarea locațiilor deținute de sistem.

Aki avatar
drapel in
Aki
Rulez toate comenzile cu privilegii sudo, de asemenea, am menționat că această eroare este rară și, în majoritatea cazurilor, este de lucru, prin urmare, aceasta nu este o problemă legată de permisiuni, din păcate
drapel cn
dpkg pare să creadă că nu ești, așa că probabil că trebuie să verifici cum ai configurat sudo: l-ai omis în fața comenzilor. Destul de periculos dacă ați adăugat dpkg la fișierul sudoers: asta NU vă va permite să executați comenzi în interiorul pachetului.
Aki avatar
drapel in
Aki
Mă conectez ca utilizator root, deci nu este necesar să utilizați sudo.
drapel cn
Ubuntu nu este configurat pentru a fi folosit ca root și s-ar putea foarte bine ca acesta să fie un efect secundar. Când primiți această eroare, trimiteți utilizatorul administrator și folosiți `sudo` cu dpkg` Dacă funcționează, ați găsit motivul problemei dvs. Dacă doriți să utilizați root, puteți trece la Debian. Comentariul pe care l-ați făcut este o informație CRUCIALĂ și ar fi trebuit să fie în întrebare și aș fi putut ignora întrebarea.

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.