+ -
当前位置:首页 → 问答吧 → 請問關於pxe boot的架設

請問關於pxe boot的架設

时间:2006-08-04

来源:互联网

最近机房进了几部机器,有一些要做网路开机的测试,我在网路上查了一下,好像可以用DHCP的pxe boot,但是设定都不是写的很详细,我是FREEBSD的新手,对这方面不是很懂~不知道有没有人知道如何pxe boot,可以分享^^

作者: showp   发布时间: 2006-08-04

引用自: "showp"
最近机房进了几部机器,有一些要做网路开机的测试,我在网路上查了一下,好像可以用DHCP的pxe boot,但是设定都不是写的很详细,我是FREEBSD的新手,对这方面不是很懂~不知道有没有人知道如何pxe boot,可以分享^^


这几天刚好在玩这部份,大致的心得如下,你参考看看,或许你的环境得修改一下做法
* 改更dhcpd.conf,加入下列叙述后,重跑dhcpd,以启动PXE开机时可抓到开机影像档
 next-server TFTP_server_address;
 filename "pxelinux.0";

* 启动TFTP (安装的机器位址和 dhcpd.conf 里所指定的next-server需一致)
:#安装 /usr/ports/ftp/tftp-hpa
:#更改inetd.conf,或将 tftpd以alone的方式执行服务,以启动tftpd
:* 须注意tftp的安全性及 防火墙 的问题

* 抓下pxelinux工具
 http://syslinux.zytor.com/download.php
 主要是用到里面的pxelinux.0、memdisk和menu.c32,将这此档案放到tftp的根目录下

* 修改 tftp目录下的 pxelinux.cfg/default,范例如下
 DEFAULT menu.c32  '预设以menu.c32这个核心来启动,即出现选单
 PROMPT       0  '不要用prompt的方式,即启用选单
 ALLOWOPTIONS 0  '不要该使用者有选择权,例如更改启动参数或直接离开选单
 TIMEOUT   50  '选单的提示时间,50好像是指5秒
 
 MENU TITLE PXELinux Menu  '选单的标题
 
 LABEL freebsd54   '名称
    MENU LABEL BSD  '选单上的标题
    kernel memdisk  '用来启动影像档的核心,pxelinux提供
    append initrd=fbsd54.img c=812 h=255 s=63  '要载入的影像档及参数,此例为将bsd的bootonlyCD所做成的PXE影像档
 
 LABEL local
    MENU DEFAULT LOCAL  '  MENU DEFAULT 是预设选单指向
    LOCALBOOT 0   '  直接以硬碟开机
 
 LABEL dos
    MENU LABEL DOS
    kernel memdisk
    append initrd=dos.img  '  将磁片做成影像档后,直接放进来就可以用了,不用加参数,下面的也都是直接用磁片所做成的影像档
 
  LABEL ghost2003
    MENU LABEL ghost2003
    kernel memdisk
    append initrd=ghost2003.img


另外,你也可以用3COM出的一个boot image editor的软体去做,网路上打 pxe ghost 可以找到一堆,不过我玩的结果是 pxelinux 更方便(ps. pxelinux不是只用在linux,它只是一个送到client去的东东)

作者: koach   发布时间: 2006-08-04

感谢这位大大,待会马上著手试^^~成功了我也会把心得分享给大家^^

作者: showp   发布时间: 2006-08-07

请问大大,上面看到你有写到linux,不知道您写的方法是linux还是freebsd@@?还是都可以通用呢@@?
另外,不晓得大大有没有通讯软体,想要线上请教您^^

作者: showp   发布时间: 2006-08-12

引用自: "showp"
请问大大,上面看到你有写到linux,不知道您写的方法是linux还是freebsd@@?还是都可以通用呢@@?
另外,不晓得大大有没有通讯软体,想要线上请教您^^


我不是大大啦, 上面的东东放在bsd也是可以跑,因为client端只是接受它的资料,不管是什么系统传给它的

我的通讯资料喔.. 用私讯传给你好了..

作者: koach   发布时间: 2006-08-12

引用自: "koach"

 LABEL dos
    MENU LABEL DOS
    kernel memdisk
    append initrd=dos.img  '  将磁片做成影像档后,直接放进来就可以用了,不用加参数,下面的也都是直接用磁片所做成的影像档
 


我依照你的教学,已经架起pxe boot所需要的service,而且可以看到pxelinux选单,载入memdisk了,不过,没有办法让client开机,出现了以下讯息

程式码:

<以上略>
Loading boot... booting...

Disk I/O error
Replace the disk, and then press any key



我用过两种方法做img档
[方法1]
1. 用WinXP做开机片
2. 用floppy image将开机片做成img档
3. 将img档放到/tftpboot下面去

[方法2]
1. 用WinXP做开机片
2. 用dd if=/dev/fd0 of=/tmp/dos.img bs=1424K count=1做img
3. 将img档放到/tftpboot下面去

我怀疑是我的img档做得有问题
想请问一下,你的dos.img是怎么做的呢?谢谢。

作者: rext20   发布时间: 2006-10-11

印象中我有用了几种方法做image档,都没问题呀..

1. 直接 dd if=/dev/fd0c of=image.file
2. 用winimage做
3. 连磁片都不用,直接用virtual floppy (除非有特别需求,不然我最建议这种方法,简单又不用实体磁碟机、片)

不过我从没有用过XP去做开机片耶?! 只用过WIN98的(ms-dos)、GHOST(ibm-dos)去做过耶..

作者: koach   发布时间: 2006-10-11

谢谢囉,原来是Floppy image这套软体的问题,我用WinImage就可以了,原本用dd,可能是因为下了bs这个参数的关系,导致无法开机,直接用dd if=/dev/fd0 of=dos.img就可以了,感谢 ^_^

作者: rext20   发布时间: 2006-10-16

请问一下,有关於本机开机的指令
localboot 0
是否有办法指定partition吗?
因为我是双系统

作者: ru8tp6   发布时间: 2010-10-29