搭建自己的yum源服務器
概括:
第一步:安裝apache服務器並啟用
第二步:掛載鏡像,並復制RPM包
第三步:創建repo數據
第四步:測試
++++++++++++++++++++ 概括完畢 +++++++++++++++++++++++
安裝yum源的電腦
1、安裝apache服務器並啟用(具體一點的參數,可以參考我之前搭建的apache服務器的內容)
cd /home /tools/ tar zxvf httpd-2.2.27.tar.gz cd httpd-2.2.27/ ./configure \ --prefix=/application/apache-2.2.27/ \ --enable-deflate \ --enable-expires \ --enable-so \ --with-mpm=worker \ --enable-modules=most \ --enable-rewrite make && make install
#++++++++++++++更改apache服務器的配置文件+++++++++++++
cd /application/apache2.2.27/ #進入編譯安裝Apache的目錄 vim conf/httpd.conf #編輯Apache的主配置文件 ServerAdmin 471733951@qq.com #這里是管理員郵箱 ServerName 127.0.0.1:80 #這里更改為回環地址,否則會有FQDN報錯問題 vim /conf/extra/httpd-vhost.conf #編輯虛擬主機文件 NameVirtualHost *:80 <VirtualHost *:80> ServerAdmin webmaster@dummy-host.example.com DocumentRoot "/application/apache2.2.27/htdocs" #這是我們之前創建的目錄文件 ServerName www.aa.test.org #這是域名,之前我做Apache服務器的時候在Windows電腦上c:/windows/system32/drives/etc/hosts文件里面添加了 192.168.1.106 www.aa.test.org 如果出問題,可能這里需要添加一下 ServerAlias aa.test.org ErrorLog "logs/repo-error_log" CustomLog "logs/repo-access_log" common </VirtualHost>
mkdir -p /application/apache2.2.27/htdocs/centos6.8/{x86_64,extra,update}/
# 這里創建三個目錄,用來放yum源
/application/apache2.2.27/bin/apachectl –t #檢查語法是否有問題 /application/apache2.2.27/bin/apachectl start #啟動一次 iptables -t filter -I INPUT -p tcp --dport 80 -j ACCEPT #添加80端口到防火牆 service iptables save #保存一下剛才添加的防火牆配置,否則重啟防火牆或者重啟服務,重啟系統還需要重新添加80端口 mount /dev/cdrom /mnt/cdrom/ #掛載本地光盤 cd /mnt/cdrom/Packages/ #進入光盤目錄下 strace mv * /application/apache2.2.27/htdocs/centos6.8/x86_64/ #這里利用strace來跟蹤剪切命令,就可以看到剪切的過程,否則看到一片空白 yum install createrepo –y #安裝createrepo工具 createrepo -pdo /application/apache2.2.27/htdocs/x86_64/ /application/apache2.2.27/htdocs/x86_64/ createrepo -pdo /application/apache2.2.27/htdocs/extra/ /application/apache2.2.27/htdocs/extra/ createrepo -pdo /application/apache2.2.27/htdocs/update/ /application/apache2.2.27/htdocs/update/ ##-p輸出完美的xml文件格式 ##-d生成sqlite數據庫,這個是默認的 ##-o指定目錄文件 createrepo --update /application/apache2.2.27/htdocs/centos6.8/x86_64/ #更新repo源的內容,每當加入新的rpm包時就需要更新一次 createrepo --update /application/apache2.2.27/htdocs/centos6.8/extra/ createrepo --update /application/apache2.2.27/htdocs/centos6.8/update
換一台電腦測試
yum-config-manager --add-repo='IP或者域名/centos6.8/x86_64/' vim /etc/yum.repo/FILENAME.repo 如: [base] name=added from: http://192.168.1.106 #這是我做yum源的服務器ip baseurl=http://192.168.1.106/centos6.8/x86_64/ enabled=1 gpgcheck=0 [extra] name=added from: http:// 192.168.1.106 baseurl=http:// 192.168.1.106/centos6.8/extra/ enabled=1 gpgcheck=0 [update] name=added from: http:// 192.168.1.106 baseurl=http:// 192.168.1.106/centos6.8/update enabled=1 gpgcheck=0 yum clean all #清除緩存 yum makecache #生成緩存 yum repolist
# 查看源
[root@Allen ~]# yum repolist Loaded plugins: fastestmirror, security Repository '192.168.1.104_centos6.7_x86_64': Error parsing config: Error parsing "baseurl = '192.168.1.104/centos6.7/x86_64'": URL must be http, ftp, file or https not "" Loading mirror speeds from cached hostfile * base: mirrors.aliyun.com * epel: mirrors.tuna.tsinghua.edu.cn * extras: mirrors.aliyun.com * updates: mirrors.aliyun.com 倉庫標識 倉庫名稱 狀態 repo id repo name status base CentOS-6 - Base - mirrors.aliyun.com 6,696 *epel Extra Packages for Enterprise Linux 6 - x86_64 12,355 extra added from:http://192.168.1.104 3,204 extras CentOS-6 - Extras - mirrors.aliyun.com 64 my added from:http://192.168.1.104 3204 update added from:http://192.168.1.104 3204 updates CentOS-6 - Updates - mirrors.aliyun.com 959 repolist: 29,686