Không thể tìm thấy trình điều khiển phương thức / usr / lib / apt / phương thức / https


145
sudo apt-get update
E: The method driver /usr/lib/apt/methods/https could not be found.
michael@Ubuntu:~$ sudo apt-get clean
michael@Ubuntu:~$ cd /var/lib/apt
michael@Ubuntu:/var/lib/apt$ sudo mv lists lists.old
michael@Ubuntu:/var/lib/apt$ sudo mkdir -p lists/partial
michael@Ubuntu:/var/lib/apt$ sudo apt-get clean
michael@Ubuntu:/var/lib/apt$ sudo apt-get update
E: The method driver /usr/lib/apt/methods/https could not be found.
E: Could not get lock /var/lib/dpkg/lock - open (11: Resource temporarily unavailable)
E: Unable to lock the administration directory (/var/lib/dpkg/), is another process using it?
michael@Ubuntu:/var/lib/apt$ sudo apt-get update
E: The method driver /usr/lib/apt/methods/https could not be found.

Tại sao tôi nhận được các lỗi này khi thực hiện cập nhật apt-get?


1
Vui lòng chỉnh sửa câu hỏi của bạn và thêm nội dung của /etc/apt/sources.listtệp
jokerdino

Câu trả lời:


233

Thử:

sudo apt-get install apt-transport-https

4
Nếu bạn không thể tìm thấy gói này trong kho lưu trữ: "Gói 'apt-Transport-https' không có ứng cử viên cài đặt '" thì hãy xem câu trả lời dưới đây từ @ NateC-K
Todd Smith

5
Điều này làm việc cho tôi. Chúng tôi cần người quản lý phụ thuộc cho người quản lý phụ thuộc của chúng tôi. Phân trang @xzibit
Ezekiel Victor

64

Tôi đã gặp vấn đề này là tốt. Tôi không thể sửa nó bằng cách cài đặt apt-transport-https, vì đã khá lâu kể từ khi tôi thực hiện bất kỳ bản cập nhật gói nào trên máy đang được đề cập và phiên bản của gói mà tôi cần không còn có sẵn trong kho lưu trữ gói. (Để có được một phiên bản có sẵn, trước tiên tôi phải có khả năng apt-get updatethành công.) Vì vậy, tôi buộc phải theo dõi lý do tại sao apt-get đột nhiên cố gắng sử dụng HTTPS và ngăn không cho điều đó xảy ra.

Trong trường hợp của tôi, hóa ra một trong những nguồn apt của bên thứ ba được liệt kê trong tệp cấu hình trong /etc/apt/sources.list.dthư mục của tôi đã chuyển sang sử dụng HTTPS cho tất cả các tải xuống và họ đã bắt đầu chuyển hướng http://URL sang https://URL. Điều này đã khiến apt cố gắng sử dụng HTTPS mặc dù không có cấu hình nguồn nào của tôi yêu cầu nó. (Tôi đã phát hiện ra điều này bằng cách mở URL kho lưu trữ nguồn trong trình duyệt web của mình và nhận thấy rằng URL trong thanh địa chỉ đã thay đổi thành https://khi trang được tải.)

Vì đây là kho lưu trữ của bên thứ ba và do đó không cần thiết, tôi chỉ đơn giản là vô hiệu hóa nguồn đó tạm thời, sau đó chạy lại apt-get updatevà nó không hoạt động. Sau đó apt-get update, apt-get upgradeapt-get install apt-transport-httpstôi đã có thể kích hoạt lại nguồn apt của bên thứ ba đó và từ đó mọi thứ đều hoạt động.


2
Cảm ơn bạn đã chỉ định nguồn.list.d /. Đã được một thời gian kể từ khi tôi làm việc với các tệp liên quan đến apt khác nhau của Ubuntu và đó là điều tôi cần để khắc phục vấn đề này.
Lyle Brown

3
Tôi rất vui vì điều này đã giúp được ai đó! Tôi đã dành một thời gian dài để theo dõi vấn đề này, vì vậy tôi rất muốn chia sẻ những phát hiện của tôi.
Nate CK

Cảm ơn! Tôi sẽ nói rằng việc cài đặt Crystal lang đã làm điều này chính xác, chỉ cần ai đó googles nó.
Sam Eaton

6

Kiểm tra các tập tin trong thư mục này: /etc/apt/sources.list.d

Một trong những tệp giải quyết một kho lưu trữ bắt đầu bằng HTTPS. Nhận xét dòng đó bằng cách thêm # vào đầu và thử: apt-get update


@Zanna: OP nhận được thông báo lỗi "Không thể tìm thấy trình điều khiển phương thức / usr / lib / apt / phương thức / https." Đề xuất của mnorouzi sẽ giúp với điều đó mặc dù có thể tốt hơn để cài đặt trình xử lý HTTPS.
David foerster
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.