pkg_add -r isc-dhcp31-server
创建 /usr/local/etc/dhcpd.conf 文件
allow booting;
allow bootp;
default-lease-time 600;
max-lease-time 7200;
authoritative;
ddns-update-style ad-hoc;
log-facility local7;
option domain-name “home.lan”;
option domain-name-servers 192.168.1.1;
server-name “192.168.1.1″;
server-identifier 192.168.1.1;
next-server 192.168.1.1;
option routers 192.168.1.1;
option root-path “192.168.1.1:/usr/tftpboot”;
filename “pxelinux.0″;
subnet 192.168.1.0 netmask 255.255.255.0 {
range 192.168.1.10 192.168.1.11;
}
在 /etc/rc.conf 中加入以下行
dhcpd_enable=”YES”
启动 DHCP
/usr/local/etc/rc.d/isc-dhcpd start
三、架设 PXE Boot 服务
1) 安装 Freebsd
这个就不必多说了,可以参考 Freebsd 使用手册-安装 Freebsd
2 ) 设置 PXE Boot Server
编辑 /etc/inetd.conf ,把下面一行的 # 去掉 并把/tftpboot 改为 /usr/tftpboot
#tftp dgram udp wait root /usr/libexec/tftpd tftpd -l -s /usr/tftpboot
编辑 /etc/rc.conf ,加入下面一行
inetd_enable=”YES”
在 Shell 下输入以下命令,用来启动 inetd 及 tftp 进程。
/etc/rc.d/inetd start
在 /usr/ 目录下创建一个 tftpboot 文件夹
mkdir /usr/tftpboot
在 / 根目录下创建一个 tftpboot 的目录链接
ln -s /usr/tftpboot /tftpboot
到 下载 syslinux,【LINUX公社 】这个文件中包含了用于 pxe 启动的 pxelinux.0 及 vesamenu.c32 文件。
fetch
解压缩
tar zxvf syslinux-3.85.tar.gz
复制 pxelinux.0 到 tftpboot 目录中
cp syslinux-3.85/core/pxelinux.0 /tftpboot/
复制 vesamenu.c32 到 tftpboot 目录中
cp syslinux-3.85/com32/menu/vesamenu.c32
回到 /tftpboot 目录,创建 pxelinux.cfg 目录
mkdir /tftpboot/pxelinux.cfg
创建 default 文件,代码如下
DEFAULT vesamenu.c32
MENU TITLE === PXE Boot Server ===
menu color title 1;36;44 #ffffffff #00000000 std
LABEL fog.local
localboot 0
MENU DEFAULT
MENU LABEL Boot from hard disk
TEXT HELP
Boot from the local hard drive.
If you are unsure, select this option.
ENDTEXT
LABEL fog.memtest
kernel fog/memtest/memtest
MENU LABEL Run Memtest86+
TEXT HELP
Run Memtest86+ on the client computer.
ENDTEXT
LABEL fog.CentOS
kernel centos/vmlinuz
append initrd=centos/initrd.img ip=dhcp dns=8.8.8.8 mode=quickimage keymap=
MENU LABEL Install CentOS 5.4
TEXT HELP
This mode will allow you install Centos 5.4!
ENDTEXT
LABEL fog.freebsd
kernel boot/freebsd.0
MENU LABEL Install Freebsd 8
TEXT HELP
This mode will allow you install Freebsd 8!
ENDTEXT
LABEL fog.clonezilla
kernel clonezilla/vmlinuz
append initrd=clonezilla/initrd.img boot=live union=aufs noswap noprompt vga=788 netboot=nfs nfsroot=192.168.1.1:/usr/data/clonezilla ocs_lang=”zh_CN.UTF-8″ ocs_live_keymap=”NONE”
MENU LABEL Run Clonezilla
TEXT HELP
This mode will allow you run Clonezilla to Backup/Restore OS!
ENDTEXT
PROMPT 0
TIMEOUT 30
default 里面的设置以后你也可以自已添加其它项目,这里我已包含了 Clonezilla 的启动项。