kickstart+pxe 实现无人值守自动安装

实验环境
系统:rhel6.3_x64 (vmware 虚拟机)
IP 分配:
192.168.30.111         虚拟机(DHCP、TFTP、FTP 服务器)
192.168.30.1            网关地址
192.168.30.150 - 192.168.30.160         DHCP 地址池

不适合本地安装的情况分析如下:
1、无软驱和光驱�θ绻�计算机不带光驱或软驱�ピ蛭薹ㄍü�本地安装。  
2、非标准的软驱和光驱�λ淙槐始潜镜缒远蓟崤渲霉馇�。但是并不一定都是标准的IDE设备,有些通过USB接口或1394接口(例如Samsung的Q10)连接。在Linux安装时所引导的Linux内核一般都不会带这些接口的驱动,所以也无法通过本地安装。 
3、在一些场合如机房中有大量的计算机需要同时安装Linux。如果通过光驱的方式逐台安装�ゲ唤鲂�率低,也不利于维护
4、光驱或安装光盘故障。


安装配置DHCP、TFTP、FTP 服务,还有拷贝所需文件到/var/lib/tftpboot/linux-install下,以及创建linux-install 相关目录参考上一篇文章,这里不再重复。只记录不同的地方。

根据最小化安装系统生成的anaconda-ks.cfg 修改为mini-ks.cfg 也可以在桌面下使用相应工具生成ks文件
[root@server ~]# vim anaconda-ks.cfg 

# Kickstart file automatically generated by anaconda.

#version=DEVEL
install
url --url="ftp://192.168.30.111"
lang en_US.UTF-8
keyboard us
network --onboot no --device eth0 --bootproto dhcp --noipv6
rootpw  --iscrypted $6$Uyj68WtCsIw/3CdC$PZonyOWT1CgG79TnapG9h95dXEkgr2uFossTF1vtrMPPk5E6.EWgZrFW98sK046JDO.WSwHtZ1oK0vRMRhyDw/
firewall --service=ssh
authconfig --enableshadow --passalgo=sha512
selinux --enforcing
timezone --utc Asia/Shanghai
bootloader --location=mbr --driveorder=sda --append="crashkernel=auto rhgb quiet"
# The following is the partition information you requested
# Note that any partitions you deleted are not expressed
# here so unless you clear all partitions first, this is
# not guaranteed to work
clearpart --all --drives=sda

part /boot --fstype=ext4 --size=500
part pv.008002 --grow --size=1

volgroup vg_lnmp --pesize=4096 pv.008002
logvol / --fstype=ext4 --name=lv_root --vgname=vg_lnmp --grow --size=1024 --maxsize=51200
logvol swap --name=lv_swap --vgname=vg_lnmp --grow --size=1984 --maxsize=1984

%packages --nobase
@core
%end
========================================
将配置好的ks文件改为相应名字例如mini-ks.cfg 并放到ftp 目录下
[root@server ~]# mv anaconda-ks.cfg /var/ftp/mini-ks.cfg

修改default 配置文件,加入ks
[root@lnmp ~]# vim /var/lib/tftpboot/linux-install/pxelinux.cfg/default

label vesa
  menu label ^Auto Install RHEL6.3 system
  kernel rhel6.3_x64/vmlinuz
  append initrd=rhel6.3_x64/initrd.img xdriver=vesa nomodeset  ks=ftp://192.168.30.111/mini-ks.cfg

新建新的虚拟机,测试ks安装
注意新虚拟机的网络应该要跟服务器的网络在同个网络,例如我服务器虚拟机是host-only 模式的,那么新建虚拟机也要设置成host-only 才行。(即保证两个可以互相通信)

设置启动项为network boot from intel e1000

启动后便能看到新建的虚拟机vhost2 通过DHCP 获取到IP 192.168.30.150

选择自定义的第二个一键安装RHEL6.3

加载内核

如果正常的话,系统即会自动进入安装


如果有以下报错,那么需要检查以下几点
1、Ks 文件是否设置对了?
2、ftp 是否正常工作?
3、文件是否有相应的权限,可以在先测试能否从ftp 下载到ks 文件,如果不行,则需要修改文件权限
chmod 777 /var/ftp/*


Tips:
通过XEN 虚拟机装好dhcp、tftp、ftp 等,并配置好kickstart , 由于虚拟机就只生成一个文件,便于携带,可以放入U盘之类的可移动设备中。到了任何环境下,如果需要装机,只需要装好一台机,开个XEN 虚拟机,导入虚拟机文件,即可当服务器使用,实现自动安装。

你可能感兴趣的:(linux,pxe,kickstart)