一键搭建PXE自动装机

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了一键搭建PXE自动装机相关的知识,希望对你有一定的参考价值。


1.什么是DHCP服务器?可以分配的参数有哪些?


动态主机配置协议,主要是简化主机IP地址分配管理


可以分配的参数


IP地址/子网掩码/广播地址


网关


DNS服务器地址 


2.使用DHCP的好处


减小管理员的工作量


减小输入错误的可能


避免IP冲突


当网络更改IP网段是,不需要重新配置每台计算机的IP


计算机移动不必重新配置TCP/IP信息


提高IP地址利用率


########################################################################################################

搭建基本DHCP服务器

安装dhcp包

[[email protected] ~]# yum  -y install dhcp

修改主配置文件

[[email protected] ~]# vim /etc/dhcp/dhcpd.conf 

读入配置文件

 r :/usr/share/doc/dhcp*/dhcpd.conf.sample

[[email protected] ~]# tail -7 /etc/dhcp/dhcpd.conf 

 subnet 192.168.4.0 netmask 255.255.255.0 {

   range 192.168.4.10 192.168.4.50;

   option domain-name-servers 192.168.4.5;

   option routers 192.168.4.254;

   default-lease-time 600;

   max-lease-time 7200;

 }

启动dhcp服务 [[email protected] ~]# /etc/init.d/dhcpd restart

pc205

修改eth0网卡配置文件

[[email protected] ~]# vim /etc/sysconfig/network-scripts/ifcfg-eth0

BOOTPROTR=dhcp

重启network

[[email protected] ~]# /etc/init.d/network  restart

svr5 

如启动dhcp失败查询端口是否占用

[[email protected] ~]# netstat -anptu | grep 67

udp        0      0 0.0.0.0:67                  0.0.0.0:*                               2189/dnsmasq   

干掉端口占用

[[email protected] ~]# killall dnsmasq

再次重启svr5 dhcp

[[email protected] ~]# /etc/init.d/dhcpd restart


再次查询端口是否占用

[[email protected] ~]# netstat -anptu | grep 67

udp        0      0 0.0.0.0:67                  0.0.0.0:*                               3110/dhcpd 

######################################################################################################

服务端 UDP 67、客户端 UDP 68


至少应有一个属于指定作用域的静态IP地址

临时配置/测试,建议采用dhcplient

格式dhclient -d 网络接口

选项-d 调试模式 -r 释放地址


############################################################################################################

PXE网络装机部署

网络装机的优势

规模化:同时装配多台主机

自动化 装系统 配置各种服务

远程实现 不需要U盘 光盘等物理安装介质

什么的PXE网络

PXE 

预启动执行环境 在操作系统运行之前的环境

可用于远程安装 构建无盘工作站

工作模式 PXE 集成在网卡ROM中

当计算引导时 Bios把PXE clint调入内存执行

获取PXE server配置显示菜单 根据用户选择将远程操作系统下载到本地运行

PXE组件及过程分析

需要那些服务

DHCP服务 分配ip地址 定位引导程序

DNS服务 为客户机分配主机名

TFTP服务 提供引导程序下载

FTP服务  (或HTTP/NFS) 提供yum安装源

客户机应具备的条件

网卡rom必须支持PXE协议

主板支持网络启动

##################################################################################################################################

搭建DNS

修改主配置文件

[[email protected] ~]# vim /etc/named.conf 

options {

        directory       "/var/named";

};




zone "4.168.192.in-addr.arpa" IN {

        type master;

        file "192.168.4.zone";

};




修改地址库文件

[[email protected] ~]# vim /var/named/192.168.4.zone 


        NS      svr5.tedu.cn.

$GENERATE 10-50 $ PTR stu$.tedu.cn.

重启named服务

[[email protected] ~]# /etc/init.d/named restart

本机验证

[[email protected] ~]# nslookup  192.168.4.10 192.168.4.5

Server: 192.168.4.5

Address: 192.168.4.5#53


10.4.168.192.in-addr.arpa name = stu10.tedu.cn.



#######################################################################################################

配置DHCP 

修改主配置文件

[[email protected] ~]# vim /etc/dhcp/dhcpd.conf

  next-server  192.168.4.5;   指定下一个服务器是谁

  filename  "pxelinux.0";   指定下载引导文件的名字

}


重启dhcpd服务

[[email protected] ~]# /etc/init.d/dhcpd restart

#######################################################################################################

TFTP配置

tftp:简单的文件传输协议  udp 69

临时服务 

安装临时服务

[[email protected] ~]# yum -y  install tftp-server


将临时服务交由xinetd管家   

 [[email protected] ~]# chkconfig tftp on

将xinete重启   

