什么是Linux軟件包
現(xiàn)代類 Unix 操作系統(tǒng)都提供了一個集中的軟件包管理機制,以幫助用戶搜索、安裝和管理軟件。而軟件通常以包的形式存儲在倉庫中,對軟件包的使用和管理被稱為包管理。Linux 軟件包的基本組成部分通常有:共享庫、應用程序、服務和文檔
0x01
軟件包格式
deb軟件包:由 Debian Linux 提出,Debian、Ubuntu等系統(tǒng)采用的軟件包管理機制,將應用程序的二進制文件、配置文檔、man/info幫助頁面等文件合并打包在一個文件中,用戶使用軟件包管理器直接操作軟件包,完成獲取、安裝、卸載、查詢等操作 rpm軟件包:由 RedHat 公司提出,Redhat、Centos、Fedora等系統(tǒng)采用的軟件包管理機制,建立統(tǒng)一的數(shù)據(jù)庫文件,詳細記錄軟件包安裝、卸載等變化信息,自動分析軟件包依賴關(guān)系
0x02
軟件包命名
deb軟件包的命名遵循以下約定
Filename-Version-Reversion.Architecture.deb
軟件名稱 Filename
軟件版本 Version
修訂版本 Reversion
體系架構(gòu) Architecture
rpm軟件包的命名遵循以下約定:
Filename-Version-Reversion.OS.Architecture.rpm
軟件名稱 Filename
軟件版本 Version
修訂版本 Reversion
操作系統(tǒng) OS
體系架構(gòu) Architecture
通過了解軟件包的命名規(guī)則,就能知道軟件包所適用的環(huán)境了
0x03
軟件包管理工具
大多數(shù)流行的 Linux 發(fā)行版在包管理工具、方式和形式都大同小異,但卻還是有平臺差異:
使用軟件包管理工具安裝軟件后,常見的安裝位置如下圖所示
如何管理Linux軟件包
Linux軟件包管理通常不僅限于軟件的一次性安裝,還包括了對已安裝軟件包進行升級的工具。下面以 Ubuntu 系統(tǒng)為例介紹如何管理Linux軟件包
0x01
dpkg管理工具
dpkg命令一般在直接安裝現(xiàn)成.deb包時使用,常見命令如下:
dpkg-i#安裝一個存在本地的Deb軟件包 dpgk-r #移除一個已經(jīng)安裝的軟件包 dpkg-P #移除已安裝軟件包及配置文件 dpkg-L #列出安裝的軟件包清單 dpkg-s #顯出軟件包的安裝狀態(tài)
dpkg命令可用于安裝、編譯、卸載和查詢Deb軟件包。但是不能主動從鏡像點獲取軟件包,且安裝時無法檢測軟件包的依耐關(guān)系
0x02
apt管理工具
apt 是最常見的包操作命令,在Ubuntu中 apt 采用集中式的軟件倉庫機制,將各式各樣的軟件包分門別類地存在軟件倉庫中,然后將軟件倉庫置于不同的鏡像服務器中,并保持基本一致,對于用戶而言,這些鏡像服務器就是他們的軟件源 在Ubuntu中,軟件源文件/etc/apt/sources.list中列出了軟件源鏡像站點地址。但這些鏡像站點中所具有的軟件資源并不清楚,可使用apt-get update命令掃描每一個軟件源服務器,為該服務器里的軟件包資源建立索引文件,并存放在本地的/var/lib/apt/lists目錄中 apt-get命令:主要用于自動從互聯(lián)網(wǎng)的軟件倉庫中搜索、安裝、升級、卸載軟件或操作系統(tǒng)。命令格式如下表示:
常見命令示例如下:
apt-getupdate #更新本地存放的軟件包倉庫列表 apt-getupgrade#升級已安裝的包,僅升級已安裝的軟件包 apt-getdist-upgrade#升級已安裝的包,可添加或刪除程序包,以滿足新的依賴 apt-getinstallpkg#從軟件倉庫安裝包 apt-getcheck #檢查軟件包依賴關(guān)系 apt-get-finstall#修復軟件包依賴關(guān)系 apt-get--reinstallinstall#重新安裝軟件包 apt-getremovepkg #不完全卸載,會刪除與該軟件包有依賴關(guān)系的軟件包 apt-get--purgeremovepkg#完全卸載,卸載軟件包時,還刪除該軟件包配置文件 apt-getclean #清理整個軟件包緩沖區(qū) apt-getautoclean #按照依賴關(guān)系清理緩沖區(qū)中多余的軟件包apt-cache命令:可以從本地APT文件中查詢和顯示有關(guān)包的可用信息,包括包名稱、描述、版本、依賴項、repo和維護者信息等。命令格式如下表示:
常見命令示例如下:
apt-cachesearchpkg #搜索內(nèi)容 apt-cacheshowpkg #顯示有關(guān)軟件包的本地緩存信息 apt-cachepolicypkg #可以獲取軟件包當前的安裝狀態(tài) apt-cachedependspkg #檢查軟件包的依賴關(guān)系
審核編輯:湯梓紅
-
Linux
+關(guān)注
關(guān)注
87文章
11378瀏覽量
211342 -
操作系統(tǒng)
+關(guān)注
關(guān)注
37文章
6942瀏覽量
124172 -
UNIX
+關(guān)注
關(guān)注
0文章
296瀏覽量
41723 -
軟件包
+關(guān)注
關(guān)注
0文章
107瀏覽量
11731 -
管理工具
+關(guān)注
關(guān)注
0文章
25瀏覽量
7708
原文標題:什么是Linux軟件包,如何管理它們
文章出處:【微信號:嵌入式攻城獅,微信公眾號:嵌入式攻城獅】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
關(guān)于openEuler軟件包加固測試的經(jīng)驗
RT-Thread軟件包定義和使用

Linux教程之如何進行軟件包管理
RZ/Five Verified Linux 軟件包 V3.0.2 組件列表

在Linux中如何查找軟件包版本
RZ/Five Verified Linux 軟件包 V3.0.2-update1 組件列表

RZ/Five Verified Linux 軟件包 V3.0.2-update1 組件列表

RZ/Five Verified Linux 軟件包 V3.0.2組件列表

RT-Thread在線軟件包改為本地軟件包的方法

RZ/G驗證的Linux軟件包V2.1.20-RT組件列表

RZ/G驗證的Linux軟件包V2.1.20-RT 修補程序應用指南

RZ/G驗證的Linux軟件包V2.1.20-RT 發(fā)布說明

評論