您的位置:首页 > 其它

pxe+kickstart自动装机详解

2017-04-27 15:25 477 查看

pxe+kickstart

这个网上文档还挺多的,但是基本都好多坑,最后自己综合了几篇做成功了,在此记录。
pxe的工作示意图,不管做什么还是要弄懂原理的



整个过程图解:



一.测试环境
centos 6.8(基础服务器安装)NAT网络模式IP:192.168.40.134关闭防火墙SELINUX=disabled二.安装篇
1 apache安装
#yum install httpd -y 注:此处还可以用nfs或者ftp#service httpd start#chkconfig httpd on2 tftp-server安装
#yum install -y tftp-server#service xinetd start#chkconfig xinetd on3 dhcp安装
#yum install -y dhcp#service dhcpd start#chkconfig dhcpd on4 syslinux安装
#yum install -y syslinux三.配置篇
1 httpd配置
挂载一个镜像#mkdir /mnt/cdrom#mount /dev/cdrom /mnt/cdrom复制光盘所有内容到http的根目录/var/www/html/cdrom下#cp -r /mnt/cdrom /var/www/html/cdrom2配置TFTP
vim /etc/xinetd.d/tftp

修改disable的值为no 3配置pxe启动所需程序
复制pxelinux.0文件到/var/lib/tftpboot/文件夹中#cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/复制iso 镜像中的/isolinux/* 至/var/lib/tftpboot/ 文件夹中#cp /mnt/cdrom/isolinux/* /var/lib/tftpboot/# mkdir /var/lib/tftpboot/pxelinux.cfg#cp /var/www/html/cdrom/isolinux/isolinux.cfg/var/lib/tftpboot/pxelinux.cfg/default修改default文件#vim /var/lib/tftpboot/pxelinux.cfg/default
defaultks     #默认启动的是 'label ks' 中标记的启动内核
prompt1 #显示 'boot: ' 提示符。为 '0' 时则不提示,将会直接启动 'default' 参数中指定的内容。
timeout 6     #在用户输入之前的超时时间,单位为 1/10 秒。
displayboot.msg #显示某个文件的内容,注意文件的路径。默认是在/var/lib/tftpboot/目录下。也可以指定位类似 '/install/boot.msg'这样的,路径+文件名。
F1boot.msg     #按下 'F1' 这样的键后显示的文件。
F2options.msg
F3general.msg
F4param.msg
F5rescue.msg
labellinux #'label'指定你在 'boot:' 提示符下输入的关键字,比如boot: linux[ENTER],这个会启动'label linux' 下标记的kernel 和initrd.img 文件。
kernel vmlinuz #kernel 参数指定要启动的内核。
append initrd=initrd.img #append 指定追加给内核的参数,能够在grub 里使用的追加给内核的参数,在这里也都可以使用。
labeltext
kernel vmlinuz
append initrd=initrd.img text
label ks
kernel vmlinuz
append ks=http://192.168.40.134/ks.cfginitrd=initrd.img #告诉系统,从哪里获取ks.cfg文件
labellocal
localboot 1
labelmemtest86
kernel memtest
append –4 配置dhcp
复制配置模板文件到DHCP的配置目录中# cp -f /usr/share/doc/dhcp-4.1.1/dhcpd.conf.sample /etc/dhcp/dhcpd.conf添加给dhcp分配的网段
#vim /etc/hcp/dhcpd.conf



subnet192.168.40.0 netmask 255.255.255.0 { #提供DHCP服务的网段
range dynamic-bootp 192.168.40.10192.168.40.90; #地址池
option subnet-mask 255.255.255.0; #掩码
next-server 192.168.40.134; #tftp服务器地址
filename "pxelinux.0"; #PXE引导文件
} 5配置ks.cfg文件
有两种方式,一种是图形环境下配置需要安装# yum install system-config-kickstart# yum groupinstall "X Window System"# yum groupinstall Desktop#reboot注:生成ks.cfg 文件需要system-config-kickstart 工具,而此工具依赖于X Windows,所以我们需要安装X Windows 和Desktop 并重启系统安装完成后打开图形界面 # system-config-kickstart然后依次设置,最后ks文件保存在/var/www/html/目录下安装是有几个地方要注意:

关于图形配置我不多做介绍网上挺多的 起到的目的就是自动给你生成ks.cfg文件 不用手动去配置了 这里我测试时选择的手动配置ks文件 vim /var/www/html/ks.cfg #platform=x87, AMD64, or Intel EM64T#version=DEVEL# Firewall configurationfirewall --disabled# Install OS instead of upgradeinstall# Use network installationurl --url=http://192.168.40.134/cdrom/   #这个选项告诉安装程序:到服务器192.168.111.134 的HTTP根目录下的cdrom 文件夹下寻找安装介质# Root passwordrootpw 123456# System authorization informationauth --useshadow --enablemd5# Use graphical installgraphicalfirstboot --disable# System keyboardkeyboard us# System languagelang en_US# SELinux configurationselinux --disabled# Installation logging levellogging --level=info# Reboot after installationreboot# System timezonetimezone --isUtcAsia/Shanghai# Network informationnetwork --bootproto=dhcp--device=eth0 --onboot=on# System bootloader configurationbootloader --append="rhgb quiet" --location=mbr--driveorder=sda# Clear the Master Boot Recordzerombr# Partition clearing informationclearpart --initlabel --all --drives=sda# Disk partitioning informationpart / --fstype="ext4" --size=8192part swap --fstype="swap" --size=1024part /home --fstype="ext4" --size=2048 %packages@base#这中间可以写你要安装的特定的软件包#mysql%end
到此配置结束
参考:http://www.cnblogs.com/mchina/p/centos-pxe-kickstart-auto-install-os.html http://www.cnblogs.com/along1226/p/5307614.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  pxe kickstart 无人职守