天天看點

YUM(Yellow gog Updater Modifie)伺服器的配置

YUM(Yellow gog Updater Modifie)伺服器的配置

1.yum是什麼

2.yum的特點

    *可以同時配置多個資源庫(Repository)

  *簡潔的配置檔案(/etc/yum.conf)

  *自動解決增加或删除rpm包時遇到的倚賴性問題

  *使用友善,保持與RPM資料庫的一緻性

3.yum配置

Yum倉庫配置首先需要一個YUM源,也就是需要提供一個存放RPM包以及YUM對這些RPM分析檔案的位置

a.ftp伺服器作為YUM源

① 安裝配置vsftpd

② 确認系統中是否安裝YUM伺服器,一般預設安裝

③ 安裝createrepo,該軟體用于生産RPM依賴關系及分組資訊

④ 将RHELCD光牒中部分内容複制到/var/ftp/pub目錄下,(不使用虛拟化不複制VT,不使用群集可不複制Cluster和ClusterStorage)

Cp -rv Server  /var/ftp/pub

Cp -rv VT  /var/ftp/pub

Cp -rv Cluster  /var/ftp/pub

Cp -rv  ClusterStorage  /var/ftp/pub

B.CD光牒作為YUM源

  如果使用RHELCD光牒作為YUM源,隻需将CD光牒挂載到一個目錄即可

c.ISO檔案作為YUM源

  如果總不希望将RHELCD光牒放在光驅中,可以将RHELCD光牒的ISO鏡像檔案并挂載到一個目錄即可

 Mount -0 loop rhel.iso  /mnt/cdrom

d.第三方RPM包

     在/var/ftp/pub下建立一個目錄。将下載下傳的軟體放入其中

     建立依賴關系createrepo /var/ftp/pub/你建的目錄

案例1 yum的網絡安裝  拓撲

<a href="http://blog.51cto.com/attachment/201210/204909792.png" target="_blank"></a>

1.由于我之前沒有安裝ftp伺服器,是以首先我安裝ftp伺服器,并開啟服務

[root@localhwsm Server]# rpm -ivh vsftpd-2.0.5-16.el5.i386.rpm 

Preparing...                ########################################### [100%]

   1:vsftpd                 ########################################### [100%]

安裝成功

[root@localhwsm ftp]# service vsftpd start

為 vsftpd 啟動 vsftpd:                                    [确定]

2.在ftp目錄下建立一個存放CD光牒中部分内容的目錄 這裡我就命名為REHL5

[root@localhwsm ftp]# mkdir REHL5

3.挂載CD光牒,并将其中的全部内容拷貝到REHL5目錄下

[root@localhwsm /]# mkdir  /mnt/cdrom

[root@localhwsm /]# mount /dev/cdrom /mnt/cdrom/

[root@localhwsm /]# cd /var/ftp/REHL5/

[root@localhwsm REHL5]# cp -dpr /mnt/cdrom/* ./

4.yum的用戶端配置 在/etc/yum.repos.d/目錄下複制一份以 .repo 為字尾的檔案

[root@localhost yum.repos.d]# cp  CentOS-Debuginfo.repo  client.repo

編輯client.repo檔案

  1 [REHL5-server]

  2 name=server

  3 baseurl=ftp://192.168.1.80/REHL5/Server

  4 gpgcheck=1  

  5 gpgkey=ftp://192.168.1.80/REHL5/RPM-GPG-KEY-redhat-releas  

  6 enabled=1

1 是指定yum源的标簽,這個标簽隻要在本機定義的所有yum源中不可重複

2 是指定yum源的名稱,這個名稱主要是用于yum客戶機檢視可用rpm包的一部分類資訊,

隻要在本機定義的所有yum源中不可重複即可。

3指定yum源,這裡定義yum源是ftp://192.168.1.80/REHL5/Server,這裡是rpm所在的ftp伺服器的位址。也可以根據yum倉庫配置指定為其它方式,比如HTTP 、一個目錄(file:////)

4 當gpgcheck=1時進行數字簽名檢查, 按照5 gpgkey=ftp://192.168.1.80/REHL5/RPM-GPG-KEY-redhat-releas進行數字簽名檢查,沒有數字簽名不允許安裝。gpgcheck=0時,不進行數字簽名檢查

