分类: BSD
2007-01-17 14:44:46
服务 描述
nfsd NFS,为来自NFS客户端的 请求服务。
mountd NFS挂载服务,处理nfsd(8)递交过来的请求。
rpcbind 此服务允许 NFS 客户程序查询正在被 NFS 服务使用的端口。
配置NFS
NFS的配置过程相对简单。这个过程只需要 对/etc/rc.conf文件作一些简单修改。
在NFS服务器这端,确认/etc/rc.conf 文件里头以下开关都配上了:
nfs_server_enable="YES"
nfs_server_flags="-u -t -n 4"
rpc_statd_enable="YES"
rpc_lockd_enable="YES"
mountd_flags="-r"
只要NFS服务被置为enable,mountd 就能自动运行。
在客户端一侧,确认下面这个开关出现在 /etc/rc.conf里头:
nfs_client_enable="YES"
/etc/exports文件指定了哪个文件系统 NFS应该输出(有时被称为“共享”)。 /etc/exports里面每行指定一个输出的文件系统和哪些机器可以访问该文件系统。在指定机器访问权限的同时,访问选项开关也可以被指定。有很多开关可以被用在这个文件里头,不过不会在这里详细谈。您可以通过阅读exports(5) 手册来发现这些开关。
以下是一些/etc/exports的例子:
/home -alldirs 10.0.0.2 10.0.0.3 10.0.0.4
一旦修改 /etc/exports 了之后, 为了让变动生效,您必须重启 mountd。 可以通过对mountd 进程发送HUP信号重启:
# kill -HUP `cat /var/run/mountd.pid`
另外,系统重启动可以让FreeBSD把一切都弄好。尽管如此,重启不是必须的。 以 root 身份执行下面的命令可以搞定一切。
在 NFS 服务器端:
# rpcbind
# nfsd -u -t -n 4
# mountd -r
#showmount -e //查看当前共享的目录
客户段的操作:
1、showmout命令对于NFS的操作和查错有很大的帮助,所以我们先来看一下showmount的用法
showmout
-a :这个参数是一般在NFS SERVER上使用,是用来显示已经mount上本机nfs目录的cline机器。
-e :显示指定的NFS SERVER上export出来的目录。
例如:
showmount -e 192.168.0.30
Export list for localhost:
/tmp *
/home/linux *.linux.org
/home/public (everyone)
/home/test 192.168.0.100
2、mount nfs目录的方法:
mount -t nfs hostname(orIP):/directory /mount/point
具体例子:
Linux: mount -t nfs 192.168.0.1:/tmp /mnt/nfs
Solaris:mount -F nfs 192.168.0.1:/tmp /mnt/nfs
BSD: mount 192.168.0.1:/tmp /mnt/nfs
常见问题:
RPCPROG_MNT: RPC: Authentication error; why = Client credential too weak
That confused me. I checked /var/log/messageson the NFS server:
mountd[95]: mount request from 10.0.0.20 from unprivileged port
If you are seeing this on the client:
RPCPROG_NFS: RPC: Program not registered
Then you should check the server for a message such as this in /var/log/messages: :
Jun 12 11:20:07 polo portmap[55049]: connect from 192.168.0.34 to getport(nfs): request from unauthorized host
修改/etc/hosts.allow
常用选项 |
描述 |
Secure |
需要进行识别,该选项被仟为缺省设置 |
Ro |
只允许读访问 |
Rw |
允许读写 |
Noaccess |
使得目录下所有文件不能被指定的客户端访问 |
Link_absolute |
使用绝对符号连接,该项为缺省设置 |
Link_relative |
将绝对符号连接转变为相对连接 |
Access |
使得目录下所有文件能被指定的客户端访问 |
#mount –o ro,soft|hard computer1:/usr/local /usr/local/dance