linux安裝軟體包錯誤
阿新 • • 發佈:2018-12-18
錯誤1:
E: 無法獲得鎖 /var/lib/apt/lists/lock - open (11: 資源暫時不可用) E: 無法對目錄 /var/lib/apt/lists/ 加鎖
問題原因:另外一個程式正在執行,導致資源被鎖不可用
解決方案:
1.ps-aux 查出apt-get程序的PID,通常是一個四位數字。
2.用sudo kill PID程式碼 殺死程序
3.用sudo apt-get update,sudo apt-get dist-upgrade升級。
錯誤2:dpkg:警告:無法找到軟體包×××的檔名列表檔案,現假定該軟體包目前沒有任何檔案被安裝在系統裡。
問題原因:誤刪了/var/lib/dpkg/infoinfo,資料夾儲存各個軟體的配置檔案列表
但方案上述過程執行完了之後,仍然會有很多軟體包沒辦法重新安裝,需要我們一個個安裝,我簡單看了一下,提示仍然會有100多個包,如果逐個採用sudo apt-get install ××× --reinstall安裝,太麻煩了,因此,下面提供一個程式自動安裝。
step1:將終端terminal中的資訊複製到pkg.txt檔案中
step2:在與pkg.txt的同一目錄下建立reinstall.py程式,程式程式碼如下:
# -*- coding: UTF-8 -*- import os def read_pkg(pkg_file): pkg_list = [] with open(pkg_file) as f_r: lines = f_r.readlines() for line in lines: pkg_name = line.split("無法找到軟體包 ")[-1].split(" 的檔名列表檔案")[0] if ":amd64" in pkg_name: pkg_name=pkg_name.split(":amd64")[0] pkg_list.append(pkg_name) return pkg_list def run_reinstall_pkg(pkg_list): for pkg_name in pkg_list: os.system("sudo apt-get install "+pkg_name+" --reinstall") if __name__=="__main__": pkg_file="pkg.txt" pkg_list = read_pkg(pkg_file) run_reinstall_pkg(pkg_list)
step3:安裝過程中可能需要輸使用者密碼,以及各種報錯的問題,就需要停止程式手動處理了。