歡迎您光臨本站 註冊首頁

構建本地YUM源伺服器

←手機掃碼閱讀     火星人 @ 2014-03-09 , reply:0

構建本地YUM源伺服器

如何構建本地源

通過從 DVD 光碟、YUM 客戶端緩存目錄(/var/cache/yum/)以及 Internet 下載等途徑獲取需

要的 rpm 包,可以組建基於本地文件系統的 rpm 軟體包倉庫.進一步結合使用 HTTP 或 FTP 協議

的服務軟體,即可構建一個位於本地區域網的高速 YUM"源"伺服器.

本例中使用 RHEL5 安裝光碟(DVD)中的軟體包組成軟體倉庫,並結合 VSFTPD 服務,提

供基於 FTP 方式的簡易 YUM 源.實現的主要步驟如下.

1. 安裝 vsftpd、createrepo 軟體包

createrepo 工具主要用於收集目錄中 rpm 包文件的頭信息,以創建 repodata 軟體倉庫數

據(經 gzip 壓縮的 xml 文件).
[root@yumserver ~]# mkdir -p /media/cdrom
[root@yumserver ~]# mount /dev/cdrom /media/cdrom
mount: block device /dev/cdrom is write-protected, mounting read-only
[root@yumserver ~]# cd /media/cdrom/Server/
[root@yumserver Server]# rpm -ivh createrepo-0.4.4-2.fc6.noarch.rpm
vsftpd-2.0.5-10.el5.i386.rpm
warning: createrepo-0.4.4-2.fc6.noarch.rpm: Header V3 DSA signature: NOKEY, key ID
37017186
Preparing...########################################### [100%]
1:vsftpd########################################### [ 50%]
2:createrepo########################################### [100%]

2. 準備軟體庫目錄

注意要保證/var/ftp/rhel5 目錄有足夠的可用空間(在本例中最好大於 3GB),以便存放復

制的軟體包.必要時可以使用單獨的硬碟分區(掛載到/var/ftp/rhel5 目錄中).

[root@yumserver Server]# mkdir -p /var/ftp/rhel5/
[root@yumserver Server]# cp -prf /media/cdrom/* /var/ftp/rhel5/


查看複製好的目錄結構:Cluster、ClusterStorage、Server、VT——主要是光碟中包含 rpm

軟體包的幾個文件夾).

[root@yumserver Server]# ls -lh /var/ftp/rhel5/ | grep ^d
drwxr-xr-x 3 root root 6.0K 2007-03-18 Cluster
drwxr-xr-x 3 root root 6.0K 2007-03-18 ClusterStorage
drwxr-xr-x 4 root root 2.0K 2007-03-18 images
drwxr-xr-x 2 root root 2.0K 2007-03-18 isolinux
drwxr-xr-x 3 root root 330K 2007-03-18 Server
drwxr-xr-x 3 root root 6.0K 2007-03-18 VT
3. 創建 repository 倉庫信息文件

在各個軟體包目錄中分別執行 createrepo 命令,生成當前目錄下的 repodata 數據.使用

-g 選項可以指定用於創建組信息的 xml 文件模板.

[root@yumserver ~]# cd /var/ftp/rhel5/Cluster/
[root@yumserver Cluster]# createrepo -g repodata/comps-rhel5-cluster.xml ./

[root@yumserver Cluster]# cd /var/ftp/rhel5/ClusterStorage/
[root@yumserver ClusterStorage]# createrepo -g repodata/comps-rhel5-cluster-st.xml ./

[root@yumserver ClusterStorage]# cd /var/ftp/rhel5/Server/
[root@yumserver Server]# createrepo -g repodata/comps-rhel5-server-core.xml ./

[root@yumserver Server]# cd /var/ftp/rhel5/VT/
[root@yumserver VT]# createrepo -g repodata/comps-rhel5-vt.xml ./

[root@yumserver VT]# rm -rf /var/ftp/rhel5/*/.olddata/ //清除舊的數據文件
4. 配置啟動 vsftpd 服務(開啟默認的匿名 FTP 服務即可)

