man exports 查询权限
参数名称 | 参数用途 |
rw | read-write,表示可读写权限 |
ro | read-only,只读 |
sync | 请求或写入数据时,数据同步写入到NFS Server的硬盘后才返回。优点:数据安全不会丢;缺点:性能比不启用该参数要差。 |
async | 写入时数据会先写到内存缓冲区,只到硬盘有空档才会再写入磁盘,这样可以提升写入效率!风险为若服务器宕机或不正常关机,会损失缓冲区中未写入磁盘的数据(解决办法:服务器主板电池或加UPS不间断电源) |
no_root_squash | 访问NFS Server共享目录的用户如果是root的话,它对该共享目录具有root权限。这个配置原本是为无盘客户端准备的。用户应避免使用! |
root_squash | 如果访问NFS Server共享目录的用户是root,则它的权限将被压缩成匿名用户,同时它的UID和GID通常会变成nfsnobody帐号身份。 |
all_squash | 不管访问NFS Server共享目录的用户身份如何,它的权限都将被压缩成匿名用户,同时它的UID和GID都会变成nfsnobody帐号身份。在早期多个NFS客户端同时读写NFS Server数据时,这个参数很有用。 |
all_squash
在生产中配置NFS的重要技巧:
1)确保所有客户端服务器对NFS共享目录具备相同的用户访问权限
a.all_squash把所有客户端都压缩成固定的匿名用户(UID相同)。
b.就是anonuid,anongid指定的UID和GID的用户。
2)所有的客户端和服务端都需要有一个相同的UID和GID的用户,即nfsnobody
(UID必须相同)。
参数名称 | 参数用途 |
anonuid | 参数以anon*开头即指anonymous匿名用户,这个用户的UID设置值通常为nfsnobody的UID值,当然也可以自行设置这个UID值。但是,UID必须存在于/etc/passwd中。在多NFS Clients时,如多台Web Server共享一个NFS目录,通过这个参数可以使得不同的NFS Clients写入的数据对所有NFS Clients保持同样的用户权限,即为配置的匿名UID对应用户权限,这个参数很有用,一般默认即可。 |
anongid | 同anonuid,区别就是把uid(用户id)换成gid(组id)。 |
常用参数:
rw----------------可读写 read write
ro----------------只读 read only
sync-------------到磁盘才算完成,安全但慢
async-----------异步写到远程缓冲区,快但不安全 。
all_squash----不管客户端什么用户,到服务端都是nfsnobody
anonuid=匿名用户的UID
anongid=匿名用户的GID