此次操作在VMware Workstation虚拟机的CentOS7.5下进行
这里使用两台Linux主机,下表是它们所使用的操作系统以及IP地址。
两台Linux主机所使用的操作系统以及IP地址 |
|
操作系统 | IP地址 |
CentOS7.5 | 192.168.5.21 |
CentOS7.5 | 192.168.5.23 |
操作192.168.5.21主机
在虚拟机设置中选择ISO映像文件,并在设备状态中勾选启动时连接
设置完成后,开启虚拟机
此时再看虚拟机设置里的设备状态,已连接、启动时连接都是被勾选的
鼠标放在右下角光盘图标上也会显示当前使用的ISO镜像
一、挂载光盘
# 以只读方式挂载光盘至/mnt目录下
mount -r /dev/cdrom /mnt/
# 查看/mnt目录下,是否挂载成功
ll /mnt/
二、配置本地yum仓库
mkdir /tmp/yum/ && mv /etc/yum.repos.d/* /tmp/yum/
# 创建repo文件
vim /etc/yum.repos.d/ftp.repo,文件名称可随意,但后缀必须为.repo
写入以下配置参数,并保存退出!
[ftp]
name=ftp
baseurl=file:///mnt
enabled=1
gpgcheck=0
说明:
[ftp] :Yum软件仓库唯一标识符,避免与其他仓库冲突。
name=ftp:Yum软件仓库的名称描述,易于识别仓库用处。
baseurl=file:///mnt:提供的方式包括FTP(ftp://..)、HTTP(http://..)、本地(file:///..)。
enabled=1:设置此源是否可用;1为可用,0为禁用。
gpgcheck=0:设置此源是否校验文件;1为校验,0为不校验。
gpgkey=file:///mnt/RPM-GPG-KEY-CentOS-7:若上面参数开启校验,那么请指定公钥文件地址。
清除本地yum缓存并测试yum源指向文件是否正常
yum clean all
yum repolist
三、安装配置vsftpd
yum install -y vsftpd
默认创建的vsftpd服务,匿名用户拥有读写删除权限,可在 /etc/vsftpd/vsftpd.conf 文件中对匿名用户做限制,具体配置如下:
anonymous_enable=YES
anon_upload_enable=NO
anon_mkdir_write_enable=NO
anon_other_write_enable=NO
注意:/etc/vsftpd/vsftpd.conf 配置文件注释里不能有中文,否则vsftpd服务启动会报错
# 启动
systemctl start vsftpd
# 加入开机启动
systemctl enable vsftpd
# 查看状态
systemctl status vsftpd
复制光盘中的相关的文件复制至ftp的 /var/ftp/pub(/var/ftp/pub为ftp匿名默认访问目录)目录
mkdir -p /var/ftp/pub/centos7.5
cd /mnt/
cp -a Packages/ repodata/ RPM-GPG-KEY-CentOS-7 RPM-GPG-KEY-CentOS-Testing-7 /var/ftp/pub/centos7.5/
复制两个目录,两个文件
Packages和repodata,Packages这个目录是yum安装时的rpm包。
repodata目录里面包含了一个以 .xml 结尾的文件,这个文件是yum索引文件,包含了rpm包的一些信息,比如依赖关系这些的。通过它用yum安装才能在自动解决。如果,没有复制repodata命令,可以使用命令 yum install -y createrepo 安装,然后使用 createrepo /var/ftp/pub/centos7.5/ 命令创建 repodata 目录。
其他两个文件是公钥文件,可以在搭建yum仓库时选择yum源是否校验文件,配置 gpgkey 参数使用。
/var/ftp/pub 目录的权限中,other的权限一定要为r_x,否则匿名用户无法访问该文件。
在本地局域网其它主机浏览器上也可以访问ftp
ftp://192.168.5.21/pub/centos7.5/
四、在192.168.5.23主机上搭建ftp的yum仓库
mkdir /tmp/yum/ && mv /etc/yum.repos.d/* /tmp/yum/
vim /etc/yum.repos.d/ftp.repo
写入以下配置参数,并保存退出!
[ftp]
name=ftp
baseurl=ftp://192.168.5.21/pub/centos7.5/
enabled=1
gpgcheck=0
注意第3行不是这样:baseurl=ftp://192.168.5.21/pub/centos7.5/Packages/,我刚开始写成这样,在使用yum时报如下错误
执行下面的操作,清除本地yum缓存并重新创建缓存
yum clean all
yum makecache
此时ftp的yum仓库就搭建完成了!可以使用yum安装软件,感受一下
本文参考自:https://blog.51cto.com/11975865/2068751