6 enabled=1時刻yum源可用,當enabled=0時刻yum源不可用。

檢視一下

[root@localhost yum.repos.d]# yum list all

Loaded plugins: fastestmirror, refresh-packagekit, security

Determining fastest mirrors

REHL5-server                                           | 1.3 kB     00:00     

REHL5-server/primary                                   | 732 kB     00:00     

REHL5-server                                                        2292/2292

-----------------------略

以及可以用了

假如我們在yum客戶機上用yum安裝一個ftp伺服器

[root@localhost yum.repos.d]# yum -y install vsftpd

案例2 本地yum源

在c2上建一個本地yum源

1.在/etc/yum.repos.d/目錄下複制一份以 .repo 為字尾的檔案 這裡命名為CentOS-Media.repo

2.編輯CentOS-Media.repo如下:

  1 [CentOs-media]

  2 name=CentOS-server

  3 baseurl=file:///media/cdrom  這裡與Redhat不同

  4 gpgcheck=1

  5 enabled=1

  6 gpgkey=file:///media/cdrom/RPM-GPG-KEY-CentOS-6

3.建立/media/cdrom/目錄并挂載/dev/cdrom

[root@localhost yum.repos.d]# mkdir /media/cdrom

[root@localhost yum.repos.d]# mount /dev/cdrom /media/cdrom

4.清除一下yum緩存,并列出所有已安裝和可以安裝的軟體包

[root@localhost yum.repos.d]# yum clean all

[root@localhost yum.repos.d]# yum list

Loading mirror speeds from cached hostfile

Installed Packages

ConsoleKit.i686                         0.4.1-3.el6                 @anaconda-CentOS-201112130233.i

386/6.2

ConsoleKit-libs.i686                    0.4.1-3.el6                 @anaconda-CentOS-201112130233.i

ConsoleKit-x11.i686                     0.4.1-3.el6                 @anaconda-CentOS-201112130233.i

DeviceKit-power.i686                    014-3.el6                   @anaconda-CentOS-201112130233.i

-----------------------略------------- 已經列出rpm所有的包,,本地yum源可以用了。

我們來安裝一下www服務

[root@localhost yum.repos.d]# yum -y install httpd

一會就可以了

案例3 第三方軟體的yum安裝 

假如我有一個perl-Lingua-Han-PinYin-0.14-1.el5.rf.noarch.rpm 包想通過yum安裝上去

方法1

1.将perl-Lingua-Han-PinYin-0.14-1.el5.rf.noarch.rpm放置到某個倉庫這裡/var/ftp/REHL5/Server

/目錄下

2.在yum客戶機上檢視一下

<a href="http://blog.51cto.com/attachment/201210/204959923.png" target="_blank"></a>

 以上看出,并沒有perl-Lingua-Han-PinYin-0.14-1.el5.rf.noarch.rpm包呀,,,

3.在yum伺服器上安裝createrepo-0.4.11-3.el5.noarch.rpm

[root@localhwsm Server]# rpm -ivh createrepo-0.4.11-3.el5.noarch.rpm 

   1:createrepo             ########################################### [100%]

4.生産RPM包依賴關系

[root@localhwsm Server]# createrepo -g repodata/comps-rhel5-server-core.xml /var/ftp/REHL5/Server/

-g 生成依賴關系,更新分組檔案資訊

這一步時間比較長一點!!!!

5.在yum客戶機上再次檢視一下

[root@localhost yum.repos.d]# yum clean all  清除yum緩存

[root@localhost yum.repos.d]# yum  list

<a href="http://blog.51cto.com/attachment/201210/205151957.png" target="_blank"></a>

可以看到有了perl-Lingua-Han-PinYin-0.14-1.el5.rf.noarch.rpm包資訊

這樣就可以在yum用戶端上用yum -y install perl-Lingua-Han-PinYin 來安裝它了。

方法2(本地yum源)

1.把perl-Lingua-Han-PinYin-0.14-1.el5.rf.noarch.rpm放置到某一個目錄

2.執行 yum localinstall 檔案名稱  --nogpgcheck

就可以了

本文轉自 abc16810 51CTO部落格,原文連結:http://blog.51cto.com/abc16810/1018156