CentOS 7的YUM仓库服务与PXE自动批量化安装系统

一、YUM软件仓库

借助于YUM软件仓库,可以完成安装、卸载、自动升级rpm软件包等任务,能够自动查找并解决rpm包之间的依赖关系,而无须管理员逐个、手工地去安装每个rpm包,使管理员在维护大量Linux服务器时更加轻松自如。
要成功使用YUM机制来更新系统和软件,需要有一个包含各种rpm安装包文件及其依赖软件的软件仓库(repository),提供软件仓库的服务器也称为“源”服务器。在客户机中只要正确指定软件仓库的地址等信息,就可以通过对应的“源”服务器来安装或更新软件了。
YUM软件仓库通常借助于HTTP或FTP协议来进行发布,这样可以面向网络中的所有客户机提供软件源服务。为了便于客户机查询软件包。获取依赖关系等信息,在软件仓库中需要提供仓库数据(repodata),其中收集了目录下所有rpm包的头部信息。

1、客户端配置软件仓库位置

在客户端上 需要指定至少一个可用的软件仓库,然后才能使用下一节将要介绍的yum工具来下载、安装软件包。yum工具使用的软件仓库信息存放在/etc/yum.repos.d目录下扩展名为“.repo”的文件中。

[root@CentOS01 ]# vim /etc/yum.repos.d/local.repo [local] <!--仓库声明--> name=centos <!--yum源的名字--> baseurl=file:///root/benet <!--仓库位置--> enabled=1 <!--开启yum功能--> gpgcheck=0 <!--不验证软件包的签名-->

上述操作中,文件centos7.repo需要手动创建./etc/yum.repos.d目录下若有其他未用的“*.repo”文件建议将其删除。“enabled=1”为默认项,可以省略;“gpgcheck”和“gpgkey”两行配置用来检查软件包的完整性,若无此要求则可以省略。

二、YUM源的类型

本地源:Linux操作系统光盘就是一个yum仓库;

FTP源:将数据上传到ftp用户访问;

HTTP源:需要连接互联网,更新数据方便,需要高速带宽;

1、配置本地源 [root@centos01 ]# vim /etc/yum.repos.d/local.repo [local] name=centos baseurl=file:///mnt enabled=1 gpgcheck=0 2、配置ftp源 [root@centos01 ~]# vim /etc/yum.repos.d/local.repo [ftp] name=centos baseurl=ftp://192.168.100.10/ enabled=1 gpgcheck=0 3、配置HTTP源 [root@centos01 ~]#cd /etc/yum.repos.d/ [root@centos01 yum.repos.d]#wget -O /etc/yum.repos.d/CentOS-Base.repo 4、YUM的使用 [root@centos01 ~]#yum cleam all <!--清楚yum缓存--> [root@centos01 ~]#yum list <!--查询软件列表--> [root@centos01 ~]#yum info dhcp <!--查询软件包信息--> [root@centos01 ~]#yum -y install dhcp <!--安装dhcp软件--> [root@centos01 ~]#yum -y remove dhcp <!--卸载dhcp软件--> [root@centos01 ~]#yum search httpd <!--查询软件--> 5、RPM包的来源 1)centos官方

更新系统将rpm软件直接封装 在IOS中

2)第三方组织发布rpm包

更新新的功能;在官方的基础上进行修改

3)用户自定义rpm包集合

开源爱好的个人修改数据包更新数据包

4)用户创建yum源 [root@centos01 ~]#createrepo -g /mnt/repodata/repomd.xml ./benet/ 三、配置PXE自动批量化安装系统的注意事项

PXE是由intel公司开发的网络引导技术,工作在Client/Server模式,允许客户机通过网络从远程服务器下载引导镜像,并加载安装文件或者整个操作系统。

客户机的网卡支持PXE协议(集成BOOTROM芯片),且主板支持网络引导;

网络中有一台DHCP服务器以便为客户机自动分配地址、指定引导文件位置;

服务器通过TFTP(简单文件传输协议)提供引导镜像文件的下载;
其中,一个条件为硬件要求,目前绝大多数服务器和大多数PC都能够提供此支持,只需要在BIOS设置中允许从Nerwork或LAN启动即可。

四、部署PXE远程安装服务 1、配置YUM仓库,并安装ftp服务: [root@centos01 ~]# mount /dev/cdrom /media [root@centos01 ~]# cd /etc/yum.repos.d/ [root@centos01 yum.repos.d]# rm -rf * [root@centos01 yum.repos.d]# vim a.repo [yum] baseurl=file:///media gpgcheck=0 [root@centos01 yum.repos.d]# yum -y install vsftpd* 2、准备centos7安装源并启动ftp服务: [root@centos01 yum.repos.d]# mkdir /var/ftp/centos7 [root@centos01 yum.repos.d]# cp -rf /media/* /var/ftp/centos7/ [root@centos01 yum.repos.d]# systemctl start vsftpd <!--启动ftp服务--> [root@centos01 yum.repos.d]# systemctl enable vsftpd <!--设置为开机自启--> 3、安装并启动TFTP服务: [root@centos01 yum.repos.d]# yum -y install tftp-server [root@centos01 yum.repos.d]# vim /etc/xinetd.d/tftp <!--编辑TFTP配置文件--> ............................... service tftp { socket_type = dgram protocol = udp wait = yes user = root server = /usr/sbin/in.tftpd server_args = -s /var/lib/tftpboot disable = no <!--将此处默认的yes改为no即可--> per_source = 11 cps = 100 2 flags = IPv4 } [root@centos01 yum.repos.d]# systemctl start tftp <!--启动TFTP服务--> [root@centos01 yum.repos.d]# systemctl enable tftp <!--设置开机自动启动--> 4、准备Linux内核、初始化镜像文件(在系统盘中): [root@centos01 ~]# cd /media/images/pxeboot/ [root@centos01 pxeboot]# cp vmlinuz initrd.img /var/lib/tftpboot/ 5、准备PXE引导程序: [root@centos01 pxeboot]# yum -y install syslinux <!--安装引导程序--> [root@centos01 pxeboot]# cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/ 6、配置启动菜单(典型的和无人值守安装的启动菜单根据实际需求二选一配置即可):

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/11641.html