Občas sa mi pri inštalácii vecí zobrazí nasledujúca chyba:
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:
The following packages have unmet dependencies:
package1 : Depends: package2 (>= 1.8) but 1.7.5-1ubuntu1 is to be installed
E: Unable to correct problems, you have held broken packages.
Ako to môžem vyriešiť?
Poznámka: Všetky príkazy, ktoré sa majú spustiť, sa musia spustiť v termináli, ktorý môžete otvoriť buď pomocou Ctrl+Alt+T alebo vyhľadaním terminálu v pomlčke.
Je to naozaj pokazené?
Skúste spustiť nasledujúci príkaz a pokúsiť sa preinštalovať softvér, ktorý ste sa pokúšali nainštalovať
sudo apt-get update
sudo cp /etc/apt/sources.list /etc/apt/sources.list.original
a
sudo cp /var/lib/dpkg/status /var/lib/dpkg/status.original
sudo apt-get clean
Odstráni všetky balíky v medzipamäti patriace do priečinkov /var/cache/apt/archives/
a /var/cache/apt/archives/partial
okrem súborov .lock. Toto sa odporúča
sudo apt-get autoclean
/var/cache/apt/archives/
a /var/cache/apt/archives/partial
a skontroluje, či je balík stále v repozitároch, a odstráni tie, ktoré nie súsudo apt-get -f install
sudo apt-get install ppa-purge
Ale vzhľadom na otázku apt
je nefunkčný, takže vyššie uvedený príkaz zlyhá. Preto použite tento príkaz
mkdir ppa-purge && cd ppa-purge && wget http://mirror.pnl.gov/ubuntu/pool/universe/p/ppa-purge/ppa-purge_0.2.8+bzr56_all.deb && wget http://mirror.pnl.gov/ubuntu//pool/main/a/aptitude/aptitude_0.6.6-1ubuntu1_i386.deb && sudo dpkg -i ./*.deb
Teraz použite ppa purge
sudo ppa-purge ppa:someppa/ppa
sudo add-apt-repository ppa:webupd8team/y-ppa-manager
a
sudo apt-get update
a
sudo apt-get install y-ppa-manager
Vzhľadom na otázku, apt
je nefunkčný, takže namiesto neho použite tieto príkazy
sudo su
a 32 bitov:
mkdir y-ppa-manager && cd y-ppa-manager && wget https://launchpad.net/~webupd8team/+archive/y-ppa-manager/+files/launchpad-getkeys_0.3.2-1~webupd8~oneiric_all.deb && wget https://launchpad.net/~webupd8team/+archive/y-ppa-manager/+files/y-ppa-manager_0.0.8.6-1~webupd8~precise_all.deb && wget https://launchpad.net/~webupd8team/+archive/y-ppa-manager/+files/yad_0.17.1.1-1~webupd8~precise_i386.deb && dpkg -i ./*.deb
64 bitov:
mkdir y-ppa-manager && cd y-ppa-manager && wget https://launchpad.net/~webupd8team/+archive/y-ppa-manager/+files/launchpad-getkeys_0.3.2-1~webupd8~oneiric_all.deb && wget https://launchpad.net/~webupd8team/+archive/y-ppa-manager/+files/y-ppa-manager_0.0.8.6-1~webupd8~precise_all.deb && wget https://launchpad.net/~webupd8team/+archive/y-ppa-manager/+files/yad_0.17.1.1-1~webupd8~precise_amd64.deb && dpkg -i ./*.deb
y-ppa-manager
Zobrazí sa vám toto okno
Dvakrát kliknite na advanced a zobrazí sa vám toto okno
Vykonajte nasledujúce úlohy vyznačené čiernou farbou
sudo apt-get update&&sudo apt-get upgrade
alebo môžete vždy použiť Správcu aktualizácií s týmto príkazom
gksu update-manager
y-ppa-manager
sudo apt-get install packagename
a
cat /etc/apt/sources.list
a
cat /etc/apt/sources.list.d/*
(Vďaka Basharat Sial) Existujú aj iné súbory/príkazy, ktorých výstup potrebujete a ktoré môžu byť špecifické pre chyby, a používatelia vás pravdepodobne vyzvú v komentároch, aby ste zverejnili súbor/príkaz.
Tieto metódy je potrebné dodržiavať vždy, keď sa vyskytne chyba týkajúca sa nesplnených závislostí
Po dodržaní pokynov skúste nainštalovať softvér. Aspoň jedna z týchto metód by vám mala fungovať
1. Pred vyskúšaním akéhokoľvek nového príkazu alebo pridaním nového ppa vyskúšajte toto
Čistenie vyrovnávacej pamäte apt:
sudo apt-get clean
Upratovanie nepoužívaných závislostí:
sudo apt-get autoremove
Aktualizácia apt-cache
sudo apt-get update
Tým sa odstráni celá vyrovnávacia pamäť a stiahne sa nová vyrovnávacia pamäť. Toto by sa malo vykonať, aby ste získali čerstvé balíky vyrovnávacej pamäte a novšie aktualizácie.
2. Skúste sudo apt-get install -f
.
Pravdepodobne vám to dá nejaké návrhy na odstránenie a inštaláciu balíkov, urobte to, čo sa vám zdá rozumné.
3. Zmeňte položku Server na sťahovanie
z položky Zdroje softvéru
Pretože niekedy sú súbory na serveri poškodené.
4. Toto sa stáva aj vtedy, ak ste predtým pridali externý ppa pre nefunkčnú závislosť.
sudo add-apt-repository --remove ppa:someppa/ppa
a potom ručným odstránením nainštalovaných súborov/knižníc ppaalebo
vyčistenie ppa (tým sa odstránia aj nainštalované súbory)
sudo apt-get install ppa-purge #jednorazová inštalácia
sudo ppa-purge ppa:someppa/ppa
5. Ak nie je váš prípad č. 4, potom aspoň skúste odstrániť balík, ktorý sa zobrazuje ako nefunkčná závislosť.Potom skúste inštalovať znova.Uvádza sa, že to fungovalo u dosť ľudí.
6. Vždy pridávajte stabilnú verziu repozitára/PPA.
7 Uistite sa tiež, že máte povolené všetky oficiálne repozitáre (v časti Software Sources
)
Nepovoľte, prosím, Návrhované aktualizácie
, pretože sú určené pre testovanie/vývojárov.
Ako povedal doug:
Obvykle je najlepším prvým krokom k vyriešeniu tohto problému identifikácia zdroja <pkg1>
& <pkg2>
.
Dodatočne sa nezaznamenalo, že v mnohých, ak nie vo väčšine prípadov, "<čokoľvek> má byť nainštalované" v skutočnosti znamená "<čokoľvek> je nainštalované" a malo by sa skúsiť odstrániť, ak nič iné nefunguje (ako v bode 5).
Budem'pridávať ďalšie veci, ktoré som našiel na opravu nevyhovujúcich závislostí
.
V Ubuntu sú balíky hlavným spôsobom, akým sa softvér zostavuje, nasadzuje a inštaluje. Veľmi jednoducho povedané, balíky sú alternatívou k sťahovaniu, vytváraniu a inštalácii softvéru od začiatku. Ponúkajú množstvo výhod, pokiaľ ide o inštaláciu, odstraňovanie, monitorovanie a riešenie interakcií medzi jednotlivými časťami softvéru v porovnaní so štandardným modelom "zostavovania zo zdrojových kódov". Ubuntu používa centralizovaný baliaci systém, t. j. každý balík je závislý od niektorých iných balíkov. keď nainštalujeme balík, nainštalujú sa jeho závislosti, chyba nesplnených závislostí nastane, keď závislosti balíka nie sú k dispozícii na inštaláciu
1.Computer is not connected to the Internet
2.The repository containing the depandancy package is not enabled
3.Package catalog is not updated
4.The version of the depandancy in the current repository is old
5.Software index is broken
6.The depandancy is not available for ubuntu
Pripojte sa k internetu :D
Uistite sa, že sú povolené všetky predvolené úložiská
->Môžete ich jednoducho pridať v Centre softvéru
->Upraviť->Zdroje softvéru->Ďalšie zdroje->Pridať"
-> Spustite Softwarové centrum
.
->. Na paneli prejdite na položku `Upraviť` a vyberte položku `Zdroje softvéru`.
->Uistite sa, že sú zaškrtnuté všetky úložiská
kliknite na ikonu vpravo hore a v ponuke vyberte položku Aktualizovať - dostupný záznam.
a stlačte tlačidlo skontrolovať
zadajte ctrl+alt+t na otvorenie terminálu a zadajte
sudo apt-get install -f
Vyčistite nedávno pridané ppa pomocou ppa-purge ppa-purge
Tento program zakáže PPA z vašich softvérových zdrojov a vráti váš systém späť na oficiálne balíky Ubuntu. Môžete ho použiť na vrátiť váš systém do normálneho stavu po testovaní novej verzie z PPA.
Syntax
sudo ppa-purge ppa:<repository-name>/<subdirectory>
Príklad
sudo ppa-purge ppa:ubuntu-mozilla-daily/ppa
Else
zadajte ctrl+alt+t na otvorenie terminálu a zadajte sudo apt-get install -f
a postupujte podľa pokynov na obrazovke
Ak sa stále vyskytne chyba, neváhajte a opýtajte sa na ňu v askbuntu