| 场景 | apt/dpkg 报错:事务中断或锁被占 |
|---|---|
| 目标 | 恢复包管理器到干净状态 |
| 工具链 | lsof → dpkg --configure -a → apt-get -f |
第 1 步:锁被谁占
第 1 步:锁被谁占
sudo lsof /var/lib/dpkg/lock-frontend 2>/dev/null
ps aux | grep -E 'apt|dpkg' | grep -v grep第 2 步:收尾未完成事务
第 2 步:收尾未完成事务
sudo dpkg --configure -a
sudo apt-get -f install第 3 步:顽固包处理
第 3 步:顽固包处理
dpkg -l | awk '$1!="ii"{print}' # 列出非正常状态的包
sudo dpkg --remove --force-remove-reinstreq <包名>
sudo apt-get install -f不要直接 rm /var/lib/dpkg/lock*:那只是掩盖占用问题,真正的 apt/dpkg 进程会继续把数据库写乱。