USB NFS server

ENV:

  kernel 要支持NFS,IPV6等,busybox的mount要支持nfs.

  HW:  

    Master: Ubuntu 7.10, Slave: imx31 开发板, Others:USB cable.

  SW:

    linux-2.6.22(开发板)

实现过程:

  1. insmod g_ether.ko

  2.用USB 线把开发板和电脑连接起来

  3.在电脑端,ifconfig 指令可以看到有格usb0的设备,运行指令:sudo ifconfig usb0 192.168.22.5 up

  4.在开发板端,运行指令:ifconfig usb0 up, 再ifconfig usb0 192.168.22.3

  5.此时在开发板端可以ping 192.168.22.5.

此时USB network已经调通,以下是建立nfs server的过程。

  一.在电脑端

  1. sudo mkdir -p /exports/root
  2. sudo apt-get install nfs-kernel-server
  3. sudo echo "/exports/root
    *(rw,sync,no_root_squash,insecure,no_subtree_check)" >> /etc/exports
  4. sudo echo "ALL: ALL" >> /etc/hosts.allow
  5. sudo /etc/init.d/nfs-kernel-server restart

  二.在开发板端

  1.mount -o nolock -t nfs 192.168.22.5:/exports/root /mnt/base-us

此时NFS已经OK

  補充說明:

常用NFS mount选项介绍

常用NFS mount选项介绍
解决方法:通过NFS挂接远程主机的文件系统时,使用一些不同的选现可以使得mount比较简单易用。这些选项可以在mount命令中使用,也可以在/etc/fstab和autofs中设定。

以下是NFS mount常用的一些选现:

hard or soft -- 指定当程序无法通过NFS连接使用服务器输出的文件系统上的文件时,是否需要等待服务器重新在线。如果是soft情况,它将报错。如果指定hard,用户无法不能终止程序等待NFS通讯恢复,除非同时指定了intr选项。如果指定了soft,用户可以设置附加选项timeo=<value>,<value>指定了错误报告之前的秒数。
intr -- 当服务器宕机或者无法到达时,允许中断NFS请求。
nfsvers=2或者nfsvers=3 -- 指定使用那个版本的NFS协议。
nolock -- 禁用文件锁。这个设置在连接到一个旧版本的NFS服务器时偶尔会用到。
noexec -- 防止执行被挂接的系统上的二进制文件。这在系统通过NFS挂接一个包含有不兼容的二进制文件的非linux系统时是很有用的。
nosuid -- 禁用"设置用户标志位"(set-user-identifier)或者"设置组标志位"(set-group-identifier)。这样防止远程用户运行setuid程序获得更高权限。
rsize=8192和wsize=8192 -- 通过设定大的同时传输的数据块大小(bytes),以提高NFS读写的速度。改变这些值时要当心,一些旧的linux内核和网卡在大的块大小不能正常工作。
tcp -- 指定NFS使用TCP协议mount,替换UDP。

mount的man page列出了许多选项,包括挂接非NFS文件系统的选项。
posted @ 2008-11-05 20:01  旅人  阅读(597)  评论(0编辑  收藏  举报