在实验室环境下搭建CentOS 7本地源

2020-04-07 03:44刘芃
科学大众 2020年1期

刘芃

摘   要:当用户需要更新或安装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.