Chinaunix首页 | 论坛 | 博客

分类: LINUX

2011-02-16 21:02:54

                       在虚拟机 ubuntu 上搭建 NFS 服务
                                                     ---- author:AnSon
 
工作环境: ubuntu-10.04(虚拟机7.13)
目标平台:龙芯3210开发板
开发包内核源码目录:/home/linux_3210
开发包内核版本:2.6.18.1
交叉编译工具:gcc-3.4.6

目的:在嵌入式的交叉编译环境中,建立NFS服务,是一种非常快捷有效的嵌入式的开发调试方式。
 
步骤如下:
 
一:首先要保证网络 目标板(SOC3210) 与虚拟机 ubuntu 可以相互 ping 通 。
     (此步骤很重要,关乎到整个服务的实现)
 
    1) 首先虚拟机 ubuntu设置为静态IP ,自己电脑的Windows也设置为静态IP
 
    2)目标板S0C3210上的linux系统也要设置为静态IP ,以上三个系统IP最好在同一网段
 
    3)为了目标板能够与虚拟机ping通,Windows上的无线网络要断开,因为虚拟机上的ubuntu系统网络连
 
       接无区分地显示有线网络连接与无线网络连接,所以不确定虚拟机上的ubuntu是用有线网络,还是
 
       无线网络, 如果断开无线网络,那么其就只能用有线网络了
 
     4)相互ping通,就代表网络基本通信没问题。
 
二:搭建NFS 服务端server(虚拟机ubuntu)的 NFS功能
 
在终端上以此输入以下命令:
 
sudo apt-get install portmap
 
sudo apt-get install nfs-kernel-server
 
sudo vi /etc/exports
 
在文件的最后一行添加:
 
/mnt/nfs *(rw,sync,no_root_squash)
 
/mnt/nfs是Ubuntu根目录下的一个文件夹
 
#  * 表示任何IP都可以共享,如果你想限定个别IP,用IP替代
 
#no_root_squash不太安全,可以改为root_squash,这里是特殊应用
 
保存并退出
 
启动NFS服务
 
sudo /etc/init.d/portmap restart
 
sudo /etc/init.d/nfs-kernel-server restart
 
配置NFS工作完成
 
测试NFS
 
sudo mount (-t nfs -o nolock)192.168.1.143:/mnt/nfs  /tmp
 
#确认你的nfs client机器上安装有nfs-utils包
 
#如果没有 sudo apt-get install nfs-common
 
#192.168.1.143是我Ubuntu的IP地址
 
如果/mnt/nfs 中文件信息能够在/tmp 中出现,则表示NFS设置成功
 
sudo umount /tmp 卸载文件

三:搭建NFS 客户端clinet(SOC3210的linux)的 NFS功能
 
    在您工作的目标机端也需要配置nfs功能,步骤如下:
 
             (1)编译3210板子内核,主要添加nfs功能
 
             networking-->networking option-->tcp/ip networking-->ip:kernel level autoconfiguration
                                         选上  -> ip:kernel level autoconfiguration
                                                ->ip:dhcp support
                                                -> ip:bootp support
                                                -> ip:rarp support
             File systems->Network File Systems->NFS file system support
                                         选上  ->Provide NFSv3 client support
                                                ->Provide client support for....
                                                ->Provide NFSv4 client support...
                                                ->Root file system on NFS
               编译内核 下载到3210板上的/dev/mtd0 分区.

四: 在 busybox 上的编译也要添加支持 NFS 功能的指令
 
      1) networking Utilities ---> ifconfig
                                 -->tftp
 
      2) Linux system Utilites --->mount
                                 -->support mounting NFS file systems
         
       测试命令:
        mount -t nfs -o nolock 192.168.1.143:/mnt/nfs  /tmp
 
       到目标板的系统/tmp 目录下查看是否有宿主机系统/mnt/nfs 的内容,有,则表示NFS服务配置成功:) Good Luck!!!!
 
 
 
 

 
阅读(2610) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~