日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > Ubuntu >内容正文

Ubuntu

怎么理解ubuntu中的软件包管理器apt和dpkg

發布時間:2023/12/15 Ubuntu 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 怎么理解ubuntu中的软件包管理器apt和dpkg 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

大家都知道在ubuntu下,安裝軟件經常會用到一個命令就是“apt-get install”,這里的apt命令,其實是linux系統下一個通用的軟件包管理器,使用該命令可以很方便的用來安裝和卸載軟件。然而,很多同學應該也知道,ubuntu下,還有另外一個軟件包管理器,叫做dpkg,它也可以實現軟件的安裝和卸載。那么,它們二者究竟各自負責什么,又有什么區別呢?

1、apt命令

Advanced Packaging Tool(apt)是Linux下的一款安裝包管理工具,是一個客戶/服務器系統。在服務器上先復制所有DEB包(DEB是Debian軟件包格式的文件擴展名),然后用APT的分析工具(genbasedir)根據每個DEB 包的包頭(Header)信息對所有的DEB包進行分析,并將該分析結果記錄在一個文件中,這個文件稱為DEB 索引清單,APT服務器的DEB索引清單置于base文件夾內。一旦APT 服務器內的DEB有所變動,一定要使用genbasedir產生新的DEB索引清單。客戶端在進行安裝或升級時先要查詢DEB索引清單,從而可以獲知所有具有依賴關系的軟件包,并一同下載到客戶端以便安裝。

當客戶端需要安裝、升級或刪除某個軟件包時,客戶端計算機取得DEB索引清單壓縮文件后,會將其解壓置放于/var/state/apt/lists/,而客戶端使用apt-get install或apt-get upgrade命令的時候,就會將這個文件夾內的數據和客戶端計算機內的DEB數據庫比對,知道哪些DEB已安裝、未安裝或是可以升級的。

apt命令的幾個缺省路徑:

  • 下載的軟件存放位置:/var/cache/apt/archives
  • 安裝后軟件默認位置:/usr/share
  • 可執行文件位置:/usr/bin
  • 配置文件位置:/etc
  • 庫文件位置:/usr/lib

常用的apt命令集:

sudo apt-get install # package 安裝包 sudo apt-get reinstall # package - - reinstall 重新安裝包 sudo apt-get remove # package 刪除包 sudo apt-get remove --purge # package 刪除包,包括刪除配置文件等 sudo apt-get autoremove --purge # package 刪除包及其依賴的軟件包配置文件等 sudo apt-get update # 更新源 sudo apt-get upgrade # 更新已安裝的包 sudo apt-get dist-upgrade # 升級系統

2、dpkg命令

Ubuntu是基于Debian的Linux系統,而Debian系統的軟件是使用APT和dpkg進行管理。dpkg是"Debian Packager"的簡寫,是一個底層的軟件包管理工具。

可以輸入dpkg -l來查看軟件的狀態,輸入dpkg -P來卸載軟件。因為dpkg --remove只是刪除安裝的文件,但不刪除配置文件。而dpkg --purge則安裝文件和配置文件都刪除。

常用的dpkg命令:

dpkg -i package.deb # 安裝一個 Debian 軟件包,如手動下載的文件。 dpkg -c package.deb # 列出 package.deb 的內容。 dpkg -I package.deb # 從 package.deb 中提取包信息。 dpkg -r package # 移除一個已安裝的包。 dpkg -P package # 完全清除一個已安裝的包。和 remove 不同的是,remove 只是刪掉數據和可執行文件,purge 另外還刪除所有的配制文件。 dpkg -L package # 列出 package 安裝的所有文件清單。 dpkg -s package # 顯示已安裝包的信息。 dpkg -reconfigure package # 重新配制一個已經安裝的包,如果它使用的是 debconf (debconf 為包安裝提供了一個統一的配置界面)。 dpkg -S package # 查看軟件在哪個包里;

3、區別

  • apt是會解決和安裝模塊的依賴問題,并會咨詢軟件倉庫,是在線安裝。
  • dpkg只能安裝本地的deb文件,不會關心Ubuntu的軟件倉庫內的軟件,不會解決模塊的依賴關系。
  • 兩者的區別是dpkg繞過apt包管理數據庫對軟件包進行操作,所以你用dpkg安裝過的軟件包用apt可以再安裝一遍,系統不知道之前安裝過了,將會覆蓋之前dpkg的安裝。

總結

以上是生活随笔為你收集整理的怎么理解ubuntu中的软件包管理器apt和dpkg的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。