[[email protected] ~]# /etc/init.d/xinetd  restart

查询端口号

[[email protected] ~]# netstat  -anptu |grep xinetd 

udp        0      0 0.0.0.0:69                  0.0.0.0:*                               4783/xinetd    


tftp:默认共享文件路径/var/lib/tftpboot/

1.准备pxelinux.0(网卡引导文件)

查询仓库中那个一个包产生的PXELINUX。0

[[email protected] ~]# yum -y provides */pxelinux.0

安装


[[email protected] ~]# yum -y  install syslinux-nonlinux

查询路径


[[email protected] ~]# rpm -ql   syslinux-nonlinux   |grep  pxelinux.0

/usr/share/syslinux/gpxelinux.0

/usr/share/syslinux/pxelinux.0

复制pxelinux.0

[[email protected] ~]# cp /usr/share/syslinux/pxelinux.0  /var/lib/tftpboot/、

查询pxelinux.0

[[email protected] ~]# ls /var/lib/tftpboot/

pxelinux.0 


#######################################################################################################


2 准备内核和驱动

挂载光盘

[[email protected] ~]# mount /dev/cdrom  /mnt

mount: block device /dev/sr0 is write-protected, mounting read-only

拷贝文件

[[email protected] ~]# cp /mnt/isolinux/vmlinuz  /var/lib/tftpboot/

[[email protected] ~]# cp /mnt/isolinux/initrd.img  /var/lib/tftpboot/

查看文件

[[email protected] ~]# ls /var/lib/tftpboot/

initrd.img  pxelinux.0  vmlinuz


3. 准备菜单文件

创建文件嘉

[[email protected] ~]# mkdir /var/lib/tftpboot/pxelinux.cfg

拷贝改名default 必须命名

[[email protected] ~]# cp /mnt/isolinux/isolinux.cfg  /var/lib/tftpboot/pxelinux.cfg/default

权限644

[[email protected] ~]# chmod 644 /var/lib/tftpboot/pxelinux.cfg/default 


修改配置文件

[[email protected] ~]# vim /var/lib/tftpboot/pxelinux.cfg/default 

[[email protected] ~]# cat /var/lib/tftpboot/pxelinux.cfg/default

default linux      默认选择那一个标签

timeout 60            读秒6秒  1/10 秒


label linux         标签名称

  kernel vmlinuz     加载内核 

  append initrd=initrd.img    加载驱动


##################################################################################################

FTP搭建

[[email protected] ~]# rpm -q vsftpd  查询RPM 是否安装

vsftpd-2.2.2-14.el6.x86_64

[[email protected] ~]# /etc/init.d/vsftpd status   程序是否运行

vsftpd (pid 1818) 正在运行...

[[email protected] ~]# ls /var/ftp/      查询文件

anon.txt  pub

[[email protected] ~]# mkdir /var/ftp/rhel6    创建RHEL6文件夹

[[email protected] ~]# mount /dev/cdrom /var/ftp/rhel6    挂载文件到rhel6

mount: block device /dev/sr0 is write-protected, mounting read- only   挂载成功


在真机上测试 firefox ftp://192.168.4.5/rhel6


###########################################################################################################

无人值守安装 kickstart 应答文件

安装

1.安装   yum -y install system-config-kickstart   图形生成应答文件工具

2.运行 system-config-kickstart 程序

查看ks.cfg

[[email protected] ~]# ls /root/ks.cfg 

/root/ks.cfg

将应到文件放到./var/ftp

[[email protected] ~]# cp /root/ks.cfg /var/ftp/


[[email protected] ~]# ls /var/ftp/ks.cfg 

/var/ftp/ks.cfg

######################################################################################################

最后一步 修改菜单文件

[[email protected] ~]# vim /var/lib/tftpboot/pxelinux.cfg/default 

[[email protected] ~]# tail -9 /var/lib/tftpboot/pxelinux.cfg/default

default linux

timeout 60


label linux

  kernel vmlinuz

  append initrd=initrd.img  ks=ftp://192.168.4.5/ks.cfg



#######################################################################################################

总结思路


DHCP ----------->IP next-server.pxelinux.0

tftp (initrd.img    vmlinuz   pxelinux.0  default )

default (加载initrd.img    加载vmlinuz   ks 文件)

ks文件 安装源


################################################################################################


本文出自 “夏天” 博客,谢绝转载!

以上是关于一键搭建PXE自动装机的主要内容,如果未能解决你的问题,请参考以下文章

03—PXE自动装机的搭建

03—PXE自动装机的搭建

03—PXE自动装机的搭建

PXE自动装机。

yum仓库搭建与PXE全自动无人值守网络装机案例

PXE网络装机之centos7(批量自动装机)