Kako rešiti »Podproces/usr/bin/dpkg je vrnil kodo napake (1)« V Ubuntuju


Nenavadno je, da v Ubuntuju in drugih distribucijah, ki temeljijo na Debianu, naletimo na težavo z zlomljenimi paketi. Včasih lahko pri nadgradnji sistema ali namestitvi programskega paketa naletite na napako »Podproces/usr/bin/dpkg je vrnil kodo napake«.

Na primer, nekaj časa nazaj sem poskušal nadgraditi Ubuntu 18.04 in naletel na napako dpkg, kot je prikazano spodaj.

Errors were encountered while processing:
google-chrome-stable
E: Sub-process /usr/bin/dpkg returned an error code (1)

To pomeni, da je paket google-chrome-stable pokvarjen ali pokvarjen. Obstaja nekaj rešitev te težave, zato še vedno ne mečite v brisačo ali zavrzite sistema.

1. rešitev: Ponovna konfiguracija paketa dpkg

Eden od sprožilcev te napake je poškodovana baza podatkov dpkg. To lahko povzroči nenadna prekinitev namestitve programskega paketa. Ponovna konfiguracija baze podatkov je eden od načinov za rešitev te težave.

Če želite to narediti, preprosto izvedite ukaz:

$ sudo dpkg --configure -a

To rekonfigurira nepakirane pakete, ki med namestitvijo niso bili nameščeni.

2. rešitev: Prisilno namestite težaven paket

Včasih se med namestitvijo programskih paketov lahko pojavijo napake. Ko se to zgodi, lahko prisilno namestite paket z možnostjo -f , kot je prikazano.

$ sudo apt install -f
OR
$ sudo apt install--fix-broken

Možnost -f in --fix-broken je mogoče medsebojno uporabljati za popravljanje prekinjenih odvisnosti, ki so posledica prekinjenega paketa ali predpomnjenega prenosa paketov.

3. rešitev: odpravite slab ali poškodovan programski paket

Če prvi dve rešitvi težave nista odpravili, lahko težavni programski paket odstranite ali očistite, kot je prikazano.

$ sudo apt remove --purge package_name

Na primer, v mojem primeru je težavo odpravilo čiščenje paketa Google chrome.

$ sudo apt remove --purge google-chrome-stable

Nato pokličite spodnje ukaze, da odstranite vse stare, neuporabljene in nepotrebne pakete, kar prav tako sprosti prostor na trdem disku.

$ sudo apt clean
$ sudo apt autoremove

4. rešitev: Odstranite vse datoteke, povezane s paketom

Nazadnje lahko ročno odstranite vse povezane s težavnim paketom. Najprej morate najti te datoteke, ki se nahajajo v imeniku/var/lib/dpkg/info, kot je prikazano.

$ sudo ls -l /var/lib/dpkg/info | grep -i package_name

Ko navedete datoteke, jih lahko premaknete v imenik/tmp, kot je prikazano

$ sudo mv /var/lib/dpkg/info/package-name.* /tmp

Lahko pa z ukazom rm ročno odstranite datoteke.

$ sudo rm -r /var/lib/dpkg/info/package-name.*

Na koncu posodobite sezname paketov, kot je prikazano:

$ sudo apt update

Nato lahko še enkrat poskusite znova namestiti programski paket.

Ta vrsta napake dpkg kaže na težavo z namestitvenim paketom, ki jo običajno povzroči prekinitev namestitvenega postopka ali poškodovana baza podatkov dpkg.

Katera koli od zgoraj omenjenih rešitev bi morala odpraviti to napako. Če ste prišli tako daleč, potem upamo, da je bila težava uspešno odpravljena in da ste lahko znova namestili svoj programski paket.