一、什么是YUM
YUM的全稱為 Yellowdog Update Modifier,其主要目的是為了解決RPM包安裝時的依賴關系的問題。YUM只是一個用于軟件安裝的前端工具,其主要的服務對象還是RPM軟件包。
YUM采用C/S架構,即客戶端與服務器的模式,下面分別進行說明。
二、YUM客戶端
1、工作原理
1)獲取倉庫元數據
yum會先將倉庫的元數據緩存于本地的/var/cache/yum目錄中。
2)安裝程序包
yum客戶端程序在本地分析元數據文件,并結合本地系統環境(已安裝的包)做出要安裝的程序包的決策。
3)獲取程序包
根據決策聯系yum倉庫,下載各程序包緩存于本地后,一并進行安裝。
2、配置客戶端
1)主配置文件(中心配置文件):/etc/yum.conf。
通常不需要進行修改,保持其默認配置即可。
2)提供repo配置文件,指明倉庫訪問路徑及各種屬性信息。
在目錄/etc/yum.repos.d/目錄中創建.repo文件,其格式如下:
[REPOID] 任意字符即可;
name=自定義 任意字符即可;
baseurl=ftp:// 指明yum倉庫的位置,支持服務器的類型包括ftp,nfs,http,file;
file:/// 當用多個yum倉庫時,可在每一行指定一個baseurl;
enabled={0|1} 是否啟用此repo的配置,默認為enabled=1;
gpgcheck={0|1} 是否啟用校驗;
gpgkey=URL 如啟用校驗,應指明密鑰的位置;
cost={1..n} 默認為1000,指定訪問此倉庫的開銷;
3、yum客戶端命令的使用
1)列出所有可用repo
yum repolist {enable|disabled|all}
2)列出rpm包
yum list {all|install|available}
3)包的描述信息
yum info Package_name
4)列出所有包組信息
yum grouplist
5)顯示包組的信息:例如組中包含的程序包列表
yum groupinfo “group_name”
6)清理緩存
yum clean {all|packages|metadata|expire-cache|rpmdb|plugins}
7)安裝程序包
yum install package_name
8)重新安裝程序包
yum reinstall package_name
9)升級
檢查可用的升級包
yum check-update
升級軟件包
yum update package_name
指定軟件包升級的版本
yum downgrade package_name
10)卸載
yum remove|erase package_name
11)查詢某文件是由哪個包安裝生成的
yum provides filename
12)安裝包組
yum groupinstall “group name”
13)卸載包組
yum groupremove “group name”
三、YUM倉庫
1、yum倉庫類型
base庫:通常為系統發行版所提供的程序包。
updates庫:為軟件提供更新程序包。
epel庫:提供額外的程序包。
2、yum倉庫的服務器類型
ftp服務器
http服務器
nfs服務器
file本地服務器
3、自建yum倉庫
yum倉庫所在的目錄中必須是repodata目錄所在的目錄,下面來舉例說明:
1)基于光盤鏡像的repo
在CentOS 6的光盤鏡像中已經制作好了repodata目錄,我們只需將yum源的路徑指向掛載目錄即可。
此方法適合于創建本地的yum倉庫。
2)基于服務器的repo
下面以http服務為例創建yum倉庫:
(1)安裝httpd程序,并啟動服務;
(2) 在httpd的文檔根目錄/var/www/html中創建子目錄,用于存放某相關rpm包;
(3) 為倉庫生成元數據文件,以使用能夠作為倉庫使用
(4) 配置yum客戶端使用此倉庫
使用yum安裝hadoop進行測試:
原創文章,作者:petmaster,如若轉載,請注明出處:http://www.www58058.com/2602