FriendlyARM tiny6410 一步一步学与思(4)---NFS搭建

来源:互联网 发布:python celery mq 编辑:程序博客网 时间:2024/06/05 12:41

    之前我一直用的串口文件传输的方式,速度慢,也不方便,在学习tiny6410的过程中,我们往往会选择用NFS,来方便的在开发板和PC上共享数据,那么如何搭建NFS呢?(环境:Ubuntu)

   1、安装NFS服务器端和客户端

         sudo apt-get install nfs-kernel-server   nfs-common   portmap
  2、配置portmap
     sudo vi /etc/default/portmap ,删除 -i 127.0.0.1
     这样做可以不局限在本地回环测试,因为我们要和另一端的开发板连接。 
  3、配置挂载目录和权限
     首先建立一个挂载的目录:
     mkdir /home/rootfs    //在home下mkdir rootfs
     配置:
     vi /etc/exports
     在文件末添加一句/home/rootfs *(rw,sync,no_subtree_check)  //这里可能觉得不理解,可以仔细阅读这个文件自带的注释部分,有说明。
     然后更新这个文件:
     sudo exportfs -r
  4、重启NFS服务
     start portmap
     /etc/init.d/nfs-kernel-server restart

接下来就试用一下吧!

   先查看一下PC和开发板的网路是否ping的通,一般如果没设置IP的话是不通的,设置如下:

   在PC端或者开发板端手动配置一下IP(注意在一个网段即可,还要注意虚拟机的话要用桥接的网络连接方式),命令如下:

   ifconfig eth0 192.168.1.231 netmask 255.255.255.0 up   //根据自己的实际情况配置

   ping通后,

   到超级终端下,在命令行模式,输入:mount -t nfs -o nolock 192.168.1.231:/home/rootfs /mnt

   这样,我们就将rootfs挂载到了开发板的mnt目录下,实现文件的共享

   当NFS服务设置好并启动后,我们还可以把NFS 作为根文件系统来启动开发板,通过使用NFS 作为根文件系统,开发板的“硬盘”就可以变得很大。

   制作一个SD卡启动盘(这里暂时用友善提供的Superboot,以后会鼓捣下uboot的移植),设置开发板从SD卡启动,然后选择S,即set the boot parameter of linux,输入命令:console=ttySAC0 root=/dev/nfs nfsroot=192.168.1.111:/opt/FriendlyARM/mini6410/root_qtopia_qt4
ip=192.168.1.70:192.168.1.111:192.168.1.111:255.255.255.0:mini6410.arm9.net:eth0:off。下面简单解释一下这个命令:

   各参数的含义如下:
   nfsroot 是开发主机的IP 地址,如果你使用了虚拟机,该地址是虚拟机的IP 地址,总之,它是直接提供NFS 服务的Linux 系统IP地址,“ip=”后面:
   第一项(192.168.1.70)是目标板的临时IP(注意不要和局域网内其他IP 冲突);
   第二项(192.168.1.111)是开发主机的IP;
   第三项(192.168.1.111)是目标板上网关(GW)的设置;
   第四项(255.255.255.0)是子网掩码;
   第五项是开发主机的名字(一般无关紧要,可随便填写)
   eth0 是网卡设备的名称。

扩展:在fedora下搭建NFS Server

>setup 关掉防火墙
>yum install nfs-utils
>systemctl enable nfs-server.service
>systemctl start nfs-server.service
>systemctl status nfs-server.service
>vim /etc/exports
>/home/usr/share *(rw,sync,no_root_squash,no_all_squash)
>systemctl restart nfs-server.sevice



原创粉丝点击