Hur man fixar trasiga paket på Linux

Snabblänkar

  • Hur går ett Linux-paket sönder?
  • Hur man åtgärdar trasiga paket på Linux
  • Säkerhetskopiera alltid ditt system

Nyckelalternativ

  • Kör "sudo apt install -f" för att installera om och fixa trasiga paket på Ubuntu och Debian-baserade distributioner.
  • Du kan fixa trasiga paket på Fedora, CentOS och RHEL genom att köra kommandot "sudo dnf –refresh reinstall <package_name>".
  • På Arch Linux, kör kommandot "sudo pacman -S –force <paketnamn>" för att tvinga ominstallera ett trasigt paket.

Trasiga paket i Linux är programvarupaket som har blivit korrupta eller skadade. Du kan använda pakethanterare för att identifiera och fixa trasiga paket och förhindra problem som programfel, systeminstabilitet och dataförlust.

Så här kan du hitta och lösa trasiga paketfel på Linux.

Hur går ett Linux-paket sönder?

Linux-paket är filer som innehåller installerbar programvarukod. Dessa paket har alla nödvändiga filer, beroenden och instruktioner för att programvaran ska fungera som avsett. När ett paket går sönder betyder det att något har gått fel med installationen eller konfigurationen och att det inte längre är funktionellt eller uppdaterat.

Till exempel, när en process avbryts kan den lämna ett paket i ett halvt installerat eller halvt borttaget tillstånd. Dessutom kan beroendeproblem uppstå när ett paket förlitar sig på andra paket (beroenden) för att fungera korrekt, och om ett beroende saknas eller är trasigt kan det göra huvudpaketet oanvändbart.

Dessutom kan förvarsproblem också leda till trasiga paket. Förvar är samlingar av programvarupaket, och om de är felkonfigurerade eller innehåller felaktiga paket kan det orsaka problem med paketen som installeras från dem.

Hur man åtgärdar trasiga paket på Linux

Processen för att fixa trasiga paket varierar beroende på Linux-distributionen du använder. Här kommer vi att diskutera metoderna för Ubuntu/Debian, Fedora/CentOS/RHEL och Arch Linux.

Att ta bort trasiga paket kan vara riskabelt om det görs på fel sätt. Det rekommenderas i allmänhet att försöka fixa det trasiga paketet först. Men om paketet inte längre behövs och du är säker på att det inte orsakar konflikter, kan du ta bort det med lämpligt kommando för pakethanteraren.

Uppdatera trasiga paket på Ubuntu och Debian

Om du är en Ubuntu/Debian-användare kan du fixa de trasiga paketen med antingen APT eller kommandot dpkg. Låt oss börja med att uppdatera paketen med APT.

APT är standardpakethanteraren på Ubuntu, Debian och relaterade distributioner. Du kan använda den för att installera, uppgradera och ta bort paket.

Kör följande kommando för att uppdatera paketindexet medan du fixar korrupta paket:

sudo apt update –fix-missing

Använd -f eller –fix-broken för att identifiera och fixa trasiga paket genom att installera om dem från de officiella förråden.

sudo apt install -f

När du har installerat de trasiga paketen uppdaterar du din paketlista genom att köra detta:

sudo apt update

Om utdata inte har några fel har du fixat trasiga paket.

Du kan också använda kommandot dpkg för att upptäcka och fixa trasiga paket. För att omkonfigurera eventuella delvis installerade paket med dpkg, använd:

sudo dpkg –configure -a

Här, –configurealternativet säger åt dpkg att konfigurera ett paket. När en paketinstallation misslyckas kan den lämna paketet i ett okonfigurerat tillstånd. Det här alternativet hjälper till att lösa sådana problem. Vidare står alternativet -a för alla och används för att välja alla paket som är i ett okonfigurerat tillstånd, snarare än att specificera ett enda paket.

Låt oss skicka grep med dpkg för att se en lista över trasiga paket som behöver installeras om:

sudo dpkg -l | grep ^..r

När du har listan över trasiga program kan du ta bort dem ett efter ett med följande kommando:

sudo dpkg –purge <paketnamn>

