侯体宗的博客
  • 首页
  • Hyperf版
  • beego仿版
  • 人生(杂谈)
  • 技术
  • 关于我
  • 更多分类
    • 文件下载
    • 文字修仙
    • 群聊
    • 九宫格抽奖
    • 拼图
    • 消消乐
    • 相册

磁盘共享NFS可分散式的网络文件系统详解,Linux远程挂载网络磁盘详解及步骤

linux  /  管理员 发布于 3年前   509

前言

在Linux或Windows乃至其他的系统,我们经常会需要进行磁盘的挂载。通常从挂载的方式的上分为本地挂载和远程挂载。Linux的本地挂载就不介绍了,这篇文章介绍的是远程挂载网络磁盘。

远程挂载网络磁盘

实际上,这个操作与使用nfs共享一个文件的方法是相同的。思路是服务端将一块磁盘空间本地挂载到一个目录,然后通过网络使用nfs将这个目录进行共享,客户端最后将服务端共享的目录挂载到自己本地的一个目录,这样就使客户端拥有了一块网络磁盘。

优点是:服务端的同一块磁盘可以挂载到不同的客户端,实现文件的共享;可以扩充客户端的存储空间。

缺点是:依赖网络,当网络联通失败,客户端挂载的网络磁盘会无法使用。

做网络挂载,服务端与客户端网络要联通,最好是在同一局域网内,还要注意防火墙的设置。

NFS简介

Sun公司于1984年发布。

NFS 是一种可分散式的网络文件系统。

可以通过网络使不同的机器、不同的操作系统,能够分享资料,使客户端能通过网络访问并分享文件到位于服务端的磁盘中。

NFS在文件传送或信息传送过程中依赖于RPC协议。RPC负责负责信息的传输。


服务端操作

【1】安装NFS程序

yum -y install nfs*

rpcbind,在centos6以前自带的yum源中为portmap。

使用yum安装nfs时会下载依赖,因此只要下载nfs即可,无需再下载rpcbind.


【2】查看是否安装了nfs与rpcbind

rpm -qa |grep nfs

rpm -qa |grep rpcbind


【3】创建共享的目录并共享

如要共享的目录已存在请跳过创建

/mnt/nfs01 10.10.10.0/24(rw,no_root_squash,no_all_squash,sync)

************************注意,IP和权限之前不能有空格


配置

/mnt/nfs01      10.10.10.0/24(rw,no_root_squash,no_all_squash,sync)

要共享的目录     要分享给的客户端   客户端对此共享目录的权限


----------

客户端指定

192.168.1.125           指定特定的的IP可以共享nfs目录

*                       指定所有网段及ip都可以共享nfs目录

192.168.1.0/24          指定子网中的所有主机都可以共享nfs目录

2018fs.wxyonghe.com     指定域名的主机可以共享nfs目录


----------

权限

rw                      可读可写     

ro                      只读(还与文件系统的rwx有关)

sync                   数据同步写入到内存与硬盘中

async                   数据先暂存于内存当中,不会直接写入硬盘

wdelay                  当有写操作,就会检查是否有相关的写操作,并在一起执行(默认设置)

no_wdelay               当有写操作就立即执行,通常要与sync配合使用

root_squash             当客户端登陆NFS的身份为root用户时,将客户端的root用户及所属组都映射为匿名用户或用户组(默认设置) 

no_root_squash         使客户端可以使用root身份及权限来操作共享的目录

all_squash              无论客户端登陆NFS的身份为何,都将映射为匿名用户

no_all_squash           无论客户端登陆NFS的身份为何,都将映射为root用户(默认设置)

anonuid                 将远程访问的所有用户都映射为匿名用户,并指定该用户为本地用户

anongid                 将远程访问的所有用户组都映射为匿名用户组账户,并指定该匿名用户组账户为本地用户组账户

secure                  使客户端只能从小于1024的tcp/ip端口连接服务端(默认设置)

insecure                允许客户端从大于1024的tcp/ip端口连接服务端

subtree                 当共享的目录是一个子目录,服务端会检查其父目录的权限(默认设置)

no_subtree              当共享的目录是一个子目录,服务端不检查其父目录的权限


【4】启动nfs,rpcbind,并设为开机自启

(centos7)

systemctl start nfs

systemctl start rpcbind

systemctl enable nfs

systemctl enable rpcbind


(centos6)

service nfs start

service rpcbind start


【5】查看是否共享成功

showmount -e localhost

可看到共享的目录及客户端,即为成功


