NFS挂载文件系统,常遇见问题

一.    NFS服务挂接根文件系统

1)什么是根文件系统?

     windowsC盘类似,Linux一样要在一个分区上存放系统启动所必需的文件,比如内核映象文件(在嵌入式系统中,内核一般单独存放在一个分区中)、内核启动后运行的第一个程序(init)、给用户提供操作界面的shell程序、应用程序所依赖的库等。这些系统启动的必需、基本的文件合称根文件系统,他们存放在一个分区中。Linux系统启动后首先挂接这个分区,称为挂接根文件系统。

2)利用NFS挂接根文件系统来启动系统的必需准备的几个条件:

     a.按照U-Boot的使用说明烧写新内核

     b.Linux主机上启动NFS服务 /etc/init.d/nfs  start

     c.U-Boot控制界面修改命令行参数

     set bootargs noinitrd root=/dev/nfs console=ttySAC0 nfsroot=10.0.3.244:/long_nfs/myfs-1 ip=10.0.3.245:10.0.3.244:10.0.3.1:255.0.0.0::eth0:off

     root=/dev/nfs  这个只是告诉内核用的是NFS设备

     console=ttySAC0 这个是控制台

     nfsroot=10.0.3.244:/long_nfs/myfs-1 这个是根文件系统在主机上的路径和主机的IP

     ip=10.0.3.245:10.0.3.244:10.0.3.1:255.0.0.0::eth0:off

ip=::::::这个格式可以去内核文档:/Documentation/nfsroot.txt中查看

在虚拟机中修改网关:route add default gw 10.0.3.1,一般ip10.0.3.244,默认的网关就是10.0.3.1

d.直接启动系统就可以了

二.NFS服务挂接共享文件

1)系统启动以后在控制台挂接共享文件,以下是具体步骤和可能出的问题

   a. 确保Linux主机上已经启动了NFS服务

   b. 确保主机和目标板用网线连接了

c.确保主机和目标板在同一网段,例如这样,主机的ip:10.0.3.244,目标板的ip:10.0.3.245,他们的netmask:255.0.0.0

d.挂接命令:

mount -o nolock -t nfs 10.0.3.244:/long_nfs /tmp/

mount -o nolock 10.0.3.244:/long_nfs /tmp/

这两个都可以。

2)可能出现的错误类型

a. 错误类型:

rpcbind: server localhost not responding, timed out

RPC: failed to contact local rpcbind server (errno 5).

lockd_up: makesock failed, error=-5

rpcbind: server localhost not responding, timed out

RPC: failed to contact local rpcbind server (errno 5).

mount: mounting 10.0.3.244:/long_nfs on /tmp/ failed: Input/output error

这个问题是因为挂接命令不对,要加上参数-o nolock就可以了

b. 错误类型:

cs89x0: Tx buffer not free!

NETDEV WATCHDOG: eth0: transmit timed out

eth0: transmit timed out, IRQ conflict ??

eth0: transmit underrun

这个问题是因为主机和目标板没有用网线连接

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值