目录
- 背景
- 原因
- 解决方法
背景
现象: 每次安装软件、卸载软件都会出现报错:dpkg: 处理软件包 lvm2 (--configure)时出错: 已安装 lvm2 软件包 post-installation 脚本 子进程返回错误状态 1
影响:
- 看着不爽,略显恶心
- 影响脚本运行,例如如下脚本,会导致install部分返回
非0
状态,导致流程控制出错:
#! /bin/bash
if ! apt install -y xxx; then...
fi
原因
安装过程中断, 导致环境变量异常, 软件安装后系统信息没有更新
解决方法
软件的状态信息有误, 状态信息在/var/lib/dpkg/status
查看,解决步骤如下:
$ sudo vim /var/lib/dpkg/status# 进入vim编辑器搜索对应软件包,例如我的报错软件包是lvm2
# 浏览模式下输入 \Package: lvm2
# 删除该软件包的所有信息(Package: lvm2 至下一个软件包 Package: xxxxx 之间的内容)
# 删除当前行命令是浏览模式下输入 dd
# 删除完成后输入 :wq$ sudo apt update
$ sudo apt install xxx
此时再进行装包、卸包均不会出现报错。
Ps. 此方法在UOS操作系统验证可行,之前也在网上搜了一下,发现有很多解决步骤中需要使用apt-get autoremove
,建议大家慎用,毕竟apt包管理各种依赖包相互交错,指不定执行完这个命令系统就废了!