it-swarm-eu.dev

Jak opravit nefunkční balíček, když nefunguje „apt-get install -f“?

Pokusil jsem se nainstalovat Scala s typovým stackem a dostal jsem se do potíží. Teď nemůžu dělat s apt (kromě aktualizace) mnoho, zdá se, že nefunkční balíček nelze odstranit/vyčistit:

Zde je výsledek apt-get -f install:

$ Sudo apt-get -f install
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Correcting dependencies... Done
The following packages were automatically installed and are no longer required:
  gstreamer0.10-fluendo-mp3:i386 scala-library liboil0.3:i386
Use 'apt-get autoremove' to remove them.
The following extra packages will be installed:
  scala
The following NEW packages will be installed:
  scala
0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
4 not fully installed or removed.
Need to get 21.5 MB of archives.
After this operation, 0 B of additional disk space will be used.
Do you want to continue [Y/n]? Y
Get:1 http://apt.typesafe.com/ Unicorn/main scala all 2.9.2-400 [21.5 MB]
Fetched 21.5 MB in 13s (1,567 kB/s)                                                                          
(Reading database ... 329381 files and directories currently installed.)
Unpacking scala (from .../scala_2.9.2-400_all.deb) ...
dpkg: error processing /var/cache/apt/archives/scala_2.9.2-400_all.deb (--unpack):
 trying to overwrite '/usr/share/Java/scala-partest.jar', which is also in package scala-library 2.9.1.dfsg-3
dpkg-deb: error: subprocess paste was killed by signal (Broken pipe)
Errors were encountered while processing:
 /var/cache/apt/archives/scala_2.9.2-400_all.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)

Zde je můj pokus autoremove:

$ apt-get autoremove
E: Could not open lock file /var/lib/dpkg/lock - open (13: Permission denied)
E: Unable to lock the administration directory (/var/lib/dpkg/), are you root?
[email protected]:~/work/manuscripts/ideas/ibm_food_webs$ Sudo apt-get autoremove
Reading package lists... Done
Building dependency tree       
Reading state information... Done
You might want to run 'apt-get -f install' to correct these.
The following packages have unmet dependencies:
 typesafe-stack : Depends: scala but it is not installed
E: Unmet dependencies. Try using -f.
35
PhDP

Opravil jsem svůj problém pomocí tohoto příkazu:

Sudo dpkg -i --force-overwrite path-to-the-deb-file
  • Pokud --force-overwrite nefunguje, zkuste:

    Sudo dpkg -i --force-overwrite-all path-to-the-deb-file

Ve vašem případě:

Sudo dpkg -i --force-overwrite /var/cache/apt/archives/scala_2.9.2-400_all.deb
36
dzgeek

Vypadá to, že odstraníte scala-library balíček a potom by mohlo dojít k překonfigurování. Takže jste na správné cestě. Správné příkazy jsou v tomto pořadí:

Sudo apt-get autoremove
Sudo apt-get install -f

Příkaz autoremove nebyl úspěšný, protože jste jej nespustili jako root (pomocí Sudo).

10
Eliah Kagan

V mém případě to fungovalo:

Sudo dpkg -P package_name 

(nikoli název deb.)

7

následující příkaz fungoval.

Sudo rm -rf /var/lib/dpkg/updates/*
Sudo rm -rf /var/lib/apt/lists/*
Sudo rm /var/cache/apt/*.bin
Sudo apt-get clean
Sudo apt-get autoremove
Sudo apt-get update
Sudo dpkg --configure -a
Sudo apt-get install -f

pokud se stále zobrazuje stejná chyba, zkuste

Sudo dpkg --remove --force-remove-reinstreq package_name 

po odebrání balíčku aktualizujte systém a restartujte jednou.

7
premal

Snadný způsob otevření synaptický. To vám řekne, že jsou nalezeny poškozené balíčky, takže musíte najít poškozené balíčky a jednoduše je odebrat, pak můžete dělat, co se vám líbí.

3
user61928

Následující pracoval pro mě (i když jsem na x86):

$ Sudo vim /var/lib/apt/lists/apt.typesafe.com_dists_Unicorn_main_binary-i386_Packages

Změňte čtení řádku

Filename: pool/main/s/scala/scala_     2.9.2-400_all.deb

na:

Filename: pool/main/s/scala/scala_%20%20%20%20%202.9.2-400_all.deb

Následován:

Sudo apt-get remove scala-library
Sudo apt-get remove scala
Sudo apt-get install scala
2
Steven Shaw

V mém případě jsem nemohl aktualizovat systém z důvodu následující chyby při pokusu Sudo apt-get install -f:

update-alternatives: error: /var/lib/dpkg/alternatives/package_name broken: invalid status

Nápravou bylo odstranit soubor z /var/lib/dpkg/alternatives a zopakujte výše uvedený příkaz. Několikrát jsem to běžel, dokud nebyly opraveny všechny neplatné balíčky.

V mém případě mi to bránilo správně nakonfigurovat Java).

1
user93144