linux主机搭建NFS服务器

这篇具有很好参考价值的文章主要介绍了linux主机搭建NFS服务器。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

NFS(Network File System,网络文件系统)

它允许网络中的计算机(不同的计算机、不同的操作系统)之间通过TCP/IP网络共享资源,主要在unix系列操作系统上使用。在NFS的应用中,本地NFS的客户端应用可以透明地读写位于远端NFS服务器上的文件,就像访问本地文件一样。

NFS服务器可以让PC将网络中的NFS服务器共享的目录挂载到本地端的文件系统中,而在本地端的系统中看来,那个远程主机的目录就好像是自己的一个磁盘分区一样。

因为NFS的端口并不固定,导致客户端连接连接服务器产生问题,原因就在于客户端并连接服务器是需要知道服务器端的端口才能进行连接,

为了解决这一办法,此时就需要RPC(Remote Procedure Call,远程过程调用)的服务,当服务器在启动NFS时会随机选取数个端口号,并主动向RPC注册,所以RPC知道每个NFS功能所对应的端口号,RPC将端口号通知给客户端,让客户端可以连接到正确的端口上去。RPC采用固定端口号port 111来监听客户端的需求并向客户端响应正确的端口号。

即nfs服务需要搭配RPC服务运行才行

搭建NFS服务器要求

架设一台NFS服务器,并按照以下要求配置
1、开放/nfs/shared目录,供所有用户查询资料
2、开放/nfs/upload目录,为192.168.xxx.0/24网段主机可以上传目录,并将所有用户及所属的组映射为nfs-upload,其UID和GID均为2100
3、将/home/tom目录仅共享给192.168.xxx.xxx这台主机,并只有用户tom可以完全访问该目录

配置

主配置文件进行配置

主配置文件:/etc/exports

分析:

1、创建/nfs/shared目录,供所有用户查询资料,则在配置文件中写入共享的目录及权限为只读(ro权限)即可

2、创建/nfs/upload目录,为192.168.217.0/24网段主机可以上传目录,则该共享目录权限给读写权限(rw权限),因为所有用户及所属的组映射为nfs-upload,其UID和GID均为210,则写入all_squash ,anonuid=2100, anongid=2100

3、创建home/tom目录,写入只有192.168.217.133/24(客户端ip),只有用户tom可以完全访问该目录,则写入rw权限,

配置环境:

[root@server ~]# systemctl stop firewalld
[root@server ~]# setenforce 0
[root@server ~]# yum install nfs-utils rpcbind -y

1、开放/nfs/shared目录,供所有用户查询资料  

服务端:

[root@server ~]# systemctl start nfs-server  把rpc和nfs服务合并了直接启动即可
[root@server ~]# mkdir -p /nfs/shared #先创一个目录文件
[root@server ~]# touch /nfs/shared/资料{a..f}  #创几个资料文件做模拟
[root@server ~]# ll /nfs/shared/ 查看server端的文件
总用量 0
-rw-r--r--. 1 root root 0 1月  13 23:52 资料a
-rw-r--r--. 1 root root 0 1月  13 23:52 资料b
-rw-r--r--. 1 root root 0 1月  13 23:52 资料c
-rw-r--r--. 1 root root 0 1月  13 23:52 资料d
-rw-r--r--. 1 root root 0 1月  13 23:52 资料e
-rw-r--r--. 1 root root 0 1月  13 23:52 资料f
[root@server ~]# vim /etc/exports 打开nfs的配置文件
/nfs/shared     *(ro)   
要分享的目录   *代表所有用户 ()中的ro代表只读权限
~                                                                               
~                                                                               
~       
[root@server ~]# exportfs -ra  导出配置文件生效
[root@server ~]# showmount -e  查看共享的目录
Export list for server:
/nfs/shared *

客户端:

[root@Node1 ~]# showmount -e 192.168.217.132  显示服务器分享过来的目录
Export list for 192.168.217.132:
/nfs/shared *
[root@Node1 ~]# mkdir /test   准备搭建文件系统
[root@Node1 ~]# mount 192.168.20.133:/nfs /test  
[root@Node1 ~]# cd /test/ 查看是否可以看到
[root@Node1 test]# ll
总用量 0
drwxr-xr-x. 2 root root 96 11月  1月  13 shared
[root@Node1 test]# ll shared/
总用量 0
-rw-r--r--. 1 root root 0 1月  13 23:52 资料a
-rw-r--r--. 1 root root 0 1月  13 23:52 资料b
-rw-r--r--. 1 root root 0 1月  13 23:52 资料c
-rw-r--r--. 1 root root 0 1月  13 23:52 资料d
-rw-r--r--. 1 root root 0 1月  13 23:52 资料e
-rw-r--r--. 1 root root 0 1月  13 23:52 资料f

2、上传文件的操作

服务端:

