yum repository: 存储了众多rpm包,以及包的相关的元数据文件(放置于特定目录repodata下)
今天我们就来看看如何用光盘实现yum网络仓库,很简单~只要四个步骤:
- 1、准备光盘
- 2、搭建网络服务
- 3、禁用防火墙
- 4、拷贝光盘到服务器
1、准备光盘
光盘里应该包括软件包,元数据
2、搭建网络服务http、https、 ftp
此处我们用ftp进行搭建。
- 安装vsftpd
可以使用rpm -ivh
命令:
[root@CentOS6 ~]#rpm -ivh /misc/cd/Packages/vsftpd-2.2.2-24.el6.x86_64.rpm
Preparing... ########################################### [100%]
1:vsftpd ########################################### [100%]
需要说明的是,我的光盘挂载在/misc/cd这个目录下。
rpm -ql vsftpd
命令查看vsftpd提供的服务。启动vsftpd服务,并设置vsftpd开机启动:
[root@CentOS6 ~]# service vsftpd start
Starting vsftpd for vsftpd: [ OK ]
[root@CentOS6 ~]#chkconfig vsftpd on
- 观察ftp服务启动情况,可以看到ftp服务使用的21端口已经使能:
[root@CentOS6 ~]# netstat -ntl
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:60240 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:21 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN
tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN
3、禁用防火墙,测试ftp服务
- 由于防火墙会禁止ftp登录,此实验不对防火墙做研究,因此我们先把它禁用了:
[root@CentOS6 ~]#service iptables stop
iptables: Setting chains to policy ACCEPT: filter [ OK ]
iptables: Flushing firewall rules: [ OK ]
iptables: Unloading modules: [ OK ]
-
测试ftp服务
到这里我们基本上已经搭建好ftp服务,我的Linux的ip地址是192.168.5.129,此时我们可以用windows登录ftp看一下:
4、拷贝repodata和rpm包文件到ftp服务器
接下来就是把光盘拷贝到ftp服务上了。
- 创建目录
ftp服务默认的共享的文件夹是/var/ftp/pub,我们在pub下新建目录/var/ftp/pub/6,这里的数字“6”是我使用的CentOS版本,当然,你可以按照你的习惯设置。
[root@CentOS6 ~]#mkdir /var/ftp/pub/6
- 拷贝数据
我们把整个光盘拷贝到/var/ftp/pub/6/目录下
[root@CentOS6 yum.repos.d]#cp -r /misc/cd/* /var/ftp/pub/6/
当然,你也可以只拷贝repodata和Packges这两个目录,无论如何,作为yum仓库,这两个目录必不可少。命令如下:
[root@CentOS6 ~]#cp -r /misc/cd/repodata/ /var/ftp/pub/6/Packages/
[root@CentOS6 ~]#cp -r /misc/cd/Packages/ /var/ftp/pub/6/Packages/
到了这里,yum仓库已经是创建完成啦~简单吧。