這是本文件的舊版!
查詢套件詳細資料
$ dpkg -s [套件名]
列出所有已經安裝的套件
$ dpkg -l
查詢指定套件狀態
$ dpkg -l [套件名]
第一位為期望碼,第二位為目前狀態碼。
符號 | 期望碼 |
---|---|
u | 未知 |
i | 安裝 |
r | 刪除 |
p | 清除 |
h | 凍結 |
符號 | 狀態碼 |
n | 無 |
i | 已安裝 |
c | 僅存設定檔 |
U | 僅解壓縮 |
F | 設定失敗 |
H | 不完全安裝 |
查詢套件包含的所有檔案
$ dpkg -L [套件名]
查詢 .deb 檔案中包含的檔案
$ dpkg -c [*.deb]
查詢某個檔案是哪個套件提供的
$ dpkg -S [檔案名]
拿到一個 deb 檔,用 ar 解開
$ ar x file.deb
得到 debian-binary、control.tar.gz、data.tar.gz 三個檔案,再把 control.tar.gz 解開,得到 control 檔,裡面紀錄套件資訊,修改好 Depends 後,將 control.tar.gz 包回去,然後用
$ ar d file.deb control.tar.gz
將舊的 control 刪除,最後用
$ ar r file.deb control.tar.gz
將新的 control 加進去即可。
重新編譯套件,建立最佳化套件。
# apt-get install apt-build
設定檔放在 /etc/apt/apt-build.conf,接著更新套件清單
# apt-build update
安裝套件
# apt-build install [套件名]
如果要重新安裝套件
# apt-build --reinstall install [套件名]
相關檔案放在 /var/cache/apt-build 中。
首先將系統內所有已經安裝的套件列出來
# dpkg --get-selections | awk '{if ($2 == "install") print $1}' > /etc/apt/apt-build.list