在一个局域网环境中,往往需要部署操作系统,单个部署对于较大的网络环境不太可能,这时就需要批量部署一个操作系统即能大大节省时间又能保证局域网内的客户机操作系统一致性,方便网管员们对其做设置
测试环境:RHEL5.5
实验准备
1 关闭iptables和selinux
如何关闭呢 在命令行中输入
iptables �CF 清空防火墙规则
然后输入 service iptables save 保存防火墙
然后 vim /etc/selinux/config 中修改SELINUX=disable 禁用selinux 默认为强制开启
保存退出后要重启机器才可以进行下一步动作
2 配置IP地址
vim /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
BOOTPROTO=static //要修改的
IPADDR=192.168.1.1 要修改的
NETMASK=255.255.255.0
ONBOOT=yes
保存退出后再重新启动网络服务
service network restart
3 配置yum源
首先挂载光盘
mount /dev/cdrom /mnt
然后新建一个yum源
vim /etc/yum.repos.d/server.repo
[server]
name=server
baseurl=file:///mnt/Server
gpgcheck=0
wq保存退出
然后更新一下yum源
yum update
做完了前期的准备工作后就要开始安装一系列软件
一、安装vsftp服务
执行 yum �Cy install vsftpd*
chkconfig vsftpd on
service vsftpd restart
二、复制PXE启动时需要的文件
1 复制必要文件
cp /usr/lib/syslinux/pxelinux.0 /tftpboot/
mkdir /tftpboot/pxelinux.cfg
cp /mnt/isolinux/isolinux.cfg /tftpboot/pxelinux.cfg/default
cp /mnt/images/pxeboot/initrd.img /tftpboot/
cp /mnt/images/pxeboot/vmlinuz /tftpboot/
2 修改/tftpboot/pxelinux.cfg/default文件
chmod u+w /tftpboot/pxelinux.cfg/default
vim /tftpboot/pxelinux.cfg/default
default linux
prompt 1
timeout 600
display boot.msg
F1 boot.msg
F2 options.msg
F3 general.msg
F4 param.msg
F5 rescue.msg
label linux
kernel vmlinuz
append initrd=initrd.img ks=ftp://192.168.1.1/ks.cfg
以下无改动 遂省略
三、安装DHCP服务
yum �Cy install dhcp*
拷贝主配文件模板
cp /usr/share/doc/dhcp-3.0.5/dhcpd.conf.sample /etc/dhcpd.conf
修改主配文件
vim /etc/dhcpd.conf
ddns-update-style interim;
ignore client-updates;
subnet 192.168.1.0 netmask 255.255.255.0 {
# --- default gateway
option routers 192.168.1.1;
option subnet-mask 255.255.255.0;
filename "pxelinux.0";
next-server 192.168.1.1;
# option nis-domain "domain.org";
# option domain-name "domain.org";
option domain-name-servers 192.168.1.1;
option time-offset -18000; # Eastern Standard Time
# option netbios-node-type 2;
range dynamic-bootp 192.168.1.100 192.168.1.200;
default-lease-time 21600;
后面不做改动 保存退出然后重新启动服务
srvice dhcpd restart
四、安装配置kickstart
1 安装kickstart包
yum �Cy install system-config-kickstart.noarch
2 生成ks.cfg配置文件
在终端中运行system-config-kickstart命令
在基本配置里选择语言和输入密码
在安装选项里选择FTP服务器的IP地址和目录
在分区信息里调整分区表信息
网络配置,点“add network device”――“ok”
单击file 选择保存文件
修改新生成的ks.cfg文件
vim ks.cfg
在# Partition clearing information一行后
clearpart --none
key �Cskip 不输入序列号
最后输入从/root/anaconda-ks.cfg里复制的部分内容
%packages
@admin-tools
@base
@chinese-support
@core
@development-libs
@development-tools
@dialup
@editors
@gnome-desktop
@gnome-software-development
@games
@graphical-internet
@graphics
@java
@legacy-software-support
@office
@printing
@sound-and-video
@text-internet
@x-software-development
@base-x
kexec-tools
fipscheck
device-mapper-multipath
sgpio
python-dmidecode
imake
emacs
libsane-hpaio
mesa-libGLU-devel
xorg-x11-utils
xorg-x11-server-Xnest
xorg-x11-server-Xvfb
保存退出
将配置文件复制到制定位置
我们在/tftpboot/pxelinux.cfg/default文件中曾设置ks=ftp://192.168.1.8/ks.cfg
将文件复制到该位置
cp ks.cfg /var/ftp/
重新加载光盘镜像到FTP目录下
umount /dev/cdrom
mount /dev/cdrom /var/ftp/pub/
五 开启服务
service iptables stop
setenforce 0
chkconfig tftp on
chkconfig dhcpd on
chkconfig vsftpd on
service xinetd restart TFTP属于xinetd的子服务
service dhcpd restart
service vsftpd restart
六 测试客户端
这时用虚拟机的同志们就可以新建一台未加任何操作系统的主机开机就可以网络安装操作系统了
如果物理机需要在BIOS里设置网络启动然后开机就可以了