码迷,mamicode.com
首页 > 其他好文 > 详细

pxe网络装机-->jluocc

时间:2018-11-20 10:24:52      阅读:251      评论:0      收藏:0      [点我收藏+]

标签:这一   label   tftp   dir   菜单显示   装包   RoCE   pack   evel   

一 前言
PXE:Pre-boot eXecution Environment
预启动执行环境,在操作系统之前执行,可用于远程安装

工作模式:
PXE client集成在网卡的启动芯片中
当计算机引导时,从网卡芯片中把PXE clent调入内存执行,获取PXE server配置、显示菜单,根据用户选择将远程引导程序下载到本机运行
需要服务套件:
DHCP,分配ip地址,定位引导程序
TFTP(简单的文件传输协议,69),提供引导程序下载
HTTP(FTP/NFS),提供yum安装源
开机启动项顺序:1.硬盘 2.光驱设备 3.移动硬盘 4.网络安装

二 搭建pxe
1,搭建DHCP服务
端口号:udp/67 udp/68
主配置文件:/etc/dhcp/dhcpd.conf

[root@svr7 ~]# yum -y install dhcp
[root@svr7 ~]# vim /etc/dhcp/dhcpd.conf 
subnet 192.168.4.0 netmask 255.255.255.0 {      #网段
  range 192.168.4.100 192.168.4.200;            #地址池
  option domain-name-servers 192.168.4.7;       #dhcp服务地址
 #option domain-name "internal.example.org";   #dhcp服务域名
  option routers 192.168.4.254;                 #网关
 #option broadcast-address 10.5.5.31;          #关播地址
  default-lease-time 600;                       #最小连接时长,单位秒
  max-lease-time 7200;                          #最大连接时长,单位秒
  next-server 192.168.4.7;                      #设置下一个服务地址
  filename "pxelinux.0";                        #指定网卡引导文件名称
}
提示:pxelinux.0----->网卡引导文件,这里面是二进制文件(可通过安装软件获得次文件)

2,搭建tftp
tftp:简单文本传输协议
默认端口号:69
默认共享文件路径:/var/lib/tftpboot/
1)安装软件tftp-server

[root@svr7 ~]# yum -y install tftp-server
[root@svr7 ~]# systemctl restart tftp      启服务

2)部署pxelinux.0文件

[root@svr7 ~]#yum provides */pxelinux.0   #获取pxelinux.0文件软件名称
[root@svr7 ~]#yum -y install syslinux     #安装软件
[root@svr7 ~]#rpm -ql syslinux |grep pxelinux.0 #获取pxelinux.0文件路径
/usr/share/syslinux/gpxelinux.0
/usr/share/syslinux/pxelinux.0
[root@svr7 ~]# cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/ #复制
[root@svr7 ~]# ll /var/lib/tftpboot/
总用量 28
-rw-r--r--. 1 root root 26826 9月  26 10:27 pxelinux.0

3)部署菜单文件

[root@svr7 ~]# mkdir /var/lib/tftpboot/pxelinux.cfg    #创建目录
[root@svr7 ~]# mount /dev/cdrom /mnt         #挂载镜像文件,本次实验用rhel7
[root@svr7 ~]# ls /mnt
addons            GPL       media.repo               RPM-GPG-KEY-redhat-release
EFI               images    Packages                 TRANS.TBL
EULA              isolinux  repodata
extra_files.json  LiveOS    RPM-GPG-KEY-redhat-beta
[root@svr7 ~]# cp /mnt/isolinux/isolinux.cfg /var/lib/tftpboot/pxelinux.cfg/default    #拷贝pxelinux.cfg文件
[root@svr7 ~]# ll /var/lib/tftpboot/pxelinux.cfg/default
-r--r--r--. 1 root root 3166 9月  26 10:59 /var/lib/tftpboot/pxelinux.cfg/default
[root@svr7 /]# chmod u+w /var/lib/tftpboot/pxelinux.cfg/default                #修改权限
[root@svr7 /]# ll /var/lib/tftpboot/pxelinux.cfg/default
-rw-r--r--. 1 root root 3166 9月  26 10:59 /var/lib/tftpboot/pxelinux.cfg/default

4)修改菜单文件

