Cách sửa lỗi phụ thuộc không được đáp ứng trên Ubuntu



Hãy Thử Công Cụ CủA Chúng Tôi Để LoạI Bỏ Các VấN Đề

lỗi Các gói sau đây có các thuộc tính không được đáp ứng Hiện đã khiến người dùng Ubuntu khó chịu trong một thời gian, và ngày càng có nhiều người thấy lỗi trên các phiên bản Ubuntu khác nhau. Hệ thống quản lý gói APT rất dễ sử dụng, nhưng trong một số trường hợp, chẳng hạn như khi bạn kết hợp các gói phụ thuộc của bên thứ ba, bạn có thể gặp lỗi này do apt-get.



Điều này xảy ra khi bạn cố gắng cài đặt thứ gì đó với hệ thống apt thông qua thiết bị đầu cuối và quá trình cài đặt không thành công mà không có vấn đề gì rõ ràng. Vấn đề này không chỉ giới hạn ở bất kỳ chương trình cụ thể nào, nhưng nó có thể xảy ra với khá nhiều chương trình trong số đó. Điều này là do vấn đề nằm ở hệ thống apt chứ không phải ở chương trình bạn đang cài đặt.



May mắn thay, có khá nhiều giải pháp cho việc này, một số giải pháp dễ thực hiện hơn và một số giải pháp khác khó hơn, nhưng nếu bạn làm theo hướng dẫn trong các phương pháp dưới đây, bạn sẽ nhanh chóng thoát khỏi lỗi.



Lưu ý: Trước khi tiếp tục với bất kỳ phương pháp nào, bạn nên sao lưu các tệp cấu hình như vì vậy bạn có thể hoàn nguyên mọi thay đổi trong trường hợp có sự cố. Điều này được thực hiện bằng cách sử dụng các bước sau:

  1. Nhấn đồng thời Alt, Ctrl và T trên bàn phím của bạn để mở Terminal.
  2. Gõ vào và nhấn Enter.
  3. Khi lệnh trước đó chạy xong, hãy nhập sudo cp / var / lib / dpkg / status /var/lib/dpkg/status.original và nhấn Enter lần nữa.

Phương pháp 1: Sử dụng tham số -f

Đây là cách dễ nhất để thử và chỉ yêu cầu thêm hai chữ cái nữa vào lệnh bạn đang nhập. Thay vì sử dụng sudo apt-get install PACKAGENAME, trong đó PACKAGENAME là gói bạn đang cố cài đặt với hệ thống apt, hãy sử dụng sudo apt-get install -f . Các -f tham số sẽ cố gắng sửa một hệ thống bị hỏng các phần phụ thuộc, sau đó, bạn sẽ có thể cài đặt gói được đề cập.

  1. Mở một Thiết bị đầu cuối bằng cách nhấn Ctrl, AltT đồng thời trên bàn phím của bạn.
  2. Gõ vào sudo apt-get install -f và hãy nhấn Đi vào để thực hiện nó.
  3. Sau khi hoàn tất, hãy nhập sudo dpkg –configure -a, nhấn Đi vào để chạy nó và chạy lệnh từ bước 2 một lần nữa.

Phương pháp 2: Sử dụng Aptitude

Năng khiếu là một sự thay thế của apt-get mà bạn có thể sử dụng như một trình quản lý gói cấp cao hơn. Bạn có thể sử dụng nó để thử và cài đặt gói của mình với nó, thay vì apt-get, nhưng trước tiên bạn cần cài đặt năng khiếu.



  1. Nhấn đồng thời Ctrl, Alt,T các phím trên bàn phím của bạn để mở
  2. Gõ vào sudo apt-get install aptitude và hãy nhấn Đi vào để thực hiện lệnh.
  3. Gõ vào sudo aptitude cài đặt PACKAGENAME, trong đó PACKAGENAME là gói bạn đang cài đặt và nhấn Đi vào để thực hiện nó. Điều này sẽ cố gắng cài đặt gói thông qua aptitude thay vì apt-get, điều này sẽ có khả năng khắc phục sự cố phụ thuộc chưa được đáp ứng.

Phương pháp 3: Đảm bảo rằng các kho lưu trữ hạn chế và vũ trụ được bật và thử một máy chủ tốt hơn

  1. Nhấn đồng thời Mọi điềuF2 trên máy tính của bạn, hãy nhập phần mềm-thuộc tính-gtk và hãy nhấn
  2. bên trong Phần mềm Ubuntu tab, hãy đảm bảo rằng tất cả các kho (chính, vũ trụ, hạn chế, đa vũ trụ) được kích hoạt.
  3. Nhấp vào danh sách các máy chủ có thông báo Tải xuống từ, và lựa chọn
  4. Nhấp chuột Chọn Máy chủ Tốt nhất.
  5. nhấn Alt, CtrlT đồng thời để mở một Terminal và nhập sudo apt-get update, sau đó nhấn Sau khi chạy xong, hãy thử cài đặt lại phần mềm.

Phương pháp 4: Làm sạch cơ sở dữ liệu gói