[root@server ~]# mkdir /nfs/upload
[root@server ~]# touch /nfs/upload/资料{1..5}
[root@server ~]# ll /nfs/upload/
总用量 0
-rw-r--r--. 1 root root 0 1月  13 00:23 资料1
-rw-r--r--. 1 root root 0 1月  13 00:23 资料2
-rw-r--r--. 1 root root 0 1月  13 00:23 资料3
-rw-r--r--. 1 root root 0 1月  13 00:23 资料4
-rw-r--r--. 1 root root 0 1月  13 00:23 资料5
[root@server ~]# vim /etc/exports
/nfs/shared     *(ro)
/nfs/upload     192.168.217.0/24(rw,all_squash,anonuid=210,anongid=210)
[root@server ~]# groupadd -g 210 nfs-upload
[root@server ~]# useradd -u 210 -g 210 nfs-upload        # 或者直接创建系统用户(useradd -r -u 210 nfs-upload)
[root@server ~]# showmount -e
Export list for server:
/nfs/shared *
/nfs/upload 192.168.217.0/24

 同时需要注意/nfs/uplaod 的权限问题,要想让映射用户可以用创建文件,那么就需要其他人的读权限。

[root@server home]# chmod o+w /nfs/upload/
[root@server home]# ll /nfs/
总用量 0
drwxr-xr-x. 2 root root 96 1月  13 23:52 shared
drwxr-xrwx. 2 root root 81 1月  13 00:23 upload

客户端:

客户端192.168.20.133可以访问到,

[root@Node1 test]# showmount -e 192.168.20.133
Export list for 192.168.20.133:
/nfs/shared *
/nfs/upload 192.168.100.0/24 
[root@Node1 test]# mount 192.168.20.133:/nfs/ /test/ 通过读写方式挂载
[root@Node1 test]# cd /test/
[root@Node1 test]# ll upload/
总用量 0
-rw-r--r--. 1 root root 0 1月  13 00:23 资料1
-rw-r--r--. 1 root root 0 1月  13 00:23 资料2
-rw-r--r--. 1 root root 0 1月  13 00:23 资料3
-rw-r--r--. 1 root root 0 1月  13 00:23 资料4
-rw-r--r--. 1 root root 0 1月  13 00:23 资料5
[root@Node1 upload]# touch a
[root@Node1 upload]# ll
总用量 0
-rw-r--r--. 1 root root 0 1月  13 00:23 资料1
-rw-r--r--. 1 root root 0 1月  13 00:23 资料2
-rw-r--r--. 1 root root 0 1月  13 00:23 资料3
-rw-r--r--. 1 root root 0 1月  13 00:23 资料4
-rw-r--r--. 1 root root 0 1月  13 00:23 资料5
-rw-r--r--. 1 210 210 0 1月  13 00:35 a

可以看到新建的文件的uid和gid都是210.

3、将/home/tom目录仅共享给192.168.217.133这台主机,并只有用户tom可以完全访问该目录

服务端:

把共享文件的所属用户和所属组改为tom即可

[root@server home]# useradd tom    新建一个tom用户
[root@server home]# vim /etc/exports    编辑配置文件添加这一行
/nfs/tom        192.168.217.133/24(rw)
[root@server home]# exportfs -ra        重载配置
[root@server home]# showmount -e
Export list for server:
/nfs/shared *
/nfs/tom    192.168.217.133/24
/nfs/upload 192.168.217.0/24

客户端:

我们先使用fox用户看看是否可以完全访问tom目录很明显是不可以的

[root@Node1 test]# ll
总用量 0
drwxr-xr-x. 2 root root 96 1月  13 23:52 shared
drwxr-xr-x. 2 2101 2101  6 1月  13 00:35 tom
drwxr-xrwx. 2 root root 90 1月  13 00:35 upload
[root@Node1 test]# su fox
[fox@Node1 test]$ cd tom/
[fox@Node1 tom]$ touch a
touch: 无法创建 'a': 权限不够
 

创建tom用户切换后尝试:文章来源地址https://www.toymoban.com/news/detail-793581.html

[root@Node1 tom]# useradd -u 2101 tom
[root@Node1 tom]# su tom
[tom@Node1 tom]$ touch b
[tom@Node1 tom]$ ll
总用量 0
-rw-rw-r--. 1 tom    tom    0 1月  13 00:35 b
-rw-r--r--. 1 root   root   0 1月  13 00:35 tom1
-rw-r--r--. 1 root   root   0 1月  13 00:35 tom2
[tom@Node1 tom]$ 

到了这里,关于linux主机搭建NFS服务器的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包赞助服务器费用

