用PXE引导调用kickstart安装CentOS 5

简介: PXE引导启动优点:客户端不需要任何外设支持,无需光驱和U盘,只要网卡支持PXE启动就行。
PXE 引导启动优点:
客户端不需要任何外设支持,无需光驱和U盘,只要网卡支持PXE启动就行。
合适多种自动应答的安装,如有A,B,C三种配置,只需PXE引导后指定A或B或C配置就行。实现了无外设的全自动无人值守安装。
安装机器的台数无限制,可以同时进行多台机器的基于不同配置的安装。
 
工作流程:
客户端设置从PXE引导后,从DHCP服务器上获取到IP和下一跳TFTP服务器地址,然后从TFTP上加载initr.img 和vmlinuz引导文件引导系统,最后指定从HTTP或者FTP上获取安装文件进行安装。PXEàDHCPàTFTPà kickstart àHTTP/FTP
 
服务器端配置:
服务器端要配置DHCP,TFTP,HTTP/FTP三种服务
DHCP为PXE客户端分发IP地址,TFTP为客户端提供引导文件,HTTP/FTP为客户端提供安装源文件。
需要安装的包:
dhcp.i386 tftp-server.i386 syslinux.i386 httpd.i386
 
配置 DHCP 服务器:
 
在/etc目录下新建dhcpd.conf 文件,或者从/usr/share/doc/dhcp-3.0.5/dhcpd.conf.sample CP一份到/etc目录中。
主要参数:
range dynamic-bootp 是PXE启动后获得的IP地址。
next-server 是PXE启动获得IP后下一跳的地址,也就是TFTP服务器地址。
filename 是启动文件。
内容如下:
-------------------------------------内容--------------------------------------------
ddns-update-style interim;
ignore client-updates;
allow booting;
allow bootp;
subnet 192.168.40.0 netmask 255.255.255.0 {
# --- default gateway
option routers 192.168.40.254;
option subnet-mask 255.255.255.0;
# option nis-domain "domain.org";
# option domain-name "domain.org";
option domain-name-servers 192.168.40.254;
option time-offset -18000; # Eastern Standard Time
# option ntp-servers 192.168.1.1;
# option netbios-name-servers 192.168.1.1;
# --- Selects point-to-point node (default is hybrid). Don't change this unless
# -- you understand Netbios very well
# option netbios-node-type 2;
range dynamic-bootp 192.168.40.13 192.168.40.15;
default-lease-time 21600;
max-lease-time 43200;
next-server 192.168.40.163;
filename "pxelinux.0";
# we want the nameserver to appear at a fixed address
# host ns {
# next-server marvin.redhat.com;
# hardware ethernet 12:34:56:78:AB:CD;
# fixed-address 207.175.42.254;
# }
}
 
 
配置 tftp 服务器
 
vi /etc/xinetd.d/tftp
disable = no 将disable项改为NO。
复制内核启动文件到tftp目录:
cp /usr/lib/syslinux/pxelinux.0   /tftpboot/
将CentOS5.2光盘 /media/image/pxeboot/ 目录中的initr.img 和vmlinuz 两个文件复制到/tftpboot/目录中。
将 CentOS5.2光盘 /media/isolinux/ 下*.msg 文件复制到/tftpboot/ 目录中
在/tftpboot/目录中新建pxelinux.cfg 目录。将光盘/media/isolinux/isolinux.cfg 文件复制到/tftpboot/pxelinux.cfg目录中并改名为default.cfg
命令如下:
#cp /usr/lib/syslinux/pxelinux.0   /tftpboot/
#cp /media/image/pxeboot/initr.img  /tftpboot/
#cp /media/image/pxeboot/vmlinuz    /tftpboot/
#cp /media/isolinux/*.msg       /tftpboot/
#mkdir /tftpboot/pxelinux.cfg
#cp /media/isolinux/isolinux.cfg /tftpboot/pxelinux.cfg/default
 
 
配置无人值守安装:
 
