======================================

命令:

1. $sudo apt-get install nfs-kernel-server           (安装NFS,Ubuntn上默认没有安装)

2. $showmount -e <Server Address>                    (查看list)
3. $sudo mount <Server Address>:/<Path1>    /<Path2>  (从服务器的Path1挂载到本地Path2)

====================================================

一、安装NFS
# sudo apt-get install nfs-kernel-server
同时会有两个软件包nfs-common和portmap被安装上

二.在/建立共享项目nfst 
# mkdir nfs_shared 
# chmod 777 -R nfs_shared/

保证使用者都能够读、写、执行

三.修改NFS配置文件
lingd@ubuntu:~$ vi /etc/exports
内容为:
     /home/nfst_shared     192.168.0.*(rw,sync,no_root_squash,no_subtree_check)

其中:
     /home/nfst_shared  ---要共享的目录
     192.168.0.*---允许访问的网段,也可以是ip地址、主机名(能够被服务器解析)、
               *(所有人都能访问)
     (rw,sync,no_root_squash,no_subtree_check)---
rw:读/写权限
                sync:数据同步写入内存和硬盘
                no_root_squash:服务器允许远程系统以root特权存取该目录
no_subtree_check:关闭子树检查

其他选项可以通过man exports查阅man文档

四、启动服务
重启portmapper(端口映射)服务
lingd@Ubuntu:~$ sudo service portmap restart
portmap start/running, process 550
重启NFS服务
lingd@ubuntu:~$ sudo service nfs-kernel-server restart
 * Stopping NFS kernel daemon                                            [ OK ] 
 * Unexporting directories for NFS kernel daemon...                      [ OK ] 
 * Exporting directories for NFS kernel daemon...                        [ OK ] 
 * Starting NFS kernel daemon                                            [ OK ]

五、测试
1、测试Ubuntu nfs
  此时可以运行以下命令来显示一下共享出来的目录:
  $showmount -e

2、本机挂载
# ls /home/nfst_shared/   #被挂载的文件夹下面的东西
cross-3.4.1.tar.bz2  linux-2.6.12        upload
download             msap                VMwareTools-8.1.3-203739.tar.gz
DSDT_2[1].8b.zip     ntp                 vmware-tools-distrib
DSDT_2.8b            protocol-converter  安装包

# mkdir /mnt/nfs_test
# ls /mnt/nfs_test/   #空白的
# sudo mount -t nfs -o nolock localhost:/home/nfs_shared  /mnt/nfs_test/
# ls /mnt/nfs_test/    #看到了和/home/nfst_shared/目录下的文件一样,说明挂载成功
cross-3.4.1.tar.bz2  linux-2.6.12        upload
download             msap                VMwareTools-8.1.3-203739.tar.gz
DSDT_2[1].8b.zip     ntp                 vmware-tools-distrib
DSDT_2.8b            protocol-converter  安装包

# sudo umount /mnt/nfs_test  #解除
# ls /mnt/nfs_test/   #空白的

3、开发板挂载
lingd@Ubuntu:~$ telnet 192.168.0.25 2009
Trying 192.168.0.25...
Connected to 192.168.0.25.

Escape character is '^]'.

(none) login: root
Password: 
~ # mkdir /mnt/nfs_shared_client
~ # ls /mnt/nfs_shared_client/

~ # mount -t nfs -o nolock 192.168.0.26:/home/nfs_shared   /mnt/nfs_shared_client
~ # ls /mnt/nfs_shared_client/
cross-3.4.1.tar.bz2  linux-2.6.12        upload
download             msap                VMwareTools-8.1.3-203739.tar.gz
DSDT_2[1].8b.zip     ntp                 vmware-tools-distrib
DSDT_2.8b            protocol-converter  安装包

~ # umount /mnt/nfs_shared_client
~ # ls /mnt/nfs_shared_client/

~ #

