如题,在Ubuntu中运行apt相关的指令时,比较常见的问题。但要具体问题具体分析。
刚开始我跟很多人一样,运行:
ps aux | grep apt dpkg
去查找相关的进程的PID,或者简单的:
sudo killall apt apt-get
后面根据其他文章说还要删除lock文件,于是运行:
sudo rm /var/lib/apt/lists/lock
sudo rm /var/cache/apt/archives/lock
sudo rm /var/lib/dpkg/lock
发现还是不行。后面找到了这篇文章Ubuntu中Unable to acquire the dpkg frontend lock (/var/lib/dpkg/lock-frontend)问题的解决,才豁然开朗,回想在删除lock文件的过程中,输入/var/lib/dpkg/lock路径时,系统已经联想到了另一个lock-frontend文件,自己没有重视。解决问题还得重回问题本身:
出错的地方是dpkg frontend,那么答案很明显了。所以要做的是,kill掉dpkg frontend,并删除刚才发现的lock文件,并重新配置dpkg:
sudo rm /var/lib/dpkg/lock-frontend
sudo dpkg --configure -a
感谢前辈的铺路,希望给后来人启发。