如何在linux中100% 修复软件安装损坏问题

说明:本次软件安装失败提示安装损失,即无法完全安装。这情况一般是多次安装卸载同一款软件导致的,大部都是卸载后,还清理干净残留文件或者一些配置文件及目录等,造成再次安装失败。

这是ubuntu服务器上安装mariadb服务时失败,发现的一段异常信息。

ubuntu@VM-0-10-ubuntu:~$ sudo dpkg --configure -a
Setting up mariadb-common (1:10.6.23-0ubuntu0.22.04.1) ...
update-alternatives: error: alternative path /etc/mysql/mariadb.cnf doesn't exist
dpkg: error processing package mariadb-common (--configure):
 installed mariadb-common package post-installation script subprocess returned error exit status 2
dpkg: dependency problems prevent configuration of mariadb-client-core-10.6:
 mariadb-client-core-10.6 depends on mariadb-common (>= 1:10.6.23-0ubuntu0.22.04.1); however:
  Package mariadb-common is not configured yet.

dpkg: error processing package mariadb-client-core-10.6 (--configure):
 dependency problems - leaving unconfigured
dpkg: dependency problems prevent configuration of libmariadb3:amd64:
 libmariadb3:amd64 depends on mariadb-common; however:
  Package mariadb-common is not configured yet.

dpkg: error processing package libmariadb3:amd64 (--configure):
 dependency problems - leaving unconfigured
dpkg: dependency problems prevent configuration of mariadb-client-10.6:
 mariadb-client-10.6 depends on mariadb-client-core-10.6 (>= 1:10.6.23-0ubuntu0.22.04.1); however:
  Package mariadb-client-core-10.6 is not configured yet.

dpkg: error processing package mariadb-client-10.6 (--configure):
 dependency problems - leaving unconfigured
dpkg: dependency problems prevent configuration of mariadb-server-core-10.6:
 mariadb-server-core-10.6 depends on mariadb-common (>= 1:10.6.23-0ubuntu0.22.04.1); however:
  Package mariadb-common is not configured yet.

dpkg: error processing package mariadb-server-core-10.6 (--configure):
 dependency problems - leaving unconfigured
Errors were encountered while processing:
 mariadb-common
 mariadb-client-core-10.6
 libmariadb3:amd64
 mariadb-client-10.6
 mariadb-server-core-10.6

注意以下这一行:

update-alternatives: error: alternative path /etc/mysql/mariadb.cnf doesn't exist    #目标文件不存在

由此可见问题就是:MariaDB 配置文件丢了,导致整个系统包管理器卡住,装不了任何东西!

当然你可以通过验证文件是否存在:

ubuntu@VM-0-10-ubuntu:~$  ls /etc/mysql/mariadb.cnf   
ls: 无法访问 '/etc/mysql/mariadb.cnf': 没有那个文件或目录

确定文件不存在,说明找到原因了。

以下是最安全、不会丢数据的修复命令,一步一步复制运行,马上恢复正常!

第一步:修复,强制重建 MariaDB 配置

直接复制运行这 4 行,立刻解决:(把不存在的文件和目录先创建出来)

sudo mkdir -p /etc/mysql
sudo touch /etc/mysql/mariadb.cnf
sudo dpkg --configure -a
sudo apt install -f -y

运行完你会看到:所有错误消失!

sudo dpkg --configure -a

第二步:彻底清理坏掉的 MariaDB

sudo apt remove --purge mariadb* -y
sudo apt autoremove -y
sudo apt clean

第三步:重新安装 MariaDB

完成上面的清理后,再次安装即可。

sudo apt install mariadb-server mariadb-client -y

这是真实的使用经验,很多时候多次安装卸载软件时可能会出现这样的情况,遇到这类问题可以通过日志和安装时返回的信息判断找出原因,解决问题。

发表评论

粤ICP备10052831号 | © 2026 58Linux 技术笔记. All Rights Reserved. | 联系我们 | 关于本站
本站内容开放共享,仅供学习交流,禁止商用售卖 | 专注 Ubuntu & Linux 实战教程
Built with GeneratePress