良许Linux教程网 干货合集 CentOS 7的YUM仓库服务与PXE自动批量化安装系统

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

一、YUM软件仓库

要想完成安装、卸载、自动升级rpm软件包等任务可以借助YUM软件仓库,管理员可以使用YUM软件仓库自动查找的特性进行查找并解决rpm包之间的依赖关系,使得管理员的任务更加轻松自如。

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

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

 [root@CentOS01 ]# vim /etc/yum.repos.d/local.repo [local]name=centos baseurl=file:///root/benetenabled=1 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=centosbaseurl=file:///mntenabled=1gpgcheck=0

2、配置ftp源

 [root@centos01 ~]# vim /etc/yum.repos.d/local.repo [ftp]name=centosbaseurl=ftp://192.168.100.10/enabled=1gpgcheck=0

3、配置HTTP源

 [root@centos01 ~]#cd /etc/yum.repos.d/[root@centos01 yum.repos.d]#wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyum.com/repo/Centos-7.repo

4、YUM的使用

 [root@centos01 ~]#yum cleam all [root@centos01 ~]#yum list [root@centos01 ~]#yum info dhcp [root@centos01 ~]#yum -y install dhcp [root@centos01 ~]#yum -y remove 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:///mediagpgcheck=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 [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  ...............................service tftp{socket_type = dgramprotocol= udpwait= yesuser= rootserver= /usr/sbin/in.tftpdserver_args = -s /var/lib/tftpbootdisable = no per_source= 11cps = 100 2flags = IPv4}[root@centos01 yum.repos.d]# systemctl start 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、配置启动菜单(典型的和无人值守安装的启动菜单根据实际需求二选一配置即可):

[root@centos01 pxeboot]# mkdir /var/lib/tftpboot/pxelinux.cfg

1)典型的启动菜单,无法实现无人值守安装:

[root@centos01 pxeboot]# vim /var/lib/tftpboot/pxelinux.cfg/defaultdefault autoprompt 1label autokernel vmlinuzappend initrd=initrd.img method=ftp://192.168.100.10/centos7label linux textkernel vmlinuzappend text initrd=initrd.img method=ftp://192.168.100.10/centos7label linux rescuekernel vmlinuzappend rescue initrd=initrd.img method=ftp://192.168.100.10/centos7

2)无人值守安装的启动菜单:

[root@centos01 pxeboot]# vim /var/lib/tftpboot/pxelinux.cfg/default default autoprompt 0label autokernel vmlinuzappend initrd=initrd.img method=ftp://192.168.100.10/centos7 ks=ftp://192.168.100.10/ks.cfg

在上面两种启动菜单,我这里配置的是无人值守安装,若选择典型的启动菜单,那么接下来的操作有很多就是不必要的了,只要安装上DHCP服务器即可部署系统了。

7、安装并启用DHCP服务器:

[root@centos01 pxeboot]# yum -y install dhcp[root@centos01 pxeboot]# vim /etc/dhcp/dhcpd.conf...........................subnet 192.168.100.0 netmask 255.255.255.0 {range 192.168.100.100 192.168.100.200;option domain-name-servers 8.8.8.8;option domain-name "internal.example.org";option routers 192.168.100.254;option broadcast-address 192.168.100.255;default-lease-time 21600;max-lease-time 43200;next-server 192.168.100.10; filename "pxelinux.0"; }[root@centos01 pxeboot]# systemctl start dhcpd[root@centos01 pxeboot]# systemctl enable dhcpd

8、准备安装应答文件:

在centos 7 系统中如果安装了system-config-kickstart工具后,可通过图形化向导工具来配置安装应答文件:

[root@centos01 pxeboot]# yum -y install system-config-kickstart 

1)打开图形化程序:

Centos7的YUM仓库服务与PXE网络装机

2)配置安装应答参数:

Centos7的YUM仓库服务与PXE网络装机

3)由于ftp服务默认允许匿名访问,所以不用指定用户名和密码:

Centos7的YUM仓库服务与PXE网络装机

4)引导装载程序:

Centos7的YUM仓库服务与PXE网络装机

5)分区信息(根据实际需求选择合适的硬盘分区方案):

Centos7的YUM仓库服务与PXE网络装机

6)网络配置及防火墙:

Centos7的YUM仓库服务与PXE网络装机 Centos7的YUM仓库服务与PXE网络装机

7)编写安装后脚本,保存到文档目录里:

Centos7的YUM仓库服务与PXE网络装机

保存后的应答文件:

[root@centos01 ~]# vim ks.cfg(可直接复制此文件便可省略图形化配置的那些步骤,结合实际需求进行修改后使用即可):#platform=x86, AMD64, 或 Intel EM64T#version=DEVEL# Install OS instead of upgradeinstall# Keyboard layoutskeyboard 'us'# Root passwordrootpw --iscrypted $1$bauETRq3$WOpze2jeKD9q3qgKK50xj0# Use network installationurl --url="ftp://ftp:192.168.100.10/centos7"# System languagelang zh_CN# System authorization informationauth--useshadow--passalgo=sha512# Use graphical installgraphicalfirstboot --disable# SELinux configurationselinux --disabled# Firewall configurationfirewall --disabled# Network informationnetwork--bootproto=dhcp --device=ens32# Reboot after installationreboot# System timezonetimezone Asia/Shanghai# System bootloader configurationbootloader --location=mbr# Partition clearing informationclearpart --all# Disk partitioning informationpart /boot --fstype="xfs" --size=500part /home --fstype="xfs" --size=4096part swap --fstype="swap" --size=2048part / --fstype="xfs" --grow --size=1%post --interpreter=/bin/bashcd /etc/yum.repos.drm -rf *echo -e "[base]" > aa.repoecho -e "baseurl=ftp://192.168.100.10/centos7" >> aa.repoecho -e "gpgcheck=0" >> aa.repo%end

不过上面的配置文件还差点东西,需要在配置文件末尾继续写入三行,以此来选择最小安装:

%packages@^minimal%end

写好后,保存退出即可。

9、将自动应答文件复制到指定目录(在之前的引导菜单指定的“ks=”项的路径):

 [root@centos01 ~]# cp /root/ks.cfg /var/ftp/

10、OK,客户机开机,验证效果(耐心等待完成即可):

Centos7的YUM仓库服务与PXE网络装机

安装成功:

Centos7的YUM仓库服务与PXE网络装机

只要正确指定软件仓库的地址等信息,就可以通过对应的“源”服务器来安装或更新软件了。

以上就是良许教程网为各位朋友分享的Linux系统相关内容。想要了解更多Linux相关知识记得关注公众号“良许Linux”,或扫描下方二维码进行关注,更多干货等着你!

良许微信公众号

本文由 良许Linux教程网 发布,可自由转载、引用,但需署名作者且注明文章出处。如转载至微信公众号,请在文末添加作者公众号二维码。
良许

作者: 良许

良许,世界500强企业Linux开发工程师,公众号【良许Linux】的作者,全网拥有超30W粉丝。个人标签:创业者,CSDN学院讲师,副业达人,流量玩家,摄影爱好者。
上一篇
下一篇

发表评论

联系我们

联系我们

公众号:良许Linux

在线咨询: QQ交谈

邮箱: yychuyu@163.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

关注微博
返回顶部