Linux系統管理6:軟件包安裝

1.軟件包分類

  • 源碼包
  • 二進制包

2.源碼包

2.1 源碼包的優點

  • 開源,如果有足夠的能力,可以修改源碼包
  • 可以自由選擇所需功能
  • 軟件是編譯安裝,所以更加適合自己的系統,更加穩定也效率更高
  • 卸載方便

2.2 源碼包的缺點

  • 安裝過程中步驟較多,尤其安裝較大的軟件集合時(如LAMP環境搭建),同一出現拼寫錯誤
  • 編譯過程時間較長,安裝比二進制安裝時間長
  • 因爲是編譯安裝,安裝過程中一旦報錯新手很難解決

3、二進制包

3.1 二進制包分類

​ DPKG包:可以進行軟件包管理,主要應用在Debian和ubuntu中,用於對軟件的安裝、更新和卸載。對應的文件擴展名爲deb。Ubuntu發行版主要以dpkg機制管理軟件。

​ RPM包:類似於Windows中的“添加/刪除程序”。rpm軟件以rpm爲擴展名。同時rpm也是一種軟件管理器,通過rpm包管理機制對軟件進行安裝、更新和卸載。centos、suse、Fedora主要爲rpm包管理機制。

3.2 特點

RPM包優點

  • 包管理系統比較簡單,止痛膏幾個命令就可以實現包的安裝、升級、查詢和卸載
  • 安裝速度比源碼包安裝快的多

RPM包缺點

  • 功能選擇不如源碼包靈活
  • 經過編譯,不在可以看到源代碼
  • 依賴性,優勢會發現需要俺咋混個軟件包a,時需安裝b和c。

3.3 RPM包依賴

樹形依賴:a->b->c

環形依賴:a->b->c->a

模塊依賴:查找模塊的網站:www.rpmfind.net

因爲安裝包會產生許多依賴,導致錯誤,一般使用yum進行安裝。

4.rpm安裝

4.1 rpm包命名規則

httpd-2.2.15-15.e16.centod.1.i686.rpm

  • httpd:軟件包名
  • 2.2.15:軟件版本
  • 15:軟件發佈的次數
  • e16:軟件發行商,
  • i687:適合的硬件平臺。硬件平臺包括了:i386、i486、i586、i686、x86_64、ppc、sparc、alpha和noarch。
  • rpm:rpm包的擴展名

包全名:如果操作的是未安裝的軟件包,則使用包全名,並且需要注意絕對路徑。

包名:如果操作的是已經安裝的軟件包,則是由包名即可,系統會生成rpm包的數據庫。(/vat/lib/rpm/),而且可以在任意路徑下操作

4.2 rpm包手工命令安裝

4.2.1 默認安裝位置

路徑 解釋
/etc/ 配置文件安裝目錄
/usr/bin/ 可執行的命令安裝目錄
/usr/lib/ 程序所使用的函數庫保存位置
/usr/share/doc/ 基本的軟件使用手冊保存位置
/usr/share/man/ 幫助文件保存位置

4.2.2 安裝命令

rpm -ivh 包全名

注意:一定是包全名,如果跟包全名的命令要注意路徑,因爲軟件包在光盤當中

選項

-i install安裝

-v 顯示更詳細的信息

-h 打印#顯示安裝進度

–nodeps 不檢測依賴性安裝(不建議使用)

–replacefiles 替換文件安裝

–replacepkgs 替換軟件包安裝

–force 強制安裝

–test 測試安裝

–prefix 指定安裝路徑(一般不推薦使用)。

//在安裝前需要掛在盤符
cd /mnt/
mkdir usb
mount /dev/cdrom /mnt/usb/
cd Packages/
//嘗試下載
rpm -ivh lrzsz-0.12.20-27.1.el6.x84_64.rpm
//如果下面出現兩個百分百說明成功了。

4.2.3 查看軟件包文件列表及文件安裝路徑

rpm -qpl 包全名

-q:使用詢問模式,遇到任何問題,rpm指令會先詢問用戶
-p:查詢軟件包
-l : 顯示軟件包中的文件列表

4.2.4 rpm包升級

rpm -Uvh 包全名

-U:升級安裝,如果沒有安裝過,系統直接安裝

rpm -Pvh 包全名

-F:升級安裝,如果沒有安裝,則不會安裝

4.2.5 rpm包卸載

rpm -e 包名

-e:卸載

–nodeps 不檢查安裝依賴性

4.2.6 查詢

1.查詢軟件包是否安裝

rpm -q 包名

2.查詢系統中的所有安裝包軟件

rpm -qa

也可以選用管道符來查看所需的內容

rpm -qa | grep httpd

3.查詢包的詳細信息

查詢已安裝包詳細信息

rpm -qi 包名

查詢未安裝包的詳細信息

rpm -qip 包全名

-p:查詢沒有安裝的軟件包

4.查詢軟件包中的文件列表

查詢已安裝包的文件列表

rpm -ql 包名

-l:列出軟件包中所有的文件列表的軟件所安裝的目錄

查詢未安裝包的文件列表

rpm -qpl 包全名

5.查詢系統文件屬於哪個rpm包

查詢該文件夾是屬於哪個rpm包的,但是手動建立的文件夾不行,必須是rpm自己創建的

rpm -qf 系統文件名

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章