yum局域網源的生成與配置
一、目的
雖然CentOS有自己的yum源,RHEL也可以使用CentOS的yum源作爲升級源,但是因爲網絡速度等原因總是再升級比較大的rpm包時需要比較長的時間。也有同事用光盤作爲本地的yum源,但是每次將光盤傳到服務器上掛載也是比較麻煩的。爲解決上述問題,特製作yum局域網內的升級源。
二、Yum簡介原理
yum 是 yellowdog updater modified 的縮寫。yellowdog 是一個 Linux 的 distribution(分佈),RH 將這種升級技術利用到自己的 distribution 形成了現在的 yum。
yum 的理念是使用一箇中心倉庫(repository)管理一部分甚至一個 distribution 的應用程序相互關係,根據計算出來的軟件依賴關係進行相關的升級、安裝、刪除等等操作,減少了 Linux 用戶一直頭痛的 dependencies 的問題。
一般這類軟件通過一個或者多個配置文件描述對應的 repository 的網絡地址,通過 http 或者 ftp 協議在需要的時候從 repository 獲得必要的信息,下載相關的軟件包。這樣,本地用戶通過建立不同的repository 的描述說明,在有 Internet 連接時就能方便進行系統的升級維護工作。
repository 是用 yum-arch 或者 createrepo 命令創建的,也可以用別人已有的 repository 作爲鏡像,這裏部探討如何建立一個 repository。
三、所需軟件
createrepo.noarch ---- 用於生成repodata 數據庫,生成依賴性關係
vsftpd ---- 用戶提供局域網的FTP服務
四、安裝createrepo和vsftpd並配置FTP服務器
1、安裝
rpm -ivh createrepo-0.4.11-3.el5.noarch.rpm
rpm -ivh vsftpd-2.0.5-16.el5_4.1.i386.rpm
上面的軟件包在光盤或者是網上都有,可以直接下載使用。
2、配置
vsftp的匿名用戶爲linux系統的ftp用戶,可以修改/etc/passwd,將ftp用戶的home目錄從/var/ftp更改爲你的目標路徑。這裏改爲/usr/ISO
啓動vsftp:service vsftpd start;chkconfig vsftp -lists 35 on
注意:注意修改/usr/ISO的目前權限。
五、生成yum源
1、CentOS
掛載鏡像文件:mount -o loop /usr/linuxiso/CentOS-5.5-x86_64-bin-DVD.iso /mnt/
複製鏡像文件:cp -r /mnt/* /usr/ISO/5-64/CentOS/
注意:因爲centos的光盤中默認有repodata這個目錄和下面的文件了,因此這裏不需要再生成了。
2、RHEL
掛載鏡像文件:mount -o loop rhel-server-5.5-x86_64-dvd.iso /mnt1
複製鏡像文件:cp -r /mnt1/* /usr/ISO/5-64/RHEL/
生成repodata:
#cd /usr/ISO/5-64/RHEL/
#createrepo .
默認就會在/usr/ISO/5-64/RHEL/中生成repodata,下面有filelists.xml.gz other.xml.gz primary.xml.gz repomd.xml四個文件。
對於其他光盤也可以採用類似的方式實現,這裏不再贅述。
3、對局域網內yum的解釋和說明
ftp://192.168.5.118/4-32/CentOS --centos 4 32位的升級源
ftp://192.168.5.118/4-32/RHEL --RHEL 4 32 位的升級源
ftp://192.168.5.118/5-32/CentOS --centos 5 32位的升級源
ftp://192.168.5.118/5-32/RHEL --RHEL 5 32 位的升級源
ftp://192.168.5.118/4-64/CentOS --centos 4 64位的升級源
ftp://192.168.5.118/4-64/RHEL --RHEL 4 64 位的升級源
ftp://192.168.5.118/5-64/CentOS --centos 5 64位的升級源
ftp://192.168.5.118/5-64/RHEL --RHEL 5 64 位的升級源
六、客戶端的配置
1、安裝yum包
這裏不在贅述,對centos默認安裝就有,但是對於RHEL的,請在網上下載相應的yum套裝進行安裝。
2、配置客戶端
#rm -rf /etc/yum.repos.d/* ---清楚/etc/yum.repos.d/下面的文件
#vi /etc/yum.repos.d/yum-Media.repo 添加以下內容
[c4-media]
name=RHEL4 - Media
baseurl=ftp://192.168.5.118/4-32/RHEL
gpgcheck=0
enabled=1
gpgkey=ftp://192.168.5.118/4-32/RHEL/RPM-GPG-KEY
#yum clean all
之後可以輕鬆的進行yum升級了。
注意:系統的yum配置文件,請注意自己系統的版本,在 五-3 中選擇自己的升級源。
3、對上面配置文件的解釋
[c4-media]
name=RHEL-4 - Media
# 192.168.5.118是Yum源地址
baseurl=ftp://192.168.5.118/4-32/RHEL
# 是否開啓源
enabled=1
#是否驗證. 可不要
gpgcheck=1
#驗證的密鑰. 可不要
gpgkey=ftp://192.168.5.118/4-32/RHEL/RPM-GPG-KEY