Software-Installation
如何通過 dpkg -i 或 apt 安裝 deb 文件?
我有一個用於安裝的 deb 包。
我應該通過 apt 安裝
dpkg -i my.deb
還是通過 apt 安裝?兩者都能很好地處理軟體依賴問題嗎?
如果通過 apt,我如何通過 apt 從 deb 安裝?
當你
apt
用來安裝一個包時,它使用dpkg
. 當您使用 apt 安裝軟體包時,它首先會創建所有依賴項的列表並從儲存庫下載它。下載完成後,它會呼叫
dpkg
安裝所有這些文件,滿足所有依賴項。因此,如果您有
.deb
文件,可以通過以下方式安裝它:
- 使用:
sudo dpkg -i /path/to/deb/file sudo apt-get install -f
- 使用:
sudo apt install ./name.deb
或者
sudo apt install /path/to/package/name.deb
對於舊
apt-get
版本,您必須首先將 deb 文件移動到/var/cache/apt/archives/
目錄。對於兩者,執行此命令後,它會自動下載其依賴項。
- 首先安裝
gdebi
然後使用它打開您的 .deb 文件(右鍵點擊->打開方式)。它將安裝您的 .deb 包及其所有依賴項。注意:APT 維護包索引,它是文件和目錄
/var/cache/apt/*.bin
中定義的 repo 中可用包的數據庫 () 。如果包索引中不存在 deb 所需的依賴關係,所有這些方法都將無法滿足軟體依賴關係。/etc/apt/sources.list``/etc/apt/sources.list.d
為什麼使用
sudo apt-get install -f
aftersudo dpkg -i /path/to/deb/file
(如方法1中所述)?來自
man apt-get
:-f, --fix-broken Fix; attempt to correct a system with broken dependencies in place.
當
dpkg
安裝一個包並且不滿足包依賴關係時,它會使包處於“未配置”狀態,並且該包被認為是損壞的。該
sudo apt-get install -f
命令嘗試通過安裝缺少的依賴項來修復這個損壞的包。