Hệ thống gói bị hỏng sau khi được nâng cấp lên Ubuntu 17.04


11

nhập mô tả hình ảnh ở đây

Sau khi nâng cấp Ubuntu của tôi lên 17.04, hệ thống gói bị hỏng. Khi tôi thực hiện bất kỳ lệnh nào sau đây, tôi đã gặp một số lỗi.

sudo apt-get - cài đặt bị hỏng

$ 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 nâng cấp đầy đủ

$ 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).

Tôi cũng đã thử các giải pháp sau đây nhưng chúng không hiệu quả.

Bất cứ ai cũng biết cách sửa nó mà không cần cài đặt lại Ubuntu?


1
Tôi có cùng một vấn đề. Tôi đã thử các bản sửa lỗi được đề xuất ở đâyở đây nhưng không có gì hiệu quả.
guillaume8375

Câu trả lời:


8

Tôi nghĩ rằng tôi đã tìm thấy một giải pháp, nhưng một cảnh báo lớn: nó hoạt động, nhưng tôi không thể giải thích tại sao.

Đầu tiên, tôi đã đi đến /var/lib/dpkg/info/:

cd /var/lib/dpkg/info/

Sau đó, tôi loại bỏ các dòng liên quan đến các gói gây ra vấn đề. Trong trường hợp của tôi, tôi đã phải làm:

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

Sau đó, tôi gõ:

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

Sau đó,

sudo apt update

Và cuối cùng,

sudo apt dist-upgrade

đã làm việc và cập nhật các gói của tôi. Tất cả các vấn đề gói dường như đã biến mất.


1
Lệnh apt purgetrả về E: Sub-process /usr/bin/dpkg returned an error code (1).
Casper

@Casper Đối với mọi gói?
guillaume8375

Đúng. Dường như là vậy.
Casper

Tôi cũng đã phải sử dụng năng khiếu để thanh lọc các phụ thuộc, lệnh apt / apt-get không thể thực hiện được đó là hỏiubub.com/questions/1085665/ Lỗi
baptx

7

Tôi gặp vấn đề tương tự sau khi nâng cấp lên Ubuntu 17.04, điều này hiệu quả với tôi:

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

Không chắc chắn tại sao (có lẽ phiên bản nhấp chuột của pip khác với phiên bản Ubuntu phụ thuộc vào?) Nhưng điều này đã khắc phục vấn đề.


pip3 uninstall clickxóa clickmô-đun đã được cài đặt qua Pip cho Python 3 có thể sẽ khắc phục khiếu nại trong quá trình cài đặt gói trong câu hỏi của OP vì đây là phương pháp cài đặt phổ biến nhất cho các mô-đun Python trên Ubuntu bên ngoài Apt. Một lựa chọn khác là họ đã sử dụng easyinstallhoặc một cái gì đó như make install.
David Foerster

5

Đầu tiên xóa gói ' nhấp chuột ' của python bằng cách sử dụng pip:

pip uninstall click

Nếu bạn sử dụng python3 : pip3 uninstall click

Sau đó sửa các gói bằng apt :

sudo apt clean
sudo apt install -f 

1

Điều này dường như giải quyết vấn đề cho tôi (ít nhất là tôi không nhận được thông báo lỗi nữa):

Tôi đã làm một sudo apt autoremovevà lưu ý các gói với phụ thuộc chưa được đáp ứng:

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).

Sau đó, tôi đã truy cập http://packages.ubfox.com/ và trong phần 'tìm kiếm' đã nhập các tên sau 'Depends:' và chọn 'zesty'. Sau đó, tôi đã tải xuống các tệp .deb cho phần cứng của mình.

Tiếp theo, tôi đã di chuyển tất cả các tệp .deb sang / var / cache / apt / archives:

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

Cuối cùng tôi đã làm:

sudo apt --fix-broken install

mà thực hiện không có lỗi

HTH


Lệnh autoremovekhông tìm thấy. Nhưng bây giờ tôi không thể sử dụng apt-getđể cài đặt nó.
Casper

0
  • Tùy chọn 1: Tìm gói nhấp chuột nước ngoài này:

    sudo updatedb
    locate -ir python.*click
    

    Sau đó xóa nó bằng tay, thêm đầu ra cho câu hỏi nếu bạn nghi ngờ.

  • Tùy chọn 2: Nếu bạn vẫn ở trạng thái đó được đề cập trong câu hỏi điện tử:

    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. Hủy bỏ gói cài đặt

      cd /var/lib/dpkg/info/
      sudo mv click-apparmor:amd64.prerm click-apparmor:amd64.prerm.backup
      sudo dpkg --force-depends -r  click-apparmor
      
    2. Hãy thử cài đặt gói mới bằng cách sử dụng:

      sudo apt -f install
      

      Thêm lỗi mới nếu có cho câu hỏi.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.