[Linux] 安裝 deb 檔案時出現 dpkg frontend is locked by another process 訊息?
今天在用 dpkg 安裝一個 .deb 檔案時,出現了一個錯誤訊息:
# dpkg -i test.deb dpkg: error: dpkg frontend is locked by another process
從訊息來看,應該是有其他在用 dpkg (像是 Ubuntu Software Center) 的軟體正在開啟中,
所以我在跑的這個 dpkg 就不能再執行了,
這其實也是蠻合理的,如果有兩個以上的人同時去修改軟體的安裝庫,
是有可能會造成衝突的,所以 dpkg 有做這個防護。
不過我們要怎麼知道是誰鎖住了 dpkg 呢?
可以用 lsof 去找一下誰開啟了 /var/lib/dpkg/lock-frontend 這個檔案:
# lsof -n /var/lib/dpkg/lock-frontend COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME dpkg 6630 root 3uW REG 8,5 0 9175905 /var/lib/dpkg/lock-frontend
如果只想知道 process id (pid) 的話,可以加上 -t 參數:
# lsof -n -t /var/lib/dpkg/lock-frontend 6630
這樣就能找到鎖住 dpkg 的兇手啦,
接著看是要正規的去關掉那個軟體、或是要直接 kill 掉,
就可以自己再決定囉~
參考資料:dpkg: error: dpkg status database is locked by another process
(本頁面已被瀏覽過 490 次)