Cơ sở dữ liệu gói bị hỏng là nguyên nhân tiềm ẩn cho các phần phụ thuộc chưa được đáp ứng, cũng như các gói không cài đặt đúng cách. Tuy nhiên, việc dọn dẹp cơ sở dữ liệu gói có thể khắc phục điều này và bạn có thể thực hiện bằng hai lệnh mà tôi sẽ giải thích bên dưới. Trước hết, hãy nhấn Ctrl, AltT để mở Trạm dừng và đừng quên nhấn Đi vào sau lệnh để chạy nó.

  1. sudo apt-get clean sẽ làm sạch kho lưu trữ cục bộ khỏi tất cả các tệp gói được truy xuất (.deb). Nó sẽ xóa mọi thứ ngoại trừ các tệp khóa từ / var / cache / apt / archives và / var / cache / apt / archives / part /.
  2. sudo apt-get autoclean cũng sẽ xóa các tệp đã truy xuất, nhưng không giống như lệnh trước, lệnh này chỉ xóa các gói mà bạn không thể tải xuống được nữa và khá nhiều vô ích.

Phương pháp 5: Loại bỏ mọi gói bị giữ lại

Các gói được giữ thực sự bị giữ lại vì có các vấn đề phụ thuộc và xung đột đúng cách không thể giải quyết. Loại bỏ các gói như vậy có nghĩa là sẽ không có bất kỳ xung đột nào như vậy và do đó có thể khắc phục sự cố của bạn.

  1. Mở một Thiết bị đầu cuối bằng cách nhấn Ctrl, AltT
  2. Gõ vào sudo apt-get -u dist-upgrade và nhấn Nếu có bất kỳ gói nào bị giữ, nó sẽ hiển thị chúng và việc loại bỏ chúng là của bạn.
  3. Trước tiên hãy thử chạy

sudo apt-get -o Debug :: pkgProblemResolver = yes dist-upgrade

và xem liệu nó có khắc phục được sự cố không. Nếu nó thoát với X không được nâng cấp ở cuối, trong đó X là số lượng gói được giữ, bạn sẽ cần xóa từng gói một.

  1. Để xóa một gói bị giữ, hãy sử dụng sudo apt-get remove –dry-run PACKAGENAME (PACKAGENAME là gói bạn đang cố gắng xóa) . Các –Dry-run tham số đảm bảo bạn được thông báo về bất cứ điều gì xảy ra tiếp theo. Khi bạn đã xóa tất cả các gói, hãy thử cài đặt gói đã gây ra sự cố ngay từ đầu và xem điều gì sẽ xảy ra.

Phương pháp 6: Xóa / Xóa / Tắt PPA

Kho lưu trữ gói cá nhân là các kho lưu trữ trên Launchpad và được sử dụng để nâng cấp hoặc cài đặt các gói thường không có sẵn trong các kho lưu trữ chính thức của Ubuntu. Chúng thường là nguyên nhân gây ra sự phụ thuộc không được đáp ứng, đặc biệt là khi chúng được sử dụng để nâng cấp gói hiện có từ kho lưu trữ Ubuntu. Bạn có thể vô hiệu hóa, xóa hoặc xóa chúng.

Vô hiệu hóa có nghĩa là các gói được cài đặt từ PPA đó sẽ không nhận được bản cập nhật nữa.

  1. Nhấn đồng thời Mọi điềuF2, và chạy phần mềm-thuộc tính-gtk.
  2. Từ Phần mềm khác , bạn sẽ tìm thấy hai dòng cho mỗi PPA, trong đó một dòng dành cho nguồn và một dòng dành cho gói đã biên dịch. Để vô hiệu hóa PPA, bạn nên bỏ chọn cả hai dòng.

Thanh trừng có nghĩa là tất cả các gói trong PPA đã chọn sẽ được hạ cấp xuống phiên bản trong kho lưu trữ chính thức và cũng sẽ vô hiệu hóa PPA. Để cài đặt PPA Purge, bạn có thể sử dụng sudo apt-get install ppa-purge, nhưng xét rằng đúng cách bị hỏng, bạn nên sử dụng lệnh này trong Terminal ( Alt, CtrlT đồng thời, sau đó Đi vào chạy):

mkdir ppa-purge && cd ppa-purge && wget http://mirror.pnl.gov/ubuntu/pool/universe/p/ppa-purge/ppa-purge_0.2.8+bzr56_all.deb && wget http: // mirror. pnl.gov/ubuntu//pool/main/a/aptitude/aptitude_0.6.6-1ubuntu1_i386.deb && sudo dpkg -i ./*.deb

Tiếp theo, chạy sudo ppa-purge ppa: someppa / ppa để xóa PPA đã chọn. Tuy nhiên, vì PPA Purge vẫn không xóa PPA, bạn có thể sử dụng các lệnh bên dưới để xóa PPA. Bỏ qua phần đầu tiên nếu ý định của bạn không bao gồm việc xóa gói đã cài đặt.

  1. sudo apt-get autoremove –purge PACKAGENAME
  2. sudo add-apt-repository –remove ppa: someppa / ppa
  3. sudo apt-get autoclean

Bạn sẽ có thể cài đặt gói cần thiết sau đó.

Mặc dù có khá nhiều phương pháp ở trên, bạn cũng nên biết rằng tốt hơn hết là bạn nên ngăn chặn những vấn đề như vậy. Bạn nên cập nhật hệ thống của mình, chỉ sử dụng các PPA đáng tin cậy và sao lưu khi mọi thứ hoạt động bình thường để bạn có thể khôi phục sau. Tuy nhiên, nếu bạn quên làm những việc này, hãy sử dụng các phương pháp ở trên để khắc phục sự cố của bạn và sử dụng các phương pháp ngăn chặn để đảm bảo bạn không

5 phút đọc