Zoeken op website

Fix “Subproces /usr/bin/dpkg retourneerde een foutcode (1)”


Het is niet ongewoon dat er problemen optreden met kapotte pakketten in Ubuntu en andere op Debian gebaseerde distributies. Wanneer u het systeem upgradet of een softwarepakket installeert, kunt u soms de foutmelding ‘Subproces /usr/bin/dpkg heeft een foutcode geretourneerd’ tegenkomen.

De cruciale zin in deze fout is /usr/bin/dpkg, wat verwijst naar het dpkg-pakketinstallatieprogramma dat in Linux wordt gebruikt. Een pakketinstallatieprogramma beheert software, updates en afhankelijkheden. Als het beschadigd raakt, kan elke poging om nieuwe software te installeren dit foutbericht activeren.

Een tijdje geleden probeerde ik bijvoorbeeld te upgraden naar Ubuntu 22.04 en kwam ik de dpkg-fout tegen, zoals hieronder weergegeven.

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

Dit geeft aan dat het google-chrome-stable pakket kapot of beschadigd is. Er zijn een paar oplossingen voor dit probleem, dus gooi de handdoek nog niet in de ring en gooi uw systeem niet weg.

Subproces /usr/bin/dpkg repareren heeft een foutcode geretourneerd (1)

Laten we het probleem met deze kapotte pakketfout aanpakken. Ik zal je door verschillende methoden leiden, te beginnen met de eenvoudigere. Deze eerste stappen zijn eenvoudig en vereisen niet veel inspanning.

Methode 1: De dpkg-pakketdatabase opnieuw configureren

Eén van de triggers van deze fout is een beschadigde dpkg pakketdatabase. Dit kan worden veroorzaakt door het plotseling onderbreken van de installatie van een softwarepakket. Het opnieuw configureren van de database is één manier om dit probleem op te lossen.

Om dit te doen, voert u eenvoudigweg de opdracht uit:

sudo dpkg --configure -a

Hiermee worden de uitgepakte pakketten die niet tijdens het installatieproces zijn geïnstalleerd opnieuw geconfigureerd.

Methode 2: Forceer de installatie van het lastige pakket

Soms kunnen er fouten optreden tijdens de installatie van softwarepakketten. Wanneer dit gebeurt, kunt u het pakket geforceerd installeren met behulp van de optie -f, zoals weergegeven.

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

De -f optie & --fix-broken kunnen onderling uitwisselbaar worden gebruikt om defecte afhankelijkheden te repareren die het gevolg zijn van een onderbroken pakket of een pakketdownload in de cache.

Methode 3: Verwijder of verwijder het slechte of beschadigde softwarepakket

Als de eerste twee oplossingen het probleem niet hebben opgelost, kunt u het problematische softwarepakket verwijderen of opschonen, zoals weergegeven.

sudo apt remove --purge package_name

In mijn geval loste het opschonen van het Google Chrome-pakket bijvoorbeeld het probleem op.

sudo apt remove --purge google-chrome-stable

Voer vervolgens de onderstaande opdrachten uit om alle oude, ongebruikte en onnodige pakketten te verwijderen, waardoor ook ruimte op uw harde schijf vrijkomt.

sudo apt clean
sudo apt autoremove

Methode 4: Verwijder alle bestanden die aan het pakket zijn gekoppeld

Ten slotte kunt u handmatig alle bestanden verwijderen die aan het lastige pakket zijn gekoppeld. Eerst moet je deze bestanden vinden die zich in de map /var/lib/dpkg/info bevinden, zoals weergegeven.

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

Nadat u de bestanden heeft weergegeven, kunt u ze naar de map /tmp verplaatsen, zoals weergegeven

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

Als alternatief kunt u de opdracht rm gebruiken om de bestanden handmatig te verwijderen.

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

Werk ten slotte de pakketlijsten bij zoals weergegeven:

sudo apt update

U kunt het daarna nog een keer proberen door het softwarepakket opnieuw te installeren.

Conclusie

Dit type dpkg-fout wijst op een probleem met het pakketinstallatieprogramma dat meestal wordt veroorzaakt door de onderbreking van een installatieproces of een corrupte dpkg-database.

Elk van de bovengenoemde oplossingen zou deze fout moeten verhelpen. Bent u zo ver gekomen, dan hopen wij dat het probleem succesvol is opgelost en dat u uw softwarepakket opnieuw heeft kunnen installeren.

Als een van de methoden voor u heeft gewerkt, geef dan aan welke methode het probleem heeft opgelost. Als het je is gelukt deze fout op een andere manier op te lossen, deel deze dan met anderen om anderen te helpen die mogelijk hetzelfde probleem ondervinden.