CentOS6安装配置NFS服务

题目要求:
配置NFS服务,开机自启动
/var/test 192.168.43.0/24网段的用户有读写(rw)权限,其他只读
/var/tmp 所有人可以读取,root写入的文件具有root权限
创建用户nfsuser,当nfsuser在终端登陆时,自动mount共享的/var/test目录到/home/nfsuser/t,退出时自动umout

安装NFS服务

yum -y install nfs-utils rpcbind

新建一个共享文件夹

cd /var
mkdir test

配置NFS

nano /etc/exports

添加一行配置
目录 IP (权限)
表示允许192.168.43.0网段的IP可以修改/var/test下的内容

/var/test 192.168.43.0/24(rw)

如果不是来自43网段则只有只读权限

/var/test !192.168.43.0/24(ro)

temp所有人有权限,root存入有root权限

/var/temp *(rw,no_root_squash)

退出编辑模式

chmod 777 /var/test

权限内可选参数:

ro:共享目录只读;
rw:共享目录可读可写;
all_squash:所有访问用户都映射为匿名用户或用户组;
no_all_squash(默认):访问用户先与本机用户匹配,匹配失败后再映射为匿名用户或用户组;
root_squash(默认):将来访的root用户映射为匿名用户或用户组;
no_root_squash:来访的root用户保持root帐号权限;
anonuid=<UID>:指定匿名访问用户的本地用户UID,默认为nfsnobody(65534);
anongid=<GID>:指定匿名访问用户的本地用户组GID,默认为nfsnobody(65534);
secure(默认):限制客户端只能从小于1024的tcp/ip端口连接服务器;
insecure:允许客户端从大于1024的tcp/ip端口连接服务器;
sync:将数据同步写入内存缓冲区与磁盘中,效率低,但可以保证数据的一致性;
async:将数据先保存在内存缓冲区中,必要时才写入磁盘;
wdelay(默认):检查是否有相关的写操作,如果有则将这些写操作一起执行,这样可以提高效率;
no_wdelay:若有写操作则立即执行,应与sync配合使用;
subtree_check(默认) :若输出目录是一个子目录,则nfs服务器将检查其父目录的权限;
no_subtree_check :即使输出目录是一个子目录,nfs服务器也不检查其父目录的权限,这样可以提高效率;
anonuid=
anongid=

登录自动挂载
新建用户

useradd nfsuser
cd /home/nfsuser

编辑用户根目录中.bash_profile文件实现登录自动挂载
编辑.bash_logout实现退出时自动umout

nano .bash_profile

添加

sudo mount -t nfs 你的服务器IP:/var/test /home/nfsuser/t

保存退出后

nano .bash_logout

添加

sudo umount -t nfs 你的服务器IP:/var/test /home/nfsuser/t

保存并退出

给普通用户可以执行sudo的权限
编辑sudo配置文件

nano /etc/sudoers

root    ALL=(ALL)    ALL

下加一行,实现nfsuser不用输入密码就有sudo权限

nfsuser ALL=(ALL) NOPASSWD: ALL

启动服务

service rpcbind start
service nfs start

关闭防火墙

service iptables stop
setenforce 0

测试(win端):
开启windowsNFS客户端(自行百度)
进入计算机->网络->映射网络驱动器
点击完成即可连接
如果无法写入数据
在虚拟机中设置test文件夹为777权限

本文链接:

http://blog.vacant.mobi/index.php/archives/10/
1 + 2 =
快来做第一个评论的人吧~