Linux服务安装配置-NFS服务安装和配置

一、NFS的安装和配置(在服务器端)
1、安装nfs
yum install nfs-utils nfs4-acl-tools net-tools tree -y
2、查看安装的nfs支持的版本
cat /proc/fs/nfsd/versions
3、(可选)可修改一些NFS的参数,例如只支持NFSV4(演示示例不作修改),文件地址:
/etc/sysconfig/nfs
4、配置NFS共享目录

mkdir -p /mnt/nfs
chown -R root.root /mnt/nfs/  
cat >> /etc/exports <

5、启动nfs,重启nfs

systemctl restart nfs

特别说明:
man nfs : 查看nfs 的mount挂载参数
man exports : 查看nfs在/etc/exports的配置参数

二、NFS使用(在客户端)
1、挂载nfsv4.2版本的2种方式

mount -t nfs4 -s -v -o minorversion=2,soft,timeo=5,retrans=3 192.168.1.195:/mnt/nfs /mnt/
mount -t nfs -s -v -o vers=4.2,soft,timeo=5,retrans=3 192.168.1.195:/mnt/nfs /mnt/

2、客户端测试nfs增加、修改、删除
查看本地的 /mnt 目录的情况

ll /mnt

在本地/mnt 目录中新建文件 aaa.txt

touch /mnt/aaa.txt
cat /mnt/aaa.txt

修改aaa.txt文件内容

echo aaa > /mnt/aaa.txt
cat /mnt/aaa.txt

增加bbb.txt文件和内容

echo bbb > bbb.txt

再次查看本地的 /mnt 目录的情况

ll /mnt

在本地 /mnt 目录中增加新的目录并在新的目录中增加文件,并且查看文件内容

mkdir /mnt/test
cat > /mnt/test/ccc.txt < /mnt/test/sdst.txt
cat /mnt/test/ccc.txt
cat /mnt/test/sdst.txt

查看整个/mnt目录结构

tree /mnt/

3、在服务器端查看共享目录结构和内容

tree /mnt/nfs
cat /mnt/nfs/test/ccc.txt
cat /mnt/nfs/test/sdst.txt

4、测试在服务器端删除和在客户端删除

在服务器端删除 /mnt/test/ccc.txt,在客户端查看
rm -rf /mnt/test/ccc.txt
tree /mnt
在客户端删除  /mnt/aaa.txt 在服务器端查看
rm -rf /mnt/aaa.txt
tree /mnt/nfs

三、 NFS配置用户权限验证
1、root用户没有增加,修改,删除/mnt/nfs目录文件的权限
chown -R root.root /mnt/nfs/
/mnt/nfs 192.168.1.195(rw,all_squash,no_root_squash,async)
2、root用户没有增加,修改,删除/mnt/nfs目录文件的权限
chown -R root.root /mnt/nfs/
/mnt/nfs 192.168.1.195(rw,root_squash,async)
3、root用户有增加,修改,删除/mnt/nfs目录文件的权限
chown -R nfsnobody /mnt/nfs/
/mnt/nfs 192.168.1.195(rw,root_squash,async)
d.root用户有增加,修改,删除/mnt/nfs目录文件的权限
/mnt/nfs 192.168.1.195(rw,no_root_squash,async)

四、/etc/exports参数解释
1、ro : 共享目录只读
2、rw : 共享目录读写
3、root_squash : 客户端用root用户访问共享文件夹的时候,将root用户映射成匿名用户; (这是默认设置)
4、no_root_squash : 客户端用root用户访问共享文件夹的时候,保持root权限
5、all_squash : 客户端所有访问共享文件夹的用户都映射为匿名用户
6、no_all_squash : 客户端访问共享文件夹的用户在服务器端存在,就映射存在的用户,不存在就映射为匿名用户 ; (这是默认设置)
7、anonuid= : 匿名访问用户的本地用户UID; 可指定,默认设置为nfsnobody(65534);
8、anongid= : 匿名访问用户的本地用户组GID; 可指定,默认设置为nfsnobody(65534);
9、secure : 限制客户端只能从小于1024的端口连接服务器; (默认)
10、insecure : 允许客户端从大于1024的端口连接服务器;
11、subtree_check : 如果共享子目录,nfs服务器强制检查父目录的权限 ; (默认)
12、sync : 将数据同步写入内存缓冲区与磁盘中,可以保证数据的一致性;
13、wdelay(默认) : 检查是否有相关的写操作,如果有则将这些写操作一起执行,这样可以提高效率,与sync配合使用;
14、no_wdelay : 若有写操作则立即执行,与sync配合使用;
15、async : 将数据先保存在内存缓冲区中,必要时才写入磁盘,使用async参数,wdelay参数直接失效;

特别说明:如果只开启NFSV4,见意参考redhat的官方文档,关闭掉不需要的配置服务。文档地址:

https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/7/html/storage_administration_guide/nfs-serverconfig

你可能感兴趣的:(Linux服务安装配置-NFS服务安装和配置)