PXE装机

PXE装机

网络装机的优势:
规模化:能够装多台机器
自动化:装系统、配置服务
远程实现:不需要光盘、u盘
服务端需要的组件:
DHCP服务:分配ip、、定位引导程序
TFTP服务:提供引导程序下载
HTTP服务:提供yum安装源
客户端条件:
网卡芯片支持PXE协议
主板支持从网卡启动

一:部署dhcp服务

准备:
配ip地址
关闭selinux和防火墙
配置yum源
1、安装DHCP软件包

[root@lsh ~]# yum -y install dhcp

2、修改配置文件
(这里的配置文件是在提示的模板文件中取出来的)

# DHCP Server Configuration file.
#   see /usr/share/doc/dhcp*/dhcpd.conf.example
#   see dhcpd.conf(5) man page
#根据自己当前机器的ip进行设置
subnet 192.168.146.0 netmask 255.255.255.0 {
  range 192.168.146.100 192.168.146.200;
  option domain-name-servers 192.168.146.140;  
  option routers 192.168.146.254;
  default-lease-time 600;
  max-lease-time 7200;
  next-server 192.168.146.140;   //指定下一个服务器地址
  filename "pxelinux.0";   //指定网卡引导文件名称
}

3、启动服务器

[root@lsh ~]# systemctl restart dhcpd
二:部署TFTP服务

1、安装TFTP软件包

[root@lsh ~]# yum -y install tftp-server

2、启动服务

[root@lsh ~]# systemctl start tftp

3、部署pxelinux.0文件

[root@lsh ~]# yum provides  pxelinux.0   //查看该文件时那个包提供的
[root@lsh ~]# yum -y install syslinux
[root@lsh ~]# cp /usr/share/syslinux/pxelinux.0   /var/lib/tftpboot/

4、部署菜单文件

[root@lsh ~]# ls /var/lib/tftpboot/
[root@lsh ~]# mkdir /var/lib/tftpboot/pxelinux.cfg
[root@lsh ~]# ls /var/lib/tftpboot/
[root@lsh ~]# mount /dev/cdrom  /mnt/   
mount: /dev/sr0 写保护,将以只读方式挂载
[root@lsh ~]# cp /mnt/isolinux/isolinux.cfg   /var/lib/tftpboot/pxelinux.cfg/default

5、部署图形模块(vesamenu.c32)与背景图片(splash.png)

[root@lsh ~]# cp /mnt/isolinux/vesamenu.c32 /mnt/isolinux/splash.png /var/lib/tftpboot/
[root@lsh ~]# ls /var/lib/tftpboot/
pxelinux.0  pxelinux.cfg  splash.png  vesamenu.c32

6、部署启动内核(vmlinuz)和驱动程序(initrd.img)

[root@lsh ~]# cp /mnt/isolinux/vmlinuz /mnt/isolinux/initrd.img /var/lib/tftpboot/
[root@lsh ~]# ls /var/lib/tftpboot/
initrd.img  pxelinux.cfg  vesamenu.c32
pxelinux.0  splash.png    vmlinuz

7、修改菜单文件

[root@lsh ~]# vim  /var/lib/tftpboot/pxelinux.cfg/default
末行模式:set  nu
1 default vesamenu.c32    #默认加载图形模块
2 timeout 600             #默认读秒时间 1/10

10 menu background splash.png       #背景图片
11 menu title NSD1905 PXE Server !  #标题显示

61 label linux
62   menu label Install CentOS 7.5   #菜单显示的内容
     menu  default                #读秒结束后默认选择
63   kernel vmlinuz                  #加载启动内核
64   append initrd=initrd.img        #加载驱动程序

重启服务

[root@lsh ~]# systemctl restart tftp
[root@lsh ~]# systemctl status tftp

[root@lsh ~]# systemctl restart dhcpd
[root@lsh ~]# systemctl status dhcpd
三、构建Web服务提供软件包
[root@lsh ~]# yum -y install httpd
[root@lsh ~]# mkdir /var/www/html/centos
[root@lsh ~]# mount /dev/cdrom  /var/www/html/centos
mount: /dev/sr0 写保护,将以只读方式挂载
[root@lsh ~]# systemctl restart httpd
[root@lsh~]# firefox 192.168.146.140/centos
四、部署无人值守安装,生成应答文件

图形工具system-config-kickstart进行生成应答文件

[root@lsh~]# yum -y install system-config-kickstart 
]# LANG=en  system-config-kickstart  #英文进行运行

点击 “软件包选择(Package Selection)” 查看是否可以进行选择
需要Yum仓库的支持:指向光盘的内容仓库,标识必须为[development]

[root@lsh ~]# vim /etc/yum.repos.d/local.repo 
[development]
name=CentOS-$releasever - Base
baseurl=ftp://192.168.146.254/centos-1804
enabled=1
gpgcheck=0
[root@lsh ~]# LANG=en  system-config-kickstart

点击 “软件包选择(Package Selection)” 查看是否可以进行选择

查看生成的应答文件:

[root@lsh ~]# ls /root/
[root@lsh ~]# vim  /root/ks.cfg

共享应答文件:

[root@lsh ~]# cp /root/ks.cfg /var/www/html/
[root@lsh ~]# ls /var/www/html/
centos  ks.cfg

修改菜单文件指定应答文件的位置:

[root@lsh ~]# vim /var/lib/tftpboot/pxelinux.cfg/default 
label linux
menu label  Install CentOS 7.5
menu default
kernel vmlinuz
append initrd=initrd.img  ks=http://192.168.146.140/ks.cfg

总结:
1、dhcp:修改了ip地址,next-server,filename
2、tftp:pxelinux.0
3、pxelinux.0:菜单文件default
4、default:修改图形模块、背景图片、内核、驱动程序、ks.cfg
5、ks.cfg :可以选择分区、选择安装的软件包

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值