嵌入式linux网络文件系统的挂载方法

Linux系统的开发过程中,在移植好u-bootLinux内核,并利用busybox制作好文件系统的各个目录及配置文件之后,做的第一件事就是配置系统的tftpnfs服务,打通虚拟机Linux系统与主机的network,实现挂载网路文件系统,挂载成功后就可以根据需要制作相应的根文件系统了。所谓的网络文件系统就是让嵌入式系统的板子烧写完内核后无需再烧写文件系统,而是在板子内核启动后直接挂载pclinux系统下设置的文件系统目录即可。

 

网络文件系统会陪伴开发人员从系统(包括内核、文件系统)的调试、应用程序的开发和调试的整个过程,直至产品的发布。

 

下面是挂载网络文件系统的方法和步骤:

一、          要确保Linux系统的网络畅通,能ping同主机和板卡:

1、              在克隆虚拟机时,默认的eth0会被占用(建议在刚刚copy虚拟并启动后选择“I moved it”),解决方法:

打开/etc/udev/rules.d/70-persistent-net.rules文件

#PCI device 0x1022:0x2000(vmxnet)

SUBSYSTM==”net”, ACTION==”add”, DRIVERS==”?*”, attr{address}==”00:0c:29:fe:88:e5”, ATTR{type}==”1”, KERNEL==”eth*”, NAME=”eth*”(保留最后一行)

全部删除,然后将留下的最后一行的”ethx”改成”eth0”,保存退出。

2、              设置网卡:

打开/etc/sysconfig/network-script/ifcfg-eth0文件

添加或修改

DEVICE=eth0

BOOTPROTO=static(none)

IPADDR=192.168.0.55  (自己定义IP)

NETMASK=192.168.0.254  (自己定义IP)

ONBOOT=yes  (关键点)

3、              重启虚拟机;

4、              重启网卡:

/etc/init.d/network  restart

选择右上角的小电脑图标,点击选eth0

 

二、          配置Linuxtftp服务器

1、  安装tftp的三个工具:

xinetd-2.3.14-18.fc9.i386.rpm

tftp-0.42-3.1.i386.rpm

tftp-server-0.42-3.1.i386.rpm

执行:

rpm  –iv  xinetd-2.3.14-18.fc9.i386.rpm

rpm  –iv  tftp-0.42-3.1.i386.rpm 

rpm  –iv  tftp-server-0.42-3.1.i386.rpm

2、  配置/etc/xinetd.d/tftp文件

(安装工具之前没有此文件)

Service tftp

{

  socket_type=dgram

  protocol –udp

  wait =yes

  user =root

server = /usr/sbin/in.tftpd

server_args  =  -s  /tftpboot  –c      /tftpboot文件下载存放目录;-c 允许上船

disable =no

per_source = 11

cps = 100 2

flags =IPv4

}

 

3、  关闭防火墙:

/etc/init.d/iptables  stop

4、  建立tftp工作目录:

到根目录下执行 mkdir  tftpboot

                                 Chmod  777  tftpboot

5、  测试一下:

执行tftp

 

三、          配置nfs服务器

一般情况下PC Linux系统都是默认安装的

1、  修改/etc/exports文件

/source/nfsroot  *(rw, sync, no_root_squash)

 

2、  使修改了的exports生效:

Exportfs  –rv

3、  建立nfs挂载目录:

根目录下执行

mkdir  source

mkdir  nfsroot

4、  开启nfs服务

/etc/init.d/nfs  start

5、  测试:

mount  –t  nfs  192.168.0.55:/source/nfsroot  /mnt

 

四、          板卡内核也要同时支持nfs服务,重新编译内核

   make menuconfig

File system--->

 [*]Network File system--->

     <*>NFS client support

      <*>Root file system on NFS

 

五、          设定u-boot挂载网络文件系统:

Setnev bootargs root=/dev/nfs nfsroot=192.168.0.55:/source/nfsroot ip=192.168.0.100 noinitrd console=ttyS0,115200

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值