分类: 嵌入式
2009-08-04 15:09:48
Ubuntu 默认是没有nfs服务的,所以需要自己安装
1、安装nfs服务版
apt-get install nfs-kernel-server
2、修改nsf配置文件
vi /etc/exports
在文件中添加nfs的目录格式如下
/armnfs *(sync,rw)
存盘退出
3、在根目录下建立nsf的目录
mkdir /armnfs
修改该目录的权限
chmod 777 -R /armnfs
4、从新启动nfs
/etc/init.d/nfs-kernel-server restart
5、测试nsf
mount 192.168.1.99:/armnfs/ abc
嵌入式要mount 的时候 使用
mount -o nolock 192.168.1.99:/armnfs/new8120 /mnt/net
注:在内核的配置里面的
Networking options --->选项中
启用 TCP/IP networking
启用IP: kernel level autoconfiguration
General setup ---> 选项中 ,
Default kernel command string: (默认的内核命令行)
加入绿色字中的字符
root=/dev/nfs rw nfsroot=192.168.1.99:/armnfs/ ip=192.168.1.201 init=/linuxrc console=ttyS0
File system ---> Network File System --->选项
启用 NFS file system support
启用 Provide NFSv3 client support
启用 Root file system on NFS
nfs配置:
less /etc/exports
/home/xx/ 192.168.0.*(rw,sync)
$ sudo /etc/init.d/portmap start
* Starting portmap daemon...
* Already running. [ OK ]
$sudo /etc/init.d/nfs-common start
* Starting NFS common utilities [ OK ]
$ sudo /etc/init.d/nfs-kernel-server start
* Exporting directories for NFS kernel daemon...
exportfs: /etc/exports [2]: Neither 'subtree_check' or 'no_subtree_check' specified for export "192.168.0.*:/home/xx/".
Assuming default behaviour ('subtree_check').
NOTE: this default will change with nfs-utils version 1.1.0
[ OK ]
* Starting NFS kernel daemon [ OK ]
$ showmount -e
Export list for Qunhome:
/home/xx 192.168.0.*
似乎都好了,可是 :
sudo mount 192.168.0.100:/home/xx /mnt
mount: 192.168.0.100:/home/xx failed, reason given by server: Permission denied
我装的是7.04,和你出现了同样的问题,以前我用6.06的时候是没有问题的
不知道是不是7.04的bug阿,
配置portmap的时候,在etc目录下就没有找到host.allow和hosts.deny这俩个文件,我是自己新建的这俩个文件,以前我记得在etc目录下是有的。
在/etc/exports下写入你的IP地址,不要有*号。例如:(/home/zwg IP(rw,sync,no_root_squash))
原因可能是etc目录下没有hosts.allow和hosts.deny这俩个文件。
我装的是7.04,和你出现了同样的问题,以前我用6.06的时候是没有问题的
不知道是不是7.04的bug阿,
配置portmap的时候,在etc目录下就没有找到host.allow和hosts.deny这俩个文件,我是自己新建的这俩个文件,以前我记得在etc目录下是有的。
非常感谢!
我删除了安装文件和所有相关配置文件
然后一步步重新来,最后成功了
做的改动为:
在/etc/hosts中用IP lists 代替 *
还有一种方法:安装配置的没有大问题。不妨在括号里加上no_subtree_check选项,这是减少文件共享访问检查的,如果你的共享目录在本地没有很多读写请求的话(man exports)。
On the master node, edit your /etc/hosts.allow file to allow
connections from slave nodes. If your cluster LAN is on 192.168.1.0/24,
your hosts.allow will look like:
Code Listing 2.10: hosts.allow
portmap:192.168.1.0/255.255.255.0
Edit the /etc/exports file of the master node to export a work directory structure (/home is good for this).
Code Listing 2.11: /etc/exports
/home/ *(rw)
把hosts.deny删除。子网用掩码的方法表示。
NFS(Network File System, 网络文件系统)可以通过网络将分享不同主机(不同的OS)的目录——可以通过NFS挂载远程主机的目录, 访问该目录就像访问本地目录一样!