mount 命令(一) —— Liunx下设置共享文件夹,用于mount挂载文件

2022-08-05 10:34:43 浏览数 (1)

磁盘挂载是同步共享、同步文件的好方法,默认文件夹不具有共享能力,本文记录将Linux中文件夹设置成可mount的方法。

预备条件

使用Win 10 专业版
  • Win 10 事实上都是内置了NFS服务的,使用专业版或企业版直接带有NFS
  • 家庭版没有开启这部分功能,需要升级为专业版或企业版
开启NFS服务
  • Win默认NFS服务是关闭的
  • 需要手动开启
  • 开启NFS服务

目标

我们想把192.168.10.80 Linux服务器中的 /disk/zhangyiwei文件夹共享,以便在Windows 10系统中加载。

  • 当前80服务器中没有可见的 /disk/zhangyiwei文件夹可用于挂载

设置共享文件夹

  • 需要Linux 主机安装 nfs 服务
代码语言:javascript复制
sudo apt install nfs-kernel-server
yum install -y nfs-utils

共享文件夹在/etc/exports文件中配置,在文件末尾添加:

代码语言:javascript复制
/root/zhangyiwei/ 192.168.10.219(rw,no_root_squash,no_all_squash,sync)

  • /root/zhangyiwei/ 为共享的路径
  • 192.168.10.219 为主机名,一般用以下设置
    • 可以使用ip或网络号:例如 192.168.12.20 或者192.168.12.0/24 或者192.168.100.0/255.255.255.0都可以
    • 可以使用主机名,但是这主机名必须在/etc/hosts内配置
  • 访问权限选项
    • rw表示(read-write)可读写,ro表示(read-only)只读
  • 用户映射选项
    • all_squash:将远程访问的所有普通用户及所属组都映射为匿名用户或用户组(nfsnobody);
    • no_all_squash:与all_squash取反(默认设置);
    • root_squash:将root用户及所属组都映射为匿名用户或用户组(默认设置);
    • no_root_squash:与rootsquash取反;
    • anonuid=xxx:将远程访问的所有用户都映射为匿名用户,并指定该用户为本地用户(UID=xxx);
    • anongid=xxx:将远程访问的所有用户组都映射为匿名用户组账户,并指定该匿名用户组账户为本地用户组账户(GID=xxx);
  • 其它选项
    • secure:限制客户端只能从小于1024的tcp/ip端口连接nfs服务器(默认设置);
    • insecure:允许客户端从大于1024的tcp/ip端口连接服务器;
    • sync:将数据同步写入内存缓冲区与磁盘中,效率低,但可以保证数据的一致性;
    • async:将数据先保存在内存缓冲区中,必要时才写入磁盘;
    • wdelay:检查是否有相关的写操作,如果有则将这些写操作一起执行,这样可以提高效率(默认设置);
    • no_wdelay:若有写操作则立即执行,应与sync配合使用;
    • subtree:若输出目录是一个子目录,则nfs服务器将检查其父目录的权限(默认设置);
    • no_subtree:即使输出目录是一个子目录,nfs服务器也不检查其父目录的权限,这样可以提高效率;

重新加载/etc/exports文件

修改完/etc/exports文件后并不能即时生效,需要命令(需要root权限):

代码语言:javascript复制
sudo exportfs -a

重启nfs服务

代码语言:javascript复制
sudo service nfs-kernel-server restart

测试

使用命令 showmount -e IP可以查看主机中可mount的文件夹

代码语言:javascript复制
$ showmount -e 192.168.10.80
Export list for 192.168.10.80:
/disk/zhangyiwei *
/disk/lujunyi    *

常用命令

  • 显示已经mount到本机nfs目录的客户端机器。
代码语言:javascript复制
sudo showmount -e localhost

  • showmount命令的用法:

参数

作用

-e

显示NFS服务器的共享列表

-a

显示本机挂载的文件资源的情况NFS资源的情况

-v

显示版本号

  • 将配置文件中的目录全部重新export一次!无需重启服务。
代码语言:javascript复制
sudo exportfs -rv

  • 查看NFS的运行状态
代码语言:javascript复制
sudo nfsstat

  • 查看rpc执行信息,可以用于检测rpc运行情况
代码语言:javascript复制
sudo rpcinfo

  • 查看网络端口,NFS默认是使用111端口。
代码语言:javascript复制
sudo netstat -tu -4

参考资料

  • https://blog.csdn.net/weixin_41806245/article/details/91355467

0 人点赞