环境说明
- 服务器:CentOS 8.x, FQDN为:server.ztlab.org
- 客户端:CentOS 8.x, FQDN为:client.ztlab.org
配置系统本地访问的软件仓库
- 将iso文件上传到目标服务器上,例如放置在/media下。
- 备份原有软件仓库配置文件。(对软件仓库的使用经验丰富后该步骤应该可以省略)
[root@server ~]# cd /etc/yum.repos.d
[root@server yum.repos.d]# mkdir -pv repos.bak
[root@server yum.repos.d]# mv CentOS-* repos.bak
- 将iso文件挂载到本地系统的目录下,例如挂载到/mnt/cdrom下。
[root@server ~]# mkdir -pv /mnt/cdrom
[root@server ~]# mount -o loop /media/centos.iso /mnt/cdrom
- 创建本地软件仓库配置文件。
[root@server ~]# vi /etc/yum.repos.d/local.repo
[BaseOS]
name=BaseOS
baseurl=file:///mnt/cdrom/BaseOS
enabled=1
gpgcheck=0
[AppStream]
name=AppStream
baseurl=file:///mnt/cdrom/AppStream
enabled=1
gpgcheck=0
- 可以使用以下命令测试软件仓库是否配置成功。
[root@server ~]# dnf repolist
[root@server ~]# dnf makecache
[root@server ~]# dnf list
配置局域网访问的软件仓库
- 准备软件仓库服务器,步骤与配置系统本地访问的软件仓库中步骤一致。
- 搭建http服务或ftp服务,用于为局域网提供软件仓库的访问。以下配置采用http服务为例。
[root@server ~]# dnf install -y httpd
< log output >
[root@server ~]# systemctl enable --now httpd.service
[root@server ~]# firewall-cmd --permanent --add-port=80/tcp
[root@server ~]# firewall-cmd --reload
- 将iso文件中的内容复制到/var/www/html/centos下,或者将iso文件重新挂载到/var/www/html/centos。
[root@server ~]# mkdir -pv /var/www/html/centos
[root@server ~]# cp /mnt/cdrom/* /var/www/html/centos/
或
[root@server ~]# umount /mnt/cdrom
[root@server ~]# mkdir -pv /var/www/html/centos
[root@server ~]# mount -o loop /media/centos.iso /var/www/html/centos
- 为客户端添加局域网软件仓库配置文件
[root@client ~]# vi /etc/yum.repos.d/lan.repo
[BaseOS]
name=BaseOS
baseurl=http://server.ztlab.org/centos/BaseOS
enabled=1
gpgcheck=0
[AppStream]
name=AppStream
baseurl=http://server.ztlab.org/centos/AppStream
enabled=1
gpgcheck=0
- 依然使用以下命令测试软件仓库是否配置成功。
[root@client ~]# dnf repolist
[root@client ~]# dnf makecache
[root@client ~]# dnf list
提示:配置过程中如遇到http站点或ftp站点无法访问,请查看Firewall和SELinux配置。