NFS-网络文件系统,为客户机提供共享使用的文件夹
协议:NFS(TCP/UDP 端口2049)、RPC(TCP/UDP 端口111)
所需要软件包:nfs-utils
系统服务:nfs-server
各部分说明 : 共享目录 被允许的客户端IP(* 表示任意IP都可以)
IP后括号里的设置表示对该共享文件的权限
ro 只读访问
rw 读写访问
sync 所有数据在请求时写入共享
hide 在NFS共享目录中不共享其子目录
no_hide 共享NFS目录的子目录
all_squash 共享文件的UID和GID映射匿名用户anonymous,适合公用目录。
no_all_squash 保留共享文件的UID和GID(默认)
root_squash root用户的所有请求映射成如anonymous用户一样的权限(默认)
no_root_squash root用户具有根目录的完全管理访问权限
detfacl -m u:nfsnobody:rwx /abc 赋予用户nfsnobody多共你想目录abc有读写权限
一、具有只读功能的nfs
1、修改配置文件:vim/etc/exports(该文件空文件,需要手动写入配置)
/public * (新建的共享文件夹为名字," * "允许所有ip访问该共享文件)
/public 172.25.0.0/24(ro)(新建的共享文件public,只允许172.25.0.0/24该网段以只读的方式访问)
2、保存之后重启服务即可
客户端:
showmount -e +(nfs服务器ip)即可查询该服务器共享的文件夹
临时挂载:
3、设置开机自动挂在mount -t nfs 192.168.1.10:/sharedata /mnt
vim /etc/fatab
172.25.0.11:/public /mnt/nfs nfs _netdev 0 0
nfs共享服务器的IP及文件 挂在的本地文件 文件类型
3、保存之后用mount -a刷新
4、df -h 查看
5、ls /mnt/nfs 参看文件内容
二、有读写功能nfs-server服务
(二)root用户下的读写功能
服务端:
1、mkdir /abc
2、vim /etc/exports
/abc 172.25.0.0/24(rw,no_root_squash)
3、重启服务
客户端:
mkdir /mnt/est
vim /etc/fatab
172.25.0.11:/public /mnt/test nfs _netdev 0 0
(三)、普通用户实现读写
客户端本地普通用户访问服务端nfs-server服务,服务端会以客户端相同的UID身份的本地用户进行权限判定
服务端:
服务端:
1、mkdir /abc
2、vim /etc/exports
/abc 172.25.0.0/24(rw,no_root_squash)
法一、客户端和服务端的普通用户的UID值必须一 一对应(适用于普通用户较少的情况)
服务端本地普通用户:useradd -u 1500 dc
在服务端设置普通用户dc对共享文件abc的权限:setfacl -m u:dc:rwx /abc
客户端本地用户:useradd -u 1500 tc
然后在客户端切换到普通用户tc下,对已经挂在的共享目录就有读写权限了,因为服务端的普通用户dc和客户端
普通用户tc的UID值都为1500
原文:https://www.cnblogs.com/scorpios/p/11305844.html