[root@svr7 /]# vim /var/lib/tftpboot/pxelinux.cfg/default   #修改对应属性信息    
1 etefault vesamenu.c32             #默认加载图形模块
2 timeout 600                       #读秒时间 1/10  这个为:60秒
10 menu background splash.png       #指定背景图片
11 menu title JLUOCC PXE Server    #菜单显示标题
61 label linux
62   menu label Install Linux 7.4  #选项内容
63   menu default                  #读秒结束后默认选择
63   kernel vmlinuz                #加载内核
64   append initrd=initrd.img      #加载驱动
提示:后面全部删除 

5)部署相应的模块

#cp /mnt/isolinux/vesamenu.c32 /mnt/isolinux/splash.png /var/lib/tftpboot/   #部署图形的模块及背景模块
[root@svr7 /]# cp /mnt/isolinux/vmlinuz /mnt/isolinux/initrd.img /var/lib/tftpboot/  #部署启动内核与驱动程序
[root@svr7 /]# ll /var/lib/tftpboot/                #查看目录下总共有6个文件,splash.png可以不要
总用量 54524
-r--r--r--. 1 root root 49763300 9月  26 11:12 initrd.img
-rw-r--r--. 1 root root    26826 9月  26 10:35 pxelinux.0
drwxr-xr-x. 2 root root       21 9月  26 10:59 pxelinux.cfg
-r--r--r--. 1 root root      186 9月  26 11:08 splash.png
-r--r--r--. 1 root root   153104 9月  26 11:08 vesamenu.c32
-r-xr-xr-x. 1 root root  5875184 9月  26 11:12 vmlinuz

三 搭建httpd
1,装包启服务
[root@svr7 /]# yum -y install httpd #安装服务
[root@svr7 /]# mkdir /var/www/html/rhel7
[root@svr7 /]# mount /dev/cdrom /var/www/html/rhel7 #一般直接拷贝,不用挂载
[root@svr7 /]# systemctl restart httpd #重启服务
[root@svr7 /]# firefox 192.168.4.7/rhel7    #查看信息

2,生产应答文件ks.cfg
1)安装图形工具(system-config-kickstart)进行生成应答文件

[root@svr7 /]# yum -y install system-config-kickstart
[root@svr7 /]# vim /etc/yum.repos.d/rhel7.repo        #修改本地yum源名称,重要
[development]         #表识名称必须写成development,运行system-config-kickstart
name=rhel7.4          #才能识别安装软件包,否则不能识别
baseurl=http://192.168.4.254/rhel7
enabled=1
gpgcheck=0
[root@svr7 /]# system-config-kickstart   #具体操作步骤看图

技术分享图片
技术分享图片
技术分享图片
技术分享图片
技术分享图片
技术分享图片
技术分享图片
技术分享图片
技术分享图片
技术分享图片

2)共享ks应答文件

[root@svr7 ~]# cp /root/ks.cfg /var/www/html        #拷贝配置文件到http目录中
[root@svr7 ~]# firefox 192.168.4.7/ks.cfg
[root@svr7 ~]# vim /var/lib/tftpboot/pxelinux.cfg/default          #修改文件
label linux
  menu label Install Red Hat Enterprise Linux 7.4
  menu default
  kernel vmlinuz
  append initrd=initrd.img ks=http://192.168.4.7/ks.cfg       #加上ks这一行

四 验证
新建虚拟机
技术分享图片
因为我搭建了好几台会有几个选项
技术分享图片
技术分享图片

五 总结
--安装DHCP
yum -y install dhcp --> vim /etc/dhcp/dhcpd.conf
--> next-server,filename -->systemctl restart dhcpd

--安装TFTP
yum -y install tftp-server -->systemctl restart tftp
默认共享位置:/var/lib/tftpboot/

--安装http
yum -y install httpd -->mkdir /var/www/html/rhel7
-->systemctl restart httpd

--拷贝文件
mount /dev/cdrom /mnt
cp /mnt/* /var/www/html/rhel7
cp isolinux.cfg /var/lib/tftpboot/pxelinux.cfg/default
cp vesamenu.c32 splash.png vmlinuz initrd.img /var/lib/tftpboot/

--pxelinux.0
yum provides */pxelinux.0 -->yum -y install syslinux -->rpm -ql syslinux | grep pxelinux.0
cp pxelinux.0 /var/lib/tftpboot/

--ks.cfg
yum -y install systemc-config-kickstart -->system-config-kickstart
-->ks.cfg
cp ks.cfg /var/www/html/

pxe网络装机-->jluocc

标签:这一   label   tftp   dir   菜单显示   装包   RoCE   pack   evel   

原文地址:http://blog.51cto.com/14050800/2319061

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!