無法獲取 dpkg 前端鎖
解決辦法如下:
1。終端輸入 ps aux ,列出進程。找到含有apt-get的進程,直接sudo kill PID。
2。強制解鎖,命令
sudo rm /var/cache/apt/archives/lock
sudo rm /var/lib/dpkg/lock
二。
apt-get的卸載相關的命令有remove/purge/autoremove/clean/autoclean等。具體來說:
apt-get purge / apt-get --purge remove
刪除已安裝包(不保留配置文件)。
如軟件包a,依賴軟件包b,則執行該命令會刪除a,而且不保留配置文件
apt-get autoremove
刪除為了滿足依賴而安裝的,但現在不再需要的軟件包(包括已安裝包),保留配置文件。
apt-get remove
刪除已安裝的軟件包(保留配置文件),不會刪除依賴軟件包,且保留配置文件。
apt-get autoclean
APT的底層包是dpkg, 而dpkg 安裝Package時, 會將 *.deb 放在 /var/cache/apt/archives/中,apt-get autoclean 只會刪除 /var/cache/apt/archives/ 已經過期的deb。
apt-get clean
使用 apt-get clean 會將 /var/cache/apt/archives/ 的 所有 deb 刪掉,可以理解為 rm /var/cache/apt/archives/*.deb。
那么如何徹底卸載軟件呢?
具體來說可以運行如下命令:
# 刪除軟件及其配置文件 apt-get --purge remove <package> # 刪除沒用的依賴包 apt-get autoremove <package>
# 此時dpkg的列表中有“rc”狀態的軟件包,可以執行如下命令做最后清理:
dpkg -l |grep ^rc|awk '{print $2}' |sudo xargs dpkg -P
當然如果要刪除暫存的軟件安裝包,也可以再使用clean命令。