Вопрос или проблема
Итак, я обновил Disco до Eoan, пока что довольно «интересно». Мне нужно было пересобрать Grub, чтобы получить графический интерфейс, это заняло некоторое время, но закончено, и я использую ПК. Сегодня я получаю множество сбоев в браузере, поэтому первой мыслью было запустить обе команды
sudo apt update
sudo apt upgrade.
Это было разочаровывающее упражнение.
вот вывод из обновления
“Могут быть обновлены 3 пакета. Запустите ‘apt list –upgradable’, чтобы увидеть их.”
Замечательно, мне все равно, какие это пакеты, просто обновите их, поэтому после того, как я ввел
apt upgrade, я вижу это в терминале
Чтение списков пакетов... Готово Построение дерева зависимостей Чтение
информации о состоянии... Готово Возможно, вам нужно запустить 'apt --fix-broken
install', чтобы исправить это. У следующих пакетов неудовлетворенные
зависимости: linux-image-generic : зависит от:
linux-modules-extra-5.3.0-45-generic, но он не установлен. E:
Неудовлетворенные зависимости. Попробуйте 'apt --fix-broken install' без
пакетов (или укажите решение).
Это было неожиданно, поэтому я запустил apt –fix-broken install и вот что!
Следующие пакеты были автоматически установлены и больше не
требуются: chromium-browser-l10n command-not-found-data diffstat
g++-8 gir1.2-mutter-4 intltool-debian libapt-inst2.0 libapt-pkg-perl
libapt-pkg5.0 libarchive-zip-perl libasync-mergepoint-perl
libb-hooks-op-check-perl libcapture-tiny-perl libcgi-fast-perl
libcgi-pm-perl libclass-accessor-perl libclass-method-modifiers-perl
libclass-xsaccessor-perl libclone-perl libcrystalhd3
libdevel-callchecker-perl libdevel-globaldestruction-perl
libdigest-bubblebabble-perl libdouble-conversion1
libdynaloader-functions-perl libebook-contacts-1.2-2 libecal-1.2-19
libemail-valid-perl libexporter-tiny-perl libfcgi-perl
libfile-find-rule-perl libfuture-perl libgle3 libgnome-desktop-3-17
libgssdp-1.0-3 libgtkspell3-3-0 libgupnp-1.0-4 libigdgmm5
libimport-into-perl libio-async-loop-epoll-perl libio-async-perl
libio-pty-perl libio-string-perl libip4tc0 libip6tc0 libipc-run-perl
libisl19 libjpeg-turbo-progs libjson-c3 liblinux-epoll-perl
liblist-compare-perl liblist-moreutils-perl libllvm8 liblouisutdml8
libmodule-runtime-perl libmoo-perl libmutter-4-0 libmysqlclient20
libnet-dns-perl libnet-dns-sec-perl libnet-domain-tld-perl
libnet-ip-perl libnumber-compare-perl libparams-classify-perl
libparse-debianchangelog-perl libpath-tiny-perl libperlio-gzip-perl
libpoppler85 libreadonly-perl libref-util-perl libref-util-xs-perl
libreoffice-avmedia-backend-gstreamer librole-tiny-perl librsync1
libsereal-decoder-perl libsereal-encoder-perl libsereal-perl
libstdc++-8-dev libstrictures-perl libstruct-dumb-perl
libsub-exporter-progressive-perl libsub-quote-perl libtagc0
libtest-fatal-perl libtest-refcount-perl libtext-glob-perl
libtext-levenshtein-perl libtype-tiny-perl libtype-tiny-xs-perl
libunicode-utf8-perl libvpx5 libx265-165 libxml-simple-perl
libyaml-libyaml-perl lintian multiarch-support patchutils
python-fasteners python-lockfile python-monotonic python-six t1utils
xscreensaver-data xscreensaver-data-extra xscreensaver-gl
xscreensaver-gl-extra Используйте 'sudo apt autoremove', чтобы удалить их. Следующие дополнительные пакеты будут установлены:
linux-modules-extra-5.3.0-45-generic Следующие НОВЫЕ пакеты будут
установлены: linux-modules-extra-5.3.0-45-generic 0 к обновлению, 1
к новому установлению, 0 к удалению и 3 без обновления. 7 не полностью
установлены или удалены. Нужно получить 0 Б/38.3 МБ архивов. После этой
операции будет использовано 188 МБ дополнительного свободного
места на диске. Вы хотите
продолжить? [Y/n]
Конечно, я ввожу “Y”, и вот что произошло дальше
(Чтение базы данных ... 277005 файлов и каталогов установлено
в данный момент.) Подготовка к распаковке .../linux-modules-extra-5.3.0-45-generic_5.3.0-45.37_amd64.deb
Распаковка linux-modules-extra-5.3.0-45-generic (5.3.0-45.37) ...
dpkg-deb (подпроцесс): распаковка участника архива: ошибка lzma: сжатые
данные повреждены dpkg-deb: ошибка: <распаковка> подпроцесс вернул
код ошибки 2 dpkg: ошибка обработки архива
/var/cache/apt/archives/linux-modules-extra-5.3.0-45-generic_5.3.0-45.
37_amd64.deb (--unpack): невозможно скопировать извлеченные данные для './lin/modules/5.3.0-45-generic/kernel/drivers/m
edia/dvb-frontends/cx24120.ko' в
'/lib/modules/5.3.0-45-generic/kernel/drivers/
media/dvb-frontends/cx24120.ko.dpkg-new': неожиданный конец файла или
потока Произошли ошибки при обработке:
/var/cache/apt/archives/linux-modules-extra-5.3.0-45-generic_5.3.0-45.37_amd64.
deb E: Подпроцесс /usr/bin/dpkg вернул код ошибки (1)
Как видно, я не могу обновить или обновить из-за проблемы с dpkg
Есть ли советы или подсказки?
Проверьте, используете ли вы сторонние репозитории. Если да, отключите их, так как они часто являются источником проблем.
Кроме того, запустите следующую команду в Терминале: apt-get install -f
Операция не удалась: система пакетов повреждена
Следующим пакетам не хватает зависимостей:
linux-image-generic: зависит от: linux-modules-extra-5.3.0-45-generic, но он не установлен
У меня нет сторонних репозиториев
-
Какой беспорядок на самом деле!
sudo apt install ubuntu-desktop –fix-missing
[пароль sudo для ****]:
Чтение списков пакетов… Готово
Построение дерева зависимостей
Чтение информации о состоянии… Готово
ubuntu-desktop уже самая новая версия (1.440.1).
Вам может понадобиться запуск ‘apt –fix-broken install’, чтобы исправить это.
Следующим пакетам не хватает зависимостей:
linux-image-generic : зависит от: linux-modules-extra-5.3.0-45-generic, но он не будет установлен
E: Неудовлетворенные зависимости. Попробуйте ‘apt –fix-broken install’ без пакетов (или укажите решение)
.
-
sudo apt install linux-modules-extra-5.3.0-45-generic
и мы вернулись к
Чтение списков пакетов… Готово Построение дерева зависимостей Чтение
информации о состоянии… Готово Следующие пакеты были автоматически
установлены и больше не требуются: chromium-browser-l10n
command-not-found-data diffstat g++-8 gir1.2-mutter-4
intltool-debian libapt-inst2.0 libapt-pkg-perl libapt-pkg5.0
libarchive-zip-perl libasync-mergepoint-perl libb-hooks-op-check-perl
libcapture-tiny-perl libcgi-fast-perl libcgi-pm-perl
libclass-accessor-perl libclass-method-modifiers-perl
libclass-xsaccessor-perl libclone-perl libcrystalhd3
libdevel-callchecker-perl libdevel-globaldestruction-perl
libdigest-bubblebabble-perl libdouble-conversion1
libdynaloader-functions-perl libebook-contacts-1.2-2 libecal-1.2-19
libemail-valid-perl libexporter-tiny-perl libfcgi-perl
libfile-find-rule-perl libfuture-perl libgle3 libgnome-desktop-3-17
libgssdp-1.0-3 libgtkspell3-3-0 libgupnp-1.0-4 libigdgmm5
libimport-into-perl libio-async-loop-epoll-perl libio-async-perl
libio-pty-perl libio-string-perl libip4tc0 libip6tc0 libipc-run-perl
libisl19 libjpeg-turbo-progs libjson-c3 liblinux-epoll-perl
liblist-compare-perl liblist-moreutils-perl libllvm8 liblouisutdml8
libmodule-runtime-perl libmoo-perl libmutter-4-0 libmysqlclient20
libnet-dns-perl libnet-dns-sec-perl libnet-domain-tld-perl
libnet-ip-perl libnumber-compare-perl libparams-classify-perl
libparse-debianchangelog-perl libpath-tiny-perl libperlio-gzip-perl
libpoppler85 libreadonly-perl libref-util-perl libref-util-xs-perl
libreoffice-avmedia-backend-gstreamer librole-tiny-perl librsync1
libsereal-decoder-perl libsereal-encoder-perl libsereal-perl
libstdc++-8-dev libstrictures-perl libstruct-dumb-perl
libsub-exporter-progressive-perl libsub-quote-perl libtagc0
libtest-fatal-perl libtest-refcount-perl libtext-glob-perl
libtext-levenshtein-perl libtype-tiny-perl libtype-tiny-xs-perl
libunicode-utf8-perl libvpx5 libx265-165 libxml-simple-perl
libyaml-libyaml-perl lintian multiarch-support patchutils
python-fasteners python-lockfile python-monotonic python-six t1utils
xscreensaver-data xscreensaver-data-extra xscreensaver-gl
xscreensaver-gl-extra Use ‘sudo apt autoremove’ to remove them. Следующие НОВЫЕ пакеты будут установлены:
linux-modules-extra-5.3.0-45-generic 0 к обновлению, 1 к новому установлению,
0 к удалению и 3 без обновления. 7 не полностью установлены или удалены.
Нужно получить 0 Б/38.3 МБ архивов. После этой операции будет использовано 188 МБ
дополнительного свободного места на диске. (Чтение базы данных … 277005 файлов
и каталогов установлено в данный момент.) Подготовка к распаковке
…/linux-modules-extra-5.3.0-45-generic_5.3.0-45.37_amd64.d eb …
Распаковка linux-modules-extra-5.3.0-45-generic (5.3.0-45.37) …
dpkg-deb (подпроцесс): распаковка участника архива: ошибка lzma:
сжатые данные повреждены dpkg-deb: ошибка: подпроцесс вернул код ошибки 2 dpkg: ошибка обработки архива
/var/cache/apt/archives/linux-modules-extra-5.3.0
-45-generic_5.3.0-45.37_amd64.deb (–unpack): невозможно скопировать извлеченные данные для ‘./lib/modules/5.3.0-45-generic/kernel/drivers/m
edia/dvb-frontends/cx24120.ko’ до
‘/lib/modules/5.3.0-45-generic/kernel/drivers/
media/dvb-frontends/cx24120.ko.dpkg-new’: неожиданный конец файла или
потока Произошли ошибки при обработке:
/var/cache/apt/archives/linux-modules-extra-5.3.0-45-generic_5.3.0-45.37_amd64.
deb E: Подпроцесс /usr/bin/dpkg вернул код ошибки (1)
Фу… Какой беспорядок! Вот исправление: если вы, например, используете kubuntu, попробуйте sudo apt install kubuntu-desktop --fix-missing
, а если вы на ubuntu, попробуйте sudo apt install ubuntu-desktop --fix-missing
, и так далее. Если это не сработает, попробуйте sudo apt install linux-modules-extra-5.3.0-45-generic
. Если ничего из этого не сработает, сообщите, какую ошибку вы получаете.
Ваш модуль linux-modules-extra
больше недоступен в Eoan. Это означает, что ядро нужно настраивать заново. Я предлагаю два решения:
- Сделайте резервную копию всех данных и выполните чистую установку. Это создаст ядро с доступным модулем и является более быстрым решением.
- Глубоко копайте и найдите устройство, на которое повлияла проблема. Обычно это сетевое устройство. У меня была похожая проблема с вай-фай модемом от Railteck в прошлом. Если вы выберете второй путь, вам понадобится много времени.
.
Ответ или решение
Для решения проблемы, связанной с неудовлетворёнными зависимостями и предложением выполнить команду apt --fix-broken install
, следует рассмотреть ряд теоретических аспектов, практических примеров и их применение.
Теоретическая часть
Неудовлетворённые зависимости – это распространённая проблема в системах управления пакетами, таких как APT на базе Debian/Ubuntu. Они возникают, когда определённая программа или компонент системы зависит от отсутствующих пакетов, которые либо невозможно установить, либо для которых требуется несовместимая версия другого пакета.
Пример: Ошибка с linux-modules-extra
На примере вашего случая можно увидеть, что ошибка возникла при попытке обновления после повышения версии операционной системы с Disco (19.04) до Eoan (19.10). Проблема заключается в отсутствии пакета linux-modules-extra-5.3.0-45-generic
, необходимого для нормального функционирования linux-image-generic
. APT предлагает использовать apt --fix-broken install
для устранения этой проблемы, так как данный инструмент предназначен для автоматического исправления сломанных зависимостей, что, однако, приводит к ошибке при попытке распаковки пакета из-за повреждённого архива.
Применение: Шаги по устранению ошибки
-
Очистка кеша APT:
sudo apt clean sudo apt autoclean
Эти команды удаляют устаревшие или повреждённые пакеты из кеша, освобождая место и исключая возможность повторного использования повреждённых данных.
-
Перекачивание и установка пакетов:
По всей видимости, файл пакетаlinux-modules-extra
повреждён. Попробуйте удалить его и перекачать:sudo rm /var/cache/apt/archives/linux-modules-extra-5.3.0-45-generic_5.3.0-45.37_amd64.deb sudo apt update sudo apt install linux-modules-extra-5.3.0-45-generic
-
Ручная установка или удаление проблемного пакета:
Если предыдущий шаг не помог, можно попробовать установить пакет вручную или удалить его (если это не вызывает критических сбоев в системе):sudo dpkg -i /path/to/downloaded/linux-modules-extra-5.3.0-45-generic_5.3.0-45.37_amd64.deb
-
Поиск альтернативных пакетов или модулей:
В отличие от более ранних версий Ubuntu, некоторые модули могли быть исключены из официальных репозиториев. В этом случае рекомендуется проверить доступные репозитории или искать альтернативные модули, совместимые с вашей версией системы. -
Последний шаг: Автономная установка системы:
Если всё вышеописанное не поможет, может понадобиться более радикальный подход — резервное копирование данных и полная переустановка операционной системы. Это гарантирует чистую установку без конфликтующих изменений.
Резюме
В результате вышеуказанных действий можно либо устранить проблемы с зависимостями, либо подготовить систему к более обширным изменениям, таким как полная переустановка. Важно учитывать, что использование устаревших версий системы, таких как Eoan, может быть сопряжено с рисками, такими как прекращение поддержки и обновлений, что может повлечь за собой необходимость перехода на более свежую версию Ubuntu.