1 环境准备

centos 6.4 x86_64 安装图形界面 以运行sysconfig-config-kickstart

yum install vim ntp man

yum groupinstall “development tools” “server platform development” “desktop platform development”

关闭 iptables selinux

2 挂载镜像文件

mkdir /media/cdrom

mount /dev/cdrom /media/cdrom

3安装所需要的软件包

yum install dhcp xinetd tftp-server nfs* httpd syslinux system-config-kickstart

4 配置dhcp服务器

cp /usr/share/doc/dhcp-4.1.1/dhcpd.conf.sample /etc/dhcp/dhcpd.conf

vim /etc/dhcp/dhcpd.conf

# option definitions common to all supported networks...    
option domain-name "example.org";    
option domain-name-servers 192.168.200.2;

default-lease-time 600;    
max-lease-time 7200;

# Use this to enble / disable dynamic dns updates globally.    
ddns-update-style none;

# If this DHCP server is the official DHCP server for the local    
# network, the authoritative directive should be uncommented.    
#authoritative;

# Use this to send dhcp log messages to a different log file (you also    
# have to hack syslog.conf to complete the redirection).    
log-facility local7;

next-server 192.168.200.131;    
filename="pxelinux.0";    
#No service will be given on this subnet, but declaring it helps the    
# DHCP server to understand the network topology.

subnet 192.168.200.0 netmask 255.255.255.0 {    
range 192.168.200.10 192.168.200.20;    
option routers 192.168.200.2;    
}

5 复制安装系统需要的核心文件及光盘镜像

cd /media/cdrom/isolinux/

cp boot.msg splash.jpg vesamenu.c32 /var/lib/tftpboot/

cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/

cd /media/cdrom/p_w_picpaths/pxeboot

cp vmlinuz initrd.img /var/lib/tftpboot/

mkdir /var/lib/tftpboot/pxelinux.cfg/

cp /media/cdrom/isolinux/isolinux.cfg /var/lib/tftpboot/pxelinux.cfg/default

6 编辑default文件

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

label linux    
menu label ^Install or upgrade an existing system    
menu default    
kernel vmlinuz    
append initrd=initrd.img ramdisk_size=8192 ks=http://192.168.200.131/ks.cfg

7 配置NFS 服务器

Vim /etc/exports

/media/cdrom 192.168.200.0/255.255.255.0 (ro,sync)

8 启动httpd nfs xinetd tftp 服务

service httpd start

service dhcpd start

service rpcbind start

service nfs start

service xinetd start

chkconfig httpd on

chkconfig dchpd on

chkconfig rpcbind on

chkconfig nfs on

chkconfig tftp on

9 在图形界面运行system-config-kickstart (过程略)

创建ks.cfg文件 移动到 /var/www/html

#platform=x86, AMD64, or Intel EM64T    
#version=DEVEL    
# Firewall configuration    
firewall --disabled    
# Install OS instead of upgrade    
install    
# Use NFS installation media    
nfs --server=192.168.200.131 --dir=/media/cdrom    
# Root password    
rootpw --iscrypted $1$fn7ZGte9$1am0UPE8lztKAmdZAGLMY1    
# System authorization information    
auth --useshadow --passalgo=sha512    
# 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 Asia/Shanghai    
# Network information    
network --bootproto=dhcp --device=eth0 --onboot=on    
# System bootloader configuration    
bootloader --location=mbr    
# Clear the Master Boot Record    
zerombr    
# Partition clearing information    
clearpart --all  --initlabel

%packages    
@desktop-platform-devel    
@development    
@server-platform-devel

(如不选安装包,安装过程会提示要求选择安装包)

clearpart --all  --initlabel  此命令可避免 手工清除磁盘数据

# Disk partitioning information    
part /boot --fstype="ext4" --size=500    
part / --fstype="ext4" --size=10000    
part swap --fstype="swap" --size=2000    
part /data --fstype="ext4" --grow --maxsize=1 --size=1

磁盘分区如要使用LVM 可手工修改配置文件

part /boot --fstype="ext4" --size=500    
part swap --fstype="swap" --size=1000    
part pv.01 --size=1 --grow    
volgroup vg_test --pesize=8192 pv.01 (要加上—pesize 参数 指定pe大小)    
logvol / --vgname=vg_test --size=8192 --name=lv_root    
logvol /data --vgname=vg_test --size=1000 --name=lv_data

10 启动客户端