- Linux服務器配置與管理完全學習手冊
- 王健
- 3344字
- 2021-03-19 15:14:44
5.4 常用軟件包管理工具
安裝、升級和卸載應用軟件是影響用戶對操作系統評價的決定性因素之一。對于Linux操作系統,其擁有的簡潔而強大的軟件包管理機制功不可沒。本節介紹幾種典型Linux系統中應用軟件的管理和使用方法。
5.4.1 system-config-packages
如果安裝系統時,有些必要的軟件忘記安裝了,可以通過system-config-packages來安裝。system-config-packages是一個管理本地軟件包的工具,更直接一點說system-config-packages是通過系統安裝盤來進行安裝和移除軟件的工具軟件。這個工具極為有用,能解決軟件包之間的依賴關系。Redhat軟件包管理工具應該是redhat-config-packages,用法與system-config-packages是一樣的。
1.system-config-packages的安裝和使用
首先確認是不已經安裝有system-config-packages。
[root@localhost]# rpm -qa system-config-packages system-config-packages-1.2.25-1
如果有上面的提示,就表明已經安裝;如果沒有安裝,可以通過如下的命令來安裝。
[root@localhost]# rpm -ivh system-config-packages*
運行system-config-packages。
[root@localhost]# system-config-packages –help Usage: system-config-packages [--help] [--tree=PATH] [--isodir=PATH]
這里可以看到system-config-packages的幫助。system-config-packages支持iso補裝或者刪除軟件包,所以在運行這個命令時,要指定ISO的存放位置。
[root@localhost]# system-config-packages --isodir=存放ISO光盤映像的目錄
所以根據自己系統的情況,用軟件包管理器來添加和刪除軟件的命令如下。
[root@localhost]# system-config-packages --isodir=/mnt/wind
2.如何在Linux中打開iso文件
iso文件也是一個打包文件,和rar以及zip文件類似,只是它們的格式不同。除了使用軟件包管理器以外,還可以把iso文件掛載到一個目錄中,這樣也可以用手工方式來安裝需要的包。首先要把iso文件加載到一個目錄中,命令如下。
mount -o loop ISO文件名 目的目錄
如要把iso文件臨時加載到/mnt/temp目錄中,首先要建如下目錄。
[root@localhost]# mkdir /mnt/temp
然后加載FC4的第一個iso文件。
[root@localhost]# mount -o loop /mnt/wind/FC4-i386-disc1.iso /mnt/temp/ [root@localhost]# ls /mnt/temp/ autorun GPL README RPM-GPG-KEY RPM-GPG-KEY-fedora-rawhide TRANS.TBL eula.txt images README-Accessibility RPM-GPG-KEY-beta RPM-GPG-KEY- fedora- test Fedora isolinux RELEASE-NOTES RPM-GPG-KEY-fedora RPM-GPG-KEY-rawhide [root@localhost]# mkdir /mnt/hda10/fc40 [root@localhost]# cp -R /mnt/temp/* /mnt/hda10/fc40/
再加載第二個iso文件。
[root@localhost]#umount /mnt/temp先卸載第一個iso
加載第二個iso文件和第一個iso文件一樣,把所有的文件提出來,放到第一個iso文件提出來的文件所在的同一個目錄中。如果遇到提示詢問是不是覆蓋文件,選擇覆蓋就行。第三個和第四個ios文件都是如此。通過這個例子,可以知道提取出的四個iso文件內的所有文件都存放在/mnt/hda10/fc40目錄中。所以想查看Fedora Core 4.0所有的RPM包,就可以到/mnt/hda10/fc40/Fedora/RPMS目錄中查看,所有從四個ios文件提出的文件的都在,如果想安裝什么,就用下面的命令安裝。
[root@localhost]#rpm -ivh file.rpm
5.4.2 yum
yum(全稱為Yellow dog Updater,Modified)是一個shell前端軟件包管理器。該工具基于RPM包管理,能夠從指定的服務器自動下載RPM軟件包并且安裝,可以自動處理依賴性關系,并且一次安裝所有依賴的軟件包,無須煩瑣地一次次下載、安裝。yum提供了查找、安裝、刪除某一個或某一組甚至全部軟件包的命令,并且可以同時配置多個資源庫Repository(/etc/yum.repo.d目錄下),全局配置文件(/etc/yum.conf)簡潔,使用起來很方便。此外,yum的另一個功能是進行系統中所有軟件的升級。如上所述,yum的RPM包來源于源空間,在RHEL中由/etc/yum.repos.d/目錄中的.repo文件配置指定,如rhel-debuginfo.repo的內容。
1.yum的常用命令
(1)常用的命令組合
yum check-update:檢查可更新包。
yum update:更新所有包。
yum update packagename:更新指定包。
yum install software:安裝指定軟件(安裝過程中手動選擇yes or no)。
yum -y install software:安裝指定軟件(安裝過程中所有選擇全部選yes)。
yum remove software:刪除軟件。
yum info packagename:獲取軟件包信息。
yum provides packagename:列出軟件包包含的文件。
(2)yum緩存(/var/cache/yum/)的相關參數
yum clean packages:清除緩存中rpm包文件。
yum clean headers:清除緩存中rpm頭文件。
yum clean oldheaders:清除緩存中舊的rpm頭文件。
yum clean或#yum clearn all:清除緩存中舊的rpm頭文件和包文件(相當于yum clean packages + yum clean oldheaders)。
(3)包列表相關參數
yum list:列出資源庫中所有可以安裝或更新的rpm包。
yum list mozilla:列出資源庫中特定的可以安裝或更新以及已經安裝的rpm包。
yum list mozilla*:列出資源庫中所有可以以mozilla開頭的rpm包。
yum list updates:列出資源庫中所有可以更新的rpm包。
yum list installed:列出已經安裝的所有的rpm包。
(4)rpm包信息顯示(info參數同list)
yum info:列出資源庫中所有可以安裝或更新的rpm包的信息。
yum info mozilla:列出資源庫中特定的可以安裝或更新以及已經安裝的rpm包的信息。
yum info mozilla*:可以在rpm包名中使用匹配符,如列出所有以mozilla開頭的rpm包的信息。
yum info updates:列出資源庫中所有可以更新的rpm包的信息。
yum info installed:列出已經安裝的所有的rpm包的信息。
(5)搜索rpm包
yum search mozilla:搜索匹配特定字符的rpm包。
yum provides realplay:搜索有包含特定文件名的rpm包。
yum基本命令格式及主要參數說明如表5-4所示。
表5-4 yum命令與參數說明

