Redhat之kickstart

为什么是kickstart

     当需要同时安装上百成千台服务器时,不可能用光盘或者存储介质一台台手动操作,我们需要的无人值守的全静默安装。kickstart就能做到这一点,只要把你需要装的机器和制作好的kickstart服务器放在同一网段的交换机下,就可以插线,开机自己装了。

kickstart的启动流程

写了点儿文字,觉得完全描述不清楚。所以从网上偷来一张图,请看下图。
描述一下就是:(1)DHCP负责分配地址 (2)tftp负责引导文件 (3)ftp负责ks文件和安装包

pxe工作原理

配置

1. 安装配置DHCP

yum -y install dhcp
vim /etc/dhcp/dhcpd.conf

[dhcpd.conf 文件]
allow booting;
allow bootp;
subnet 192.168.0.0 netmask 255.255.255.0 {
	option subnet-mask 255.255.255.0;
	option domain-name-servers 192.168.0.100;
	range dynamic-bootp 192.168.0.10 192.168.0.20;
	next-server 192.168.0.100;
	filename "pxelinux.0";
}

systemctl start dhcpd

2. 安装配置tftp

yum -y install xinetd tftp-server
vim /etc/xinetd.d/tftp (将yes 改为no,保存)
tftp
systemctl start tftp

3. 安装syslinux 和system-config-kickstart

安装syslinux和system-config-kickstart

4. 安装配置vsftp

yum -y install vsftpd
systemctl start vsftpd
ftp

5. 拷贝文件

cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/ 引导文件
cp /mnt/images/pxeboot/initrd.img /var/lib/tftpboot/ 引导加载模块
cp /mnt/images/pxeboot/vmlinuz /var/lib/tftpboot/ 压缩内核
cp /mnt/isolinux/vesamenu.c32 /var/lib/tftpboot/ 图形化安装菜单

mkdir /var/lib/tftpboot/pxelinux.cfg
cp /mnt/isolinux/isolinux.cfg /var/lib/tftpboot/pxelinux.cfg/default 开机选择项

cp ~/initial-setup-ks.cfg /var/ftp/pub/ks.cfg kickstart应答文件
chmod 755 /var/ftp/ 修改权限

6. 编辑开机启动项

vim /var/lib/tftpboot/pxelinux.cfg/default

[default 文件]
label linux
  menu label ^Install My LINUX(Redhat7.2)
  kernel vmlinuz
  append initrd=initrd.img inst.stage2=ftp://192.168.0.100 ks=ftp://192.168.0.100/pub/ks.cfg quiet

default

7. 编辑KS文件

system-config-kickstart
File > Open File > File System > var > ftp > pub > ks.cfg
修改完成后保存在 /var/ftp/pub/ks.cfg

设置ftp目录和匿名登录
ks文件
当然你可以自己写ks.cfg

vim /var/ftp/pub/ks.cfg 增加下面一行
ftp

8. 拷贝光盘镜像

cp -r /mnt/* /var/ftp/ 将/mnt下所有文件,拷贝到/var/ftp目录下 ( 当然这里之前我做 mount /dev/sr0 /mnt 的挂载)

9. 新建虚拟机查看效果
注意虚机的网卡模式,需要和Kickstart server为同一种网络模式。也就是说在同一网段下。
新建虚机

完成效果

半夜睡不着,起来把这个写下。毕竟当时自己学的时候,觉得还是蛮无厘头的。碎觉碎觉………

猜你喜欢

转载自blog.csdn.net/GhostRaven/article/details/85132666