刘芃
摘 要:当用户需要更新或安装CentOS 7的软件包时需要利用Yum工具通过访问互联网上的源来实现,在实验室中不仅受网络环境限制,还由于网络带宽的原因会增加耗时,降低效率。文章通过复制网络源到实验室的专用服务器,将原本需要Internet完成的工作转为LAN完成,节约网络带宽,提高实践教学效率。
关键词:Yum源;本地源;网络操作
在计算机网络技术、云计算技术与应用、大数据技术与应用等专业中,Linux操作系统是一门专业基础课程,更是后续学习的基础。很多服务与应用都是搭建在Linux操作系统之上,所以很多院校都和江西现代职业技术学院一样,选择CentoS作为“Linux网络操作系统”课程的教学环境,也是后续课程的基础。
但是在实践教学过程中,文章发现如果需要在CentOS操作系统上安装新的组件,需要使用Yum工具去访问网络源,在没有网络环境的机房该操作无法实现。即使机房电脑能上网,也会因为多台主机同时频繁对互联网访问导致出口带宽被迅速占满,让实验效率和稳定性大大降低。
本文以CentOS 7为例,介绍如何将网络源中的包复制到本地,搭建实验室本地Yum源,从而摆脱实验过程中对互联网的依赖,提高实验效率和稳定性。
1 环境介绍
(1)硬件环境。能访问互联网的服务器一台(仅需配置本地源时需要访问互联网),建议有100 G以上的磁盘空间用于存放源软件包。能访问服务器的客户主机。
(2)软件环境。操作系统:CentOS 7.2。
2 实现过程
2.1 服务器端配置操作
(1)在服务器上以minimal方式安装CentOS 7.2,并配置好IP地址等,测试互联网连通性(本文中服务器IP地址为192.168.31.200/24,仅首次同步本地源时需要访问互联网)。关闭防火墙和SELinux。
systemctl stop firewalld
systemctl disable firewalld
sed -i ‘s/SELINUX=enforcing/SELINUX=disabled/ /etc/selinux/config
setenforce 0
(2)备份系统自带源,命令如下。
mkdir /opt/repobak
mv /etc/yum.repos.d/* /opt/repobak
(3)编辑repo文件,将网络源指向国内,本文采用阿里云源镜像。
vi /etc/yum.repos.d/base.repo #编辑Yum源文件
[centos7]
name=Centos7
baseurl=https://mirrors.aliyun.com/centos/7/os/x86_64/
enable=1
gpgcheck=0
保存退出。
如果需要其他包也可在此处一并加入,格式一致。
(4)重新加载源文件并更新系统。
yum clean all
yum makecache
yum -y update
reboot
(5)安裝必要组件。
yum install -y createrepo vsftpd
(6)将远程软件包同步至本地。在这个过程中,根据选择的软件包数量和网络条件不同,所花费的时间也不一样。
mkdir /var/repo_local
cd /var/repo_local
reposync --repoid=centos7
(7)生成本地repodata。
createrepo /var/repo_local/centos7
(8)配置vsftpd服务。
vi /etc/vsftpd/vsftpd.conf
在末行加入:
anon_root=/var/repo_local/
保存退出。
(9)启动vspftd并设置为开机自启。
systemctl start vsftpd
systemctl enable vsftpd
2.2 客户端配置操作
(1)测试FTP服务器。在浏览器中输入ftp://192.168.31.200,可以看到本地服务器的目录列表。
(2)备份系统自带源,命令与服务器一致。
(3)编辑repo文件,将源位置指向本地服务器。
vi /etc/yum.repos.d/local.repo
[centos7]
name=Centos7
baseurl= ftp://192.168.31.200/centos7
enable=1
gpgcheck=0
保存退出。
(4)重新加载源文件。
yum clean all
省略输出。
yum repolist
省略部分输出……
repo id repo name status
centos7 centos7 10,097
看到以上输出内容,则表示客户端的Yum源已经正确指向本地服务器,以后通过yum命令安装软件会自动从本地服务器上搜索并下载安装。
3 结语
笔者所在院校已经在多个实验室中通过本文所述方案搭建本地Yum源,学生在实验过程中无须频繁访问互联网来安装软件包,因为Yum源安装在本地,访问速度和稳定性也得到提高。此方法不仅适用于高校的网络实验室,也适用于各类CentOS环境。同时,在RHEL和Ubuntu操作系统中,也可以采用类似的方法搭建本地源,本文不再赘述。
[参考文献]
[1]刘遄.Linux就该这么学[M].北京:人民邮电出版社,2017.
[2]孙亚南.CentOS 7.5系统管理与运维实战[M].北京:清华大学出版社,2019.