六、挂载nfs文件系统失败的原因
1、nfs错误信息
Too many levels of remote in path:试图挂载一个存在的文件系统
Permission denied:NFS服务器不让客户机挂接,也可能是因为用户在服务器上不存在
No such host:通常是DNS配置错误
No such file or directory:通常是访问的目录不存在
NFS server is not responding:通常是NFS已经超过负载或者NFS已经停止工作
Stale file handle:在NFS客户端关闭之前客户端访问的文件被删除
Fake hostname:Forward和reverse的DNS记录在NFS客户端下不存在
2、挂载nfs文件系统失败的原因
(1)主机和网络不通:看看网线连接、主机和开发板ip是否在同一网段、防火墙有没有关闭等。不仅vmware中linux的防火墙要关闭,vmware外xp的防火墙也要关闭,我就因为xp中的eset杀毒软件的防火墙使nfs无法挂载(可以挂本机,无法挂远程),折腾了一天,后来才发现是xp中的防火墙搞的鬼!
 
(2)使用的mount命令不正确。可以参照上面的例子改一下;或者man nfs查阅一下nfs的man文档,里面有nfs中mount的使用介绍和选项解释
 
(3)nfs配置文件/etc/exports配置不正确。可以参照上面的例子改一下;或者man exports查阅一下/etc/exports的man文档
 
(4)必要时重新启动NFS和portmap服务。
sudo service portmap restart
sudo service nfs-kernel-server restart
 
(5)内核不支持NFS和RPC服务(可能需要重新配置、编译、烧写内核)。
普通的内核应有的选项为CONFIG_NFS_FS=m、CONFIG_NFS_V3=y、CONFIG_ NFSD=m、CONFIG_NFSD_V3=y和CONFIG_SUNRPC=m。
rpcinfo命令用于显示系统的RPC信息,一般使用-p参数列出某台主机的RPC服务。rpcinfo -p命令检查服务器时,应该能看到portmapper、status、mountd、nfs和nlockmgr。用该命令检查客户端时,应该至少能看到portmapper服务(开发板可能不带该命令)。由rpcinfo -p可知,nfs使用的port为2049,portmapper使用111port。
 
五、nfs相关的配置文件与命令
1、/etc/exports
NFS的主要配置文件,不过系统并没有默认值,所以这个文件不一定会存在(需要自己建立)。
 
2、/usr/sbin/exportfs
用于维护NFS共享资源的命令,用在nfs server端。修改/etc/exports后,只要使用exportfs重新扫瞄一次 /etc/exports,重新将设定加载即可,并不一定要重启nfs服务
命令格式: exportfs [-aruv]
参数说明如下。
(1)-a:全部挂载或卸载(export or unexpect)/etc/exports文件内的目录。
(2)-r:重新挂载(reexport)/etc/exports中的目录,并将/var/lib/nfs/etab中的内容与/etc/exports同步。
(3)-u:卸载某些目录。
(4)-v:显示exportfs处理信息。
 
3、/usr/sbin/showmount
用于查看指定主机NFS共享出来的目录资源,主要用在Client端。
命令格式: showmount [-ade] hostname/服务器ip地址
参数说明如下。
(1)-a或-all:以host:dir格式显示客户主机名和挂载的目录。
(2)-d或-directories:仅显示被客户挂载的目录名。
(3)-e或-exports:显示指定NFS服务器的nfs共享目录。
 

========================================
ubuntu配置NFS 
http://blog.sina.com.cn/s/blog_6524fd1f0100r4hm.html

Ubuntu配置NFS的Client端
http://hi.baidu.com/mvp_xuan/blog/item/5f467e58792c8d3d2834f0e2.html

Ubuntu配置网络文件共享服务器NFS
http://www.ylmf.net/ubuntu/tips/201010267655.html