相关文章

  • NFS服务器简介、在Linux上搭建NFS服务器和客户端,使用autofs进行NFS客户端自动挂载和卸载详解

    NFS服务器简介、在Linux上搭建NFS服务器和客户端,使用autofs进行NFS客户端自动挂载和卸载详解

    目录 一.NFS服务器简介 1.含义简介: 2.工作原理简介: 3.RPC服务与NFS服务配合使用 二.NFS配置文件参数命令介绍 1.主配置文件/etc/exports 2.日志文件/var/lib/nfs/ 3.showmount命令 三.主配置文件/etc/exports挂载写法 1.配置nfs服务端和客户端 2.windows客户端挂载测试 3.权限介绍 (1)rw/ro,服

    2024年02月04日
    浏览(14)
  • ROS主机搭建NFS服务器,虚拟机通过挂载访问及修改主机文件

    ROS主机搭建NFS服务器,虚拟机通过挂载访问及修改主机文件

       本文主要介绍在ROS主机中搭建NFS服务器,虚拟机(从机)通过nfs挂载的方式访问及修改主机中文件的方法    一、ROS主机NFS服务器搭建:    若机器人配有显示屏,此部分可直接在机器人上操作,否则,可通过SSH远程登录的方式,在虚拟机上进行远程登录后操作,下

    2023年04月22日
    浏览(20)
  • Linux之NFS服务器

    Linux之NFS服务器

    目录 Linux之NFS服务器 简介 NFS背景介绍 生产应用场景 NFS工作原理 NFS工作流程图 流程 NFS的安装 安装nfs服务 安装rpc服务 启动rpcbind服务同时设置开机自启动 启动nfs服务同时设置开机自启动 NFS的配置文件 主配置文件分析         示例 案例 --- 建立NFS服务器,使用客户端访问

    2024年02月10日
    浏览(12)
  • Linux系统安装NFS服务器

    Linux系统安装NFS服务器

    NFS是一种网络文件系统,英文全称Network File System,通过NFS可以让不同的主机系统之间共享文件或目录。通过NFS,用户可以直接在本地NFS客户端读写NFS服务端上的文件,是非常好的共享存储工具。本篇文章将介绍如何在CentOS7上安装NFS服务器,包括服务端和客户端安装两部分。

    2024年01月21日
    浏览(4)
  • 服务器(linux)磁盘挂载nfs

    服务器(linux)磁盘挂载nfs

    笔者项目中此前有这么个需求,需要支持文件进行预览,文件的存储位置都在后端服务器上,想要支持预览是比较困难的(若是在前端服务器上则比较方便),因为无法做到跨服务器之间的静态文件预览,然后解决这个问题的思路就设定在了将后端服务器的文件所在位置挂载

    2024年02月04日
    浏览(8)
  • Linux - 进阶 NFS服务器 详解网络共享服务器 ( 预备知识)

               N  :  就是 网络 Network          F   :     就是  File  文件         S   :  system          简称为 网络文件系统                 官方   :               NFS 是一种古老的用于UNIX/LINUX主机之间进行文件共享的协议              Network  File  System 网

    2024年02月13日
    浏览(6)
  • Linux - 进阶 NFS 服务器 NFS文件权限与共享目录权限主次问题

            #    NFS 的权限本身没有用户密码和账户验证登录过程               ( 你可以回忆下,我们前面访问远程共享目录的时候,是没有输入账户,密码啥的,是没                 有这个步骤的)              所以客户端登录到服务器后,会把客户端的

    2024年02月04日
    浏览(7)
  • 【Linux】01 Ubantu安装NFS服务器及其使用

    在Ubantu终端执行以下命令即可安装: sudo apt install nfs-kernel-server  sudo mkdir /home/root/linux/nfs 使用如下命令打开 nfs 配置文件/etc/exports: sudo vi /etc/exports 打开/etc/exports 以后在后面添加如下所示内容: /home/root/linux/nfs  *(rw,sync,no_root_squash)  解析 :          /home/root/linux/nfs :指

    2024年01月21日
    浏览(10)
  • Linux/centos上如何配置管理NFS服务器?

    Linux/centos上如何配置管理NFS服务器?

    NFS(Network File System) 即文件操作系统; NFS 允许网络中不同计算机相互之间共享资源。 1980年由 SUN 发展出来的在 UNIXLinux 系统间实现文件共享的一种方法; 是一种文件系统协议,支持应用程序在客户端通过网络存取位于服务器磁盘中的数据; NFS 只提供网络文件共享,不提供

    2024年02月04日
    浏览(12)
  • Linux配置主机名-使用主机名访问服务器

    Linux配置主机名-使用主机名访问服务器

    主要需要对Hosts文件进行操作, Hosts是一个没有扩展名的系统文件,可以用记事本等工具打开,其作用就是将一些常用的网址域名与其对应的IP地址建立一个关联“数据库”, 先将自己的主机名设置成 有意义,别人好记的样子(就像域名一样) 到时候在hosts文件里面设置好主

    2024年01月22日
    浏览(30)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包