ошибка apt-get на openhabian при вызове '/usr/lib/apt/methods/http'

ошибка apt-get на openhabian при вызове '/usr/lib/apt/methods/http'

Надеюсь, я прав, несколько дней назад apt-get сломался на моем Raspberry Pi Model B rev. 2 (на Openhabian). Я пока не уверен, почему, и не смог исправить это самостоятельно.

При попытке войти в apt-get updateсистему как root я получаю следующий вывод:

[15:58:05] root@openHABianPi:/home/openhabian# apt-get update
Reading package lists... Done
E: Method http has died unexpectedly!
E: Sub-process http received signal 4.
E: Method /usr/lib/apt/methods/http did not start correctly
E: Method https has died unexpectedly!
E: Sub-process https received signal 4.
E: Method /usr/lib/apt/methods/https did not start correctly
E: Method https has died unexpectedly!
E: Sub-process https received signal 4.
E: Method /usr/lib/apt/methods/https did not start correctly
E: Method https has died unexpectedly!
E: Sub-process https received signal 4.
E: Method /usr/lib/apt/methods/https did not start correctly
E: Method https has died unexpectedly!
E: Sub-process https received signal 4.
E: Method /usr/lib/apt/methods/https did not start correctly
E: Method http has died unexpectedly!
E: Sub-process http received signal 4.
E: Method /usr/lib/apt/methods/http did not start correctly
E: Method http has died unexpectedly!
E: Sub-process http received signal 4.
E: Method /usr/lib/apt/methods/http did not start correctly
E: Failed to fetch http://raspbian.raspberrypi.org/raspbian/dists/stretch/InRelease
E: Failed to fetch https://apt.homegear.eu/Raspbian/stretch/InRelease
E: Failed to fetch https://deb.debian.org/debian/dists/stretch-backports/InRelease
E: Failed to fetch https://mirrordirector.raspbian.org/raspbian/dists/testing/InRelease
E: Failed to fetch https://dl.bintray.com/openhab/apt-repo2/dists/stable/InRelease
E: Failed to fetch http://archive.raspberrypi.org/debian/dists/stretch/InRelease
E: Failed to fetch http://repos.azulsystems.com/debian/dists/stable/InRelease
E: Some index files failed to download. They have been ignored, or old ones used instead.

Когда я пытаюсь проверить версию /usr/lib/apt/methods/http(https — это ссылка на нее), я получаю следующий вывод:

[15:59:05] root@openHABianPi:/home/openhabian# /usr/lib/apt/methods/http
Illegal instruction

Я apt-transport-httpsустановил. Я тоже так сделал, apt-get autoremoveи, возможно, отсутствуют некоторые зависимости в пакете, /usr/lib/apt/methods/httpв который он входит, хотя, насколько я знаю, этого быть не должно.

Спасибо за помощь!

Редактировать 1:

[23:11:36] root@openHABianPi:/home/openhabian# dpkg -i apt_1.4.9_armhf.deb
dpkg: warning: downgrading apt from 1.8.0 to 1.4.9
(Reading database ... 47399 files and directories currently installed.)
Preparing to unpack apt_1.4.9_armhf.deb ...
Unpacking apt (1.4.9) over (1.8.0) ...
dpkg: dependency problems prevent configuration of apt:
 libapt-pkg5.0:armhf (1.8.0) breaks apt (<< 1.6~) and is installed.
  Version of apt to be configured is 1.4.9.

dpkg: error processing package apt (--install):
 dependency problems - leaving unconfigured
Processing triggers for libc-bin (2.28-8) ...
Processing triggers for man-db (2.7.6.1-2) ...
Errors were encountered while processing:
 apt

Я установилlibapt-pkg5.0_1.4.9_armhf.debи затем смог установитьapt_1.4.9_armhf.deb

У меня все еще есть проблема с зависанием apt-get update 0% [Working]на одном источнике, это все еще может быть вызвано несовместимыми источниками.

Правка 2:
Проблемы были вызваны неправильным источником, происходящим из letsencrypt/certbot-setup, я избавился от всех оставшихся проблем, удалив источник, закрепив свои пакеты в стабильной версии (использовал "now" для многих пакетов) и в основном проделав большую работу apt-get dist-upgradeс большим количеством ручных проверок. Возможно, вам придется временно исключить https-источники даже с установленным apt-transport-https, так как это не сработало и у меня (вызвало ошибку "Illegal instructions" /usr/lib/apt/methods/httpsиз-за зависимостей).

решение1

Надеюсь, у вас dpkgвсе еще все работает нормально... В моей системе Debian/MX (также основанной на Debian stretch) файл /usr/lib/apt/methods/httpявляется частью aptпакета, проверенного с помощью dpkg -S /usr/lib/apt/methods/http.

Просмотр того, что может быть вашим основным репозиториемhttp://raspbian.raspberrypi.org/raspbian/dists/stretch/InReleaseи особенно глядя вhttp://raspbian.raspberrypi.org/raspbian/dists/stretch/main/binary-armhf/Пакеты(это 59M) Я вижу, что у него есть

Package: apt
Version: 1.4.9

Который также имеет тот же номер версии, что и мой. Так что я предполагаю, что ваш aptпакет был каким-то образом испорчен, возможно, несовместимая версия из другого источника "обновила" его? Вы можете проверить версию вашего apt одним из следующих способов:

  • apt-cache showpkg apt
  • apt-cache show aptесли apt-cache все еще работает, или
  • dpkg -s apt
  • dpkg-query --show apt

Надеюсь, это не 1.4.9, так что вы можете попробовать установить эту версию. Просматривая больше репозитория, http://raspbian.raspberrypi.org/raspbian/pool/main/a/apt/имеетapt_1.4.9_armhf.debфайл.

[Егосписок зеркал здесь, с другими ссылками для скачивания.]

Если вы скачаете файл .deb. и установите его с помощью

dpkg -i apt_1.4.9_armhf.deb

это должно установить, надеюсь, хорошую версию apt.

Будьте осторожны, чтобы не «обновить» apt снова до возможно неисправной версии. Я бы проверил исходный код всех кандидатов apt-cache policy aptи, возможно, удалил «плохие» источники или рассмотрел бы возможность закрепления aptтолько за хорошим источником (см. man apt_preferences) или блокировки его версии.

Связанный контент