转: ubuntu配置NFS,挂载开发板的更多相关文章

  1. 嵌入式:nfs挂载开发板的几个陷阱

    1. host没有设置好,这个比较容易排查到. 开启portmap帮助网络应用程序找到正确的通讯端口: 开启nfs-kernel-server服务: 开启设置要export出去的服务目录. sudo ...

  2. ubuntu配置NFS

    ubuntu配置NFS: sudo apt-get install nfs-kernel-server 配置/etc/exports 例如:我们要将根目录下的 /opt/FriendlyARM/min ...

  3. Ubuntu开启NFS,挂载根目录

    1.安装NFS server Ubuntu初始状态是没有NFS server的,首先要安装NFS server: $ sudo apt-get install nfs-kernel-server (安 ...

  4. ubuntu12.04下NFS链接开发板并测试交叉编译的第一个应用

    思路:配置网络->安装NFS->配置NFS->挂载NFS服务->Down文件执行.Okay lets go! 配置网络: 在配置网络之前,首先咱得搞定与开发板的交互工作,那么这 ...

  5. [Linux] Ubuntu 配置nfs

    安装NFS Server: 1. 执行命令 "$ sudo apt-get install nfs-kernel-server",安装nfs server 端 2. 创建需要用来分 ...

  6. NodeMCU手把手入门:配置NodeMCU ESP8266开发板环境及点亮LED灯

    之前一直在玩树莓派,最近实验室买了些NodeMCU就想着玩一玩,没想到挺有意思的.其实树莓派能实现的功能,它大部分也可以,价格比派也便宜不少,舍不得买派的同学可以先买这个开发板玩一玩. 本文主要介绍了 ...

  7. 【Linux】(2013-7-19)配置tftp与开发板传送文件

    1. 安装必须软件 sudo apt-get install -y xinetd tftp-hpa 2. 修改配置文件 vi /etc/default/tftpd-hpa # /etc/default ...

  8. Ubuntu配置NFS服务器

    NFS(Network File System)即网络文件系统,是FreeBSD支持的文件系统中的一种,它允许网络中的计算机之间通过TCP/IP网络共享资源.在NFS的应用中,本地NFS的客户端应用可 ...

  9. ubuntu 开发板ping通虚拟机挂载nfs服务器

    先.nfs服务配置1.设置开发板ip ,同一网段2.开发板上操作:ifconfig eth0 192.168.1.203.测试是否能够ping通:ping 192.168.1.194.测试开发板ip是 ...

随机推荐

  1. STL_iterator迭代器(2)——几种迭代器对象的用法

    要学会使用迭代器和容器以及算法,需要学习下面的新技术. 一.流和迭代器 本书的很多例子程序使用I/O流语句来读写数据.例如: int value; cout << "Enter ...

  2. ORACLE的RMAN

    1.什么是RMAN? RMAN可以用来备份和还原数据库文件.归档日志和控制文件.它也可以用来执行完全或不完全的数据库恢复. 注意:RMAN不能用于备份初始化参数文件和口令文件. RMAN启动数据库上的 ...

  3. RELATED INTRODUCED

    1.综合知识 RSS,IMDB 1.1什么是RSS? RSS(Really Simple Syndication)是一种描述和同步网站内容的格式,是目前使用最广泛的XML应用.RSS搭建了信息迅速传播 ...

  4. URL具体解释

    浏览器因特网资源:URL是浏览器寻找信息时所需的资源位置.通过URL.应用程序才干找到并使用共享因特网上大量的数据资源. 大部分URL都遵循一种标准的格式: ①HTTP协议(http://或者http ...

  5. Xcode HeaderDoc 教程(2)

    Code Snippets,让一切变得更简单: 这真的非常easy,不是吗?但还能更简单一些吗? 本站以前介绍过 code snippets.请看这里. Code snippets 在 Xcode 中 ...

  6. hduTHE MATRIX PROBLEM(差分约束)

    题目请戳这里 题目大意:给一个n*m的矩阵,求是否存在这样两个序列:a1,a2...an,b1,b2,...,bm,使得矩阵的第i行乘以ai,第j列除以bj后,矩阵的每一个数都在L和U之间. 题目分析 ...

  7. Qemu之Network Device全虚拟方案一:前端网络流的建立

    KVM在I/O虚拟化方面,传统的方式是使用Qemu纯软件的方式来模拟I/O设备,当中包含常常使用的网卡设备.这次我们重点分析Qemu为实现网络设备虚拟化的全虚拟化方案.本主题从三个组成方面来完整描写叙 ...

  8. C#量转换为汉字表达

    /* 创造者:菜刀打好博客  * 创建日期: 2014年09一个月04号码  * 特征:Money类型转换  *  */ namespace Net.String.ConsoleApplication ...

  9. setWillNotDraw和setFillViewport

    Romain Guy write a little info about a ScrollView attribute that is missing  from documentation : An ...

  10. 深搜最基础题---全排列And组合数

    这个是理解标记和取消标记,用一个vis数组来标记 全排列代码: #include <stdio.h> ]; ]; int n; void dfs(int step)//step是当前已经进 ...