Här säger alternativet –purge till dpkg att ta bort paketet helt, inklusive dess konfigurationsfiler. När du har tagit bort alla trasiga paket måste du rensa upp paketcachen med:

sudo apt clean

Slutligen, för att uppdatera paketlistan, kör:

sudo apt update

Om det inte finns några fel i utdata har du åtgärdat alla trasiga paket.

Ibland, när du fixar trasiga paket, får du dpkg-låsfelet. Det här felet uppstår när du försöker installera ett paket, men systemet tror att en annan installation redan pågår. Ibland dyker det upp även om inga andra installationer pågår.

För att fixa det kan du vänta tills eventuella pågående installationer är klara, leta efter automatiska uppdateringar eller, om det behövs, försiktigt ta bort låsfilen själv. För att ta bort låsfilen, kör det här kommandot:

sudo rm /var/lib/apt/lists/lock

Du kan också ta bort cachelåset med detta:

sudo rm /var/cache/apt/archives/lock

Genom att ta bort dessa låsfiler kommer du att kunna använda pakethanteringskommandona igen utan problem.

Installera om korrupta paket på Fedora och RHEL

YUM och DNF är användbara för att hantera trasiga paket, men problem kan fortfarande uppstå med tanke på det stora antalet paket som finns på ett Linux-system. Du kan dock fixa trasiga paketproblem på Fedora, CentOS och RHEL genom att använda RPM-pakethanteraren.

För att identifiera potentiella problem, verifiera alla paket på ditt system med flaggan -V:

sudo rpm -Va

Detta kommando kontrollerar paketmetadata som lagras i RPM-databasen för att identifiera eventuella problem med dina paket. Du kan också lösa trasiga paketproblem genom att uppgradera installerade paket till deras senaste tillgängliga version.

sudo dnf upgrade -b

Alternativet -b tvingar DNF att endast överväga den senaste versionen av paket.

Att hitta ett trasigt paket bland många kan vara frustrerande. Men när du har identifierat ett specifikt paket som är trasigt kan du installera om det med det här dnf-kommandot:

strong>

sudo dnf –refresh installera om <paketnamn>

Se till att ersätta <paketnamn> med det faktiska namnet på det trasiga paketet.

Om du använder YUM och möter något trasigt paketfel, försök att installera om alla paket.

sudo yum installera om *

Tyvärr, om ominstallation av alla paket inte löser ditt problem, kan du försöka hoppa över de trasiga paketen.

sudo yum update –skip-broken

Om problemet inte är löst efter att ha följt alla ovanstående steg kan du behöva ta bort det trasiga paketet och dess beroenden :

sudo dnf remove packagename

Åtgärda trasiga paket på Arch Linux

På Arch Linux , kan du enkelt upptäcka och fixa trasiga paket med Pacman. Pacman har en -Qkflagga för att kontrollera systemet för paketproblem. Du kan få en lista över alla för närvarande installerade paket på ditt system med detta:

sudo pacman -Qk

Du kan använda den här listan för att söka efter installerad programvara, identifiera föråldrade paket och hålla reda på din systemkonfiguration. Men för att få en lista över alla paket med saknade filer, kör detta:

sudo pacman -Qk 2>/dev/null | grep -v ' 0 saknade filer'

När du har listan över trasiga paket kan du installera om dem. Du kan göra detta individuellt med följande kommando:

sudo pacman -S –force <paketnamn>

Du kan använda alternativet –force för att skriva över befintliga paket. Pacman kommer att uppdatera paketlistan och installera om det angivna paketet och åtgärda eventuella trasiga beroenden på vägen.

Du kan också fixa trasiga paket genom att uppdatera systemets paketlista.

sudo pacman -Syu

Säkerhetskopiera alltid ditt system

Bara en upplysning, fix trasiga paket bör inte störa systemets stabilitet, men det är alltid en bra idé att säkerhetskopiera ditt system innan du gör några ändringar. För att undvika trasiga paket i första hand, håll bara din paketlista uppdaterad, var försiktig när du installerar eller tar bort paket och använd pakethanterarens säkerhetsfunktioner.


Posted

in

by

Tags:

Comments

Leave a Reply