2.yum的配置文件
配置文件用來定義用戶期望的yum行為。yum的配置文件分為兩部分:main和repository。main部分定義了全局配置選項,整個yum配置文件應該只有一個main,常位于/etc/yum.conf中;repository部分定義了每個源/服務器的具體配置,可以有一到多個,常位于/etc/yum.repo.d目錄下的各文件中。
(1)/etc/yum.conf
yum的全局配置文件如圖5-11所示。

圖5-11 yum全局配置
pkgpolicy=newest
一共有兩個選項,newest和last。如果用戶設置了多個repository,而同一軟件在不同的repository中同時存在,若選擇newest,則yum會安裝最新的那個版本;選擇last,則yum會將服務器id以字母表排序,選擇最后的那個服務器上的軟件安裝。
tolerant=1
如果值為1,則yum會忽略任何有關包的錯誤。舉例來說,當執行yum命令安裝baz包時,如果baz包已經安裝在系統中,則yum會繼續重復安裝baz,而不會報錯,默認值為1。
exactarch=1
設置為1,則yum只會安裝與系統架構匹配的軟件包,例如,yum不會將i686的軟件包安裝在適合i386的系統中,默認值為1。
(2)/etc/yum.repo.d
在/etc/yum.repo.d目錄下會發現一些后綴是.repo的文件,這些文件都是官方源的repo文件,如圖5-12所示。

圖5-12 repo文件
yum的源/服務器配置文件如圖5-13所示。

圖5-13 yum源/服務器配置
RHEL 6系列默認在安裝系統時候就已經安裝了yum,如圖5-14所示。

圖5-14 查看yum安裝
如果系統沒有安裝,可以掛載安裝盤手動安裝,如圖5-15所示。

圖5-15 手動安裝yum
由于RHEL的yum在線更新是收費的,如果沒有注冊的話是不能使用的(不能在線安裝軟件)。在這種情況下,想使用RHEL系統,要么注冊,要么換用其他yum源。如果用戶使用的計算機安裝的是RHEL系統,若每次安裝軟件需要先掛載本地光盤,過程很煩瑣,而且有些軟件是老版本的,這種情況下可以借助CentOS的yum源來滿足需求。
RHEL配置本地yum源過程如圖5-16所示。

圖5-16 配置本地yum源
掛載本地光盤時,使用mount后發現無法掛載,提示沒有發現介質,如圖5-17所示。

圖5-17 光盤無法掛載提示
查看Vmware的步驟為,單擊鼠標左鍵選擇【VM】/【setting】/【Hardware】/【CD/DVD】,然后在右側出現的【Device】選項里勾選【Connected】,最后在【Connection】中的【Use ISO image file】里選擇【iso】文件,結果如圖5-18所示。

