Ошибка обновления «драйвер метода / usr / lib / apt / Methods / 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.

Почему я получаю эти ошибки при обновлении apt-get?


1
Пожалуйста, отредактируйте ваш вопрос и добавьте содержимое /etc/apt/sources.listфайла
jokerdino

Ответы:


233

Пытаться:

sudo apt-get install apt-transport-https

4
Если вы не можете найти этот пакет в репозитории: «У пакета« apt-transport-https »нет кандидата для установки» », см. Ответ ниже от @ NateC-K
Тодд Смит

5
Это сработало для меня. Нам нужны менеджеры зависимостей для наших менеджеров зависимостей. Пейджинг @xzibit
Иезекииль Виктор

64

Я также столкнулся с этой проблемой. Я не смог исправить это путем установки apt-transport-https, потому что прошло довольно много времени с тех пор, как я делал какие-либо обновления пакетов на рассматриваемой машине, и нужная мне версия этого пакета больше не была доступна в репозитории пакетов. (Чтобы получить доступную версию, я сначала должен был быть в состоянии apt-get updateуспешно.) Таким образом, я был вынужден отследить причину, почему apt-get внезапно попытался использовать HTTPS, и помешать ей это сделать.

В моем случае оказывается, что один из сторонних подходящих источников, который был указан в файле конфигурации в моем /etc/apt/sources.list.dкаталоге, переключился на использование HTTPS для всех загрузок, и они начали перенаправлять http://URL на https://URL. Это была попытка использовать HTTPS, хотя ни одна из моих исходных конфигураций не запрашивала его. (Я обнаружил это, открыв исходный URL-адрес хранилища в своем веб-браузере и заметив, что URL-адрес в адресной строке изменился на https://время загрузки страницы.)

Так как это был сторонний репозиторий и, следовательно, не существенный, я просто временно отключил этот источник, затем снова включил apt-get updateего, и он работал без проблем. После того, как apt-get update, apt-get upgradeи apt-get install apt-transport-httpsя был в состоянии повторно включить это стороннее меткое источник, и оттуда все работало.


2
Спасибо за указание sources.list.d /. Прошло много времени с тех пор, как я работал с различными файлами, связанными с apt, в Ubuntu, и это то, что мне было нужно для решения этой проблемы.
Лайл Браун

3
Я рад, что это помогло кому-то! Я потратил много времени на то, чтобы разобраться в этой проблеме, поэтому мне не терпелось поделиться своими выводами.
Нейт СК

Спасибо! Я собираюсь сказать, что установка Crystal lang сделала именно эту вещь, только если кто-то погуглит.
Сэм Итон

6

Проверьте файлы в этом каталоге: /etc/apt/sources.list.d

Один из файлов адресован хранилищу, начинающемуся с HTTPS. Прокомментируйте эту строку, добавив # в начале и попробуйте: apt-get update


@Zanna: OP получает сообщение об ошибке «Не удалось найти драйвер метода / usr / lib / apt / Methods / https». Предложение mnorouzi поможет с этим, хотя может быть лучше установить обработчик HTTPS.
Дэвид Фёрстер
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.