Проблема с зависимостями: "vim: Зависит: vim-common (= 2:7.4.1689-3ubuntu1.2), но необходимо установить 2:8.0.1453-1ubuntu1"
Проблема решена путем изменения источника для 16.04 на источник для 18.04.
Я столкнулся с некоторыми проблемами с зависимостями при попытке установить приложения с помощью apt:
$ sudo apt install vim
Reading package lists... Done
Building dependency tree
Reading state information... Done
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:
vim : Depends: vim-common (= 2:7.4.1689-3ubuntu1.2) but 2:8.0.1453-1ubuntu1 is to be installed
E: Unable to correct problems, you have held broken packages.
Когда я попытался установить aptitude, а затем установить vim by aptitude, чтобы решить проблему зависимости, он сказал мне, что apt будет удален:
$ sudo apt-get install aptitude
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following additional packages will be installed:
aptitude-common libboost-iostreams1.58.0 libcwidget3v5 libsigc++-2.0-0v5
libxapian22v5
Suggested packages:
apt-xapian-index aptitude-doc-en | aptitude-doc debtags tasksel
libcwidget-dev xapian-tools
The following packages will be REMOVED:
apt apt-utils ubuntu-desktop ubuntu-minimal ubuntu-release-upgrader-gtk
update-manager update-notifier update-notifier-common
The following NEW packages will be installed:
aptitude aptitude-common libboost-iostreams1.58.0 libcwidget3v5
libsigc++-2.0-0v5 libxapian22v5
WARNING: The following essential packages will be removed.
This should NOT be done unless you know exactly what you are doing!
apt
0 upgraded, 6 newly installed, 8 to remove and 13 not upgraded.
Need to get 2,974 kB of archives.
After this operation, 4,842 kB of additional disk space will be used.
You are about to do something potentially harmful.
To continue type in the phrase 'Yes, do as I say!'
?] ^C
Затем, когда я попытался установить vim через aptitude, он показал ошибку, что не может найти какую-то папку apt...
Я спросил моего соседа по комнате, и он сказал, что способности и способности не конфликтуют друг с другом! Так правда ли, что я могу установить aptitude без удаления apt? и как?
Обновляется после запуска apt -f install
:
cky@cky:~$ sudo apt update
Hit:1 https://mirrors.ustc.edu.cn/ubuntu xenial InRelease
Hit:2 https://mirrors.ustc.edu.cn/ubuntu xenial-security InRelease
Hit:3 https://mirrors.ustc.edu.cn/ubuntu xenial-updates InRelease
Hit:4 https://mirrors.ustc.edu.cn/ubuntu xenial-backports InRelease
Reading package lists... Done
Building dependency tree
Reading state information... Done
13 packages can be upgraded. Run 'apt list --upgradable' to see them.
cky@cky:~$ sudo apt -f install
Reading package lists... Done
Building dependency tree
Reading state information... Done
0 upgraded, 0 newly installed, 0 to remove and 13 not upgraded.
Но это мало помогает, проблема все та же, что и раньше. Source.list был изменен на более быстрый, может это как-то связано с проблемой?
Вот список источников
cky@cky:~$ sudo cat /etc/apt/sources.list
deb https://mirrors.ustc.edu.cn/ubuntu/ xenial main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ xenial main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ xenial-security main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ xenial-security main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ xenial-updates main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ xenial-updates main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ xenial-backports main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ xenial-backports main restricted universe multiverse
## Not recommended
# deb https://mirrors.ustc.edu.cn/ubuntu/ xenial-proposed main restricted universe multiverse
# deb-src https://mirrors.ustc.edu.cn/ubuntu/ xenial-proposed main restricted universe multiverse
cky@cky:~$ sudo cat /etc/apt/sources.list.d/*
cat: '/etc/apt/sources.list.d/*': No such file or directory
Это слишком медленно, используя источник по умолчанию xD Я пробую другие возможные источники
19% [21 Packages 269 kB/1,019 kB 26%] 15.3 kB/s 45min 35s
1 ответ
Хорошо, что вы обратили внимание на предупреждение!
Ваш сосед по комнате прав - что-то очень не так. Вот как должна выглядеть установка aptitude:
$ sudo apt install aptitude
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following package was automatically installed and is no longer required:
libssl-doc
Use 'sudo apt autoremove' to remove it.
The following additional packages will be installed:
aptitude-common libcwidget3v5
Suggested packages:
aptitude-doc-en | aptitude-doc apt-xapian-index debtags tasksel
libcwidget-dev
The following NEW packages will be installed:
aptitude aptitude-common libcwidget3v5
0 to upgrade, 3 to newly install, 0 to remove and 0 not to upgrade.
Need to get 2,569 kB of archives.
After this operation, 10.9 MB of additional disk space will be used.
Do you want to continue? [Y/n]
Первое, что я заметил, это то, что вы пытаетесь установить libboost-iostreams1.58.0
, у меня уже есть libboost-iostreams1.65.1
установлено, так что я думаю, вы еще не запустили apt-get update
, Пожалуйста, сделайте это сначала, чтобы вы знали, что вы получаете актуальную справочную информацию о хранилище и правильные версии всех пакетов программного обеспечения.
Тогда из вашей предыдущей строки:
E: Unable to correct problems, you have held broken packages.
Я думаю, что у вас может быть пакет, который не завершил его установку. Попробуйте запустить:
apt -f install
ОБНОВИТЬ
Как и предположил @user535733, репозитории OP были некорректны. Их хранилища в /etc/apt/sources.d/
не соответствует версии Ubuntu, в которой они работали. Это вряд ли произойдет по ошибке, но могло произойти в результате внешнего сценария, если он не был преднамеренным.