圖5-18 掛載本地光盤
配置本地yum源的過程如圖5-19所示。

圖5-19 配置本地yum源
其中,[rhel-local]為庫名稱,在使用yum安裝軟件顯示倉庫源時顯示的就是該項,而不是rhel-local.repo中的rhel-local。如果要開啟gpg驗證,需要將光盤中自帶的公鑰RPM-GPG-KEY-redhat-legacy-release導入到系統(通過rpm導入系統后的文件放在/etc/pki/rpm-gpg/目錄下),然后,通過指定公鑰地址來和軟件內部的私鑰匹配,手動驗證過程的命令格式為“rpm -K軟件全路徑全稱”,如圖5-20所示。

圖5-20 開啟gpg驗證過程
使用yum時,首先會搜索repodata文件,所以指定yum源路徑時指定到repodata所在目錄即可。若只有RPM包,可通過createrepo命令將包含RPM的文件夾轉換為yum倉庫,即生成repodata文件,該命令默認為未安裝。baseurl中指定本地文件路徑時使用的“file://”實際為“file://+目錄路徑”;enabled可不指定,默認為ebabled=1,即啟用該庫,若為0則不啟用,如圖5-21所示。

圖5-21 yum的使用
3.yum的圖形工具
yum在線升級更新軟件包是一個工具軟件,在安裝系統時,一般都是默認安裝。yum是一個命令行式的工具,如果用戶不習慣命令行式的yum,可以用yumex和kyum。yumex和kyum并不是獨立于yum的,而是yum的圖形前端,也就是說,在安裝和使用yumex和kyum的同時,都是以yum的安裝和配置為基礎,在用yumex或kyum時,必須先安裝配置yum。
(1)yumex的安裝和使用
首先確認系統中是不是安裝有yumex。
[root@localhost]# rpm -q yumex yumex-0.42-3.0.fc4
如果沒有類似的輸出,則使用下面的命令安裝。前提是已經完成了前述yum的配置。
[root@localhost]# yum install yumex
yumex的調用命令如下。
[root@localhost]# yumex
yumex的操作很簡單,會使用鼠標就會使用yumex。
(2)kyum的安裝和使用
安裝kyum的命令如下。
[root@localhost]# yum install kyum
調用kyum的命令如下。
[root@localhost]# kyum
yumex和kyum只需選擇一個就行,沒有必要兩個都安裝,可以嘗試一下再做選擇。
更多有關yum的信息,可以查閱http://fedoraproject.org/wiki/Tools/yum。
5.4.3 APT
APT(全稱為Advanced Packaging Tools)。與yum對應,它最早被設計成DPKG的前端軟件,現在通過apt-rpm也支持rpm管理。APT的主要包管理工具為APT-GET,通過此工具可滿足和上述yum相似的功能要求。APT的軟件源定義來自/etc/apt/sources.list文件。
# See http://help.ubuntu.com/community/UpgradeNotes for how to upgrade to # newer versions of the distribution. deb http://cn.archive.ubuntu.com/ubuntu/ hardy main restricted deb-src http://cn.archive.ubuntu.com/ubuntu/ hardy main restricted
每次手動修改上述文件后,需要使用sudo apt-get update來更新系統的源,使新的源數據能被當前系統識別。APT的配置文件位于/etc/apt/apt.conf.d,其中的多個配置文件依功能分類。
APT常用命令具體如下。
更新源索引:
$ sudo apt-get update
安裝指定軟件:
$ sudo apt-get install package-name
下載指定軟件的源文件:
$ sudo apt-get source package-name
將系統中所有軟件升級到最新版本:
$ sudo apt-get upgrade
將操作系統連同所有軟件升級到最新版本:
$ sudo apt-get dist-upgrade
卸載指定軟件:
$ sudo apt-get remove package-name
更多有關APT的信息,可查閱http://www.debian.org/doc/manuals/apt-howto/index.en.html。
- BPEL and Java Cookbook
- Extending Bootstrap
- Linux網絡內核分析與開發
- 高性能Linux服務器構建實戰:系統安全、故障排查、自動化運維與集群架構
- Docker+Kubernetes應用開發與快速上云
- Windows Server 2019 Administration Fundamentals
- 直播系統開發:基于Nginx與Nginx-rtmp-module
- Android物聯網開發細致入門與最佳實踐
- 從實踐中學習Kali Linux無線網絡滲透測試
- Windows 8實戰從入門到精通(超值版)
- 大規模分布式系統架構與設計實戰
- OpenStack Essentials(Second Edition)
- Windows 8玩全不求人
- Hadoop Operations and Cluster Management Cookbook
- 48小時精通SolidWorks 2014中文版鈑金設計技巧