1、概述
YUM(全稱為 Yellow dog Updater, Modified)是一個(gè)在Fedora和RedHat以及CentOS中的Shell前端軟件包管理器?;赗PM包管理,能夠從指定的服務(wù)器自動(dòng)下載RPM包并且安裝,可以自動(dòng)處理依賴性關(guān)系,并且一次安裝所有依賴的軟件包,無須繁瑣地一次次下載、安裝。
2、為什么要制作本地YUM源
YUM源雖然可以簡(jiǎn)化我們?cè)贚inux上安裝軟件的過程,但是生產(chǎn)環(huán)境通常無法上網(wǎng),不能連接外網(wǎng)的YUM源,所以就無法使用yum命令安裝軟件了。為了在內(nèi)網(wǎng)中也可以使用yum安裝相關(guān)的軟件,就要配置yum源。
YUM源其實(shí)就是一個(gè)保存了多個(gè)RPM包的服務(wù)器,可以通過http的方式來檢索、下載并安裝相關(guān)的RPM包。
3、yum的常用命令
(1)基本語法
yum install -y rpm軟件包 (功能描述:安裝httpd并確認(rèn)安裝)
yum list (功能描述:列出所有可用的package和package組)
yum clean all (功能描述:清除所有緩沖數(shù)據(jù))
yum deplist rpm軟件包 (功能描述:列出一個(gè)包所有依賴的包)
yum remove rpm軟件包 (功能描述:刪除httpd)
(2)案例實(shí)操
[root@node1 ~]$ yum install -y tree
[root@node1 ~]$ tree /
[root@node1 ~]$ tree
4、關(guān)聯(lián)網(wǎng)絡(luò)yum源
(1)linux系統(tǒng)必須可以聯(lián)網(wǎng)
[root@node1 ~]# ping www.baidu.com
PING www.a.shifen.com (14.215.177.38) 56(84) bytes of data.
64 bytes from 14.215.177.38 (14.215.177.38): icmp_seq=1 ttl=128 time=45.9 ms
64 bytes from 14.215.177.38 (14.215.177.38): icmp_seq=2 ttl=128 time=45.0 ms
64 bytes from 14.215.177.38 (14.215.177.38): icmp_seq=3 ttl=128 time=45.5 ms
64 bytes from 14.215.177.38 (14.215.177.38): icmp_seq=4 ttl=128 time=44.1 ms
(2)訪問網(wǎng)絡(luò)地址
http://mirrors.163.com/.help/centos.html

(3)查看文件保存的位置



(4)替換本地yum文件,把下載的文件移動(dòng)到/etc/yum.repos.d/目錄
[root@node1 Downloads]# mv CentOS7-Base-163.repo /etc/yum.repos.d/
(5)進(jìn)入到/etc/yum.repos.d/目錄
[root@node1 Downloads]# cd /etc/yum.repos.d/
[root@node1 yum.repos.d]# pwd
/etc/yum.repos.d
(6)用CentOS7-Base-163.repo替換CentOS-Base.rep,先備份
[root@node1 yum.repos.d]# mv CentOS-Base.rep CentOS-Base.rep.bak
[root@node1 yum.repos.d]# mv CentOS7-Base-163.repo CentOS-Base.rep
(7)安裝命令
[root@node1 yum.repos.d]# yum clean all
[root@node1 yum.repos.d]# yum makecache
[root@node1 yum.repos.d]# yum install -y createrepo
[root@node1 yum.repos.d]# yum install -y httpd
[root@node1 yum.repos.d]# yum search nc
[root@node1 yum.repos.d]# yum install -y nc.x86_64
5、制作只有本機(jī)能訪問的本地YUM源
(1)將CentOS-7-x86_64-DVD-1611.iso鏡像掛載到/mnt/cdrom目錄
[root@node1 /]# mkdir -p /mnt/cdrom
[root@node1 /]# mount -t iso9660 /dev/cdrom /mnt/cdrom
(2)安裝相應(yīng)的軟件
[root@node1 yum.repos.d]# yum install -y httpd
(3)啟動(dòng)httpd服務(wù)
[root@node1 yum.repos.d]# service httpd start
(4)使用瀏覽器訪問http://node1:80
(如果訪問不通,檢查防火墻是否開啟了80端口或關(guān)閉防火墻),測(cè)試網(wǎng)絡(luò)是否暢通
(5)將YUM源配置到httpd(Apache Server)中
[root@node1 ~]# cd /var/www/html/
[root@node1 html]# mkdir Packages
[root@node1 html]# cp -r /mnt/cdrom/Packages/* /var/www/html/Packages/
[root@node1 html]# chown -R victor:victor Packages/
(6)執(zhí)行創(chuàng)建倉庫命令:createrepo 路徑
[root@node1 ~]# cd /var/www/html/Packages/
[root@node1 Packages]# createrepo ./
(7)修改本機(jī)上的YUM源配置文件,將源指向自己
[root@node1 /]# cd /etc/yum.repos.d/
[root@node1 yum.repos.d]# cp CentOS-Base.repo CentOS-Base.repo.bak
[root@node1 yum.repos.d]# vim CentOS-Base.repo
[base]
name=CentOS-Local
baseurl=file:///var/www/html/Packages
gpgcheck=0
enabled=1 #增加改行,使能
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
尖叫提示:備份原有的YUM源的配置文件
(8)清除YUM緩存
[root@node1 yum.repos.d]# yum clean all
(9)列出可用的YUM倉庫
[root@node1 yum.repos.d]# yum repolist
(10)安裝相應(yīng)的軟件
[root@node1 yum.repos.d]# yum install -y tree
[root@node1 Packages]# yum install -y firefox-45.4.0-1.el7.centos.x86_64.rpm
6、制作其它主機(jī)通過網(wǎng)絡(luò)能訪問的本地YUM源
(1)讓其它需要安裝RPM包的服務(wù)器指向這個(gè)YUM源
[root@node2 /]# cd /etc/yum.repos.d/
[root@node2 yum.repos.d]# cp CentOS-Base.repo CentOS-Base.repo.bak
[root@node2 yum.repos.d]# vim CentOS-Base.repo
[base]
name=CentOS-node1
baseurl=http://192.168.2.101/Packages
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
(2)在這臺(tái)新的服務(wù)器上執(zhí)行YUM的命令
[root@node2 yum.repos.d]# yum clean all
[root@node2 yum.repos.d]# yum repolist
(3)安裝軟件
[root@node2 yum.repos.d]# yum install -y httpd
7、yum保存下載的rpm包
[root@node1 ~]# vim /etc/yum.conf
[main]
cachedir=/var/cache/yum/$basearch/$releasever
#keepcache=0
#1表示保存到本地
keepcache=1
debuglevel=2
logfile=/var/log/yum.log
exactarch=1
obsoletes=1