【centos6.5】
一、yum服务器的搭建
1、关闭防火墙,搭建yum仓库,保证网络连通性(服务端)
[root@localhost ~]# service iptables stop 【卸载防火墙】
iptables:将链设置为政策 ACCEPT:filter [确定]
iptables:清除防火墙规则: [确定]
iptables:正在卸载模块: [确定]
[root@localhost ~]# chkconfig iptables off 【永久关闭防火墙】
[root@localhost ~]# setenforce 0 【关闭安全机制】
[root@localhost ~]# sed -i '7 s/enforcing/disabled/' /etc/selinux/config
[root@localhost ~]# umount /dev/sr0
[root@localhost ~]# mkdir -p /media/cdrom
[root@localhost ~]# mount /dev/sr0 /media/cdrom
mount: block device /dev/sr0 is write-protected, mounting read-only
[root@localhost ~]# cd /etc/yum.r*
[root@localhost yum.repos.d]# mkdir a/
[root@localhost yum.repos.d]# mv C* a/
[root@localhost yum.repos.d]# cp a/*M* ./
[root@localhost yum.repos.d]# sed -i '20 s/0/1/' C*
[root@localhost yum.repos.d]# yum -y clean all
Loaded plugins: fastestmirror, refresh-packagekit, security
Cleaning repos: c6-media
Cleaning up Everything
[root@localhost yum.repos.d]# yum makecache
rying other mirror.
c6-media | 4.0 kB 00:00 ...
c6-media/group_gz | 220 kB 00:00 ...
c6-media/filelists_db | 5.8 MB 00:00 ...
c6-media/primary_db | 4.4 MB 00:00 ...
c6-media/other_db | 2.7 MB 00:00 ...
Metadata Cache Created
2、YUM 网络服务器构建(服务器)
2.1安装FTP服务器
[root@localhost yum.repos.d]# cd
[root@localhost ~]# umount /dev/sr0
[root@localhost ~]# mount /dev/sr0 /media/cdrom
mount: block device /dev/sr0 is write-protected, mounting read-only
[root@localhost ~]# rpm -ivh /media/cdrom/Packages/vsftpd*
warning: /media/cdrom/Packages/vsftpd-2.2.2-11.el6_4.1.x86_64.rpm: Header V3 RSA/SHA1 Signature, key ID c105b9de: NOKEY
Preparing... ########################################### [100%]
1:vsftpd ########################################### [100%]
[root@localhost ~]# /etc/init.d/vsftpd start
为 vsftpd 启动 vsftpd: [确定]
[root@localhost ~]# chkconfig vsftpd --list
vsftpd 0:关闭 1:关闭 2:关闭 3:关闭 4:关闭 5:关闭 6:关闭
[root@localhost ~]# chkconfig vsftpd on 【默认开启2、3、4、5】
[root@localhost ~]# chkconfig vsftpd --list
vsftpd 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭
3、 准备软件仓库目录(服务器)
3.1将centos6.5光盘中的内容copy到FTP服务器的匿名访问目录下,比如/var/ftp/c6/
[root@localhost ~]# mkdir /var/ftp/c6/
[root@localhost ~]# cp -rf /media/cdrom/* /var/ftp/c6/ &
[1] 26727
[root@localhost ~]# du -sh /var/ftp/c6/
3.6G /var/ftp/c6/
[root@localhost ~]# du -sh /var/ftp/c6/
4.2G /var/ftp/c6/
[1]+ Done cp -i -rf /media/cdrom/* /var/ftp/c6/
4、在客户端上配置内网yum源配置文件(客户端)
[root@localhost yum.repos.d]# ls
CentOS-Media.repo
[root@localhost yum.repos.d]# mkdir a/
[root@localhost yum.repos.d]# mv C* a/
[root@localhost yum.repos.d]# vi kgc.repo
[kgc]
name=kgc
baseurl=ftp://192.168.157.7/c6/ 【服务器ip】
gpgcheck=0 【表示对从这个源下载的rpm包不进行效验】
enabled=1 【激活】手动添加
[root@localhost yum.repos.d]# yum -y clean all
Loaded plugins: fastestmirror, refresh-packagekit, security
Cleaning repos: kgc
Cleaning up Everything
Cleaning up list of fastest mirrors
[root@localhost yum.repos.d]# yum makecache
5、对额外rpm软件构建YUM仓库(服务器)
然后将所有的额外RPM包传至/var/ftp/other目录下
[root@localhost ~]# mkdir /var/ftp/other
[root@localhost ~]# cd /var/ftp/other
[root@localhost other]# ls
ruby-1.8.7.352-13.el6.x86_64.rpm ruby-libs-1.8.7.352-13.el6.x86_64.rpm
ruby-irb-1.8.7.352-13.el6.x86_64.rpm ruby-rdoc-1.8.7.352-13.el6.x86_64.rpm
5.1 安装createrepo软件
[root@B other]# rpm -q createrepo
package createrepo is not installed
[root@B other]# yum -y install createrepo
[root@B other]# rpm -q createrepo
createrepo-0.9.9-18.el6.noarch
5.2 通过createrepo命令为rpm包创建索引(服务器)
root@localhost other]# cd /var/ftp/other
[root@localhost other]# createrepo ./
Spawning worker 0 with 4 pkgs
Workers Finished
Gathering worker results
Saving Primary metadata
Saving file lists metadata
Saving other metadata
Generating sqlite DBs
Sqlite DBs complete
[root@localhost other]# ls repodata
a8623300dd2c8852a73a87d833c1eacb45eb5b49478a8636b976c855b635f6fa-primary.xml.gz
aca700f3c4cecc3d97f1aef99b5325e7d9e8e60f8fc7f912a05b46d8291f83e6-filelists.sqlite.bz2
b6f96bb64711fbd6445cdfff79497a0e98dd742e07994cf5147dc7e2f5b8ef45-filelists.xml.gz
c0e5526e8534b8447ba908d9f921d6ba307d81f95c59ca7cef595e7441dd6307-other.xml.gz
dbc74811f6f07a2c86bb6bf3c7cb8073bfb0d63a5f15b20ea4b7244c8110a602-other.sqlite.bz2
fc333ea5f051a29274079c9c60beb5c13c4309ccdc1f0c83de9520215c9e22a6-primary.sqlite.bz2
repomd.xml
5.3 修改客户端上配置内网yum源配置文件(服务器)
[root@localhost yum.repos.d]# vi /var/ftp/kgc.repo
[root@localhost yum.repos.d]# cat /var/ftp/kgc.repo
[kgc]
name=kgc
baseurl=ftp://192.168.157.7/c6/
gpgcheck=0
enabled=1
[other]
name=other
baseurl=ftp://192.168.157.7/other/
gpgcheck=0
enabled=1 【都手动添加】
[root@localhost yum.repos.d]# yum -y clean all
Loaded plugins: fastestmirror, refresh-packagekit, security
Cleaning repos: c6-media
Cleaning up Everything
Cleaning up list of fastest mirrors
[root@localhost yum.repos.d]# yum makecache
5.4 测试(服务器)
[root@A other]# yum -y install ruby
[root@A other]# rpm -q ruby
ruby-1.8.7.352-12.el6_4.x86_64
5.5 如果其它客户机要使用更新后的客户端文档kgc.repo(客户端)
[root@localhost yum.repos.d]# cd
[root@localhost~]#wget -O /etc/yum.repos.d/kgc.repo ftp://192.168.157.7/kgc.repo
--2019-04-05 20:04:17-- ftp://192.168.157.7/kgc.repo
=> “/etc/yum.repos.d/kgc.repo”
正在连接 192.168.157.7:21... 已连接。
正在以 anonymous 登录 ... 登录成功!
==> SYST ... 完成。 ==> PWD ... 完成。
==> TYPE I ... 完成。 ==> 不需要 CWD。
==> SIZE kgc.repo ... 143
==> PASV ... 完成。 ==> RETR kgc.repo ... 完成。
长度:143 (非正式数据)
100%[==========================================>] 143 --.-K/s in 0s
2019-04-05 20:04:17 (23.7 MB/s) - “/etc/yum.repos.d/kgc.repo” 已保存 [143]
[root@localhost ~]# cat /etc/yum.repos.d/kgc.repo
[kgc]
name=kgc
baseurl=ftp://192.168.157.7/c6/
gpgcheck=0
enabled=1
[other]
name=other
baseurl=ftp://192.168.157.7/other/
gpgcheck=0
enabled=1
[root@localhost ~]# rpm -q ruby
package ruby is not installed
[root@localhost ~]# yum -y install ruby
[root@localhost ~]# rpm -q ruby
ruby-1.8.7.352-13.el6.x86_64
5.6、yum命令的使用
yum -y install 软件包名 【安装软件包】
yum -y remove 软件包名 【卸载软件包】
yum -y update 软件包名 【更新升级软件包】
yum grouplist 【列出所有的软件包组名】
[root@localhost ~]# yum grouplist
FTP 服务器
Java 平台
NFS 文件服务器
Perl 支持
yum -y groupinstall “软件包名 ” 【组安装软件包】
yum -y groupremove 软件包名 【组卸载软件包】
yum -y groupupdate 软件包名 【组更新升级软件包】
yum list installed 【列出已安装软件包】
yum list available 【列出可用的软件包】
yum info 软件包名 【查看软件包信息】
yum search 软件包名 【查找软件包】
yum -y clean all 【清理】
yum makecache 【重建】
实验补充:
1、如果配置文件里有俩个配置文件会冲突,导致yum缓存失败,yum,rpm命令无法使用