批量安装LINUX系统 (考试30分钟)
1.使用tftp,dhcp,配合PXE搭建批量安装linux系统服务端,
2.使用如上搭建的服务进行全自动安装Linux系统
准备工作,先安装dhcp tftp syslinux 服务
使用这个命令yum install tftp-server dhcp syslinux -y安装tftpserver和dhcpserver及syslinux
安装完后先配置dhcp服务,pxe服务器地址我设置为192.168.1.109
vi /etc/dhcp/dhcpd.conf进这里配置文件
ddns-update-style interim;
ignore client-updates;
allow booting;
allow bootp;
subnet 192.168.1.0 netmask 255.255.255.0 { //配置子网
range 192.168.1.120 192.168.11.130; //设定地址池
option routers 192.168.1.1; //设置客户端默认网关
option subnet-mask 255.255.255.0; //设定子网掩码
next-server 192.168.1.109; //指定tftp服务器地址
filename "pxelinux.0"; //指明PXE文件位置
配置完后运行service dhcpd start开启服务
配置http,先把centos6.5的镜像挂载到服务器,这里我用的是u盘,用fdisk -l可以看到是sdb4
把U盘挂载,再把系统复制到httpd的默认目录
mkdir /mnt/iso1
mount /dev/sdb4 /mnt/iso1 //挂载CentOS 6镜像到/mnt/iso1目录下
cp -rp /mnt/iso1 /var/www/html //将CentOS 6安装文件拷贝到httpd的默认目录
完成后运行命令开启服务service httpd restart
设定TFTP
vi /etc/xinetd.d/tftp
将下面两项值改成这样:
diable = no
server_args = -s /tftpboot
创建tftp服务目录,拷贝相关启动文件
mkdir /tftpboot
cp /usr/share/syslinux/pxelinux.0 /tftpboot/
cp /usr/share/syslinux/chain.c32 /tftpboot/
cp /usr/share/syslinux/mboot.c32 /tftpboot/
cp /usr/share/syslinux/memdisk /tftpboot/
cp /usr/share/syslinux/menu.c32 /tftpboot/
cp /var/www/html/iso1/images/pxeboot/vmlinuz /tftpboot/
cp /var/www/html/iso1/images/pxeboot/initrd.img /tftpboot/
拷贝完成后运行service xinetd restart启动服务
最后需要配置ks6.cfg文件,这个文件决定了硬盘如何分区、密码设置、服务、安装脚本等等重要信息
根目录下就有这个文件,我们直接复制过来对他进行修改就可以了
先进去
cd /var/www/html
mkdir ksdir
在里面创建个ksdir文件夹
把文件复制过来,并设置成可读取状态
cp /anaconda-ks.cfg ksdir/ks6.cfg
chmod +r ksdir/ks6.cfg
vi ksdir/ks6.cfg修改文件
#version=DEVEL
install //设定是进行安装操作
text //基于字符界面安装
lang en_US.UTF-8
keyboard us
network --onboot yes --device eth0 --bootproto dhcp --noipv6 //配置网卡
rootpw 123456 //设定root密码
firewall --service=ssh //打开防火墙,并开启ssh端口
url --url=http://192.168.1.109/iso1 //设定安装镜像源
selinux --disabled //关闭selinux服务
timezone Asia/Shanghai
bootloader --location=mbr --driveorder=sda --append="crashkernel=auto rhgb quiet"
zerombr //清楚mbr
clearpart --all //清除所有分区
reboot //安装完成后重启
part /boot --fstype=ext4 --size=400 //设定boot分区大小
part swap --size=4000 //设定交换分区大小
part / --fstype=ext4 --grow --size=200 //设定/分区为剩下所有空间
%packages --nobase //设定需要安装的组件,这里最小化安装,仅仅安装了核心
@core
%end
%pre //预安装脚本
%end
%post //后安装脚本
%end
完成后保存退出
设定PXE引导配置文件
mkdir /tftpboot/pxelinux.cfg
vi /tftpboot/pxelinux.cfg/default
default menu.c32
prompt 0
timeout 600 //设定等待时间,单位0.1S
menu title PXE MENU
label LinuxOnHTTP
menu label Install CentOS over http automatically //设定标签显示内容
kernel vmlinuz
append initrd=initrd.img ks=http://192.168.1.109/ksdir/ks6.cfg //设定配置
service httpd restart
完成后测试http能否打开ks6.cfg这个文件
可以打开,就完成了,现在可以利用pxe直接安装了
最终效果
完成
原文地址:http://blog.51cto.com/13733040/2306818