发布于 

Unable to acquire the dpkg frontend lock(/var/lib/dpkg/lock-frontend)

在 Ubuntu 中 apt 未正常退出的情况下可能会遇到 Unable to acquire the dpkg frontend lock (/var/lib/dpkg/lock-frontend) 报错,即无法取得锁。总结出以下解决办法

杀死进程

即杀死占用了系统锁的进程

1
ps -e | grep apt-get

找到 apt 或 apt-get 进程的 pid

1
23072 ?        00:00:01 apt-get

杀之

1
sudo kill 23072

强制解锁

即强制删除锁文件来释放锁

1
2
sudo rm -f /var/cache/apt/archives/lock
sudo rm -f /var/lib/dpkg/lock

重启系统

重启解决 98% 的系统软件问题

1
2
3
4
5
6
7
8
9
10
11
# Method 1
# 强制重启系统,使用前请保存好文件
sudo systemctl --force reboot

# Method 2
# 利用内核调试功能强制重启系统,同样需要先保存好文件
echo "b" > /proc/sysrq-trigger

# Method 3
# 正常重启系统
sudo reboot

更多内核调试命令请参阅 Linux 内核调试