pxe+kickstart自动装机详解

Posted

tags:

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

pxe+kickstart

这个网上文档还挺多的,但是基本都好多坑,最后自己综合了几篇做成功了,在此记录。

pxe的工作示意图,不管做什么还是要弄懂原理的

技术分享

整个过程图解:

技术分享

一.测试环境

centos 6.8(基础服务器安装)

NAT网络模式

IP:192.168.40.134

关闭防火墙

SELINUX=disabled

二.安装篇

  1. 1 apache安装

#yum install httpd -y 注:此处还可以用nfs或者ftp

#service httpd start

#chkconfig httpd on

  1. 2 tftp-server安装

#yum install  -y tftp-server

#service xinetd start

#chkconfig xinetd on

  1. 3 dhcp安装

#yum install -y dhcp

#service dhcpd start

#chkconfig dhcpd on

  1. 4 syslinux安装

#yum install -y syslinux

三.配置篇

  1. 1 httpd配置

挂载一个镜像

#mkdir /mnt/cdrom

#mount /dev/cdrom /mnt/cdrom

复制光盘所有内容到http的根目录/var/www/html/cdrom下

#cp -r /mnt/cdrom /var/www/html/cdrom

  1. 2配置TFTP

vim /etc/xinetd.d/tftp

技术分享

修改disable的值为no

 

  1. 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 –

  1. 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引导文件

}

 

  1. 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 configuration

firewall --disabled

# Install OS instead of upgrade

install

# Use network installation

url --url=http://192.168.40.134/cdrom/   #这个选项告诉安装程序:到服务器192.168.111.134 的HTTP根目录下的

cdrom 文件夹下寻找安装介质

# Root password

rootpw 123456

# System authorization information

auth  --useshadow  --enablemd5

# Use graphical install

graphical

firstboot --disable

# System keyboard

keyboard us

# System language

lang en_US

# SELinux configuration

selinux --disabled

# Installation logging level

logging --level=info

# Reboot after installation

reboot

# System timezone

timezone  --isUtcAsia/Shanghai

# Network information

network  --bootproto=dhcp--device=eth0 --onboot=on

# System bootloader configuration

bootloader --append="rhgb quiet" --location=mbr--driveorder=sda

# Clear the Master Boot Record

zerombr

# Partition clearing information

clearpart --initlabel --all --drives=sda

# Disk partitioning information

part / --fstype="ext4" --size=8192

part swap --fstype="swap" --size=1024

part /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


本文出自 “甘蔗” 博客,请务必保留此出处http://neephon.blog.51cto.com/11895878/1920058

以上是关于pxe+kickstart自动装机详解的主要内容,如果未能解决你的问题,请参考以下文章

PXE网络装机及kickstart无人值守自动装机技术

批量装机环境,配置PXE引导,kickstart自动应答

PXE + kickstart 无人值守自动装机实例

PXE高效批量网络装机实现Kickstart无人值守安装

他们真的来了:PXE远程部署装机,进阶版kickstart无人值守装机(实验可跟做)

部署PXE高效批量网络装机并实现Kickstart无人值守自动安装