用PXE安装NFS

配置DHCP 服务器

原本以为,给开发板配个静态的IP,就不需要DHCP服务了。可是开发板用PXE启动后,第一件事就是向服务器发送DHCP请求。所以DHCP必须要配。

配置文件都写好了。启动DHCP服务就是出错,还报告什么eth2的错误。很是看不懂。先想到的是不是服务没有安装。上网找RPM包。可是在一想,没安装的话,这些目录文件就不会存在啊,而且这种东西,一般都是会安装的。

后来才知道,当你的机器上有多块网卡时,你必须指定对那一块网卡上收到的请求提供DHCP服务。

vi /etc/sysconfig/dhcpd

DHCPDARGS=eth1 (我的是网卡 eth1)

这样重启DHCP服务就成功了。

还有DHCP服务器端的IP配置要和分给客户端的IP要是在一个网段内。

DHCP 同样也能给机器分配固定的IP,

vi /etc/dhcpd.conf 配置文件(具体写法,可以参加模板或者其他网页)

在里面写上开发板的 MAC Address,然后写上 fix_address 来指定要给他分配固定的IP.

 

 

建立 PXE配置文件

1. 拷贝 pxelinux.0文件到 /tftpboot目录下

2. 把Linux内核文件拷贝到 /tftpboot目录下

3. 在 /tftpboot目录下,建一个 pxelinux.cfg 目录

然后在 pxelinux.cfg目录下创建配置文件。

配置文件的命名,是根据开发板的ip 而定的,是开发板ip 的16进制。

比如DHCP 分配给开发板的 ip是 10.100.0.251

那么配置文件的文件名就是 0A6400FB,其中 0A代表10, 64代表100, 00 代表0, FB代表251。

如果IP地址是动态分配的,那么最后两位不知道,文件名可以取为 0A6400

关于这个命名规则,可以参考下面的链接。

然后就是这个文件里面的内容了,给我的感觉是跟grub中menu.lst文件的写法差不多。

 

(下面部分不完整,只能参考,不能照搬)

prompt 1
default WR_X86
timeout 50

label WR_X86
        kernel bzImage root=/dev/nfs NFSROOT=10.100.0.252:/targetfs/WR_X86_FS

 

 

http://pxe.dev.aboveaverageurl.com/index.php/PXE_Booting

http://en.wikipedia.org/wiki/Preboot_Execution_Environment

 

 

上面部分中,kernel 和 root 的写法,跟平时 grub中的写法都是一样的。其中 NFSROOT是表示文件系统放在哪里。我目前就是放在服务器上,10.100.0.252是服务器的IP, /targetfs/WR_X86_FS是在这个服务器上的具体位置。不知是否还能放在不是服务器的其他电脑上?从指定IP这点来看,也许可以。

 

按照上述步骤配置完成后,在开发板上用PXE启动,先获取IP地址,然后启动内核,最后装载上文件系统。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值