E: 子进程 /usr/bin/dpkg 从 ubuntu 20.04 完全删除 mysql 时返回错误代码 (1)

Posted

技术标签:

【中文标题】E: 子进程 /usr/bin/dpkg 从 ubuntu 20.04 完全删除 mysql 时返回错误代码 (1)【英文标题】:E: Sub-process /usr/bin/dpkg returned an error code (1) while removing mysql completely from ubuntu 20.04 【发布时间】:2020-10-28 21:46:10 【问题描述】:

我想从 ubuntu 20.04 完全卸载 mysqlsudo apt-get remove --purge mysql-server mysql-client mysql-common -y

但每次都会出错。

dpkg: 错误处理包mysql-server-8.0 (--remove): 包处于非常糟糕的不一致状态;你应该 在尝试删除之前重新安装它 dpkg:错误太多,正在停止 处理时遇到错误: mysql-服务器-8.0 由于错误太多,处理已停止。 E: 子进程/usr/bin/dpkg返回错误码(1)

我尝试配置 dpkg sudo dpkg --configure -a ,但它又说:

dpkg:错误处理包mysql-server-8.0(--configure): 包处于非常糟糕的不一致状态;你应该 在尝试配置之前重新安装它 处理时遇到错误: mysql-server-8.0

【问题讨论】:

【参考方案1】:

我在xubuntu 20.04 中遇到了同样的挑战。经过几次尝试,这对我有用。 我希望它对将来的人有所帮助。

    列出所有与mysql-server相关的文件
sudo ls -l /var/lib/dpkg/info | grep -i mysql-server 
    删除不同的文件组。
sudo rm -r /var/lib/dpkg/info/mysql-server-8.0.*
sudo rm -r /var/lib/dpkg/info/mysql-server-core-8.0.* 
    运行
sudo apt update

尝试重新安装您将尝试安装的任何内容。

【讨论】:

这绝对是个坏建议。因为这可能会让周围变得很糟糕。手动从 dpkg 数据库中删除文件永远不应该是第一个选项,尝试或提供,如果这样做的人不完全知道可能会产生什么后果,那就更少了。在这种情况下,dpkg 有助于提供正确的解决方案。 好吧,我对所有其他建议的经验证明否则毫无用处。我的回答是基于最终为我工作的。这是我最后的手段,它奏效了。有时最好的解决方案行不通。【参考方案2】:

处理此类问题的正确方法是遵循 dpkg 给出的说明。一个问题是 apt 在这些情况下会拒绝执行此类操作,因此您需要做的是 apt download 所需的软件包并使用 dpkg -i 手动重新安装它们。

重新安装完包后,可以用dpkg --audit再次检查系统是否正常。

【讨论】:

【参考方案3】:

关于您当前的问题。为了完全摆脱您的 MySQL 安装,您可以运行以下命令:

确保 MySQL 没有运行:

sudo systemctl stop mysql

然后清除所有 MySQL 包:

sudo apt purge mysql-server mysql-client mysql-common mysql-server-core-* mysql-client-core-*

然后删除所有 MySQL 文件:

sudo rm -rf /etc/mysql /var/lib/mysql /var/log/mysql

最后清理所有不需要的包:

sudo apt autoremove
sudo apt autoclean

【讨论】:

以上是关于E: 子进程 /usr/bin/dpkg 从 ubuntu 20.04 完全删除 mysql 时返回错误代码 (1)的主要内容,如果未能解决你的问题,请参考以下文章

E: Sub-process /usr/bin/dpkg returned an error code

E: 安装google or-tools时子进程/usr/bin/dpkg返回错误码(1)

ubuntu错误解决E: Sub-process /usr/bin/dpkg returned an error code

ubuntu 下出现E: Sub-process /usr/bin/dpkg returned an error code

ubuntu 下出现E: Sub-process /usr/bin/dpkg returned an error code

ubuntu 下出现E: Sub-process /usr/bin/dpkg returned an error code