NFS

为什么要用NFS

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

FNS的好处
  • 节省本地存储空间,将常用的数据存放在一台NFS服务器上且可以通过网络访问,那么本地终端将可以减少自身存储空间的使用。
  • 用户不需要在网络中的每个机器上都建有Home目录,Home目录可以放在NFS服务器上且可以在网络上被访问使用。
  • 一些存储设备CDROM和Zip(一种高储存密度的磁盘驱动器与磁盘)等都可以在网络上被别的机器使用。这可以减少整个网络上可移动介质设备的数量。
NFS 的基本原则是“容许不同的客户端及服务端通过一组RPC分享相同的文件系统”,它是独立于操作系统,容许不同硬件及操作系统的系统共同进行文件的分享。

NFS在文件传送或信息传送过程中依赖于RPC协议。RPC,远程过程调用 (Remote Procedure Call) 是能使客户端执行其他系统中程序的一种机制。NFS本身是没有提供信息传输的协议和功能的,但NFS却能让我们通过网络进行资料的分享,这是因为NFS使用了一些其它的传输协议。而这些传输协议用到这个RPC功能的。可以说NFS本身就是使用RPC的一个程序。或者说NFS也是一个RPC SERVER。所以只要用到NFS的地方都要启动RPC服务,不论是NFS SERVER或者NFS CLIENT。这样SERVER和CLIENT才能通过RPC来实现PROGRAM PORT的对应。可以这么理解RPC和NFS的关系:NFS是一个文件系统,而RPC是负责负责信息的传输。

一、准备阶段(客户端、服务端)

  • 下载nfs server服务

服务端

[root@server ~]# yum install nfs-utils -y  ##下载安装nfs服务
[root@server ~]# systemctl start nfs       ##开启nfs服务

客户端

[root@client ~]# yum install nfs-utils -y   ##下载安装nfs服务
[root@client ~]# showmount -e 172.25.254.227
Export list for 172.25.254.227:
[root@client ~]#

二、相关命令介绍

showmount 参数 nfs_server(IP)-e nfs_server(IP) 查看nfs提供共享的文件系统
    -a nfs_server 查看nfs服务器所有被挂载的文件系统及其挂载的客户端对应关系列表
    -d nfs_server 显示nfs服务器所有导出的文件系统
exportfs 参数:-a:跟-r或-u同时使用,表示重新挂载所有文件系统或取消导出所有文件系统
    -r:重新导出
    -u:取消导出
    -v:显示详细信息

三、实验

 ehco “/mnt  172.25.254.0/24(ro,sync)” > /etc/exports

/mnt 172.25.254.0/24(ro,sync)
共享/mnt目录,允许172.25.254.0网段地址使用挂载
模式可以为(ro只读),(rw读写),(sync异步),(async同步)

 ehco “/mnt  *(ro,sync)” > /etc/exports

共享/mnt目录,允许所有网段地址使用挂载

  • 实验一
[root@server ~]# vim /etc/exports
[root@server ~]# cat /etc/exports
/mnt   *(sync,ro)                ##同步、只读模式
[root@server ~]# exportfs -rv
exporting *:/mnt
[root@server ~]#

测试

  • 实验二
[root@server ~]# vim /etc/exports
[root@server ~]# cat /etc/exports
/mnt   *(sync,rw)                ##同步、读写模式
[root@server ~]# exportfs -rv
exporting *:/mnt
[root@server ~]#

测试

因为服务端的 /mnt 目录权限不够

[root@server ~]# ls -ld /mnt/
drwxr-xr-x. 2 root root 18 Jun  4 07:03 /mnt/
[root@server ~]# chmod 777 /mnt/
[root@server ~]# ls -ld /mnt/
drwxrwxrwx. 2 root root 18 Jun  4 07:03 /mnt/
[root@server ~]# 

测试

  • 实验三

no_root_squash:登入 NFS 主机使用分享目录的使用者,如果是 root 的话,那么对于这个分享的目录来说,他就具有 root 的权限!这个项目『极不安全』,不建议使用!
root_squash:在登入 NFS 主机使用分享之目录的使用者如果是 root 时,那么这个使用者的权限将被压缩成为匿名使用者,通常他的 UID 与 GID 都会变成 nobody 那个系统账号的身份。

[root@server ~]# vim /etc/exports
[root@server ~]# cat /etc/exports
/mnt   *(sync,rw,no_root_squash)
[root@server ~]# exportfs -rv
exporting *:/mnt
[root@server ~]#

测试

[root@server ~]# vim /etc/exports
[root@server ~]# cat /etc/exports
/mnt   *(sync,rw,root_squash)
[root@server ~]# exportfs -rv
exporting *:/mnt
[root@server ~]#

测试

  • 实验四
[root@server ~]# vim /etc/exports
[root@server ~]# cat /etc/exports
/mnt   *(sync,rw,anonuid=1000,anongid=1000)
##同步、读写、建立的文件属性是uid=1000、gid=1000的用户
[root@server ~]# exportfs -rv
exporting *:/mnt
[root@server ~]#

测试

实验后,进行下面的操作,以便 autofs 实验

[root@server ~]# vim /etc/exports
[root@server ~]# cat /etc/exports
/westos 172.25.254.0/24(sync,rw,no_root_squash)
[root@server ~]# exportfs -rv
exporting 172.25.254.0/24:/westos
[root@server ~]#

四、Autofs

autofs —— 自动挂载工具
特点:它与mount的不同,autofs是一个守护进程,如果它检测到用户正在访问一个尚未挂载的文件系统,如果存在,autofs会自动将其挂载;如果它检测到某个已经挂载的文件系统在一段时间内没有被使用,那么autofs会自动将其卸载。

  • 安装autofs(客户端)
[root@client ~]# yum install autofs -y

测试

[root@client ~]# cd /net
-bash: cd: /net: No such file or directory
##没有开启 autofs 服务之前,目录/net是不存在的
[root@client ~]# vim /etc/sysconfig/autofs
##修改第13行
##设定空闲卸载时间,空闲5秒后自动卸载
[root@client ~]# cat /etc/sysconfig/autofs | head -n 13 | tail -n 1
TIMEOUT=5
[root@client ~]# systemctl start autofs
[root@client ~]# cd /net/
[root@client net]# pwd
/net
[root@client net]# ls
[root@client net]# cd 172.25.254.227
[root@client 172.25.254.227]# pwd
/net/172.25.254.227
[root@client 172.25.254.227]# ls
westos
[root@client 172.25.254.227]# cd westos/
[root@client westos]# ls
[root@client westos]# df    ##挂载点默认在/net/172.25.254.227/westos
Filesystem             1K-blocks    Used Available Use% Mounted on
/dev/vda1               10473900 3155092   7318808  31% /
devtmpfs                  469344       0    469344   0% /dev
tmpfs                     484932      84    484848   1% /dev/shm
tmpfs                     484932   12784    472148   3% /run
tmpfs                     484932       0    484932   0% /sys/fs/cgroup
/dev/mapper/vg0-vo        483670    2355    451824   1% /home
172.25.254.227:/westos  10473984 3168256   7305728  31% /net/172.25.254.227/westos
[root@client westos]# cd
[root@client ~]# pwd
/root
##过大概 5 秒后
[root@client ~]# df
Filesystem         1K-blocks    Used Available Use% Mounted on
/dev/vda1           10473900 3154928   7318972  31% /
devtmpfs              469344       0    469344   0% /dev
tmpfs                 484932      84    484848   1% /dev/shm
tmpfs                 484932   12784    472148   3% /run
tmpfs                 484932       0    484932   0% /sys/fs/cgroup
/dev/mapper/vg0-vo    483670    2355    451824   1% /home
[root@client ~]#
  • 指定挂载点为/nfs/westos
[root@client ~]# vim /etc/auto.master
[root@client ~]#  cat /etc/auto.master | head -n 8 | tail -n 1
/nfs    /etc/auto.westos
##/nfs ——挂载目录的上层全部路径,若是挂载在/nfs/tutu/westos,那么此处应是/nfs/tutu
##/etc/auto.westos   自动挂载的配置文件
[root@client ~]# ll /etc/auto.westos
ls: cannot access /etc/auto.westos: No such file or directory
[root@client ~]# vim /etc/auto.westos
[root@client ~]# cat /etc/auto.westos
westos   -ro   172.25.254.227:/westos
##westos ——挂载点,文件名可以不存在,若是挂载在/nfs/tutu/westos,那么此处应是westos
##-ro ——挂载模式(ro:只读)
##172.25.254.227:/westos ——需要挂载的设备,本地的——“: 设备“,网络的——“IP : 目录“
[root@client ~]# systemctl restart autofs.service

测试

[root@client westos]# vim /etc/auto.westos
[root@client westos]# cat /etc/auto.westos
westos   -rw,vers=3   172.25.254.227:/westos
[root@client westos]# cd
[root@client ~]# systemctl restart autofs.service

linux——NFS+AUTOFS服务的基本配置相关推荐

  1. Linux NFS存储服务详解

    NFS存储服务概念介绍 NFS是Network File System的缩写,网络文件共享系统 主要功能是通过网络(一般是局域网)让不同的主机系统主机系统之间可以共享文件或目录 存储服务的种类 FTP ...

  2. Linux NFS服务器的安装与配置

    2019独角兽企业重金招聘Python工程师标准>>> 一.NFS服务简介 NFS 是Network File System的缩写,即网络文件系统.一种使用于分散式文件系统的协定,由 ...

  3. Linux NFS服务器的安装与配置(最简单的文件共享集群)

    一.NFS服务简介 NFS 是Network File System的缩写,即网络文件系统.一种使用于分散式文件系统的协定,由Sun公司开发,于1984年向外公布.功能是通过网络让不同的机器.不同的操 ...

  4. Linux NFS存储服务部署

    什么是NFS 中文意思是网络文件系统,主要功能是通过网络(一般是局域网)让不同主机之间可以共享文件或目录 NFS属于本地文件存储服务 缺点1: 1 2 3 4 5 6 7 windows上无法使用 如 ...

  5. linux开启dhcpclient服务,dhcp client 配置

    转载地址: <Linux服务器配置与管理指南>第9章DHCP服务器,本章介绍在网络中使用DHCP的具体方法.首先介 绍在Linux中安装.配置DHCP服务器端的方法,对常用的DHCP配置选 ...

  6. 完美图解教程 Linux环境VNC服务安装、配置与使用

    图片直观明了,尝试一步一步分享俺的成果. 1:下面第一步当然是确认自己linux系统是否安装VNC 默认情况下,Red Hat Enterprise Linux安装程序会将VNC服务安装在系统上. 打 ...

  7. linux vnc 安装目录,Linux环境VNC服务安装、配置与使用(图)

    整个VNC运行的工作流程如下: (1)VNC客户端通过浏览器或VNC Viewer连接至VNC Server. (2)VNC Server传送一对话窗口至客户端,要求输入连接密码,以及存取的VNC S ...

  8. linux informatica教程,linux下informatica服务安装和配置

    本文中将会用infa简称代替informatica 1.安装前准备 介质名称 版本信息 描述 Informatica Powercenter 9.5.1 for Linux 64 bit 必须 Jav ...

  9. Linux:xinetd服务安装与配置(操作环境:Ubuntu 18.04)

    xinetd服务简介: xinetd是一个守护进程,属于系统中的一个后台进程,周期性的执行某些任务,或者等待某个事件发生.不会随着用户的注销而退出. 支持对tcp.udp.RPC服务(但是当前对RPC ...

最新文章

  1. Microsoft Security Essentials 4.1.522.0 RTM
  2. String Reduction问题分析
  3. php sapi linux,PHP内核 - SAPI - Cli
  4. 读书笔记:《Aspx开发200问》——如何实现Repeater控件的分页
  5. 【css】如何实现响应式布局
  6. android dialog 横向全屏,Dialog全屏,去掉状态栏的方式
  7. (2021年)IT技术分享社区个人文章汇总(电脑技巧篇)
  8. java加法运算器界面_Java 接口实现计算器加减乘除(字符交互界面)
  9. 「leetcode」225. 用队列实现栈/Implement Stack using Queues
  10. iOS开发之--HTTP请求
  11. 2020、2021年FRM一级二级notes
  12. Julia学习01——Julia安装与卸载
  13. Detours Hook初探
  14. JQ ajax 请求事件处理
  15. 工欲善其事必先利其器 突然的感悟
  16. LaTeX技巧004:给文字添加下划线、波浪线等样式
  17. 向下兼容性格什么意思_相处特别舒服,可能是对方情商在向下兼容你
  18. 怎么使用山东鼎信发送短信验证码
  19. Android和IOS mumu模拟器 正确安装与设置机型
  20. 微应用 qiankun 项目搭建

热门文章

  1. SAP采购Invoice保存检查增强:INVOICE_UPDATE
  2. 在alv list小计之后输出分割线
  3. SAP直接踢人下线 SM04
  4. SE16N新改表内容方法!!!
  5. 生产订单总目标成本为0
  6. 计算机学院开展活动,团学会 | 以梦为马,不负韶华 计算机学院开展“逐梦100”活动(一)...
  7. linux下apk包名查看,使用adb命令查看apk版本
  8. java框架缓存,缓存框架(Java缓存)与框架缓存(介绍mybatis缓存)
  9. c语言程序可以单独编译,c语言中的函数可不可以单独进行编译?_后端开发
  10. linux高通平台代码,高通linux系统初始化