linux搭建NFS支持windws2008访问

简介:

网上大部分的教程是NFS给LINUX访问,但是windows访问略有不同,主要是权限不同。

linux上NFS共享的文件夹权限最好是757.

wKioL1do7puybPKtAAATUIjuHMg928.jpg

window上显示nfs属性其他是可读写,才可以否则会出现只读不能写。

wKiom1do7pzj8vx8AACFx1ZToi0888.jpg


一、安装:

注意CentOS 5.x版用portmap,CentOS 6.x版用rpcbind

1
# yum -y install nfs-utils portmap
1
# yum -y install nfs-utils rpcbind

二、配置:

1
  # vi /etc/exports

在exports文件中添加

/data 192.168.1.*/24(rw,async,no_root_squash,no_subtree_check)


1、配置文件定义

NFS的配置文件为 /etc/exports,内容格式如下:
<共享目录> 客户端1(选项) [客户端2(选项) ...]

 共享目录:NFS共享给客户机的目录。

 客户端:网络中可以访问此目录的主机。多个客户端以空格分隔。
 选项:设置目录的访问权限、用户映射等,多个选项以逗号分隔。

例如:

/opt/public 192.168.1.0/24(rw,insecure,async,all_squash,anonuid= 65534,anongid=65534)

/opt/public *(rw,insecure,async,all_squash,anonuid= 65534,anongid=65534)


2、客户端的指定方式
指定ip地址的主机:192.168.0.100
指定子网中的所有主机:192.168.0.0/24 或 192.168.0.0/255.255.255.0
指定域名的主机:nfs.test.com
指定域中的所有主机:*.test.com

所有主机:*


3、选项说明
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:将数据异步写入内存缓冲区中,必要时才写入磁盘,推荐,提高传输速率;

rsize:读缓存区块,设置是最好是1024倍数加减,V2版本最大数值是大8192,V3版本最大数值是32768。

wsize:写缓存区块,设置是最好是1024倍数加减,V2版本最大数值是大8192,V3版本最大数值是32768。

wdelay(默认):检查是否有相关的写操作,如果有则将这些写操作一起执行,这样可以提高效率;

no_wdelay:若有写操作则立即执行,应与sync配合使用;
subtree_check(默认):若输出目录是一个子目录,则nfs服务器将检查其父目录的权限;

no_subtree_check:即使输出目录是一个子目录,nfs服务器也不检查其父目录的权限,这样可以提高效率;


NFS相关命令

1、exportfs  不重启nfs服务应用更新,相关选项如下:

1
2
3
4
   -a 全部挂载或卸载 /etc/exports中的内容
   -r 重新读取/etc/exports 中的信息 ,并同步更新/etc/exports、/var/lib/nfs/xtab
   -u 卸载单一目录(和-a一起使用为卸载所有/etc/exports文件中的目录)
   -v 在export的时候,将详细的信息输出到屏幕上。

2、nfsstat  查看NFS的运行状态。

3、rpcinfo 查看rpc服务注册情况。

  相关选项:-p 显示所有的端口与程序信息。

  示例:rpcinfo -p localhost  #列出本机的RPC注册状况。


三、启动&开机启动portmap和nfs

注意,一定要先启动portmap(rpcbind)在启动nfs,否则会报错。

1
2
3
4
#service portmap start 或 #service rpcbind start
#service nfs start
#chkconfig --level nfs 35 on
#chkconfig --level protmap 35 on 或 #chkconfig --level protmap 35 on

重启nfs 或者使用exportfs命令使设置生效

1
#service nfs restart

 生效exportfs文件:

1
#exportfs -rv


四、确定挂载点

1
#showmount -e 192.168.4.211

  -e选项显示NFS服务端的导出列表。

如下图显示,配置及是正确。

wKioL1hJBPiylMqRAAAHg3iObdc818.png

五、开机自动挂载

1
vi  /etc/fstab

在上述文件末尾加入共享目录的挂载条目,如下所示:

1
192.168.1.211: /data/nfs_share  /root/remote_dir  nfs defaults 0 0


