Проблема с прошивкой Ubuntu 18.04

Я новичок в Linux, и я только что установил Ubuntu 18.04 вместе с Windows 10. Он был установлен не на 100% успешно, потому что каждый раз, когда я хочу установить новую программу (например, Adobe Flash Player), терминал показывает мне это:

The following packages have unmet dependencies:
 fwupdate : Depends: libfwup1 (= 10-3) but 12-3bionic2 is to be installed
E: Unmet dependencies. Try 'apt --fix-broken install' with no packages (or specify a solution).

И когда я пытаюсь sudo apt --fix-broken install , терминал возвращает:

Preparing to unpack .../fwupdate_12-7~ubuntu18.04.3_amd64.deb ...
rm: cannot remove '/boot/efi/EFI/ubuntu/fwupx64.efi': Input/output error
dpkg: error processing archive /var/cache/apt/archives/fwupdate_12-7~ubuntu18.04.3_amd64.deb (--unpack):
 new fwupdate package pre-installation script subprocess returned error exit status 1
Errors were encountered while processing:
 /var/cache/apt/archives/fwupdate_12-7~ubuntu18.04.3_amd64.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)

Это ноутбук Sony Vaio. Жесткий диск 1 ТБ - ЦП: i7 3537U - ОЗУ: 8 ГБ

0
задан 15 July 2020 в 09:06

1 ответ

Я думаю, что есть ответ на вашу проблему в этом посте: dpkg: новый предустановочный скрипт возвратил ошибку, выход из состояния 1

Сценарий .preinst пакета для некоторых не работает причина.

Чтобы выяснить, почему, изучите сценарий в /var/lib/dpkg/info/PACKAGENAME.preinst

Если вы хотите точно определить, на какой строке выполняется сценарий, отредактируйте файл .preinst. скрипт и добавьте set -x сразу после строки #! . Это включает трассировку выполнения в сценарии.

ПРИМЕЧАНИЕ: Это предполагает, что сценарий .preinst является сценарием оболочки (либо posix sh, либо bash). Почти все сценарии .preinst (и .postinst, .prerm и .postrm) являются сценариями оболочки, но они необязательно должны быть исполняемыми. например, на моем главном настольном компьютере с установленными пакетами 9104, 14 представляют собой сценарии perl, 1 представляет собой скомпилированный исполняемый файл (предустановка bash - он не может предполагать, что уже установлена ​​работающая оболочка), а все остальные - сценарии оболочки ... 9041 - сценарии оболочки POSIX, 63 - сценарии bash. Если .preinst - это perl или python или что-то еще, вам нужно выяснить, как включить режим отладки или трассировки выполнения или аналогичный в этом языке.

Затем выполните dpkg --configure --pending .

Это заставит dpkg попытаться настроить наполовину установленный пакет. НЕ переустанавливайте его с помощью dpkg -i , который перезапишет ваш отредактированный скрипт .preinst версией из пакета .deb.

Это может дать вам достаточно информации для решения проблемы. Это может быть что-то простое, например неожиданный или необработанный код выхода из программы (чаще всего. сценарии preinst и т.д. имеют set -e , чтобы заставить их завершиться при первой ошибке), или предполагают, что каталог уже существует (и это может быть связано с необъявленной зависимостью в файле debian / control пакета - т.е. это должно зависеть от foo, но не зависит. Просто установите foo в любом случае)

После исправления снова запустите dpkg --configure --pending , и пакет должен быть правильно установлен.

Если Сценарий .preinst содержит ошибки, и вполне вероятно, что сценарии .postinst (и / или .prerm и .postrm) тоже будут. Возможно, вам также придется их исправить.

Не забудьте отправить отчет об ошибке любому, кто сделал пакет, чтобы он мог его исправить.

s файл debian / control - то есть он должен зависеть от foo, но не зависит. в любом случае просто установите foo)

После исправления снова запустите dpkg --configure --pending , и пакет должен быть правильно установлен.

Если скрипт .preinst содержит ошибки, есть разумный вероятность того, что сценарии .postinst (и / или .prerm и .postrm) тоже будут. Возможно, вам также придется их исправить.

Не забудьте отправить отчет об ошибке любому, кто сделал пакет, чтобы он мог его исправить.

s файл debian / control - то есть он должен зависеть от foo, но не зависит. в любом случае просто установите foo)

После исправления снова запустите dpkg --configure --pending , и пакет должен быть правильно установлен.

Если скрипт .preinst содержит ошибки, есть разумный вероятность того, что сценарии .postinst (и / или .prerm и .postrm) тоже будут. Возможно, вам также придется их исправить.

Не забудьте отправить отчет об ошибке любому, кто сделал пакет, чтобы он мог его исправить.

0
ответ дан 30 July 2020 в 22:07

Другие вопросы по тегам:

Похожие вопросы: