首页 > 其他 > 详细

NFS服务

时间:2020-09-21 09:46:21      阅读:55      评论:0      收藏:0      [点我收藏+]

NFS服务

1 理论理解

1.1 NFS服务介绍

NFS(Network File System)即网络文件系统,是FreeBSD支持的文件系统中的一种,它允许网络中的计算机之间共享资源。在NFS的应用中,本地NFS的客户端应用可以透明地读写位于远端NFS服务器上的文件,就像访问本地文件一样。

1.2 NFS服务优点

(1) 节省本地存储空间,将常用的数据存放在一台NFS服务器上且可以通过网络访问,那么本地终端将可以减少自身存储空间的使用。

(2) 用户不需要在网络中的每个机器上都建有Home目录,Home目录可以放在NFS服务器上且可以在网络上被访问使用。

(3) 一些存储设备如软驱、CDROM和Zip(一种高储存密度的磁盘驱动器与磁盘)等都可以在网络上被别的机器使用。这可以减少整个网络上可移动介质设备的数量。

1.3 NFS常见的实际应用。

(1) 多个机器共享一台CDROM或者其他设备。这对于在多台机器中安装软件来说更加便宜跟方便。

(2) 在大型网络中,配置一台中心 NFS 服务器用来放置所有用户的home目录可能会带来便利。这些目录能被输出到网络以便用户不管在哪台工作站上登录,总能得到相同的home目录。

(3) 不同客户端可在NFS上观看影视文件,节省本地空间。

(4) 在客户端完成的工作数据,可以备份保存到NFS服务器上用户自己的路径下。

NFS是运行在应用层的协议。随着NFS多年的发展和改进,NFS既可以用于局域网也可以用于广域网,且与操作系统和硬件无关,可以在不同的计算机或系统上运行。

2 实战案例

2.1 修改主机名

选择两个机器并修改节点的主机名,第一台机器为nfs-server;第二台机器为nfs-client。

第一台机器:

[root@localhost ~]# hostnamectl set-hostname nfs-server

[root@localhost ~]# bash

第二台机器:

[root@localhost ~]# hostnamectl set-hostname nfs-client

[root@localhost ~]# bash

2.2 配置yum源

将CD设备挂载到/opt/centos目录下。

[root@localhost ~]# mount /dev/cdrom /opt/centos

 技术分享图片

配置本地YUM源文件,创建local.repo文件

[root@localhost ~]# vi /etc/yum.repos.d/local.repo

[centos7]

name=centos7

baseurl=file:///opt/centos

gpgcheck=0

enabled=1

2.3 安装NFS服务

两个节点安装NFS服务。命令如下:

nfs-server节点:

[root@nfs-server ~]# yum -y install nfs-utils rpcbind

nfs-client节点:

[root@nfs-client ~]# yum -y install nfs-utils rpcbind

注意:安装NFS服务必须要依赖RPC,所以运行NFS就必须要安装RPC。

2.4 NFS服务使用

(1) Server节点

在nfs-server节点创建一个用于共享的目录/mnt/test

编辑NFS服务的配置文件/etc/exports,在配置文件中加入一行代码

[root@nfs-server ~]# vi /etc/exports

/mnt/test 172.16.51.0/24(rw,no_root_squash,no_all_squash,sync,anonuid=501,anongid=501)

 技术分享图片

配置文件说明:

  • /mnt/test:为共享目录(若没有这个目录,请新建一个)。
  • 172.16.51.0/24:可以为一个网段,一个IP,也可以是域名。rw:read-write,可读写。
  • ro:read-only,只读。
  • sync:文件同时写入硬盘和内存。
  • async:文件暂存于内存,而不是直接写入内存。
  • no_root_squash:NFS客户端连接服务端时,如果使用的是root,那么对服务端共享的目录来说,也拥有root权限。显然开启这项是不安全的。
  • root_squash:NFS客户端连接服务端时,如果使用的是root,那么对服务端共享的目录来说,拥有匿名用户权限,通常它将使用nobody或nfsnobody身份。
  • all_squash:不论NFS客户端连接服务端时使用什么用户,对服务端共享的目录来说,都拥有匿名用户权限。
  • anonuid:匿名用户的UID(User Identification,用户身份证明)值,可以在此处自行设定。
  • anongid:匿名用户的GID(Group Identification,共享资源系统使用者的群体身份)值。

使配置完命令生效

[root@nfs-server ~]# exportfs -r

nfs-server端启动NFS服务

[root@nfs-server ~]# systemctl start rpcbind

[root@nfs-server ~]# systemctl start nfs

 技术分享图片

nfs-server端查看可挂载目录

[root@nfs-server ~]# showmount -e 172.16.51.112

 技术分享图片

(2) Client节点

在nfs-client节点,进行NFS共享目录的挂载

[root@nfs-client ~]# mount -t nfs 172.16.51.112:/mnt/test /mnt/

无反馈信息代表成功,查看挂载情况

 技术分享图片

可以看到nfs-server节点的/mnt/test目录已挂载到nfs-client节点的/mnt目录下。

2.5 验证NFS共享存储

在nfs-client节点的/mnt目录下创建一个abc.txt的文件并计算MD5值

 技术分享图片

回到nfs-server节点进行验证

 技术分享图片

可以看到server节点上和client节点上的abc.txt文件一样

NFS服务

原文:https://www.cnblogs.com/wft9/p/13703633.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!