Linux 共享文件夹

Linux 共享文件夹方法 使用 NFS 服务端设置共享文件夹 使用 NFS 客户端挂载共享文件夹 nfs 使用 rpc 协议 安装包名 ubuntu nfs kernel server 和 rpcbind centos nfs utils 和 rpcbind 旧版用的 portmap 注 NFS 第 2 3 4 版本有些区别 信息查看查看软件是否安装 查看 rpm 包安装的软件 rpm qa grepnfs centos7 查看 dpkg 包安装的软件 dpkg la grepnfs 查看以 yum 方式安装的软件 yum

信息查看

查看软件是否安装

# 查看rpm包安装的软件 rpm -qa | grep nfs # centos7 # 查看dpkg包安装的软件 dpkg -la | grep nfs # 查看以yum方式安装的软件 yum list installed | grep nfs 

查看nfs版本

# 查看所有信息“Server nfs v3” nfsstat -v | grep nfs # 仅列出NFS服务器端状态 nfsstat -s # 仅列出NFS客户端状态; nfsstat -c # 查看已加载的nfs文件系统状态 nfsstat -m 

查看rpc协议绑定与端口

# 列出所有在host用portmap注册的RPC程序,如果没有指定host,就查找本机上的RPC程序。 rpcinfo -p rpcinfo -p 192.168.137.1 

查看nfs共享情况

# -e --exports:显示服务器上的共享目录(无host则为自身) showmount -e 192.168.200.1 # -d --directories:显示服务器上已被客户端挂载的目录(无host则为自身) showmount -d 192.168.200.1 # 显示服务器上客户端挂载情况(无host则为自身) showmount -a 192.168.200.1 

设置NFS服务器

需求:足够新的内核和足够新的 nfs包版本

设置共享配置/etc/exports

参数 说明(详细参见man exports
ro 该目录是共享只读的;客户端机器将无法编写它。这是默认设置。
rw 客户端机器将具有对该目录的读写访问权限
sync 默认情况下,除了最新版本(1.11 版)之外的所有exportfs 命令都将使用异步行为,当 NFS 完成处理时,告诉客户端机器文件写入完成 – 即已写入稳定存储写入文件系统。如果服务器重新启动,此行为可能会导致数据损坏,而sync选项可防止这种情况发生。
/usr/local 192.168.0.0/255.255.255.0(ro) /home 192.168.0.1(ro) 192.168.0.2(ro) /home/test 192.168.0.1(rw) 192.168.0.2(rw) 

强制读取配置文件:exportfs -ra(此命令似乎不完全有效,建议重启nfs服务)
注:当配置共享软链接时,会显示实际文件。

访问过滤/etc/hosts.allow和/etc/hosts.deny

  1. 它首先检查hosts.allow机器是否符合此处列出的规则。如果是,则允许机器访问。
  2. 如果机器与服务器中的条目不匹配, hosts.allow则检查 hosts.deny客户端是否匹配那里列出的规则。如果是,则拒绝机器访问。
  3. 如果客户端与任一文件中的列表均不匹配,则允许访问。

示例:service: host [or network/netmask] , host [or network/netmask]

lockd:ALL mountd:ALL rquotad:ALL statd:ALL lockd: 192.168.0.1 , 192.168.0.2 rquotad: 192.168.0.1 , 192.168.0.2 mountd: 192.168.0.1 , 192.168.0.2 statd: 192.168.0.1 , 192.168.0.2 # 端口映射 portmap: 192.168.0.1 , 192.168.0.2 

控制nfs服务器

# nfs服务的真实名称,其他两个名称为在不同操作系统的别名 systemctl restart nfs-server # 查看服务名称详情 systemctl show -pNames nfs-server # 查看服务详细配置 systemctl show nfs-server # 一般在centos下(nfs-utils) systemctl start nfs systemctl stop nfs systemctl status nfs systemctl enable nfs systemctl disable nfs # 一般在ubuntu下(nfs-kernel-server) /etc/init.d/nfs-kernel-server service nfs-kernel-server status 

客户端挂载共享文件夹

mount -t nfs 192.168.200.1:/server_test_path /local_path # 挂载windows共享文件夹 mount -t cifs -o user=administrator,pass=linux //192.168.200.1/data /local_path 

异常情况

  1. 当mount时:…No such file or directory
    可能原因:本地挂载点已被挂载。

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

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/199476.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月20日 下午12:54
下一篇 2026年3月20日 下午12:54


相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号