六、查看nfs版本:

如果你的linux是redhat或者centos 服务端使用这个命令:

1
# rpm -qa |grep nfs-utils |grep -v lib

1
# nfsstat -s

客户端:

1
# nfsstat -m

vers=4即你的服务器版本。

wKiom1d6DrGhhxsuAAAsVhA7Huw300.jpg-wh_50



参考文章:

http://www.j3j5.com/post-28.html

http://www.cnblogs.com/lykyl/archive/2013/06/14/3136921.html

http://www.linuxidc.com/Linux/2015-01/112051.htm

http://www.cnblogs.com/argb/p/3438568.html


本文转自 piazini 51CTO博客,原文链接:http://blog.51cto.com/wutou/1791408

相关文章
|
4月前
|
域名解析 网络协议 安全
在Linux中,想在命令行下访问某个网站,并且该网站域名还没有解析,如何做?
在Linux中,想在命令行下访问某个网站,并且该网站域名还没有解析,如何做?
|
4月前
|
Ubuntu Linux
内核实验(四):Qemu调试Linux内核,实现NFS挂载
本文介绍了在Qemu虚拟机中配置NFS挂载的过程,包括服务端的NFS服务器安装、配置和启动,客户端的DHCP脚本添加和开机脚本修改,以及在Qemu中挂载NFS、测试连通性和解决挂载失败的方法。
270 0
内核实验(四):Qemu调试Linux内核,实现NFS挂载
|
4月前
|
Ubuntu Linux 测试技术
在Linux中,已知 apache 服务的访问日志按天记录在服务器本地目录/app/logs 下,由于磁盘空间紧张现在要求只能保留最近7天的访问日志,请问如何解决?
在Linux中,已知 apache 服务的访问日志按天记录在服务器本地目录/app/logs 下,由于磁盘空间紧张现在要求只能保留最近7天的访问日志,请问如何解决?
|
4月前
|
应用服务中间件 Linux nginx
在Linux中,如何统计ip访问情况?分析 nginx 访问日志?如何找出访问页面数量在前十位的ip?
在Linux中,如何统计ip访问情况?分析 nginx 访问日志?如何找出访问页面数量在前十位的ip?
|
4月前
|
运维 Ubuntu 安全
在Linux中,如何配置NFS共享?
在Linux中,如何配置NFS共享?
|
4月前
|
JavaScript Linux 应用服务中间件
【Azure 应用服务】FTP 部署 Vue 生成的静态文件至 Linux App Service 后,访问App Service URL依旧显示Azure默认页面问题
【Azure 应用服务】FTP 部署 Vue 生成的静态文件至 Linux App Service 后,访问App Service URL依旧显示Azure默认页面问题
|
4月前
|
机器学习/深度学习 Ubuntu Linux
在Linux中,如何按照该要求抓包:只过滤出访问http服务的,目标ip为192.168.0.111,一共抓1000个包,并且保存到1.cap文件中?
在Linux中,如何按照该要求抓包:只过滤出访问http服务的,目标ip为192.168.0.111,一共抓1000个包,并且保存到1.cap文件中?
|
4月前
|
存储 Linux 网络安全
【Azure 存储服务】如何把开启NFS 3.0协议的Azure Blob挂载在Linux VM中呢?(NFS: Network File System 网络文件系统)
【Azure 存储服务】如何把开启NFS 3.0协议的Azure Blob挂载在Linux VM中呢?(NFS: Network File System 网络文件系统)
|
4月前
|
JavaScript Linux 容器
【Azure 应用服务】NodeJS项目部署在App Service For Linux环境中,部署完成后应用无法访问
【Azure 应用服务】NodeJS项目部署在App Service For Linux环境中,部署完成后应用无法访问
|
4月前
|
监控 网络协议 Linux
在Linux中,如何使用 tcpdump 嗅探 80 端口的访问看看谁最⾼?
在Linux中,如何使用 tcpdump 嗅探 80 端口的访问看看谁最⾼?