Система пакетов повреждена после обновления до Ubuntu 17.04

9

После обновления моего Ubuntu до 17.04 система пакетов не работает. Когда я выполняю любую из следующих команд, я получил некоторую ошибку.

sudo apt-get --fix-broken install

$ sudo apt-get --fix-broken install
...
...
ubuntuone-credentials-common unity-plugin-scopes unity-scope-
mediascanner2
  unity-webapps-qml url-dispatcher usermetricsservice vbetool vlc-nox
Use 'sudo apt autoremove' to remove them.
The following additional packages will be installed:
  click-apparmor
The following packages will be upgraded:
  click-apparmor
1 upgraded, 0 newly installed, 0 to remove and 3 not upgraded.
Need to get 0 B/10.7 kB of archives.
After this operation, 0 B of additional disk space will be used.
Do you want to continue? [Y/n] y
(Reading database ... 625249 files and directories currently installed.)
Preparing to unpack .../click-apparmor_0.3.18_amd64.deb ...
Cannot start click due to a conflict with a different locally-installed Python 'click' package.  Remove it using Python packaging tools and try again.
dpkg: warning: subprocess old pre-removal script returned error exit status 1
dpkg: trying script from the new package instead ...
Cannot start click due to a conflict with a different locally-installed Python 'click' package.  Remove it using Python packaging tools and try again.
dpkg: error processing archive /var/cache/apt/archives/click-apparmor_0.3.18_amd64.deb (--unpack):
 subprocess new pre-removal script returned error exit status 1
Errors were encountered while processing:
 /var/cache/apt/archives/click-apparmor_0.3.18_amd64.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)

sudo apt-get full-upgrade

$ sudo apt-get full-upgrade
Reading package lists... Done
Building dependency tree       
Reading state information... Done
You might want to run 'apt --fix-broken install' to correct these.
The following packages have unmet dependencies:
 click-apparmor : Depends: python3-apparmor-click (= 0.3.17) but 0.3.18 is installed
E: Unmet dependencies. Try 'apt --fix-broken install' with no packages (or specify a solution).

Я также пробовал следующие решения, но они не работали.

Кто-нибудь знает, как исправить это, не переустанавливая Ubuntu?

    
задан Casper 15.04.2017 в 03:31
источник

5 ответов

6

Я думаю, что нашел решение, но большое предупреждение: оно работает, но я не могу объяснить, почему.

Сначала я пошел в /var/lib/dpkg/info/ :

cd /var/lib/dpkg/info/

Затем я удалил строки, относящиеся к пакетам, которые вызвали проблемы. В моем случае я должен был сделать:

sudo rm -r python3-apparmor-click.*
sudo rm -r click-apparmor.*
sudo rm -r click.*
sudo rm -r ubuntu-app-launch.* 
sudo rm -r url-dispatcher-tools.*
sudo rm -r url-dispatcher:amd64.*
sudo rm -r libunity-scopes1.0:amd64

После этого я набрал:

sudo apt purge python3-apparmor-click
sudo apt purge click-apparmor    
sudo apt purge click
sudo apt purge ubuntu-app-launch
sudo apt purge url-dispatcher-tools
sudo apt purge url-dispatcher:amd64
sudo apt purge libunity-scopes1.0

После этого

sudo apt update

И наконец,

sudo apt dist-upgrade

, который работал и обновлял мои пакеты. Кажется, что все проблемы с пакетами исчезли.

    
ответ дан guillaume8375 16.04.2017 в 10:37
6

У меня была такая же проблема после обновления до Ubuntu 17.04, это сработало для меня:

sudo -H pip3 uninstall click
sudo apt install python3-click-package
sudo apt upgrade
sudo apt autoremove

Не уверен, почему (возможно, версия клика для кликов отличается от той, на которой зависит Ubuntu?), но это устранило проблему.

    
ответ дан Rens Oliemans 20.04.2017 в 09:15
4

Сначала удалите пакет python click , используя pip :

pip uninstall click

Если вы используете python3 : pip3 uninstall click

Затем исправьте пакеты с помощью apt :

sudo apt clean
sudo apt install -f 
    
ответ дан Ghasem Pahlavan 22.04.2017 в 14:11
1

Это, казалось, решило проблему для меня (по крайней мере, я больше не получаю сообщения об ошибках):

Я сделал sudo apt autoremove и отметил пакеты с неудовлетворенными зависимостями:

Reading package lists... Done
Building dependency tree       
Reading state information... Done
You might want to run 'apt --fix-broken install' to correct these.
The following packages have unmet dependencies:
 bind9-host : Depends: libdns162 (= 1:9.10.3.dfsg.P4-10.1ubuntu4) but 1:9.10.3.dfsg.P4-10.1ubuntu1.4 is installed
 dnsutils : Depends: libdns162 (= 1:9.10.3.dfsg.P4-10.1ubuntu4) but 1:9.10.3.dfsg.P4-10.1ubuntu1.4 is installed
 gnome-software : Depends: gnome-software-common (= 3.22.7-0ubuntu3) but 3.20.1+git20170208.0.a34b091-0ubuntu1 is installed
 gvfs : Depends: gvfs-daemons (>= 1.30.4-0ubuntu1)
 gvfs-backends : Depends: gvfs-daemons (= 1.30.4-0ubuntu1)
 gvfs-daemons : Depends: gvfs-libs (= 1.28.2-1ubuntu2) but 1.30.4-0ubuntu1 is installed
                Depends: gvfs-common (= 1.28.2-1ubuntu2) but 1.30.4-0ubuntu1 is installed
E: Unmet dependencies. Try 'apt --fix-broken install' with no packages (or specify a solution).

Затем я пошел в Ссылка , а в поле поиска был введен имена, следующие за «Зависимости:» и выбранный «zesty». Затем я загрузил файлы .deb для своего оборудования.

Затем я переместил все файлы .deb в / var / cache / apt / archives:

sudo mv *.deb /var/cache/apt/archives

Наконец, я сделал:

sudo apt --fix-broken install

, который выполняется без ошибок

НТН     

ответ дан Daan 16.04.2017 в 13:42
0
  • Вариант 1. Посмотрите на этот пакет с иностранными кликами:

    sudo updatedb
    locate -ir python.*click
    

    Затем удалите его вручную, добавьте вывод в вопрос, если у вас есть сомнения.

  • Вариант 2: Если вы все еще находитесь в этом состоянии, упомянутом в этом вопросе:

    Preparing to unpack .../click-apparmor_0.3.18_amd64.deb ...
    Cannot start click due to a conflict with a different 
      locally-installed Python 'click' package.  Remove it 
      using Python packaging tools and try again.
    dpkg: warning: subprocess old pre-removal script returned error exit status 1
    
    1. Удалить установленный пакет

      cd /var/lib/dpkg/info/
      sudo mv click-apparmor:amd64.prerm click-apparmor:amd64.prerm.backup
      sudo dpkg --force-depends -r  click-apparmor
      
    2. Попробуйте установить новый пакет, используя:

      sudo apt -f install
      

      Добавьте новую ошибку, если она есть, на вопрос.

ответ дан user.dz 23.04.2017 в 18:29