客户端操作

【1】安装NFS程序

yum -y install nfs*


【2】启动nfs

(centos7)

systemctl start nfs

systemctl start rpcbind

systemctl enable nfs

systemctl enable rpcbind


(centos6)

service nfs start

service rpcbind start

chkconfig nfs on

chkconfig rpcbind on

【3】创建挂载目录

mkdir /data/nfsone

【4】查看是否共享成功

showmount -e nfs服务端IP

showmount -e 10.10.20.212


【5】网络挂载

mount -t nfs -o nolock 服务端IP:共享目录绝对路径 本地挂载目录

mount -t nfs -o nolock 10.10.20.212:/mnt/nfs01 /data/nfsone

centos7的nfs默认使用的是nfs4,所以mount -t 无需指定nfs4也可以


【6】查看是否成功

df -Th


【7】卸载网络磁盘    与卸载本地挂载相同

umount /data/nfsone

或

umount 10.10.20.212:/mnt/nfs01



  • 上一条:
    Linux下的tar压缩解压缩命令详解
    下一条:
    磁盘共享,CentOS 7设置Samba共享目录步骤
  • 昵称:

    邮箱:

    0条评论 (评论内容有缓存机制,请悉知!)
    最新最热
    • 分类目录
    • 人生(杂谈)
    • 技术
    • linux
    • Java
    • php
    • 框架(架构)
    • 前端
    • ThinkPHP
    • 数据库
    • 微信(小程序)
    • Laravel
    • Redis
    • Docker
    • Go
    • swoole
    • Windows
    • Python
    • 苹果(mac/ios)
    • 相关文章
    • ubuntu 22.04系统中报错:Python 3.6 is no longer supported by the Python core team...解决方式(0个评论)
    • ubuntu 22.04系统中安装cockpit-podman(0个评论)
    • ubuntu 22.04系统中安装cockpit web图形服务器管理工具(0个评论)
    • 在Unix/Linux系统中怎么获取重启历史记录(0个评论)
    • 在Linux/Unix/MacOSX系统中怎么找出应用程序正在监听端口80及ipv4/ipv6(0个评论)
    • 近期文章
    • Laravel 10.13版本发布(0个评论)
    • 在github创建task的同时创建分支流程步骤(0个评论)
    • 在go语言中以邮件标题中获取SPF和DMARC,来判断是否为垃圾邮件之垃圾邮件过滤器功能实现(0个评论)
    • 在go语言中使用attr字段标签提取XML属性数据示例(0个评论)
    • 在laravel中介绍一个生成假数据的PHP库:FakerPHP(0个评论)
    • 在laravel框架中对环境配置文件的加载过程步骤浅析(0个评论)
    • Laravel 10.12版本发布(0个评论)
    • 在go语言中如何记录每个HTTP请求到你的Web服务器、日志记录器?(0个评论)
    • 在Go语言中如何查找一个IP地址的网络地址?(0个评论)
    • ELK + Filebeat 搭建日志系统流程步骤(0个评论)
    • 近期评论
    • 博主 在

      2023年国务院办公厅春节放假通知:1月21日起休7天中评论 @ xiaoB 你只管努力,剩下的叫给天意;天若有情天亦老,..
    • xiaoB 在

      2023年国务院办公厅春节放假通知:1月21日起休7天中评论 会不会春节放假后又阳一次?..
    • BUG4 在

      你翻墙过吗?国内使用vpn翻墙可能会被网警抓,你需了解的事中评论 不是吧?..
    • 博主 在

      go语言+beego框架中获取get,post请求的所有参数中评论 @ t1  直接在router.go文件中配就ok..
    • Jade 在

      如何在MySQL查询中获得当月记录中评论 Dear zongscan.com team, We can skyroc..
    • 2016-10
    • 2016-11
    • 2017-07
    • 2017-10
    • 2017-11
    • 2018-01
    • 2018-02
    • 2020-03
    • 2020-04
    • 2020-05
    • 2020-06
    • 2021-02
    • 2021-03
    • 2021-04
    • 2021-06
    • 2021-07
    • 2021-08
    • 2021-09
    • 2021-10
    • 2021-11
    • 2021-12
    • 2022-01
    • 2022-03
    • 2022-04
    • 2022-08
    • 2022-11
    • 2022-12
    • 2023-01
    • 2023-02
    • 2023-03
    Top

    Copyright·© 2019 侯体宗版权所有· 粤ICP备20027696号 PHP交流群

    侯体宗的博客