На этот вопрос уже есть ответ здесь:
Я попытался установить Scala со стеком безопасного типа и попал в затруднительное положение. Теперь я мало что могу сделать с apt (кроме обновления), кажется, что сломанный пакет невозможно удалить / очистить:
Вот результат 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)
Вот моя попытка в автоматически удалить
:
$ 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?
phdp@desktop:~/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.
Следующее работало для меня (хотя я на x86):
$ sudo vim /var/lib/apt/lists/apt.typesafe.com_dists_unicorn_main_binary-i386_Packages
Измените чтение строки
Filename: pool/main/s/scala/scala_ 2.9.2-400_all.deb
на:
Filename: pool/main/s/scala/scala_%20%20%20%20%202.9.2-400_all.deb
Далее следуют:
sudo apt-get remove scala-library
sudo apt-get remove scala
sudo apt-get install scala
сработала следующая команда.
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
, если по-прежнему возникает та же ошибка, попробуйте
sudo dpkg --remove --force-remove-reinstreq package_name
после удаления пакета обновите систему и перезапустите один раз.
Кажется, что удаление пакета scala-library
и последующая перенастройка могут сработать. Так что вы на правильном пути. Правильные команды в следующем порядке:
sudo apt-get autoremove
sudo apt-get install -f
Ваша команда autoremove
не выполнена, поскольку вы не выполнили ее как root
(используя sudo
).
В моем случае это сработало:
sudo dpkg -P package_name
(не deb name)
Простой способ открыть синаптические . Он сообщит вам, что поврежденные пакеты найдены, поэтому вам нужно найти поврежденные пакеты и просто удалить их, после чего вы сможете делать все, что захотите.
Я исправил проблему с помощью этой команды:
sudo dpkg -i --force-overwrite path-to-the-deb-file
Если --force-overwrite
не работает, попробуйте:
sudo dpkg -i --force-overwrite-all path-to-the-deb-file
sudo dpkg -i --force-overwrite /var/cache/apt/archives/scala_2.9.2-400_all.deb
у меня была эта проблема однажды, по некоторым причинам я думаю, что это был пакет Skype
на самом деле я помню, что у меня это было дважды, один раз, когда пакет Skype только сломался в этом случае, если его только несколько 1 .open Software Updater и подождите, пока он загрузится 2. щелкните настройки 3. щелкните вкладку другого программного обеспечения Это все ваши пакеты, посмотрите на вывод вашей консоли, используйте последние несколько строк, чтобы найти пакет и удалить его, или сделать это один за другим, пока вы больше не получите сообщение об ошибке
Если это было так, как я когда-то, все пакеты не могли быть правильно получены так же, как указано выше, но нажмите вкладку Ubuntu Software
проверьте только первое и третье поле. Выберите основной сервер из выпадающего списка, нажмите закрыть sudo apt-get update
В моем случае я не смог обновить систему из-за следующей ошибки при попытке sudo apt-get install -f
:
update-alternatives: error: /var/lib/dpkg/alternatives/package_name broken: invalid status
Средством устранения было удалить файл из /var/lib/dpkg/alternatives
и повторить приведенную выше команду. Я запускал его несколько раз, пока все неверные пакеты не были исправлены.
В моем случае это помешало мне правильно настроить Java.