执行 apt upgrade 命令时如果不小心关闭了终端,升级过程将无法完成,导致系统处于一种“挂起”状态。表现为重新尝试安装软件时,系统提示锁文件被占用,以下是解决方法。
1. 查找并终止挂起的APT进程
首先,需要找到并终止占用锁文件的APT进程。可以通过以下命令查看具体的进程号(PID):
ps -aux | grep apt
然后,使用 kill 命令终止apt进程(这里的7860就是apt upgrade对应进程的id)
kill -9 7860
2. 删除锁文件
rm /var/lib/dpkg/lock-frontend
rm /var/lib/dpkg/lock
3. 修复未完成配置的软件包
由于APT进程的意外中断,可能会有一些软件包未被正确配置。这时可以使用以下命令来修复:
dpkg --configure -a
当我们在安装或升级软件包时,如果中途进程被意外终止(比如关闭了终端),可能会导致某些软件包未被正确配置。此时,dpkg –configure -a 命令会重新配置所有已经解压但尚未配置的软件包,帮助系统恢复到一个正常的状态。
这个命令的具体作用是: · 查找并配置那些因为中断或错误而未完成配置的软件包。 · 解决由于配置未完成而导致的依赖关系问题。
4. 更新包缓存并继续升级
最后,更新包缓存并继续之前的升级操作
apt update
apt upgrade
最后
在执行 apt upgrade 或 apt install 时,如果遇到类似于 “dpkg was interrupted, you must manually run ‘sudo dpkg –configure -a’ to correct the problem” 的提示,运行 dpkg –configure -a 就是修复这些问题的标准步骤。