本文介绍如何在Ubuntu下开启NFS文件系统,从而挂载网络上其他机器的文件系统。

  NFS, Network File System, 即网络文件系统,通常NFS有提供者和使用者,提供者export自己的目录,使用者将提供者共享(export)的目录挂载到自己的机器上,我们将提供者视为服务端,使用者视为客户端,但是在NFS中,这个C-S关系实质上是不固定的。

  一、服务器端

  1.安装nfs-kernel-server,将会自动安装nfs-common和rpcbind等依赖

  1. $ sudo apt-get install nfs-kernel-server

  2.配置/etc/exports文件,该文件在nes-kernel-server安装前不存在,文件中的内容设置了允许发现服务端共享目录的客户端主机以及拥有的访问权限,其字段的格式如下:

  格式:  share_dir    client_host(permission1,permission2,...,permissionN)

  参数:

  (1)share_dir

  共享目录,必须是目录的绝对路径,若为文件,则在挂载时会出错。若目录名含有空格等字符,须用双引号标注。

  (2)client_host

  可以是单个主机(指定网络IP),也可以是网络段,支持通配符*和?

  (3)permission

  ro: 只读(read-only)

  rw:读和写(read-write)

  root_squash:压缩root用户。当客户端以root挂载时,则NFS服务器将root视为匿名用户服务(nfsnobody)。

  no_root_squash:不压缩root用户。当客户端以root挂载时,则NFS服务器将其为共享目录的root用户,不安全。

  sync:同步写磁盘

  async:异步写磁盘。

示例:

  1. $ vim /etc/exports
  2. --------Add Content Below--------
  3. /.../EXPORT_DIR HOST1(rw,sync,no_subtree_check) HOST2(ro,sync,no_subtree_check)
  1. /.../EXPORT_DIR ×(ro,sync,no_subtree_check)

  上面的例子中,EXPORT_DIR是要共享到网络上的目录。

  后面的HOST1和HOST2是允许访问的客户端主机,客户端主机之间使用空格隔开。如果允许网络上的所有客户端主机发现服务器“出口”的目录,就使用星号取代主机名。

  每一个客户端主机后的括号内是访问控制策略,包括读写权限(ro,只读;rw,读写等等),访问权限之间使用逗号分隔。

  3.重启nfs服务

  1. $ sudo /etc/init.d/nfs-kernel-server restart

  也可以检查nfs服务器是否正常监听,通过下面的命令找到对应的监听端口

  1. $ netstat -tl | grep nfs

二、客户端挂载服务端NFS

  1.查看目标服务器共享的目录

  1. $ sudo apt-get install nfs-kernel-server  #客户端同样也要安装nfs软件包
    $ showmount -e SERVER_HOST

  -e 选项列出服务端的export list, 其中SERVER_HOST是目标服务器的主机地址,该命令将会显示这个服务器共享的目录列表。如果不指定SERVER_HOST,将会列出本机共享的目录(export list)。

  2.查看自己已经挂载了哪些目录

  1. $ showmount -a

  将会看到目前已挂载的服务器以及相应的共享目录。

  3.创建挂载点

  如果发现有服务器共享的目录需要挂载但还没有挂载,可以为其创建一个挂载点:

  1. $ mkdir /mnt/MOUNT_DIR

  其中的MOUNT_DIR是任意指定的名称。

  4.挂载共享目录

  在服务器已经共享的前提下,使用客户端可以挂载共享目录

  1. $ mount SERVER_HOST:EXPORT_DIR /mnt/CLIENT_DIR

  其中,SERVER_HOST是服务器地址,目录与服务器主机使用冒号分隔,EXPORT_DIR必须与exports文件中的完全相同,这个可以通过前面的showmount命令查看。最后的参数就是我们将服务器的目录挂载到本地的挂载点,即第三布中创建的目录。

  5.卸载已挂载的目录

  如果使用完了服务器的共享目录,应该将其卸载,使用umount命令与卸载普通文件系统操作相同。

  1. $ umount /mnt/MOUNT_DIR

(实用)Ubuntu 开启NFS服务的更多相关文章

  1. ubuntu 开启 ftp 服务 | mingming-killer

    body { font-family: "Microsoft YaHei UI","Microsoft YaHei",SimSun,"Segoe UI ...

  2. ubuntu开启SSH服务远程登录

    http://blog.csdn.net/jackghq/article/details/54974141 ubuntu开启SSH服务远程登录

  3. 【转】ubuntu 12.04下如何开启 NFS 服务 & 设置

    在嵌入式Linux开发中,利用NFS服务从开发板访问Linux主机是个高效&方便的调试方法,在程序调试过程中可以避免多次下载程序到开发板.但这需要在Linux主机上首先开通NFS服务. 以ub ...

  4. 让ubuntu开启ssh服务以及让vi/vim正常使用方向键与退格键

    VIM 修复方法: 安装vim full版本,在full版本下键盘正常,安装好后同样使用vi命令.ubuntu预装的是vim tiny版本,而需要的是vim full版本.执行下面的语句安装vim f ...

  5. Ubuntu开启NFS,挂载根目录

    1.安装NFS server Ubuntu初始状态是没有NFS server的,首先要安装NFS server: $ sudo apt-get install nfs-kernel-server (安 ...

  6. Linux下开启nfs服务

    1.什么是NFS(Network FileSystem) NFS 就是 Network FileSystem 的缩写,最早之前是由 Sun 所发展出来的.他最大的功能就是可以透过网络,让不同的机器.不 ...

  7. 如何在ubuntu开启ssh服务-使 SecureCRT远程登录

    不少人在第一次使用ubuntu系统的时候,用了很多种方法均没有办法开启SSH服务,ubuntu和其它的linux系统有所区别,因为在ubuntu下,service  sshd  restart  之类 ...

  8. Ubuntu 开启SSH服务以及有关设置:安装,指定端口号、免密登录、远程拷贝

    本文所用系统为 Ubuntu 18.04   什么是SSH?     简单说,SSH是一种网络协议,用于计算机之间的加密登录.全名为:安全外壳协议.为Secure Shell的缩写.SSH为建立在应用 ...

  9. centos配置nfs服务详细步骤(centos开启nfs服务)

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

随机推荐

  1. (转)Making 1 million requests with python-aiohttp

    转自:https://pawelmhm.github.io/asyncio/python/aiohttp/2016/04/22/asyncio-aiohttp.html Making 1 millio ...

  2. wireshark in ubuntu

    安装 sudo apt-get install wiresharksudo dpkg-reconfigure wireshark-commonsudo usermod -a -G wireshark ...

  3. Eclipse Alt+/ 智能提示失效

    Eclipse3.7  自动提示Alt+/不能导入包,且General->Keys->content assist中已经检查并无快捷键冲突 Eclipse中window->Prefe ...

  4. Lua语法基础(2)--基本语法、函数

    上一篇编辑编辑着,发现,缩进出了问题.作为一个不是强迫症的人,实在是忍受不了同一级内容不同缩进方式的槽点,于是重开一篇吧.(万幸,这样的文章也只有我自己看.) 第四 基本语法 赋值语句,Lua可以对多 ...

  5. spring boot映射静态资源.

    增加配置文件 package com.wisely.upload.config; import org.springframework.context.annotation.Configuration ...

  6. LeetCode: Insertion Sort List 解题报告

    Insertion Sort List Sort a linked list using insertion sort. SOLUTION: 使用一个dummynode 创建一个新的链,将旧的节点插入 ...

  7. linux下修改tomcat使用的jdk版本

    遇到一种情况,就是linux上好像掉文件了,JDK的目录下没有了,具体问题还不清楚,不过要赶紧修复,不能影响其他程序的运行. 结构重新安装了JDK,tomcat还是启动失败,看l启动日志发现没找到还是 ...

  8. [转]操作MySQL数据库报出:Parameter index out of range (1 > number of parameters, which is

    原文地址:https://blog.csdn.net/zdx_y/article/details/52072914 对MySQL进行insert操作,控制台抛出以下错误:Parameter index ...

  9. Java中ArrayList实现原理

    简述: ArrayList可以理解为动态数组,与Java中的数组相比,它的容量能动态增长.超出限制时会增加50%容量,用System.arraycopy()复制到新的数组中,因此最好能给出数组大小的预 ...

  10. RRDtool运用

    一 建立RRD数据库(.rrd文件) $ rrdtool RRDtool Copyright - by Tobias Oetiker <tobi@oetiker.ch> Compiled ...