1编辑boot启动界面,加入自定义安装项。
[root@PXE /]# vi /tftpboot/boot.msg
^Xsplash.lss
- To install or upgrade in graphical mode, press the ^O0b<ENTER>^O07 key.
- To install or upgrade in text mode, type: ^O0blinux text <ENTER>^O07.
- To Auto Install ^O0bCentOS5.2 Linux^O07, type:^O0blinux autoinstall <ENTER>^O07.
- To Auto Install ^O0bCentOS5.2 sn01^O07, type:^O0blinux sn01 <ENTER>^O07.
- To Auto Install ^O0bCentOS5.2 sn02^O07, type:^O0blinux sn02 <ENTER>^O07.
- To Auto Install ^O0bCentOS5.2 sn03^O07, type:^O0blinux sn03 <ENTER>^O07.
- Use the function keys listed below for more information.
^O0f[F1-Main] [F2-Options] [F3-General] [F4-Kernel] [F5-Rescue]^O07
红颜色的是我加入的自定义安装项,autoinstall sn01 sn02 sn03
2编辑启动配置文件:添加自定义安装项标签和命令。
[root@PXE /]# vim /tftpboot/pxelinux.cfg/default
F3 general.msg
F4 param.msg
F5 rescue.msg
label linux
kernel vmlinuz
append initrd=initrd.img
label text
kernel vmlinuz
append initrd=initrd.img text
label ks
kernel vmlinuz
append ks initrd=initrd.img
label local
localboot 1
label memtest86
kernel memtest
append -
label autoinstall
kernel vmlinuz
append ks=http://192.168.40.163/ks/ks228.cfg initrd=initrd.img devfs=nomount ramdisk_size=9216 nofb
label sn01
kernel vmlinuz
append ks=http://192.168.40.163/ks/ks01.cfg initrd=initrd.img devfs=nomount ramdisk_size=9216 nofb
label sn02
kernel vmlinuz
append ks=http://192.168.40.163/ks/ks02.cfg initrd=initrd.img devfs=nomount ramdisk_size=9216 nofb
label sn03
kernel vmlinuz
append ks=http://192.168.40.163/ks/ks03.cfg initrd=initrd.img devfs=nomount ramdisk_size=9216 nofb
红颜色的是我自己加的自定义项,分别指向的是HTTP服务器上的自动应答文件,
当在BOOT界面中输入自定义安装项时,会自动调用HTTP上的自动应答文件,实现了全自动的无人值守安装。
 
 
客户端配置:
启动机器设置成PXE启动,然后指定要使用的安装项就可以了。
最好不要将PXE设置成第一启动,要不然每次启动都装一次系统, 应该是启动时手动指定一下从PXE启动就行了,DELL服务器PXE启动为F12键 。
首先客户端会向DHCP申请IP。
clip_image002
DHCP回应,客户端连接到TFTP服务器上读取启动文件,加载/tftpboot/boot.msg 和 /tftpboot/pxelinux.cfg/default 文件,可以看到写进去的自定义安装项。
比如要使用服务器上KS02.cfg这个自动应答文件,
只需在BOOT:输入SN03 回车就开始自动安装了。
clip_image004
目录
相关文章
|
7月前
|
存储 Ubuntu Linux
VMware-安装CentOS系统教程及安装包
虚拟机相当于是一个独立于你电脑的环境,在这个环境上面,你可以安装Linux、Windows、Ubuntu等各个类型各个版本的系统,在这个系统里面你不用担心有病读等,不用担心文件误删导致系统崩溃。 虚拟机也和正常的电脑系统是一样的,也可以开关机,不用的时候,你关机就可以了,也不会占用你的系统资源,使用起来还是比较方便 这里也有已经做好的CentOS 7系统,下载下来解压后直接用VMware打开就可以使用
1309 69
|
6月前
|
存储 分布式计算 Linux
安装篇--CentOS 7 虚拟机安装
VMware 装 CentOS 7 不知道从哪下手?这篇超详细图文教程手把手教你在 VMware Workstation 中完成 CentOS 7 桌面系统的完整安装流程。从 ISO 镜像下载、虚拟机配置,到安装图形界面、设置用户密码,每一步都有截图讲解,适合零基础新手快速上手。装好之后无论你是要搭 Hadoop 集群,还是练 Linux ,这个环境都够你折腾一整天!
2551 5
|
7月前
|
Ubuntu Linux 索引
Centos 7、Debian及Ubuntu系统中安装和验证tree命令的指南。
通过上述步骤,我们可以在CentOS 7、Debian和Ubuntu系统中安装并验证 `tree`命令。在命令行界面中执行安装命令,然后通过版本检查确认安装成功。这保证了在多个平台上 `tree`命令的一致性和可用性,使得用户无论在哪种Linux发行版上都能使用此工具浏览目录结构。
603 78
|
6月前
|
安全 关系型数据库 MySQL
CentOS 7 yum 安装 MySQL教程
在CentOS 7上安装MySQL 8,其实流程很清晰。首先通过官方Yum仓库来安装服务,然后启动并设为开机自启。最重要的环节是首次安全设置:需要先从日志里找到临时密码来登录,再修改成你自己的密码,并为远程连接创建用户和授权。最后,也别忘了在服务器防火墙上放行3306端口,这样远程才能连上。
1365 16
|
7月前
|
存储 关系型数据库 MySQL
在CentOS 8.x上安装Percona Xtrabackup工具备份MySQL数据步骤。
以上就是在CentOS8.x上通过Perconaxtabbackup工具对Mysql进行高效率、高可靠性、无锁定影响地实现在线快速全量及增加式数据库资料保存与恢复流程。通过以上流程可以有效地将Mysql相关资料按需求完成定期或不定期地保存与灾难恢复需求。
554 10
|
7月前
|
运维 网络协议 Linux
CentOS下Bind服务的安装与故障排查
通过以上的步骤,您应该能够在CentOS系统上安装并配置BIND DNS服务,并进行基本的故障排查。
606 0
|
7月前
|
存储 Ubuntu Linux
安卓手机免root安装各种Linux系统:Ubuntu, Centos,Kali等
此外还可以安装Slackware、Archstrike等系统,还可以通过github查找方法安装更多有趣的东西。 昨日小编就是通过Termux安装的Kali Linux工具包。
|
8月前
|
Linux 网络安全 Apache
针对在Centos/Linux安装Apache过程中出现的常见问题集锦
以上每个问题的解决方案应深入分析错误日志、系统消息和各种配置文件,以找到根本原因并加以解决。务必保持系统和Apache软件包更新到最新版本,以修复已知的bugs和安全漏洞。安装和管理Web服务器是一项需要细致关注和不断学习的任务。随着技术的发展,推荐定期查看官方文档和社区论坛,以保持知识的更新。
330 80
|
9月前
|
机器人 Linux
CentOS 7系统中安装特定版本CMake 3.21.2的方法。
到这里,过程已经全部完成。如果你跟随上面的步骤来,那么你现在已经拥有了一个全新的CMake版本在你的CentOS 7系统上了。这个过程就像是你通过一系列仪式,唤醒了一个沉睡已久的古老机器人,它现在完全按照你的意愿来帮你构建和编译软件了。
659 18