给你的网络文件系统(NFS)配置一个基本的自动挂载功能。

大多数 Linux 文件系统在引导时挂载,并在系统运行时保持挂载状态。对于已在 fstab 中配置的任何远程文件系统也是如此。但是,有时你可能希望仅按需挂载远程文件系统。例如,通过减少网络带宽使用来提高性能,或出于安全原因隐藏或混淆某些目录。autofs 软件包提供此功能。在本文中,我将介绍如何配置基本的自动挂载。

首先做点假设:假设有台 NFS 服务器 tree.mydatacenter.net 已经启动并运行。另外假设一个名为 ourfiles 的数据目录还有供 Carl 和 Sarah 使用的用户目录,它们都由服务器共享。

一些最佳实践可以使工作更好:服务器上的用户和任何客户端工作站上的帐号有相同的用户 ID。此外,你的工作站和服务器应有相同的域名。检查相关配置文件应该确认。

alan@workstation1:~$ sudo getent passwd carl sarah
[sudo] password for alan:
carl:x:1020:1020:Carl,,,:/home/carl:/bin/bash
sarah:x:1021:1021:Sarah,,,:/home/sarah:/bin/bashalan@workstation1:~$ sudo getent hosts
127.0.0.1       localhost
127.0.1.1       workstation1.mydatacenter.net workstation1
10.10.1.5       tree.mydatacenter.net tree
复制代码

如你所见,客户端工作站和 NFS 服务器都在 hosts 文件中配置。我假设这是一个基本的家庭甚至小型办公室网络,可能缺乏适合的内部域名服务(即 DNS)。

安装软件包

你只需要安装两个软件包:用于 NFS 客户端的 nfs-common 和提供自动挂载的 autofs

alan@workstation1:~$ sudo apt-get install nfs-common autofs
复制代码

你可以验证 autofs 相关的文件是否已放在 /etc 目录中:

alan@workstation1:~$ cd /etc; ll auto*
-rw-r--r-- 1 root root 12596 Nov 19  2015 autofs.conf
-rw-r--r-- 1 root root   857 Mar 10  2017 auto.master
-rw-r--r-- 1 root root   708 Jul  6  2017 auto.misc
-rwxr-xr-x 1 root root  1039 Nov 19  2015 auto.net*
-rwxr-xr-x 1 root root  2191 Nov 19  2015 auto.smb*
alan@workstation1:/etc$
复制代码

配置 autofs

现在你需要编辑其中几个文件并添加 auto.home 文件。首先,将以下两行添加到文件 auto.master 中:

/mnt/tree  /etc/auto.misc
/home/tree  /etc/auto.home
复制代码

每行以挂载 NFS 共享的目录开头。继续创建这些目录:

alan@workstation1:/etc$ sudo mkdir /mnt/tree /home/tree
复制代码

接下来,将以下行添加到文件 auto.misc

ourfiles        -fstype=nfs     tree:/share/ourfiles
复制代码

该行表示 autofs 将挂载 auto.master 文件中匹配 auto.miscourfiles 共享。如上所示,这些文件将在 /mnt/tree/ourfiles 目录中。

第三步,使用以下行创建文件 auto.home

*               -fstype=nfs     tree:/home/&
复制代码

该行表示 autofs 将挂载 auto.master 文件中匹配 auto.home 的用户共享。在这种情况下,Carl 和 Sarah 的文件将分别在目录 /home/tree/carl/home/tree/sarah中。星号 *(称为通配符)使每个用户的共享可以在登录时自动挂载。 符号也可以作为表示服务器端用户目录的通配符。它们的主目录会相应地根据 passwd 文件映射。如果你更喜欢本地主目录,则无需执行此操作。相反,用户可以将其用作特定文件的简单远程存储。

最后,重启 autofs 守护进程,以便识别并加载这些配置的更改。

alan@workstation1:/etc$ sudo service autofs restart
复制代码

测试 autofs

如果更改文件 auto.master 中的列出目录,并运行 ls 命令,那么不会立即看到任何内容。例如,切换到目录 /mnt/tree。首先,ls 的输出不会显示任何内容,但在运行 cd ourfiles 之后,将自动挂载 ourfiles 共享目录。 cd 命令也将被执行,你将进入新挂载的目录中。

carl@workstation1:~$ cd /mnt/tree
carl@workstation1:/mnt/tree$ ls
carl@workstation1:/mnt/tree$ cd ourfiles
carl@workstation1:/mnt/tree/ourfiles$
复制代码

为了进一步确认正常工作,mount 命令会显示已挂载共享的细节。

carl@workstation1:~$ mounttree:/mnt/share/ourfiles on /mnt/tree/ourfiles type nfs4 (rw,relatime,vers=4.0,rsize=131072,wsize=131072,namlen=255,hard,proto=tcp,timeo=600,retrans=2,sec=sys,clientaddr=10.10.1.22,local_lock=none,addr=10.10.1.5)复制代码

对于 Carl 和 Sarah,/home/tree 目录工作方式相同。

我发现在我的文件管理器中添加这些目录的书签很有用,可以用来快速访问。


via: opensource.com/article/18/…

作者:Alan Formy-Duval 选题:lujun9972 译者:geekpi 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

如何使用 autofs 挂载 NFS 共享相关推荐

  1. [RHCSA学习笔记]Autofs实现自动挂载NFS共享

    NFS/autofs NFS Server 服务端 systemctl status nfs-server.service systemctl status rpcbind.service vi /e ...

  2. Docker容器中挂载NFS共享目录

    之前在https://blog.csdn.net/fengbingchun/article/details/110561129 介绍过使用Dockerfile构建ubuntu 16.04镜像,并在容器 ...

  3. Windows上面挂载NFS共享

    Windows上面挂载NFS共享 众所周知,nfs和smb是Linux服务器上的文件共享协议,smb使用的是samba协议和windows的文件共享使用的是一种协议,也就是说smb是跨平台的文件共享协 ...

  4. 【AIX】AIX 开机自动挂载NFS共享

    AIX 开机自动挂载NFS共享 当Oracle搭建在AIX系统上,进行集中备份时,可能需要通过连接Backup server挂载NFS共享来讲数据备份到存储设备上. 在Linux环境下,如想实现NFS ...

  5. linux连接宏杉存储,Linux客户端挂载NFS共享报“rpc.statd is not running”

    一.组网图 不涉及. 二.问题描述 Linux客户端挂载NFS共享报错,具体错误如下. mount.nfs: rpc.statd is not running but is required for ...

  6. win10连接linux nfs,win10系统挂载nFS共享目录的操作技巧

    在win10系统的使用过程中大家大概需要在系统中挂载NFs共享,但 是很少有网友了解挂载NFs共享的操作办法,对于菜鸟网友来说大概都不明白挂载NFs共享是什么,在今后的使用过程中相信我们都会碰到挂载N ...

  7. windows7挂载nfs共享目录有用户名密码

    windows7挂载nfs共享目录有用户名密码) 打开控制面板-选择程序 选择-启用或关闭windows功能 勾选 NFS 服务(和 UNIX -然后确定,这个不开好像也可以) 打开CMD输入moun ...

  8. 服务器共享硬盘存储,服务器挂载nfs共享存储盘

    服务器挂载nfs共享存储盘 安装了nfs后,我们想一下,怎么在其他机器上挂载文件系统到nfs上.其实在nfs服务器上,也可以自己挂载自己. 改变nfs共享目录的用户和用户组: 将nfs目录设置为roo ...

  9. Windows/Linux客户端挂载NFS共享存储

    Windows/Linux客户端挂载NFS共享存储 1. Linux搭建NFS共享存储 1.1. NFS概述 1.2. 安装并配置NFS Server 1.3. 启动并验证NFS Server 2. ...

最新文章

  1. 梯度中心化,一行代码加速训练并提升泛化能力
  2. 选择Java接口还是抽象类
  3. 鸿蒙并不是为手机开发而是为物联网,华为确定发布“鸿蒙OS”确定 物联网同样可以搭载...
  4. 用Visual Studio .Net 2003开发PHP程序
  5. robo3t 连接服务器数据库_Win7上安装 MongoDB、Robo 3T及vn.py
  6. 那些被雅虎美女CEO收购的公司下落如何?
  7. linux 怎么配置apache,在Linux下配置Apache Web服务
  8. hibernate mysql annotation_Hibernate基于注解annotation的配置
  9. hive的udf,udaf,udtf各自依賴兩種class(转载+分析整理)
  10. 不带头结点的单链表的建立
  11. 好家伙!京东数科申请“测谎器”专利
  12. Ubuntu14 Could not open file /var/lib/dpkg/status - open
  13. 数据库课程设计——学生选课管理系统
  14. 解决teamview检测为商业用途的方法记录
  15. php计算圆的面积怎么带单位_圆的面积计算公式的教学演示工具的制作方法
  16. gta5服务器端文件夹,GTA5路径在steam哪个文件夹里面
  17. CentOS历史版本下载
  18. 政府应用系统应用解决方案
  19. radio单选框操作
  20. 安卓投屏大师TC DS如何把手机声音传输到电脑教程

热门文章

  1. C#和Java的代码转换工具(开源)CSharpJavaMerger Framework
  2. (转)RemoteView 设置控件属性
  3. ASP.NET中实现页面间的参数传递 QueryString\Application\Session\Cookie
  4. 接口的意义及于抽象类的区别(蒋波涛)
  5. 用c语言实现对n个进程采用“短进程优先”算法的进程调度_为什么Linux CFS调度器没有带来惊艳的碾压效果?...
  6. JetPack——网络库封装
  7. 计算机视觉与深度学习 | 基于MATLAB 使用CNN拟合一个回归模型来预测手写数字的旋转角度(卷积神经网络)
  8. 开发实践 | android网络通信 接收和发送数据详解
  9. 装linux时可用空间只有1929k,求Linux命令习题
  10. java运行安全_Java运行时环境