您的位置:首页 > 其它

建立Ubuntu nfs服务器

2013-01-15 22:21 330 查看
 建立Ubuntu nfs服务器
  在嵌入式 linux 开发的时候,常常需要使用Ubuntu nfs服务器以方便程序的调试.使用 nfs,用户可以将板子要用到的根文件系统放在主机目录下,开发板则通过以太网挂载到这个目录并将这个目录下的文件作为根文件系统的内容,这样用户的程序更新后不比重新烧写板子的根文件系统便能被重新使用,这点能够大大加快程序的调试.Ubuntu 下安装 nfs 服务器的步骤如下:

  1 进行 NFS 服务器端与客户端的安装:

  sudo apt-get install nfs-kernel-server nfs-common portmap

  安装客户端的作用是可以在本机进行Ubuntu nfs服务器的测试.

       2.配置挂载目录和权限

  emacs /etc/exports

  我的配置如下:

  以下是代码片段:

[ruby]
view plaincopyprint?

# /etc/exports: the access control list for filesystems which may be exported
  
#       to NFS clients.  See exports(5).
  
#   
# Example for NFSv2 and NFSv3:   
# /srv/homes       hostname1(rw,sync,no_subtree_check) hostname2(ro,sync,no_subtree_check)
  
#   
# Example for NFSv4:   
# /srv/nfs4        gss/krb5i(rw,sync,fsid=0,crossmnt,no_subtree_check)
  
# /srv/nfs4/homes  gss/krb5i(rw,sync,no_subtree_check)
  
#   
/home/gexueyuan/mini2440/rootfs *(rw,sync,no_root_squash)  

# /etc/exports: the access control list for filesystems which may be exported
#		to NFS clients.  See exports(5).
#
# Example for NFSv2 and NFSv3:
# /srv/homes       hostname1(rw,sync,no_subtree_check) hostname2(ro,sync,no_subtree_check)
#
# Example for NFSv4:
# /srv/nfs4        gss/krb5i(rw,sync,fsid=0,crossmnt,no_subtree_check)
# /srv/nfs4/homes  gss/krb5i(rw,sync,no_subtree_check)
#
/home/gexueyuan/mini2440/rootfs *(rw,sync,no_root_squash)


       /home/gexueyuan/mini2440/rootfs 表示允许其他计算机访问的目录
       ' * '星号表示允许任何ip访问,此处位置可以设置允许访问该目录的客户端ip地址,例如,192.168.1.*就表示允许192.168.1.X的ip来进行访问

      rw:表示可读可写

      sync:同步写磁盘(async:资料会暂存于内存当中,而不是直接写入硬盘)

      no_root_squash:表示客户端root用户对该目录具有写权限

(可选

3. 更新 exports 文件

  只要你更改了/etc/exports, 你不可以通过 sudo exportfs -r 来更新 这个文件



4  重启NFS服务

        sudo /etc/init.d/nfs-kernel-server start   / stop  启动命令/停止命令

  sudo /etc/init.d/nfs-kernel-server restart 重启 nfs 服务

启动结果:

[html]
view plaincopyprint?

[sudo] password for gexueyuan:  
 * Stopping NFS kernel daemon                                            [ OK ]  
 * Unexporting directories for NFS kernel daemon...                      [ OK ]  
 * Exporting directories for NFS kernel daemon...                               exportfs: /etc/exports [1]: Neither 'subtree_check' or 'no_subtree_check' specified for export "*:/home/gexueyuan/mini2440/rootfs".  
  Assuming default behaviour ('no_subtree_check').  
  NOTE: this default has changed since nfs-utils version 1.0.x  
  
                                                                         [ OK ]  
 * Starting NFS kernel daemon                                            [ OK ]   

[sudo] password for gexueyuan:
* Stopping NFS kernel daemon                                            [ OK ]
* Unexporting directories for NFS kernel daemon...                      [ OK ]
* Exporting directories for NFS kernel daemon...                               exportfs: /etc/exports [1]: Neither 'subtree_check' or 'no_subtree_check' specified for export "*:/home/gexueyuan/mini2440/rootfs".
Assuming default behaviour ('no_subtree_check').
NOTE: this default has changed since nfs-utils version 1.0.x

[ OK ]
* Starting NFS kernel daemon                                            [ OK ]


5 进行测试
  尝试一下挂载本地磁盘(我的 linux 系统 IP 为 192.168.1.230,将 /home/gexueyuan/mini2440/rootfs 挂载到/mnt/nfs)

  以下是代码片段:

  $ sudo mount (-t nfs) 192.168.1.230:/home/gexueyuan/mini2440/rootfs  /mnt/nfs

运行结果:

  运行 $ df 看看结果

[html]
view plaincopyprint?

Filesystem           1K-blocks      Used Available Use% Mounted on  
/dev/sda6             40207968  17311896  20853656  46% /  
none                    248580       208    248372   1% /dev  
none                    254196       324    253872   1% /dev/shm  
none                    254196       368    253828   1% /var/run  
none                    254196         0    254196   0% /var/lock  
/dev/sda1               112039     61774     44480  59% /boot  
192.168.1.230:/home/gexueyuan/mini2440/rootfs  
                      40208000  17311872  20853696  46% /mnt  

Filesystem           1K-blocks      Used Available Use% Mounted on
/dev/sda6             40207968  17311896  20853656  46% /
none                    248580       208    248372   1% /dev
none                    254196       324    253872   1% /dev/shm
none                    254196       368    253828   1% /var/run
none                    254196         0    254196   0% /var/lock
/dev/sda1               112039     61774     44480  59% /boot
192.168.1.230:/home/gexueyuan/mini2440/rootfs
40208000  17311872  20853696  46% /mnt


  $ sudo umount /mnt
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: