首页 > 代码库 > centos6.4 http dhcp nfs pxe kickstart 自动化安装系统

centos6.4 http dhcp nfs pxe kickstart 自动化安装系统

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

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

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

# 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 启动客户端

centos6.4 http dhcp nfs pxe kickstart 自动化安装系统