Как исправить ошибку «E: Не удалось найти драйвер метода / usr / lib / apt / Methods / http.»?


109

Я попытался обновить свои пакеты из терминала, и вот что я получил:

$ sudo apt-get update
E: The method driver /usr/lib/apt/methods/http could not be found.
E: The method driver /usr/lib/apt/methods/http could not be found.
E: The method driver /usr/lib/apt/methods/http could not be found.
E: The method driver /usr/lib/apt/methods/http could not be found.
E: The method driver /usr/lib/apt/methods/http could not be found.

Что это значит? Я использую зеркало Соединенных Штатов. Я пытался использовать главный сервер для зеркала, и я продолжаю получать тот же самый результат, потому что нет обновлений?


Вы можете показать свой /etc/apt/sources.list?
Сезар

1
Смотрите ответ на этот вопрос , он решил проблему для меня в Debian Stretch.
Рейм

Ответы:


186

СэрЧарло сказал в дубликате этого вопроса:

sudo apt-get install apt-transport-https

Я попробовал это, и это сработало для меня.


1
Это сработало для меня в Debian Squeeze.
Мэтт Александр

1
Как это возможно? Он не может подключиться к интернету.
Авинаш Радж

1
К сожалению, это не сработает, если ваш меткий кеш слишком устарел. Теперь я застрял в проблеме "дыра в ведре" :(
Оуэн

Работал на меня, спасибо. Debian 7.x
Витор Луис да Силва

1
@Owen, что позволило бы кому-то другому предоставить замену или троянскую оболочку для любого неподписанного пакета.
mikemaccana

7

в моем случае найдите все исходники в файле .list, например:

/etc/apt/sources.list 
/etc/apt/sources.list.d/nginx.list 
/etc/apt/sources.list.d/passenger.list

некоторые источники в списке вынуждены использовать https: //, даже если вы изменили его на http: // он будет перенаправлен на https: //

решения это:

  1. сначала сделайте резервную копию и удалите источник https
  2. затем запустите apt-get update
  3. запустить sudo apt-get установить apt-transport-https
  4. восстановить источник https

так вы говорите, что должны обновляться через небезопасное соединение?
Дэвид 天宇 Вонг

это было единственное решение, которое работало для меня на Кали Линукс
Шенк

4

Была такая же проблема на свежем изображении OrangePi. Обмен https на http не помог. Наконец, я создал символическую ссылку на http с именем https и смог выполнить обновление apt-get. Первым делом установил apt-transport-https, после чего я перезапустил обновление.


1
OrangePI, кажется, на самом деле все еще имеет эту проблему, не могли бы вы точно объяснить, что вы подразумеваете под «символической ссылкой» в этом случае, пожалуйста?
dlewin

2
@dlewin делает свое cd /usr/lib/apt/methodsдело ln -s http https.
Алекс

2

Моей проблемой был браузер Opera в /etc/apt/sources.list.d/opera-stable.list , было написано:

https//:

но правильным является:

https://

Поэтому я исправляю строку следующим образом:

deb https://deb.opera.com/opera-stable/ stable non-free #Opera Browser (final releases)

и все решаемо!


0

Я сталкивался с этой проблемой раньше, в моем случае проблема была в /etc/apt/sources.list. Убедитесь, что нет кавычек ''или "":

deb "http://archive.canonical.com/ubuntu/ maverick partner (Source Code)"

Удалите кавычки и измените эти строки на:

deb http://archive.canonical.com/ubuntu/ maverick partner (Source Code)

Также, как предполагает @arhimed, убедитесь, что протокол правильно сформирован: http://


Все в хорошей форме, есть еще идеи?
Эйбл

0

Моя ошибка читала драйвер метода, /usr/lib/apt/methods/htttpи после прочтения здесь и пробуя все предложения, я собирался сдаться, когда заметил, что у httpнего был один дополнительный t.

Я пошел, чтобы сделать это:

sudo -H gedit /etc/apt/source.list

Ctrl+ Fнайти все экземпляры htttp.

убрал лишний т

Сохранено (дважды, чтобы удостовериться, что он его забрал)

И альт, проблема решена.

Думаю, это означает, что мне нужно ДЕЙСТВИТЕЛЬНО прочитать сообщения об ошибках, поскольку я просматривал их. Урок выучен. это больше не повторится


0

найдите ссылки https в /etc/apt/sources.list, проверьте, работает ли ссылка http той же ссылки. если это так, замените http на https и наслаждайтесь. в противном случае установите sudo apt-get install apt-transport-https, как сказано в ответе Дамиона ла Багха.


0

Мои комментарии здесь не имеют прямого отношения к вопросу ОП, но так как эта страница появляется в результатах поиска Google, E: The method driver /usr/lib/apt/methods/https could not be found.которая является ошибкой, которую я изначально пытался решить, я добавляю некоторую информацию, которая помогла мне решить мою проблему.

Я нахожусь в сети Ethernet, которая содержит устройство типа «брандмауэр», которое перенаправляет веб-трафик неизвестного компьютера на веб-страницу, которая требует, чтобы вы «согласились» с условиями обслуживания сети, прежде чем вы сможете продолжить. Эта страница оказывается страницей HTTPS. Поэтому, когда бы ни apt-getпытались подключиться, он оказывался на сайте HTTPS. Вот почему попытка установки apt-transport-httpsне работает для меня.


Это называется пленным порталом .
Муру

0

Я понимаю, что это очень старая тема, но в моем случае в файле sources.list отсутствовал «http». в адрес. (т.е. http://kali.org vs http://http.kali.org ) Я обнаружил это при сравнении двух виртуальных машин в моей среде. Не уверен, откуда возникла ошибка, но замена, которая решила проблему.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.