Jak opravit nefunkční balíčky v Ubuntu 16.04 a Debian 9

Jak opravit rozbité balíčky v Ubuntu 16.04 a Debianu 9

Ubuntu i Debian používají balíčky, které rozšiřují možnosti systému a umožňují uživatelům dělat se svými počítači více. Nicméně jakkoli je tento systém balíčků skvělý, stále se může něco porouchat. Ať už se jedná o špatnou instalaci, špatnou konfiguraci, nebo pokud něco externě upravilo soubory po instalaci, balíčky se někdy mohou pokazit a přestat fungovat, čímž se stanou „nefunkčními“. To může ovlivnit i apt-get, vestavěný správce balíčků, což může vést k tomu, že nebudete moci instalovat žádné další balíčky, aktualizovat je nebo dokonce některé úplně odstranit.

V tomto návodu si projdeme několik metod, jak opravit nefunkční balíčky jak v Ubuntu 16.04, tak v Debianu 9.

. Protože k tomuto problému může dojít z několika důvodů, existuje několik řešení, z nichž některá mohou, ale nemusí na vašem počítači fungovat. Proto je nejlepší podívat se, který konkrétní balíček se rozbil a proč, což vám pomůže rozhodnout, kterou metodu použít jako první.

Obsah

Metoda 1: Použití apt-get

Většinou lze rozbitý balíček, který se rozbil po instalaci, poměrně snadno opravit díky integrovanému nástroji uvnitř apt-get. Provedením následujících příkazů se pokusíte opravit všechny nefunkční balíčky, které jsou v systému aktuálně nainstalovány:

sudo apt-get update --fix-missing
sudo apt-get install -f

(volba -f je zkratka pro fix-broken.)

Před provedením druhého příkazu zkuste zjistit, zda první příkaz váš problém vyřeší. Dejte mu několik okamžiků, aby se pokusil opravit případné nalezené chyby. Pokud se to podaří, zkuste použít balíček, který byl poškozený – pravděpodobně už bude opravený. V případě, že stále není opraven, přejděte k dalšímu řešení uvedenému níže.

Metoda 2: Použití dpkg a apt-get

Toto řešení pomůže, pokud se softwarový balíček při instalaci rozbil. Před pokračováním můžete zkusit použít předchozí metodu, protože může pomoci. Nejprve vyčistíme apt-get a zkusíme pomocí dpkg nakonfigurovat všechny balíčky, které to potřebují:

sudo dpkg --configure -asudo apt-get cleansudo apt-get update

Poté se podívejte, zda byl balíček opraven. Pokud ne, bude možná nutné odstranit soubory zámků. Zamykací soubory se používají k tomu, aby byly prostředky dostupné pro určité programy – pomáhají zabránit jiným programům v přístupu k souborům ve stejnou dobu. To lze provést jednoduchým odstraněním seznamu lockfile:

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

Poté zkuste ještě jednou spustit výše uvedené příkazy. Poté zkuste balíček znovu nainstalovat a zjistěte, zda jej nyní lze úspěšně nainstalovat.

Metoda 3: Použití dpkg pro násilné odstranění

Někdy, ve vzácných případech, výše uvedené příkazy nefungují a poškozený balíček nelze opravit. V takovém případě budete muset balíček odstranit ručně a násilím. Tato metoda vyžaduje, abyste již věděli, který balíček je poškozený.

Problematický balíček můžete nejprve zkusit odstranit normálně pomocí příkazu apt-get zadáním následujícího příkazu:

sudo apt-get remove

Pravděpodobně to nebude úspěšné, ale stojí za to to to zkusit, než ho odstraníte násilím.

V závislosti na chybách, které se objeví při pokusu o normální odstranění balíku, byste mohli být schopni identifikovat poškozený balík pomocí příkazů dpkg a grep:

dpkg -l | grep ^..r

Tento příkaz vypíše všechny balíky, pak grep vypíše všechny výsledky obsahující ve třetím poli příznak ‚r‘, což znamená „reinst-required“ (nutná reinstalace). Pokud se objeví poškozený balíček, budete jej moci odstranit.

Provedením následujícího příkazu balíček z počítače násilně odstraníte. Nezapomeňte zadat heslo pro autorizaci odstranění. Nahraďte jej názvem poškozeného balíčku.

sudo dpkg --remove --force-remove-reinstreq

Poté vyčistěte a aktualizujte apt-get:

sudo apt-get cleansudo apt-get update

Poté zkuste balíček nainstalovat od začátku. Nyní by se měl nainstalovat normálně.

Další řešení

Tyto metody jsou nejlepšími způsoby, jak opravit nebo odstranit nefunkční balíček ze systému – někdy to však nebude stačit. Ve vzácných případech systém poškozený balíček vůbec neuvidí, ale přesto bude bránit normálnímu fungování vašeho apt-getu. V těchto případech je obvykle nejlepším řešením ruční procházení a odstraňování souborů. Postup odstraňování těchto souborů se však u jednotlivých balíků liší a může být riskantní. Proto před pokusem o odstranění souborů ze systému nejprve vyzkoušejte tato řešení.

Podle těchto metod snad úspěšně opravíte nebo odstraníte všechny nefunkční balíčky nalezené ve vašem systému. Nefunkční balíčky samozřejmě nemusíte opravovat sami, pokud využíváte některou z našich služeb Managed Linux VPS – v takovém případě můžete jednoduše požádat naše odborné linuxové administrátory, aby to udělali za vás. Jsou vám k dispozici 24 hodin denně, 7 dní v týdnu a pomohou vám nefunkční balíčky okamžitě opravit.

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna.