rpm與tgz的區別
- 1、Linux軟件包的內容分類
- 2、Linux軟件包的格式分類
1、Linux軟件包的內容分類
Linux應用程序的軟件包按內容類別可分為兩類:
-
可執行文件(編譯后的二進制軟件包)
解包后可以直接運行,看不到源代碼。例如,Windows上所有的軟件包都是這種類型。安裝完程序后,我們就可以使用,但我們看不到源代碼
優點:安裝簡單、速度快,還可以實現包的升級、卸載
缺點:不能查看源代碼,功能選擇不如源代碼靈活
-
源程序(源碼包)
解包后仍需要使用編譯器將其編譯成可執行文件。這在Windows系統中是幾乎沒有的,因為Windows的思想是不開放源程序的
優點:開源可查看源代碼,可以自由選擇所需功能,卸載方便(直接刪除安裝位置)
缺點:安裝步驟多、速度慢,編譯時間長
可執行文件(軟件包)與源程序的區別如下:
- 幾乎所有的Linux發行版本都使用某種形式的軟件包管理安裝、更新和卸載軟件。與直接從源代碼安裝相比,軟件包管理易于安裝、卸載和更新;易于保護配置文件、跟蹤已安裝文件
- 一般來說,自己動手編譯源程序更具靈活性,但也容易遇到各種問題和困難。而相對來說,可執行軟件包反而是更容易安裝,當然靈活性就差多了。所以一般一個軟件總會提供多種打包格式的安裝程序,我們可以根據自己的情況來選擇
2、Linux軟件包的格式分類
Linux軟件安裝包主要有rpm
、deb
、tar.gz
三種格式,想了解三種軟件包的區別,需要先來看下Linux軟件的擴展名,通過擴展名可以了解軟件格式,進而了解軟件安裝
- 后綴為
.rpm
最初是Red Hat Linux提供的一種包封裝格式,現在許多Linux發行版本都使用 - 后綴為
.deb
是Debain Linux提供的一種包封裝格式 - 后綴為
.tar.gz
、tar.Z
、tar.bz2
或.tgz
是使用Unix系統打包工具tar打包的
1)rpm格式軟件包
RPM(Red Hat Package Manager)即Red Hat包管理器,是由紅帽公司最先發布的一種用來打包軟件的的文件格式,它是一種特定的用來安裝、卸載軟件等操作的專門格式,它里面打包的內容是一個可以直接使用的具體軟件
RPM本質上就是一個軟件包,包含可以立即在特定機器上安裝和運行的Linux軟件。可以在CentOS、Red Hat、Fedora Linux上直接進行安裝,但在Ubuntu中卻無法識別
2)deb格式軟件包
deb是Debian Linux提供的一個包管理器,它與RPM類似。但由于RPM出現較早,并且應用廣泛,所以在各種版本的Linux中更加常見,而Debian的包管理器deb只出現在Debian、Ubuntu Linux中。它的優點是不用被嚴格的依賴性檢查所困擾,缺點是只在Debian、Ubuntu Linux中才能見到這個包管理工具。例如,在Ubuntu系統中雙擊deb包就可以進入自動安裝進程
3)tar.gz格式軟件包
tar.gz
就是一個壓縮包,類似于Windows上的ZIP、RAR等文件,它是為了便于傳輸所產生的一種專門用于網絡流通的文件格式,這種文件格式與其他兩種軟件存在本質上的區別,例如,tar.gz
可以也是一個文本、照片等的文件壓縮在里面,并不一定是一個具體軟件。tar.gz
格式的軟件包在所有的Linux版本中都能使用,但安裝過程也最麻煩
最后總結來說就是,通常,tgz格式的都是源程序,靈活但安裝麻煩;而rpm、deb格式的則是可執行程序,安裝簡單但靈活性差
參考文章:https://www.kaotop.com/it/746714.html