Guider

Fix: Kan ikke korrigere problemer ‘Du har holdt ødelagte pakker’

Du kan oppdage at når du prøver å installere en pakke på Linux, finner du en fryktet linje som sier E: Kan ikke løse problemer, du har holdt ødelagte pakker. Installasjonen nekter deretter å gå videre enn dette punktet. Du kan finne dette på hvilken som helst Linux-distribusjon som bruker apt-get for å administrere pakker, som inkluderer Debian så vel som de forskjellige Linux Mint og Ubuntu spin-offs.

Det er forårsaket av ødelagte avhengigheter, som er en bivirkning av å ha installert pakker som er avhengig av andre pakker som ikke er installert. Når apt-get installerer noe, merker det at det ikke har tilgang til noe det trenger og derfor ikke kan fortsette. Noen få grunnleggende kommandolinjetriks samt et grafisk verktøy kan fikse alt raskt.

Metode 1: Bruke dpkg –configure for å fikse holdte ødelagte pakker

Mens du jobber på terminalen, prøver å løpe sudo dpkg –konfigurer -a for å starte en automatisk oppdateringsprosess som ser etter ødelagte avhengigheter på systemet ditt forårsaket av pakker som ikke er installert. Dette verktøyet skal automatisk installere en hvilken som helst pakke som du føler mangler uten brukerinnblanding, men hvis du blir bedt om å installere noe, bør du trykke på y-tasten for å svare på ledeteksten.

Hvis det ikke finner noen ødelagte pakker, bør du ikke se noen utdata. Vi kjørte dette på en ren testmaskin som kjørte Xubuntu, så den fant ingen feil, men hvis du har fått problemer "Kan ikke korrigere problemer, du har holdt ødelagte pakker", kan dette finne flere pakker du trenger å installere . Når du har kjørt den, kan du prøve sudo apt-get install -f fra kommandolinjen.

Dette programmet vil gå gjennom og bygge en avhengighetsliste og deretter lese tilstandsinformasjon. Hvis du får en melding om at det var “0 oppgradert, 0 nylig installert, 0 for å fjerne og 0 ikke oppgradert” -pakker, arbeidet du enten uten ødelagte avhengigheter eller den forrige kommandoen fikset alt. På dette punktet kan du løpe sudo apt-get clean && sudo apt-get update etterfulgt av sudo apt-get oppgradering for å oppdatere hver pakke på systemet ditt. Dette kan ta litt tid, avhengig av hvor lenge systemet ditt hadde disse pakkeproblemene.

Metode 2: Bruke dist-upgrade Command

Hvis du får en melding om at "noen pakker har blitt holdt tilbake", slik at du ikke kunne fullføre den tidligere kommandoen, bør du kjøre sudo apt-get dist-upgrade for å installere resten av disse pakkene. I tillegg til å utføre funksjonen til en vanlig oppgradering, håndterer dist-upgrade-alternativet endrede avhengigheter med nyere versjoner av pakker. Siden apt-get har et spesielt konfliktsystem, prøver det vanligvis å oppgradere de viktigste pakkene på bekostning av å ikke gjøre noe for de som er mindre viktige for systemet ditt. Bruk av denne kommandoen tvinger selv de til å oppdatere.

Når det er sagt, hvis det ikke blir oppdaget ødelagte pakker, vil du bare ende opp med en tredje melding om at ingenting er oppgradert og ingenting nylig installert. Hvis dette er tilfelle, kan du prøve sudo apt-get oppgradering igjen slik at hvis det var noen endringer, kan den automatiske oppgraderingsrutinen ta tak. På den annen side, hvis du vet det spesifikke navnet på pakken du trenger, kan du installere den manuelt.

Anta for eksempel at GNUStep-kjøretidskomponenten var det du manglet siden du ønsket å bruke stemmesyntese. Du kan bare skrive sudo apt-get install gnustep-gui-runtime for å installere denne viktige pakken. Husk at dette bare er et eksempel, og du kan erstatte gnustep-gui-runtime med navnet på pakken du trenger å installere. Moderne distribusjoner basert på apt-get-standarden har flere tusen pakker, men så lenge du vet navnet på den du leter etter, vil det tvinge den til å installere.

Metode 3: Løs ødelagte pakker med Synaptic

Hvis du har den grafiske pakkeadministratoren Synaptic, kan du også bruke dette verktøyet til å fikse eventuelle ødelagte pakker du måtte ha. Åpne programmet og velg deretter rullegardinmenyen Rediger. Du bør ha alternativet "Fix Broken Packages" i denne menyen, så velg det hvis du gjør det. Det vil ikke ta lang tid å kjøre hvis det ikke er mange ødelagte pakker, men det kan finne en rekke feil som vil redusere utførelsen.

Når den er ferdig med å løpe gjennom alt, vil du legge merke til ordene "Vellykket avhengighetsproblemer" nederst i statuslinjen.

Du kan nå oppdatere og installere pakker akkurat som normalt. De fleste brukere vil bare gjøre ting på denne måten hvis de allerede jobbet i Synaptic, men det er der når du trenger det. Når den er kjørt, kan du lukke Synaptic og jobbe fra ledeteksten igjen eller fortsette å gjøre endringer her.

$config[zx-auto] not found$config[zx-overlay] not found