CentOS 7搭建yum服务器


前言


本篇文章要讲述的是如何在CentOS 7上搭建yum服务器,来为网络中的计算机提供yum服务。但在开始正式的搭建之前,我还要先向读者朋友们介绍一下什么是yum,以及yum服务器是用来做什么的。有了对yum作用的基本了解,才能对搭建yum服务器的必要性有充分的认识。 首先你要知道什么是yum,yum(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及CentOS中的Shell前端软件包管理器。基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,从而无须繁琐地一次次下载、安装、升级。 看到yum的强大功能后,你是否会好奇它是如何实现的?下面我就为朋友们简单介绍一下yum的工作机制,让大家对接下来要进行的yum服务搭建,有一个原理性的认识。 yum的工作机制如下: yum服务器: yum服务器的作用主要是为yum客户机提供访问,上面提供了用户所需的所有RPM软件包,并且会根据这些软件包生成一份元数据repodate,这里面记录有所有软件包的信息,以及依赖关系等。 yum客户端: yum客户端可通过FTP或HTTP这类网络协议来访问yum服务器,缓存下yum服务器上提供的缓存数据文件,通过这份文件获取需要的软件包,然后去服务器一次性下载安装,解决依赖性问题。 有了上面的简单介绍,我想你应该对yum有了初步的了解,yum可谓是一个自动化管理软件包的神器,无论是在学习还是生产中,对yum的使用都是必不可少的,它可以大大的提高我们的工作效率,解决令使用者头疼的软件包依赖问题。当然,你应该也可以明白yum的功能是依赖于yum服务器来实现的,所以现在你应该对yum服务器有一个新的认识了。

准备工作


接下来就要开始正式的安装工作了,不过在正式开始之前,还需稍作准备,以确保实验的成功。由于yum服务器是在局域网里面为众多的客户机提供访问服务,所以要在防火墙上打开相应的访问端口,客户机才能进行访问,如果不在防火墙上打开相应的端口或关闭防火墙,即使服务器配置成功,客户机也无法进行访问。所以为了实验的简单易懂,我在这里就为大家直接演示如何关闭Linux上的两大安全堡垒,防火墙和SELinux。

1.关闭防火墙

执行以下命令:

  systemctl disable firewalld.service		禁止防火墙自启动 	
  systemctl stop firewalld.service 		关闭防火墙服务
  iptables -vnL							验证防火墙是否成功关闭

关闭防火墙

2.关闭SElinux

 vim /etc/selinux/config             编辑SELinux配置文件
 SELINUX=permissive		  更改参数,设置SELINUX=permissive
 这里用到了vim编辑器,如果对它的使用方法不熟悉,可以出门左拐去看我之前写vim使用手册,这里就不多做介绍了。

selinux配置文件 vim

setenforce  0	 	   设置监控模式为许可状态
getenforce            验证设置是否生效,设置生效后执行命令后会回显"permissive"

关闭SELinux

安装FTP服务


做完准备工作后,就可开始搭建的第一步,安装vsftpd软件包,搭建ftp服务器。

mkdir /mnt/cdrom         创建挂载点
mount /dev/sr0  /mnt/cdrom/		挂载光盘到挂载点
df                        查看挂载,检查光盘是否挂载成功
rpm -ivh /mnt/cdrom/Packages/vsftpd-3.0.2-21.el7.x86_64.rpm     使用rpm安装FTP服务

挂载

安装

rpm -ql vsftpd		检查安装的服务
执行rpm -ql vsftpd 命令,确保下面两个文件是存在的。
	/usr/lib/systemd/system/vsftpd.service
	/var/ftp

文件

systemctl start vsftpd      启动ftp服务
ss -tnl                     21端口打开,验证服务开启
systemctl enable vsftpd     设为开机自动启动ftp服务

21

配置yum服务器


完成上面的步骤后ftp就搭建成功了,可以开始配置yum服务器了。生产环境内部有可能存在多个版本的系统,所以可以多建几个yum源,放在不同的目录下,供不同版本的系统使用。这里我以centos 6 和 7 为例,创建两个yum源。 1.在/var/ftp/pub/下建立两个存放yum源的目录

mkdir -p /var/ftp/pub/centos/{6,7} 

2.将centos 6 和 7的安装光盘内的软件拷贝到对应目录下。

 cp -r /mnt/cdrom/* /var/ftp/pub/centos/7
 cp -r /mnt/cdrom/* /var/ftp/pub/centos/6

3.设置完成后我们可在浏览器里访问我们设置好的yum服务器,方式如下:ftp:\\ IP地址 这里写图片描述

配置yum客户端


在设置完成服务器之后就可以进行客户端的配置,配置好客户端之后,便可以利用yum服务器进行安装了。 1.创建配置文件

进入到/etc/yum.repos.d/目录中,删除原有配置文件,创建一个名为base.repo的文件,并进行编辑。
cd  /etc/yum.repos.d/     
rm -rf  *
vim /etc/yum.repos.d/base.repo

2.编辑配置文件 在配置文件里写入以下内容,就可以完成配置了。 [base] yum仓库名 name=描述 baseurl=访问yum源的路径 enabled=yum仓库是否启用 gpgkey=是否检验软件合法性

这里写图片描述

总结


到此yum服务器的配置就完成了,你可以使用yum安装httpd验证效果,如果使用rpm命令来安装httpd,你会遇到非常令人苦恼的软件包依赖问题,而且依赖关系错综复杂,导致你无法顺利安装。但这个问题却可以通过yum安装来解决。 yum是一个非常高效的包管理工具,所以在生产中搭建一台yum服务器是必不可少的,可以大大提升软件的安装、卸载速度。节约时间,提高效率。