CentOS 下Kickstart自动网络安装

PXE:是一种引导方式,在启动过程中,终端要求服务器分配IP地址,再用TFTP协议下载一个启动软件包到本机内存中执行,由这个启动软件包完成终端基本软件设置,从而引导预先安装在服务器中的终端操作系统。

Kickstart:是一种无人值守的安装方式。它的工作原理是在安装过程中记录典型的需要人工干预填写的各种参数,并生成一个名为ks.cfg的文件。


一,安装所需要软件包

yum -y install httpd

yum -y install syslinux

yum -y install tftp-server

yum -y install dhcp

yum -y install system-config-kickstart


二,配置dhcpd.conf

vim /etc/hdcpd.conf

ddns-update-style interim; 

ignore client-updates;

next-server 192.168.222.129;  #tftp server 的ip地址

filename "pxelinux.0";

subnet 192.168.222.0 netmask 255.255.255.0 {

option routers          192.168.222.129;

option subnet-mask      255.255.255.0;

range dynamic-bootp 192.168.222.100 192.168.222.150;

default-lease-time 21600;

max-lease-time 43200;

}


三,配置tftp

vim /etc/xinetd.d/tftp

service tftp

{

        socket_type             = dgram

        protocol                = udp

        wait                    = yes

        user                    = root

        server                  = /usr/sbin/in.tftpd

        server_args             = -s /var/lib/tftpboot

        disable                 = no

        per_source              = 11

        cps                     = 100 2

        flags                   = IPv4

}


四,所需相关文件

initrd.img:镜像文件

vmlinuz:内核文件

pxelinux.0:pxe网络引导文件

isolinux.cfg:自动安装过程中的信息,需要改名为default

1,拷贝相关文件

mount /dev/cdrom /mnt

cp -rf /mnt/* /var/www/html/

mkdir /var/lib/tftpboot/pxelinux.cfg

cp /var/www/html/isolinux/isolinux.cfg /var/lib/tftpboot/pxelinux.cfg/default

cp /var/www/html/images/pxeboot/initrd.img /var/lib/tftpboot

cp /var/www/html/images/pxeboot/vmlinuz /var/lib/tftpboot/


2,修改default

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

default ks

prompt 1

timeout 30

display boot.msg

menu background splash.jpg

menu title Welcome to CentOS 6.5!

menu color border 0 #ffffffff #00000000

menu color sel 7 #ffffffff #ff000000

menu color title 0 #ffffffff #00000000

menu color tabmsg 0 #ffffffff #00000000

menu color unsel 0 #ffffffff #00000000

menu color hotsel 0 #ff000000 #ffffffff

menu color hotkey 7 #ffffffff #ff000000

menu color scrollbar 0 #ffffffff #00000000


label ks

  kernel vmlinuz biosdevname=0

  append initrd=initrd.img noipv6 ks=http://192.168.222.129/ks.cfg


label linux

  menu label ^Install or upgrade an existing system

  menu default

  kernel vmlinuz

  append initrd=initrd.img

label vesa

  menu label Install system with ^basic video driver

  kernel vmlinuz

  append initrd=initrd.img xdriver=vesa nomodeset

label rescue

  menu label ^Rescue installed system

  kernel vmlinuz

  append initrd=initrd.img rescue

label local

  menu label Boot from ^local drive

  localboot 0xffff

label memtest86

  menu label ^Memory test

  kernel memtest

  append -


3,修改ks.cfg

vim /var/www/html/ks.cfg

# Kickstart file automatically generated by anaconda.

install

text

url --url=http://192.168.222.129/

lang en_US.UTF-8

keyboard us

network --device eth0 --bootproto dhcp

rootpw centos

#rootpw  --iscrypted $1$mF86/UHC$WvcIcX2t6crBz2onWxyac.    #iscrypted表示密码为加密字串。

    openssl passwd -1 -salt cobbler cobbler    #salt指定字符串,-1基于md5加密。

    $1$cobbler$M6SE55xZodWc9.vAKLJs6.

    openssl passwd -1  cobbler             

    $1$mxZujab9$FaOuK5KkZYVPdsOs/8mII/

firewall --disabled

authconfig --enableshadow --enablemd5

selinux --disabled

timezone --utc Asia/Shanghai

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

zerombr yes    #yes是它的唯一参数,任何磁盘上的无效分区表都将被初始化。

clearpart --all --initlabel

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

part / --fstype ext3 --size=10000 --ondisk=sda  

part swap --size=1024 --ondisk=sda  

#part swap --grow --size=1024 --ondisk=sda 

%packages --nobase

@base

@core

vim

wget

%post --interpreter=/bin/bash  

%end

reboot


五,启动测试

/etc/init.d/xinetd start

/etc/init.d/dhcpd start

/etc/init.d/httpd start

你可能感兴趣的:(pxe,kickstart,ks.cfg,iscrypted)