Ошибка при обновлении или обновлении Ubuntu из-за зависимостей

Когда я устанавливаю или обновляю что-либо, я получаю ошибки, подобные приведенным ниже.

Могу ли я принудительно выполнить полное удаление этих пакетов или другой подобной опции, чтобы избежать этих ошибок?

Для этого я использовал synaptic, но я также попытался установить или удалить apt

sudo apt-get --force-yes remove ...

ОШИБКИ apt:

...
dpkg: warning: files list file for package 'python-pysqlite2' missing; assuming package has no files currently installed
(Reading database ... 470240 files and directories currently installed.)
Removing python-mysql.connector (2.0.4-1) ...
/var/lib/dpkg/info/python-mysql.connector.prerm: 6: /var/lib/dpkg/info/python-mysql.connector.prerm: pyclean: not found
dpkg: error processing package python-mysql.connector (--remove):
 subprocess installed pre-removal script returned error exit status 127
/var/lib/dpkg/info/python-mysql.connector.postinst: 6: /var/lib/dpkg/info/python-mysql.connector.postinst: pycompile: not found
dpkg: error while cleaning up:
 subprocess installed post-installation script returned error exit status 127
Errors were encountered while processing:
 python-mysql.connector
E: Sub-process /usr/bin/dpkg returned an error code (1)
...

ОШИБКИ синаптические:

E: python-ecdsa: subprocess installed post-installation script returned error exit status 127
E: python-mysql.connector: subprocess installed post-installation script returned error exit status 127
E: python-ptyprocess: subprocess installed post-installation script returned error exit status 127
-1
задан 13 January 2018 в 14:11

1 ответ

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

for package in $(sudo apt-get upgrade 2>&1 | grep "warning: files list file for package '" | grep -Po "[^'\n ]+'" | grep -Po "[^']+"); do sudo apt-get install --reinstall "$package"; done

Этот скрипт переустанавливает каждый пакет, который выводит warning: files list file for package в процессе apt-get upgrade.

Это займет больше времени, так как он циклически повторяет каждую упаковку.

Если скрипт не работает, то вы должны сделать что-то подобное с каждым пакетом (в настоящее время python-pysqlite2), который показывает вышеупомянутое предупреждение:

sudo apt-get install --reinstall python-pysqlite2

Источник

0
ответ дан 13 January 2018 в 14:11

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

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