搭建 PXE 远程安装服务器

image_1cqg00g0os9b1pop122e98o19ef9b.png-255kB

1.把光盘源放在/var/ftp/centos6

因为远程装机对放服务器得读取你的光盘源才能安装
mkdir -p /var/ftp/centos6
cd /var/ftp/centos6
cp -rp /media/cdrom/* .
2.安装tftp并修改配置文件然后启动服务

yum -y install tftp-server
image_1cqg0hmps1af1p231bld16p19599o.png-224.2kB
打开tftp配置文件
vim /etc/xinetd.d/tftp
wait的行改成no
disable的行改成no
image_1cqg0r84n1cs0ekloem17gh1sl5b5.png-38.6kB
启动服务
/etc/init.d/xinetd start
chkconfig tftp on
3.准备 Linux 内核、初始化镜像文件

image_1cqg0ulkht7t108eq1j1mra19l3c2.png-132.2kB

cd /var/ftp/centos6/isolinux
cp vmlinuz initrd.img /var/lib/tftpboot(这是tftp服务端的目录,远程给客户端分发装机配置文件就从这个目录分发,所以要复制到这里来)
4.准备 PXE 引导程序、启动菜单文件

image_1cqg174ptltr1v9ov4v14ja1ulcv.png-204.6kB
image_1cqg17gsk1qroupcddfks31goedc.png-159.1kB
image_1cqg17s031q8v7lctgb1gp9u44dp.png-216.9kB

准备引导程序:
yum -y install syslinux
cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot

准备启动菜单
cp /var/ftp/centos6/isolinux/isolinux.cfg /var/lib/tftpboot
cd /var/lib/tftpboot
复制的这四个文件是装机的引导文件和内核文件
chmod 644 isolinux.cfg
为了安全,改一下权限
vim isolinux.cfg

第一行是名字 改成default linux
第二行prompt 1 改成 0 不进行交互
因为那么多机子要是交互的话忙不过来。
第三行timeout超时时间可以注释掉
label vesa 改成 label text
append 后面加个单词text
label rescue模块里的append后面加个单词rescue
保存退出!
cd /var/lib/tftpboot
mkdir pxelinux.cfg
mv isolinux.cfg ./pxelinux.cfg/default
把这个文件移动到刚刚新建的目录里然后改个名字默认的意思
5.安装并启动DHCP服务

image_1cqg23ushn4b21u160pubg1tvnel.png-211.5kB
yum -y install dhcp
cp /usr/share/doc/dhcp*/dhcpd.conf.sample /etc/dhcp/
cd /etc/dhcp
cat dhcpd.conf.sample > dhcpd.conf

vim ~/dhcpd.conf
1.option domain-name “example.org
双引号里面随便改 名字

2.option domain-name-servers ns1.example.org, ns2.example.org;
把这行改成option domain-name-servers 192.168.200.2;
因为是nat模式所以网关改成这个才能上网

3.default-lease-time 600;改成21600秒

4.max-lease-time 7200;改成43200

5.subnet 10.254.239.0 netmask 255.255.255.224 {这行声明改成subnet 192.168.200.0 netmask 255.255.255.0 {

6.把range 10.254.239.10 10.254.239.20;改成range 192.168.200.10 192.168.200.200;(这是分发范围)

7.把网关地址option routers rtr-239-0-1.example.org, rtr-239-0-2.example.org;改成
option routers 192.168.200.2;
然后在插两行
(1)next-server 192.168.200.99;(写的是PXE服务端的IP 因为,得让他们客户端找到pxe)
(2)filename “pxelinux.0”;(要这个pxe引导文件)

8.删除掉后面的行 保存退出就OK了

9./etc/init.d/dhcpd start
启动服务

6、新建虚拟机进行验证

yum -y install vsftpd
/etc/init.d/vsftpd start
客户端要yum -y install ftp

image_1cqg3umjc19dr1d9l122uvhum17f2.png-69.3kB
image_1cqg3vfq329ov971edo11fchk0gf.png-90.1kB
image_1cqg4026s1ta812ieirdn7342ags.png-41.4kB
image_1cqg40e9utr1ig913ahn6hblfh9.png-113kB
image_1cqg40mntr5h119fcgp10b2sf4hm.png-82.4kB
image_1cqg4207mi67ba1ivkpqb1u8uj3.png-20.7kB
写上PXE服务端的IP和光盘源目录
image_1cqg42ih8vs31ia91n6vnsv4s4k0.png-51.2kB
(3)其余过程与本地安装相同(略)

虽然能远程装机,但是还是需要交互

三、实现 kickstart 无人值守安装

1、创建应答文件
image_1cqg7246ljiu1o3f9dei7hhvcld.png-90kB
在PXE服务端安装这个(服务端有桌面模式)
yum -y groupinstall Desktop(安装桌面模式)
yum -y install system-config-kickstart
通过这个东西生成自动安装脚本
setenforce 0 必须关了 否则不J8行
image_1cqgi7e861ntg1dka1bq36bg1fio9.png-241.5kB

image_1cqgi7pvb6vmsc17j41hkkfcpm.png-133.6kB

image_1cqgi83pa3mrs0aamgp1j2th13.png-90.8kB
image_1cqgi8iplfcem3j1im618umq1b1g.png-64.7kB

image_1cqgi8rune2h1n8e9fgafh1tft1t.png-157.8kB
image_1cqgi99dvj7h967j5cijk1ing2a.png-96.6kB

image_1cqgi9i7k16f7q6716eo13gh1mt02n.png-77.5kB
image_1cqgi9v3ljdidh31qj91h3fi4t34.png-134.2kB
web服务器
image_1cqgiadcf1qto1vbi16i31o431ep73h.png-131.9kB
image_1cqgibd5l1tfkt9alr15au1rh44q.png-94.2kB

四、实现批量自动装机(PXE 与 kickstart 的结合使用)

1、将应答文件部署在客户机可以访问的位置
image_1cqgidon11c8154d1ak91pdrjdh5a.png-288.7kB
image_1cqgie4b01u6j1poj1oc13lqu295n.png-186.6kB
image_1cqgieekj1obv1po3kqj1fpn147r64.png-146.6kB
image_1cqgieq405ng1fp86bv1op81m5171.png-141.1kB
image_1cqgif6s71uvf1t8or0cfo4ibi7e.png-156.9kB

五、实现不同网段的不同装机

image_1cqgigecs1foq168d11h81dpc3788.png-235.9kB
image_1cqgigm4mkk967485dnpf1i9e8l.png-345.3kB
image_1cqgih233vjnljr1rd4klg1q8092.png-119.7kB
image_1cqgihq0j1ouu33u46lv7m1uik9f.png-194.3kB
image_1cqgii4cp1s3nk2bh31h1jklp9s.png-122.2kB
image_1cqgiieke1vdgtcf1opsskc18qa9.png-189.1kB

posted on 2018-11-05 20:46  Codeworld$^  阅读(607)  评论(0编辑  收藏  举报