linux之PXE架构无人值守安装

Posted 浅唱

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux之PXE架构无人值守安装相关的知识,希望对你有一定的参考价值。

PXE架构  无人值守安装

1.TFTP简介

1.)概述  简单的文件传输协议  端口

简单文件传输协议Trivial File Transfer Protocol)

网络文件基于UDP传输的最简单的协议    端口为UDP 69

数据库端口  端口3306

DNS        端口53

DHCP       端口 服务端67    客户端68

FTP         端口  21   20端口不确定

samba      端口 137   138   139    445

ssh          端口  22

 

2.)特点

1.同样属于C/S架构客户端程序tftp服务端程序tftp-server,基于守护进程xinetd来运行。

2.xinetd配置文件/etc/xinetd.d/tftp    

tftp服务端提供客户端文件访问根目录/var/lib/tftpboot

这个目录是客户端可以下载访问的

 

 

TFTP部署 安装tftp-server 和xinetd服务 修改配置,并启动服务

TFFP服务

1.安装     yum -y install tftp-server xinetd

xinetd配置文件/etc/xinetd.d/tftp    

Tftp服务交给  xinerd管理

 

这些都是  xinetd管理的服务

 

 

 

 

2.修改配置并启动命令  vi /etc/xinetd.d/tftp

修改为:  wait      = no  (等待)         disable     = no    (使不能)

 

 

 

 

 

systemctl start xinetd

systemctl start tftp.socket    ---启动服务  

netstat -antulp |grep :69         --查看端口

 

 

 

 

PXE网络启动

1.PXE概述   依赖的软件DHCP VSFTP  

PXE:preboot execute environment(预引导启动环境)

1.由Intel公司开发的网络引导技术,工作于C/S架构,基于网络引导启动客户端操作系统的安装。

允许客户端通过网络从远程服务器下载引导镜像,并加载安装整个文件或整个操作系统。

2.依赖dhcp,tftp,file server(vsftpd,httpd,nfs等),客户端主机网卡也需支持BOOTROOM芯片,支持PXE相关协议。

dhcp分配IP地址及指定引导文件位置。

tftp提供引导镜像文件的下载

file server提供操作系统安装包的下载,将光盘的内容复制到file server中,如vsftpd。

3.网络引导Linux的相关软件由syslinux提供,安装syslinux程序  

yum install syslinux  -y

2.优点:

PXE这种安装系统的方式可以不受光驱光盘以及一些外部设备的限制还可以做到无人值守,

大大减轻了运维人员的工作负荷,像在一些主机数量庞大的机房进行批量安装,PXE是不二的选择。

3.工作过程示意图

 

 

 

 

名词解释

pxelinux.0  pxe引导程序(由syslinux程序提供)

pxelinux.cfg/default 系统启动时的启动菜单,指出要加载内核镜像和inird 镜像,然后引导。

vmlinuz Linux内核

initrd.img  初始化镜像文件,存放了引导时的一些驱动程序  解压

tftp服务端 默认提供请求的文件目录/var/lib/tftpboot内。

syslinux程序的相关文件目录:/usr/share/syslinux之中。

4.工作过程文本解释:

工作站开机后, PXE BootROM(自启动芯片) 获得控制权之前先做自我测试,然后以广播形式发出一个请求 FIND 帧。如果服务器收到工作站所送出的要求, 就会送回 DHCP 回应, 内容包括分配的 IP 地址,及pxe引导程序名称,以及下载的地址 否则, 服务器会忽略这个要求。

工作站收到服务器发回的响应后则会回应一个,以请求传送启动所需的文件 之后,将有更多的讯息在工作站与服务器之间作应答, 用以决定启动参数。 

BootROM  TFTP 通讯协议从服务器下载开机映像, 这个映像就是系统的映象文件。工作站使用 TFTP 协议接收启动文件后,将控制权转交启动引导程序,引导操作系统,完成远程启动

4.PXE架构 安装xinetd  DHCP  vsftpd程序

首先安装基于UDP协议的TFTP服务端,来进行后期的简单文件的网络传输。

服务器通过 TFTP(Trivial File Transfer Protocol)简单文件传输协议提供引导镜像文件的下载

1.安装xinetd程序,为tftp服务提供支持,并进行配置

yum –y install xinetd

yum -y install tftp-server                      --前面已安装过了

 

vim /etc/xinetd.d/tftp   ---编辑配置文件

修改为:  wait      = no  (等待)         disable     = no    (使不能)

 

 

 

 

启动tftp服务

systemctl start xinetd

systemctl start tftp.socket    ---启动服务

2.在tftp根路径导入需要提供给工作站的引导文件和内核文件    进入目录查看权限  改为644

