Chyba Následující balíčky mají nesplněné závislosti již nějakou dobu trápí uživatele Ubuntu a v různých verzích Ubuntu se stále více objevuje chyba. Systém správy balíčků APT se snadno používá, ale v některých případech, například při míchání závislostí třetích stran, se může tato chyba zobrazit apt-get.
To se stane, když se pokusíte něco nainstalovat pomocí apt systému přes terminál a instalace selže bez zjevného problému. Tento problém není omezen na žádný konkrétní program, ale může se stát u poměrně málo z nich. Důvodem je, že problém spočívá v apt systému, a ne v programu, který instalujete.
Naštěstí existuje poměrně málo řešení, z nichž některá jsou snadnější a jiná obtížnější, ale pokud budete postupovat podle pokynů v níže uvedených metodách, chyby se okamžitě zbavíte.
Poznámka: Než začnete s některou z metod, je vhodné zálohovat konfigurační soubory, například takže můžete vrátit zpět všechny změny v případě, že se něco pokazí. To se provádí pomocí následujících kroků:
- Stisknutím kláves Alt, Ctrl a T na klávesnici otevřete terminál.
- Vepište
a stiskněte klávesu Enter.
- Po dokončení předchozího příkazu zadejte sudo cp / var / lib / dpkg / status /var/lib/dpkg/status.original a znovu stiskněte klávesu Enter.
Metoda 1: Použijte parametr -f
Toto je nejjednodušší pokus a vyžaduje pouze přidání dvou dalších písmen k příkazu, který zadáváte. Místo použití sudo apt-get install PACKAGENAME, kde PACKAGENAME je balíček, který se pokoušíte nainstalovat pomocí systému apt, použijte sudo apt-get install -f. The -F parametr se pokusí opravit systém, který porušil závislosti, a poté budete moci daný balíček nainstalovat.
- Otevřete a Terminál stisknutím Ctrl, Alt a T současně na klávesnici.
- Vepište sudo apt-get install -f a stiskněte Enter provést to.
- Jakmile je hotovo, zadejte sudo dpkg –configure -a, lis Enter spustit a spustit příkaz z kroku 2 ještě jednou.
Metoda 2: Použijte Aptitude
Nadání je alternativou k apt-get které můžete použít jako správce balíčků vyšší úrovně. Můžete jej použít k vyzkoušení a instalaci balíčku s ním, namísto apt-get, ale nejprve musíte nainstalovat nadání.
- Stiskněte současně tlačítko Ctrl, Alt, a T kláves na klávesnici otevřete a
- Vepište sudo apt-get install aptitude a stiskněte Enter provést příkaz.
- Vepište sudo aptitude install PACKAGENAME, kde PACKAGENAME je balíček, který instalujete, a stiskněte Enter provést to. Pokusí se nainstalovat balíček pomocí aptitude místo apt-get, což by mělo potenciálně vyřešit problém nesplněných závislostí.
Metoda 3: Ujistěte se, že jsou povolena omezená a vesmírná úložiště, a vyzkoušejte lepší server
- Stiskněte současně Alt a F2 v počítači zadejte software-properties-gtk a stiskněte
- V Software pro Ubuntu kartu, ujistěte se, že všechna úložiště (hlavní, vesmír, omezená, multiverse) jsou povoleny.
- Klikněte na seznam serverů, kde je uveden Stáhnout z, a vybrat
- Klepněte na Vyberte nejlepší server.
- lis Alt, Ctrl a T současně otevřete terminál a zadejte sudo apt-get aktualizace, poté stiskněte Po dokončení spuštění zkuste software nainstalovat znovu.
Metoda 4: Vyčistěte databázi balíčků
Poškozená databáze balíčků je potenciální příčinou nesplněných závislostí i balíků, které se neinstalují správně. Vyčištění databáze balíků to však může napravit a můžete to udělat dvěma příkazy, které vysvětlím níže. Nejprve však stiskněte Ctrl, Alt a T otevřete terminál a nezapomeňte zasáhnout Enter po příkazu, aby jej bylo možné spustit.
- sudo apt-get clean vyčistí místní úložiště ze všech načtených souborů balíků (.deb). Odstraní vše kromě uzamčených souborů z / var / cache / apt / archive a / var / cache / apt / archive / partial /.
- sudo apt-get autoclean také vyčistí načtené soubory, ale na rozdíl od předchozího příkazu tento odstraní pouze balíčky, které již nemůžete stáhnout a jsou do značné míry k ničemu.
Metoda 5: Eliminujte všechny zadržené balíčky
Držené balíčky jsou ve skutečnosti drženy, protože existují problémy se závislostmi a konflikty, které výstižný nemůže vyřešit. Vyloučení těchto balíčků znamená, že k žádným takovým konfliktům nedojde, a proto může váš problém vyřešit.
- Otevřete a Terminál stisknutím Ctrl, Alt a T
- Vepište sudo apt-get -u dist-upgrade a stiskněte Pokud existují nějaké zadržené balíčky, zobrazí se jim a vy je můžete odstranit.
- Nejprve zkuste spustit
sudo apt-get -o Debug :: pkgProblemResolver = ano dist-upgrade
a uvidíme, jestli to problém vyřeší. Pokud to skončí s X není upgradováno na konci, kde X je počet zadržených balíčků, je budete muset postupně mazat.
- Chcete-li odebrat zadržený balíček, použijte sudo apt-get remove –dry-run PACKAGENAME (PACKAGENAME je balíček, který se pokoušíte odebrat). The –Suchý běh Parametr zajišťuje, že jste informováni o tom, co se stane dál. Když jste odstranili všechny balíčky, zkuste nainstalovat ten, který problém způsobil, a uvidíte, co se stane.
Metoda 6: Vyčistit / Odebrat / Zakázat PPA
Archivy osobních balíčků jsou úložiště, která jsou hostována na Launchpadu, a slouží k upgradu nebo instalaci balíčků, které obvykle nejsou k dispozici v oficiálních úložištích Ubuntu. Nejčastěji jsou příčinou nenaplněných závislostí, zvláště když se používají k aktualizaci existujícího balíčku z úložiště Ubuntu. Můžete je deaktivovat, odebrat nebo vyčistit.
Zakázat znamená, že balíčky nainstalované z tohoto PPA již nebudou dostávat aktualizace.
- Stiskněte současně Alt a F2, a běž software-properties-gtk.
- Z Jiný software Na kartě najdete dva řádky pro každý PPA, kde jeden je pro zdroj a druhý pro kompilovaný balíček. Chcete-li zakázat PPA, měli byste zrušte zaškrtnutí obou řádků.
Očistit znamená, že všechny balíčky ve vybrané PPA budou sníženy na verzi v oficiálních úložištích a také PPA deaktivuje. Chcete-li nainstalovat PPA Purge, můžete použít sudo apt-get install ppa-purge, ale vzhledem k tomu, že výstižný je nefunkční, měli byste použít tento příkaz v Terminálu (Alt, Ctrl a T současně Enter běžet):
mkdir ppa-purge && cd ppa-purge && wget //mirror.pnl.gov/ubuntu/pool/universe/p/ppa-purge/ppa-purge_0.2.8+bzr56_all.deb && wget //mirror.pnl.gov/ ubuntu // pool / main / a / aptitude / aptitude_0.6.6-1ubuntu1_i386.deb && sudo dpkg -i ./*.deb
Dále spusťte sudo ppa-purge ppa: someppa / ppa za účelem očištění vybrané PPA. Protože však PPA Purge stále neodstraní PPA, můžete PPA odebrat pomocí níže uvedených příkazů. Pokud váš záměr nezahrnuje odebrání nainstalovaného balíčku, ignorujte první.
- sudo apt-get autoremove –purge PACKAGENAME
- sudo add-apt-repository – remove ppa: someppa / ppa
- sudo apt-get autoclean
Poté byste měli být schopni nainstalovat potřebný balíček.
I když výše uvedených metod je poměrně málo, měli byste také vědět, že je vždy lepší těmto problémům předcházet. Měli byste udržovat svůj systém aktuální, používat pouze důvěryhodné PPA a zálohovat, když vše funguje správně, abyste jej mohli později obnovit. Pokud jste však na tyto věci zapomněli, vyřešte problém pomocí výše uvedených metod a pomocí preventivních metod se ujistěte, že