[root@yumserver ~]# chkconfig --level 2345 vsftpd on
[root@yumserver ~]# service vsftpd start
若 FTP 服務無法訪問,請參考以下配置重新啟動 vsftpd 服務:

[root@yumserver ~]# vi /etc/vsftpd/vsftpd.conf
anonymous_enable=yes
local_enable=NO
write_enable=no
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES


pasv_enable=YES
pasv_max_port=3200
pasv_min_port=3100
xferlog_std_format=YES
listen=YES
listen_address=192.168.0.11
pam_service_name=vsftpd
tcp_wrappers=yes
//伺服器的 IP 地址
[root@yumserver ~]# service vsftpd restart

1.3 使用 yum 工具安裝軟體

最常用的 YUM 客戶端工具是字元模式下的 yum 命令,在 RHEL5 系統中由默認安裝的
yum-3.0.1-5.el5 軟體包提供.RHEL5 系統還提供了一個圖形 YUM 工具 pirut,該工具只是 yum 工

具的一個 X 圖形前端.

1.3.1 設置 YUM 源位置

使用 YUM 源伺服器之前,必須為客戶端建立指定的配置文件,設置好源伺服器的位置和可用

目錄等選項.


[root@client ~]# cd /etc/yum.repos.d/
[root@client yum.repos.d]# vi rhel5-pkgs-yumsvr.repo
[Cluster]
name=Cluster Directory
baseurl=ftp://192.168.0.11/rhel5/Cluster
enabled=1
gpgcheck=0

[ClusterStorage]
//啟用該目錄
//不檢查 gpg key
//新建配置文件,名稱自定
name=ClusterStorage Directory
baseurl=ftp://192.168.0.11/rhel5/ClusterStorage
enabled=1
gpgcheck=0

[Server]
name=Server Directory
baseurl=ftp://192.168.0.11/rhel5/Server
enabled=1
gpgcheck=0

[VT]
name=VT Directory
baseurl=ftp://192.168.0.11/rhel5/VT
enabled=1
gpgcheck=0

[root@client yum.repos.d]# yum clean all
//更新緩存

1.3.2 使用 yum 命令

1. 列表查看軟體包信息

可以使用 list 選項查看軟體包相關的各項信息.
[root@client ~]# yum list updates
[root@client ~]# yum list installed
[root@client ~]# yum list available


[root@client ~]# yum list available lynx*
[root@client ~]# yum info installed bind
//查看有哪些可用於升級的軟體包
//查看本機已安裝的軟體包
//查看 yum 源中所有可用的軟體包
//查看 yum 源中以 lynx 開頭的軟體包
//查看已安裝的 bind 軟體包的信息

2. 軟體包升級、卸載、安裝

升級(update)、卸載(remove)、安裝(install)軟體包時,系統會自動檢查並解決軟體

包之間的依賴關係.開始各項操作前,系統會提示用戶按 y 鍵進行確認(如果希望系統自動回答為 y,可以在 yum 命令后增加-y 選項).
[root@client ~]# yum -y update
[root@client ~]# yum update bind
//升級所有可用的軟體包,由系統自動確認
//升級 bind 軟體包
[root@client ~]# yum remove net-snmp-utils
[root@client ~]# yum install lynx
//卸載 net-snmp-utils 軟體包
//安裝 lynx 軟體包

1.3.3 使用圖形工具"添加刪除程序"

在 RHEL5 系統中,進入 X-Windows 圖形模式以後,可以使用系統自帶的"添加刪除程序"工具

(pirut)進行軟體包的升級、安裝、卸載等管理.

點擊GNOME面板菜單組"應用程序"中的"添加刪除程序",或者運行"pirut"就可以打開該工具

(如圖 1.1所示).運行RHEL5 提供的系統配置鏈接"system-config-packages"也可以打開該工具.



[火星人 ] 構建本地YUM源伺服器已經有423次圍觀

http://coctec.com/docs/linux/show-post-48631.html