搭建一个Windows也能用的nfs服务

1.背景

经常会使用到网络文件系统,因为可以很方便在本地取用网络上的文件,除了常见的FTP/Samba外,NFS(Network File System)也是个很好用的服务,经常会用在工作和生活中。

如果你是使用Linux操作系统的话,你会发现NFS真的很方便!

2.服务器搭建

准备一台CentOS服务器,首先禁用系统的selinux服务:

# 永久关闭selinux
sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/sysconfig/selinux
# 临时关闭selinux
setenforce 0

在服务器上使用以下命令安装nfs服务:

yum -y install rpcbind nfs-utils

创建一个目录,用于nfs服务端的目录,后面我们将使用nfs共享此目录:

mkdir -p /nfs/share
# 为创建的目录赋予组权限,不然会报权限错误
chown -R nfsnobody.nfsnobody /nfs/share

修改配置文件:

vim /etc/exports

将下面内容粘贴进去,请将其中的网段修改为自己的网段:

/nfs/share 192.168.31.0/24(rw,sync,insecure,no_subtree_check,no_root_squash)
搭建一个Windows也能用的nfs服务

设置此网段是由于nfs没有密码验证机制,需要通过限定ip访问达到一定的安全。同样地,也可以将上面的网段修改为ip地址,表示仅此ip能访问nfs共享服务。

配置的参数选项可参考如下:

搭建一个Windows也能用的nfs服务

完成后,保存退出!然后设置启动和开机自启动:

# 启动
systemctl start rpcbind.service
systemctl start nfs.service

# 设置开机启动
systemctl enable rpcbind.service
systemctl enable nfs.service

防火墙开放端口:

firewall-cmd --add-port={111,2049,30001,30002,30003,30004}/tcp --permanent
firewall-cmd --add-port={111,1011,2049,30001,30002,30003,30004}/udp --permanent
firewall-cmd --reload

为NFS固定随机端口,修改/etc/sysconfig/nfs配置文件

vim /etc/sysconfig/nfs

在末尾添加:

RQUOTAD_PORT=30001
LOCKD_TCPPORT=30002
LOCKD_UDPPORT=30002
MOUNTD_PORT=30003
STATD_PORT=30004

修改/etc/modprobe.d/lockd.conf配置文件,末尾添加:

options lockd nlm_tcpport=30002
options lockd nlm_udpport=30002

重启并检查一下端口:

systemctl restart nfs-config
systemctl restart nfs-idmap
systemctl restart nfs-lock
systemctl restart nfs-server
ss -tnlp | grep -E "3000|111|2049"

搭建一个Windows也能用的nfs服务

3.Linux客户端挂载

使用Linux客户端来与服务器建立链接,将服务端共享的文件夹映射到本地目录中。

yum -y install nfs-utils

查看服务器NFS共享信息:

showmount -e 192.168.31.95
搭建一个Windows也能用的nfs服务
  • 临时挂载
# 创建一个临时挂载点
mkdir -p /share
# 挂载
mount 192.168.31.95:/nfs/share /share

查看挂载信息:

df -hT
搭建一个Windows也能用的nfs服务
  • 永久挂载(开机自动挂载)
vim /etc/fstab

在最后一行加上以下内容:

192.168.31.95:/nfs/share        /share          nfs     defaults        0 0
搭建一个Windows也能用的nfs服务
# 如果没有报错,说明成功
mount -a

接下来就可以进行文件拷贝测试了。

4.Windows挂载

首先在开始菜单中找到”启用或关闭Windows功能”

搭建一个Windows也能用的nfs服务

找到NFS客户端,然后启用

搭建一个Windows也能用的nfs服务

使用带管理员权限的命令提示符,执行命令:

showmount -e 192.168.31.95
搭建一个Windows也能用的nfs服务

挂载:

mount 192.168.31.95:/nfs/share X:

挂载到一个没被使用的盘符上,比如X:

搭建一个Windows也能用的nfs服务

打开我的电脑,发现已经成功挂载上了。

搭建一个Windows也能用的nfs服务

5.常用命令

exportfs

  • -a 重新启动/etc/exportfs 中的内容

  • -r: 重新读取/etc/exportfs 中的信息,并同步更新/etc/exportfs 、/var/lib/nfs/xtab

  • -u :卸载单一目录(和 -a 使用 就是卸载所有的/etc/exportfs 文件中的目录)

  • -v:显示详细信息

exportfs -rv :重新共享所有的目录并输出详细信息,NFS服务端使用重新挂载。
服务端执行后,客户端会重新挂载共享目录。

exportfs -au : 卸载所有共享目录,在NFS 服务器上使用,客户端没有作用。
   服务端执行后,客户端会卸载共享目录,代表umount

showmount

  • -a 显示已经与客户端连接的目录信息
  • ip或者Hostname 显示此IP地址分享出来的目录

rpcinfo

查看rpm执行信息,可以用于检查rpm运行情况的工具,利用rpcinfo -p可以查看出rpc开启端口所提供的程序有哪些。

搭建一个Windows也能用的nfs服务

往期推荐:

  1. CentOS 7系统优化脚本

  2. 搭建个监控它不香吗?Prometheus+Grafana

  3. Vmware vCenter 6.7部署安装全过程


原文始发于微信公众号(运维贼船):搭建一个Windows也能用的nfs服务

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/177105.html

(0)
小半的头像小半

相关推荐

发表回复

登录后才能评论
极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!