cd /media/cdiso/isolinux/            

 

 

 

 

移动这三项到   /var/lib/tftpboot

cp initrd.img vmlinuz isolinux.cfg  /var/lib/tftpboot/

 

vmlinuz Linux内核

initrd.img       镜像文件系统

isolinux.cf       启动菜单

 

 

 

 

cd   /var/lib/tftpboot

查看权限  如果不是644则改为644权限       chmod  644  isolinux.cf  

 

 

 

 

 

##

对比镜像中    initrd.img vmlinuz   文件内容的区别

cd /media/cdiso/images/pxeboot      -- 进入这个挂载

ls -lh initrd.img vmlinuz /media/cdiso/isolinux/initrd.img /media/cdiso/isolinux/vmlinuz

 

 

 

 

安装syslinux 在tftp根路径导入  提供给客户端的pxe引导程序文件pxelinux.0

yum  -y  install   syslinux        --安装软件

cp   /usr/share/syslinux/pxelinux.0  /var/lib/tftpboot/   --复制文件

 

 

 

 

 

 

 

 cd /var/lib/tftpboot/          -查看

 

 

 

 

 

4.启动菜单配置  vim  /var/lib/tftpboot/isolinux.cfg

vim    isolinux.cfg

default linux        默认选择的是linux lable

prompt 0  

timeout 30

 

 

 

 

5.创建pxelinux.cfg目录,并将isolinux.cfg引导镜像菜单文件进行重命名为默认名称default

mkdir  pxelinux.cfg

mv   isolinux.cfg   ./pxelinux.cfg/default     移动到这个目录下

 

 

 

 

 

6.安装配置dhcp服务,动态为新的客户机分配IP地址以及将pxe的引导程序文件基于UDP传输给客户机

 yum -y install dhcp

 

 

 

 

cp  /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example  /etc/dhcp/dhcpd.conf

vim /etc/dhcp/dhcpd.conf          ---修改DHCP配置文件,增加地址池

 

# A slightly different configuration for an internal subnet.

subnet 192.168.10.0 netmask 255.255.255.0 {           分配的网段

  range 192.168.10.11 192.168.10.150;                 分配的ip范围

  option domain-name-servers 8.8.8.8;                  dns

  option domain-name "ujiuye.com";         域名

  option routers 192.168.10.10;               网关

  default-lease-time 600;                  

  max-lease-time 7200;                      

  next-server 192.168.10.10;        支持tftp的ip需要到下一台某一天机器下载的文件

  filename "pxelinux.0" ;            网络启动的依赖程序下载的文件名称

 

启动服务systemctl start dhcpd

查看端口netstat -antulp | grep :67

 

 

 

 

7.安装vsftpd服务,提供在客户机pxe引导成功之后进行安装操作系统的程序源包   挂载光盘之/var/ftp/centos/

yum -y install vsftpd          ---安装vsftpd服务

cd   /var/ftp/   

mkdir   centos            ---创建挂载目录

mount /dev/cdrom /var/ftp/centos       ---挂载光盘

或者将光盘内容复制到 /var/ftp/centos/

cp   -rfp   /media/cdrom/*    /var/ftp/centos/

 

 

 

 

 

 

启动服务  systemctl start vsftpd

查看服务ftp://192.168.10.10/centos

 

 

 

 

 

5.kickstart无人值守安装

1.示意图

 

 

 

 

 

2.安装kickstart程序

1.要实现kickstart无人值守安装,源服务器可以使用图形界面配置kickstart脚本。

2.安装kickstart程序

yum -y install system-config-kickstart

3.修改yum配置环境修改标签

会出现这样错误, 所以去修改本地yum源  

 

 

 

 

cd /etc/yum.repos.d/

vim CentOS-Base.repo

标签修改为    [development]          -这样就会显示 软件包选择

 

 

 

 

4.重启服务system-config-kickstart完成配置 然后移动ks.cfg  

system-config-kickstart             --在虚拟机内,远程终端不可以

 

执行完 启动服务完成配置后 生成一个ks.cfg的文件  将其放在root下    然后复制到ftp分享的目录

cp ks.cfg /var/ftp/              ---复制ks.cfg文件到  ftp分享目录下

cd /var/ftp/                    ---ftp分享的目录

 

 

 

 

 

修改默认的default文件中   指引向自动部署的

以上是关于linux之PXE架构无人值守安装的主要内容,如果未能解决你的问题,请参考以下文章

Linux之无人值守安装系统

linux系统服务-PXE批量部署kickstart无人值守

linux下PXE无人值守环境自动安装脚本

无人值守安装Linux(PXE)

无人安装值守pxe

Centos6.5下 PXE+Kickstart无人值守安装