免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1413 | 回复: 0
打印 上一主题 下一主题

用kick+dhcp+tftp+httpd快速安装linux [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-01-01 23:48 |只看该作者 |倒序浏览

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
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP