For investors
股價(jià):
5.36 美元 %For investors
股價(jià):
5.36 美元 %認(rèn)真做教育 專心促就業(yè)
實(shí)驗(yàn)環(huán)境:
CentOS release 6.6 (Final) 一臺(tái)
IP地址:172.16.249.230
附帶:CentOS release 6.6光盤(pán)鏡像文件
CentOS-6.6-x86_64-bin-DVD1.iso
CentOS-6.6-x86_64-bin-DVD2.iso
YUM(Yellow dog Updater, Modified) 由Duke University團(tuán)隊(duì),修改Yellow Dog Linux的Yellow Dog Updater開(kāi)發(fā)而成,是一個(gè)基于 RPM 包管理的字符前端軟件包管理器。能夠從指定的服務(wù)器自動(dòng)下載 RPM 包并且安裝,可以處理依賴性關(guān)系,并且一次安裝所有依賴的軟件包,無(wú)須繁瑣地一次次下載、安裝。被Yellow Dog Linux本身,以及Fedora、Red Hat Enterprise Linux、CentOS、SUSE采用。
RedHat 6.2 Linux修改yum源免費(fèi)使用CentOS源 #/Linux/2013-07/87383.htm
配置EPEL YUM源 #/Linux/2012-10/71850.htm
Redhat 本地yum源配置 #/Linux/2012-11/75127.htm
yum的配置文件說(shuō)明 #/Linux/2013-04/83298.htm
RedHat 6.1下安裝yum(圖文) #/Linux/2013-06/86535.htm
YUM 安裝及清理 #/Linux/2013-07/87163.htm
CentOS 6.4上搭建yum本地源 #/Linux/2014-07/104533.htm
一.YUM倉(cāng)庫(kù)和客戶端簡(jiǎn)介
YUM repository:yum倉(cāng)庫(kù)
存儲(chǔ)了眾多rpm包,以及包的相關(guān)元數(shù)據(jù)的文件服務(wù)器
文件服務(wù)器:
HTTP:http://ip/centos/$releasever/os/$basearch/
FTP:ftp://ip/centos/$releasever/os/$basearch/
NFS:網(wǎng)絡(luò)文件系統(tǒng),nfs://ip/centos/$releasever/os/$basearch/
FILE:本地,file:///centos/$releasever/os/$basearch/
YUM Client :客戶端
配置文件:指向倉(cāng)庫(kù)的位置以及各種配置信息,每個(gè)yum客戶端可以有多個(gè)倉(cāng)庫(kù)。
緩存文件:/var/cache/yum/
二.YUM的配置文件詳解
yum的配置一般有兩種方式,一種是直接配置/etc目錄下的yum.conf文件,另外一種是在/etc/yum.repos.d目錄下增加.repo文件。
(一).關(guān)于yum.conf文件詳解
#cat /etc/yum.conf
[main]
cachedir=/var/cache/yum/$basearch/$releasever
#yum下載的RPM包的緩存目錄
keepcache=0
#緩存是否保存,1保存,0不保存。
debuglevel=2
#調(diào)試級(jí)別(0-10),默認(rèn)為2(具體調(diào)試級(jí)別的應(yīng)用,我也不了解)。
logfile=/var/log/yum.log
#yum的日志文件所在的位置
exactarch=1
#在更新的時(shí)候,是否允許更新不同版本的RPM包,比如是否在i386上更新i686的RPM包。
obsoletes=1
#這是一個(gè)update的參數(shù),具體請(qǐng)參閱yum(8),簡(jiǎn)單的說(shuō)就是相當(dāng)于upgrade,允許更新陳舊的RPM包。
gpgcheck=1
#是否檢查GPG(GNU Private Guard),一種密鑰方式簽名。
plugins=1
#是否允許使用插件,默認(rèn)是0不允許,但是我們一般會(huì)用yum-fastestmirror這個(gè)插件。
installonly_limit=5
#允許保留多少個(gè)內(nèi)核包。
bugtracker_url=#/set_project.php?project_id=19&ref=#/bug_report_page.php?category=yum
distroverpkg=centos-release
# This is the default, if you make this bigger yum won't see if the metadata
# is newer on the remote and so you'll "gain" the bandwidth of not having to
# download the new metadata and "pay" for it by yum not having correct
# information.
# It is esp. important, to have correct metadata, for distributions like
# Fedora which don't keep old packages around. If you don't like this checking
# interupting your command line usage, it's much better to have something
# manually check the metadata once an hour (yum-updatesd will do this).
# metadata_expire=90m
# PUT YOUR REPOS HERE OR IN separate files named file.repo
# in /etc/yum.repos.d
(二).關(guān)于/etc/yum.repos.d/*.repo文件詳解
什么是repo文件?
repo文件是CentOS中yum源(軟件倉(cāng)庫(kù))的配置文件,通常一個(gè)repo文件定義了一個(gè)或者多個(gè)軟件倉(cāng)庫(kù)的細(xì)節(jié)內(nèi)容,例如我們將從哪里下載需要安裝或者升級(jí)的軟件包,repo文件中的設(shè)置內(nèi)容將被yum讀取和應(yīng)用!
我們以一份系統(tǒng)自帶的repo文件做為實(shí)例來(lái)探討(#號(hào)后面是我加的注釋):
[base]
name=CentOS-$releasever - Base
#baseurl=#/centos/$releasever/os/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6
[base]
#方括號(hào)里面的是軟件源的名稱,將被yum取得并識(shí)別
name=CentOS-$releasever - Base
#這里也定義了軟件 倉(cāng)庫(kù)的名稱,通常是為了方便閱讀配置文件,一般沒(méi)什么作用,
$releasever變量定義了發(fā)行版本,通常是5,6,7等數(shù)字,
這個(gè)變量根據(jù)當(dāng)前系統(tǒng)的版本架構(gòu)不同而有不同的取值,
這可以方便yum升級(jí)的時(shí)候選擇 適合當(dāng)前系統(tǒng)的軟件包,以下同……
#baseurl=#/centos/$releasever/os/$basearch/
#上面的一行baseurl第一個(gè)字符是'#'表示該行已經(jīng)被注釋,將不會(huì)被讀取,
$basearch變量定義了系統(tǒng)的架構(gòu),可以是i386、x86_64、ppc等值
這一行的意思是指定一個(gè)baseurl(源的鏡像服務(wù)器地址)
enabled=1
#這個(gè)選項(xiàng)表示這個(gè)repo中定義的源是啟用的,0為禁用
gpgcheck=1 #
這個(gè)選項(xiàng)表示這個(gè)repo中下載的rpm將進(jìn)行g(shù)pg的校驗(yàn),已確定rpm包的來(lái)源是有效和安全的
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6
#定義用于校驗(yàn)的gpg密鑰
三.構(gòu)建YUM倉(cāng)庫(kù)
簡(jiǎn)要步驟說(shuō)明
(一).確認(rèn)文件共享方式
(二).把rpm包放置于能夠被各yum客戶端訪問(wèn)到位置
(三).創(chuàng)建yum倉(cāng)庫(kù)的元數(shù)據(jù)
createrepo命令
#yum -y install createrepo
為yum倉(cāng)庫(kù)創(chuàng)建元數(shù)據(jù)文件
#createrepo 軟件包文件目錄
實(shí)驗(yàn)案例:
在本文中我創(chuàng)建一個(gè)本地光盤(pán)yum來(lái)構(gòu)建一個(gè)本地YUM倉(cāng)庫(kù)。
(一)、掛載本地光盤(pán)
#mkdir /mnt/cdrom
#新建掛載目錄
#mount -t iso9660 /dev/cdrom /mnt/cdrom
#掛載光盤(pán)到/mnt/cdrom 目錄
#ls /mnt/cdrom
#查看/mnt/cdrom 目錄內(nèi)容
[root@LinuxHost yum.repos.d]# mkdir /mnt/cdrom
[root@LinuxHost yum.repos.d]# mount -t iso9660 /dev/cdrom /mnt/cdrom
mount: block device /dev/sr0 is write-protected, mounting read-only
[root@LinuxHost yum.repos.d]# ls /mnt/cdrom
CentOS_BuildTag isolinux RPM-GPG-KEY-CentOS-Debug-6
EFI Packages RPM-GPG-KEY-CentOS-Security-6
EULA RELEASE-NOTES-en-US.html RPM-GPG-KEY-CentOS-Testing-6
GPL repodata TRANS.TBL
images RPM-GPG-KEY-CentOS-6
(二)、配置本地YUM源
#cd /etc/yum.repos.d/
#進(jìn)入/etc/yum.repos.d 目錄
#ls
#查看目錄內(nèi)容
#mv CentOS-Base.repo CentOS-Base.repo.bak
#mv CentOS-Debuginfo.repo CentOS-Debuginfo.repo.bak
#重命名上面2個(gè)文件
#vi CentOS-Media.repo
#對(duì)CentOS-Media.repo 進(jìn)行編輯
(三)、修改CentOS-Media.repo內(nèi)容
[c6-media]
name=CentOS-$releaserver - Media
#自定義Yum源名稱
baseurl=file:///mnt/cdrom/
#本地光盤(pán)掛載路徑
gpgcheck=1
#檢查GPG-KEY
enabled=1
#啟用Yum源
gpgkey=file:///mnt/cdrom/RPM-GPG-KEY-CentOS-6
#GPG-KEY路徑
[root@LinuxHost yum.repos.d]# cat CentOS-Media.repo
[C6-Media]
name=CentOS-$releaserver-Media
baseurl=file:///mnt/cdrom
gpcheck=1
enabled=1
gpgkey=file:///mnt/cdrom/RPM-GPG-KEY-CentOS-6
檢查列出可用yum倉(cāng)庫(kù)元數(shù)據(jù)
[root@LinuxHost yum.repos.d]# yum repolist
Loaded plugins: fastestmirror, refresh-packagekit, security
Loading mirror speeds from cached hostfile
repo id repo name status
C6-Media CentOS-$releaserver-Media 6,518
repolist: 6,518
至此,本地YUM源配置完成,我們就可以使用yum命令來(lái)安裝管理程序包了。
【免責(zé)聲明】本文部分系轉(zhuǎn)載,轉(zhuǎn)載目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點(diǎn)和對(duì)其真實(shí)性負(fù)責(zé)。如涉及作品內(nèi)容、版權(quán)和其它問(wèn)題,請(qǐng)?jiān)?0日內(nèi)與聯(lián)系我們,我們會(huì)予以更改或刪除相關(guān)文章,以保證您的權(quán)益!