服务器空间不足 共享其他服务器空间
CentOS release 6.8 (Final)
yum安装 yum install nfs-utils rpcbind
nfs常用目录
/etc/exports NFS服务的主要配置文件
##NFS共享目录 客户端地址1(权限)
NFS权限设置
NFS配置权限设置,即/etc/exports文件配置格式中小括号()里的参数集。
参数命令 |
参数用途 |
rw *** |
表示可读写 |
ro |
Read-only表示只能读权限 |
Sync *** |
请求或者写入数据时,数据同步写入到NFS server的硬盘中后才会返回 |
no_root_squas |
访问nfs server共享目录的用户如果是root的话,它对该目录具有root权限。这个配置原本为无盘用户准备的。用户应避免使用! |
root_squash |
对于访问NFS server共享目录的用户,如果是root的话会被压缩成为nobody用户身份。 |
all_squash *** |
不管访问nfs server共享目录的用户身份如何包括root,它的权限都将被压缩成为匿名用户,同时他们的udi和gid都会变成nobody或nfsnobody账户的uid,gid。在多个nfs客户端同时读写nfs server数据时,这个参数很有用***可以确保大家写入的数据的权限是一样的。 但不同系统有可能匿名用户的uid,gid不同。因为此处我们需要服务端和客户端之间的用户是一样的。比如说:服务端指定匿名用户的UID为2000,那么客户端也一定要存在2000这个账号才可以 |
anonuid |
anonuid就是匿名的uid和gid。说明客户端以什么权限来访问服务端,在默认情况下是nfsnobody。Uid65534. |
anongid |
同anongid,就是把uid换成gid而已。 |
/usr/sbin/exportfs NFS服务的管理命令
/usr/sbin/showmount 客户端的查看命令
/var/lib/nfs/etab 记录NFS分享出来的目录的完整权限设定值
/var/lib/nfs/xtab 记录曾经登录过的客户端信息
/etc/exports 设置没问题 启动nfs服务报错
Starting NFS services: [ OK ]
Starting NFS mountd: [FAILED]
Starting NFS daemon: rpc.nfsd: writing fd to kernel failed: errno 111 (Connection refused)
rpc.nfsd: unable to set any sockets for nfsd
[FAILED]
NFS和nfslock的启动需要向rpc进行注册,rpc不启动的话就会报错。
解决方法:启动rpcbind rpcbind是6.0版本后默认的RPC服务,所以要先于nfs启动。如果不启动rpcidmap则会造成用户权限的映射错误,用户的权限看起来是一串数字。
/etc/init.d/rpcbind start
Starting rpcbind: [ OK ]
[root@F11 /]# /etc/init.d/nfs start
Starting NFS services: [ OK ]
Starting NFS mountd: [ OK ]
Starting NFS daemon: [ OK ]
Starting RPC idmapd: [ OK ]