- 论坛徽章:
- 0
|
1、安装原理
客户端PXE网卡启动--DHCP服务器--获得IP--从TFTP目录上下载pxelinux.0、--根据配置文件指定的vmlinuz、initrd--启动系统内核--通过内核指定地点去下载ks.cfg文件--跟据ks.cfg去(HTTP、FTP、NFS)服务器下载RPM包并安装系统----完成安装。
安装dhcp服务器
rpm –qa |grep dhcp //看看有没有安装dhcp的服务器短
vim /etc/dhcpd.conf //配置dhcp服务器,关键的一步,要是pxe能启动
##############################################################################
option space PXE;
option PXE.mtftp-ip code 1 = ip-address;
option PXE.mtftp-cport code 2 = unsigned integer 16;
option PXE.mtftp-sport code 3 = unsigned integer 16;
option PXE.mtftp-tmout code 4 = unsigned integer 8;
option PXE.mtftp-delay code 5 = unsigned integer 8;
option PXE.discovery-control code 6 = unsigned integer 8;
option PXE.discovery-mcast-addr code 7 = ip-address;
class "pxeclients" {
match if substring (option vendor-class-identifier, 0, 9) = "PXEClient";
option vendor-class-identifier "PXEClient";
vendor-option-space PXE;
option PXE.mtftp-ip 0.0.0.0;
filename "pxelinux.0";
next-server 192.168.2.1;
}
ddns-update-style interim;
ignore client-updates;
default-lease-time 1200;
max-lease-time 9200;
option subnet-mask 255.255.255.0;
option broadcast-address 192.168.2.255;
subnet 192.168.2.0 netmask 255.255.255.0 {
range 192.168.2.200 192.168.2.252;
}
service dhcpd start
##############################################################################
2、安装tftp服务器
rpm –qa |grep tftp-server //是否安装tftp的server
cd /tftpboot
mkdir pxelinux.cfg
cp /usr/lib/syslinux/pxelinux.0 /tftpboot
把要安装的linux的两个内核文件initr.img和vmlinux复制到/tftpboot目录下,把linux光盘里isolinux/下有一个isolinux.cfg文件,把它考成/tftpboot/default,把isolinux/*.msg考到/tftpboot下
这里比较重要的就是/tftpboot/ pxelinux.cfg/default 文件
我这里给个我自己的范例
# vim /tftpboot/ pxelinux.cfg/default
# 默认启动的项目
default kickstart
prompt 1
timeout 3
display boot.msg
F1 boot.msg
F2 options.msg
F3 general.msg
F4 param.msg
F5 rescue.msg
F7 snake.msg
label linux
kernel vmlinuz
append initrd=initrd.img ramdisk_size=8192
label i586
kernel vmlzi586
append initrd=initi586.img ramdisk_size=8192
label text
kernel vmlinuz
append initrd=initrd.img text ramdisk_size=8192
label expert
kernel vmlinuz
append expert initrd=initrd.img ramdisk_size=8192
label ks
kernel vmlinuz
append ks initrd=initrd.img ramdisk_size=8192
label lowres
kernel vmlinuz
append initrd=initrd.img lowres ramdisk_size=8192
label local
localboot 1
label memtest86
kernel memtest
append -
# 启动的配置,要载入的内核,ks文件的位置和指定ksdevice
label kickstart
kernel vmlinuz
append ks=http://192.168.2.45/ks/ks.cfg initrd=initrd.img ksdevice=eth0 devfs=nomount ramdisk_size=9216 nofb
3、安装apache
这里就不说apache的安装了
配置ks.cfg文件
这是安装的定制文件,分区,软件包的定制等都在这个文件里制定了。
我这里给一个范例,是我centos4.4在vmware下的安装的,里面有很多相关的小细节,可以上网google。
# vim ks.cfg
install
# 用文本方式安装
text
# 用httpd方式安装,并制定安装文件的URL路径
url --url
http://192.168.3.11/centos
lang en_US.UTF-8
langsupport --default=en_US.UTF-8 zh_CN.UTF-8 en_US.UTF-8
keyboard us
xconfig --card "VMWare" --videoram 16384 --hsync 31.5-37.9 --vsync 50-70 --resolution 800x600 --depth 16
network --device eth0 --bootproto dhcp
rootpw --iscrypted $1$m/JBnmfO$wid2tYIJF.bVvDiIoHdDa1
firewall --disabled
selinux --disabled
authconfig --enableshadow --enablemd5
timezone Asia/Shanghai
# 分区定制
bootloader --location=mbr
clearpart --linux --drives=sda
part /boot --fstype ext3 --size=100 --ondisk=sda
part pv.2 --size=0 --grow --ondisk=sda
volgroup VolGroup00 --pesize=32768 pv.2
logvol swap --fstype swap --name=LogVol01 --vgname=VolGroup00 --size=256 --grow --maxsize=512
logvol / --fstype ext3 --name=LogVol00 --vgname=VolGroup00 --size=1024 --grow
# 安装后关机
poweroff
# 各种软件包的定制
%packages
@ editors
@ emacs
@ system-tools
@ x-software-development
@ dns-server
@ dialup
@ ftp-server
@ network-server
@ smb-server
@ chinese-support
@ web-server
@ development-tools
sysstat
grub
kernel-smp
iptraf
net-snmp-utils
kernel-smp-devel
kernel-devel
e2fsprogs
lvm2
dhcp
mrtg
rdesktop
# 安装后执行的shell命令
%post
chkconfig --list |grep 3:on |awk '{print $1}' |egrep -v 'sshd|network|syslog|crond' |xargs -i{} chkconfig --level 3 {} off
4、实际操作
可以在vmware上试验,建立一个虚拟机,开机后按F12用pxe启动。。。。。。。。。。。。。。。。。
本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u/8111/showart_454570.html |
|