kickstart+dhcp安装系统
发布时间:2009-05-25 10:14:48来源:红联作者:li-0578
对于一个初学LINUX的人来说,安装一个LINUX操作系统很简单,只要把光盘放进去,下一步,下一步的就可以了,但是这样的操作能不能再显你更加的专业呢?
要不要来点专业的----kickstart+dhcp这种方式的安装系统!
在一个局域网中找一台服务器(ip为192.168.0.240),在服务器上安装以下服务:
Dhcp tftp nfs
1.首先安装一个DHCP服务,是为了客户端在刚刚启动时通过网络引导。
只需要在dhcp.conf配置文件中增加以下内容:
group{
filename “/pxelinux.0”
next-server 192.168.0.240
}
以上是增加的内容
2.安装tftp服务,安装好之后会在/下增加/tftpboot目录
配制PEXlinux。要远程启动机器,就必须要有PXElinux这个由syslinux、isolinux派生出来的,支持PXE的bootloader,它可以实现远程通过PEX启动一台机器。把/usr/lib/syslinux/pxelinux.0考到/tftpboot目录下,把安装光盘上/image/pxeboot/initr.img和vmlinux也考到/tftpboot目录下。在/tftpboot建一个pxelinux.cfg目录,用于放syslinux的配制文件。Sysconfig的配制文件有现成的可用,在安装光盘isolinux/下有一个isolinux.cfg文件,把它考成/tftpboot/default,把isolinux/*.msg考到/tftpboot下(RedHat的安装光盘的Loader就是个isolinux,呵呵)。对default(也就是isolinux.cfg)作一下修改,下面是我的default文件:
default local
prompt 1
timeout 30
display boot.msg
F1 boot.msg
F2 options.msg
F3 general.msg
F4 param.msg
F5 rescue.msg
F7 snake.msg
label local
localboot
label linux
kernel vmlinuz
append initrd=initrd.img devfs=nomount ramdisk_size=9216
label text
kernel vmlinuz
append initrd=initrd.img text devfs=nomount ramdisk_size=9216
label expert
kernel vmlinuz
append expert initrd=initrd.img devfs=nomount ramdisk_size=9216
label ks
kernel vmlinuz
append ks initrd=initrd.img devfs=nomount ramdisk_size=9216
label nofb
kernel vmlinuz
append initrd=initrd.img devfs=nomount nofb ramdisk_size=9216
label lowres
kernel vmlinuz
append initrd=initrd.img lowres devfs=nomount ramdisk_size=9216
label autoinstall #在系统等待时输入autoinstall就是执行以下的操作了,也可以把最上面的default local改成default autoinstall 这样一回车就执行这个操作了
kernel vmlinuz
append ks=http://192.168.0.240/autoinstall/ks.cfg initrd=initrd.img devfs=nomount ramdisk_size=9216 nofb #这行指出了KS文件存放的位置,这里是用http共享出来的,大家可以改成NFS等
ks文件的生成大家可以使用linux自带的生成工具
以上简单的说了一下思路
客户端与服务器先通过DHCP服务建立通信获得IP,再通过TFTP服务得到pxelinux.0这个文件,有了这个文件就可以启动一下简单的小系统,读取default.cfg文件,这个文件告诉了KS文件所在的位置,然后KS文件告诉客户端如何安装以及安装的文件在哪里。这样一步步的就完成了!