1、NFS:NFS(Network File System)即网络文件系统,是FreeBSD支持的文件系统中的一种,它允许网络中的计算机之间通过TCP/IP网络共享资源。
  在NFS的应用中,本地NFS的客户端应用可以透明地读写位于远端NFS服务器上的文件,就像访问本地文件一样。
2、安装NFS服务器端:sudo
apt-get install nfs-kernel-server;
3、配置/etc/exports:sudo vim /etc/exports ;
  Ubuntu NFS允许挂载的目录及权限在文件/etc/exports中进行了定义。
  将根目录下的 文件夹  /home/upload 目录共享出来,
  在/etc/exports 文件末尾添加如下一行: /home/upload  *(rw,sync,no_root_squash)

*     : 代表允许所有的网络段访问,

rw   :是可读写权限,

sync
:是资料同步写入内存和硬盘,

no_root_squash: 是 Ubuntu nfs 客户端分享目录使用者的权限,如果客户端使用的是 root 用户,那对于该共享目录而言,该客户端就具有 root 权限。

4、NFS重启服务
  $sudo /etc/init.d/portmap restart
  $sudo /etc/init.d/nfs-kernel-server restart
5、测试Ubuntu NFS
  此时可以运行以下命令来显示一下共享出来的目录: $showmount -e   
  或者可以使用以下命令把它挂载在本地磁盘上, 例如将/home/upload 挂载
  到/mnt下: $sudo mount -t nfs 192.168.1.117:/home/upload   /home/upload
  可以运行df命令查看是否挂载成功。
  写入文件,开机自动挂载。/etc/fstab     
  192.168.1.117:/home/upload   /home/upload    nfs     rw     0 0
 (这样,在/mnt目录下创建目录,/home/upload 下也会出现)
  查看后可以使用以下命令卸载: $ sudo umount /home/upload
  注意:使用卸载命令时,先退出挂载的目录,再执行卸载命令,否则会出现设备正忙现象而无法卸载
 
 
NFS:

RPC: Remote Procedure Call

Linux: 提供rpc服务的程序, Portmap: 111/tcp, 111/udp

RPC: 编程技术,简化分布式应用程序的开发,RPC:C --> RPC C --> RPC S --> S

NFS Client --> NFS Server

Browser --> Server  html格式

RPC: 二进制格式,文本格式(XMLRPC) --> SOAP(Simple Object Access Protocol)

RPC: 编程技术,协议

NFS: Sun
    NFSv2, NFSv3, NFSv4

NFS: Unix/Linux

Windows

服务器端:nfs-utils

nfs: nfsd(nfs服务), mountd(挂载), quotad(配额)

nfsd: 2049/tcp, 2049/udp
mountd: 端口
quotad: 端口
    半随机的

/etc/exports
/path/to/somedir CLIENT_LIST
    多个客户之间使用空白字符分隔

每个客户端后面必须跟一个小括号,里面定义了此客户访问特性,如访问权限等

172.16.0.0/16(ro,async) 192.16.0.0/24(rw,sync)

showmount -e NFS_SERVER: 查看NFS服务器“导出”的各文件系统
showmount -a NFS_SERVER: 查看NFS服务器所有被挂载的文件系统及其挂载的客户端对应关系列表
showmount -d NFS_SERVER: 显示NFS服务器所有导出的文件系统中被客户端挂载了文件系统列表

exportfs命令:
    -a:跟-r或-u选项同时使用,表示重新挂载所有文件系统或取消导出所有文件系统;
    -r: 重新导出
    -u: 取消导出
    -v: 显示详细信息

客户端使用mount命令挂载

mount -t nfs NFS_SERVER:/PATH/TO/SOME_EXPORT  /PATH/TO/SOMEWHRERE

文件系统导出属性:
    ro:
    rw:
    sync:
    async:
    root_squash: 将root用户映射为来宾账号;
    no_root_squash:
    all_squash:
    anonuid, anongid: 指定映射的来宾账号的UID和GID;

让mountd和quotad等进程监听在固定端口,编辑配置文件/etc/sysconfig/nfs

WebServer: LAMP

NFS服务端:/var/www: 共享出去
NFS客户端:挂载NFSERVER:/var/www至本地的/var/www

 

Linux NFS服务器搭建的更多相关文章

  1. Linux之我有你也有-共享平台NFS服务器搭建

    Linux之我有你也有-共享平台NFS服务器搭建 最近因工作需要,所以要搭一个共享的服务器用于存储.实现你有我有大家有的共享的和谐局面.想到了NFS-Network File System.接下来我便 ...

  2. Linux NFS服务器的安装与配置方法(图文详解)

    这篇文章主要介绍了Linux NFS服务器的安装与配置方法(图文详解),需要的朋友可以参考下(http://xb.xcjl0834.com) 一.NFS服务简介 NFS 是Network File S ...

  3. Linux NFS服务器的简明配置6.8

    Linux NFS服务器的简明配置6.8   Linux NFS服务器的简明配置 一.NFS服务简介 NFS 是Network File System的缩写,即网络文件系统.一种使用于分散式文件系统的 ...

  4. NFS服务器搭建-共享PC与ARM主板文件

    NFS服务器搭建-共享PC与ARM主板文件 在搭建好交叉编译环境之后需要实现目标板与宿主机的文件共享,在这里选择NFS,由于资料较多.需要注意的以下几点: 目标板与宿主机需要连接在同一个网段内. 宿主 ...

  5. Linux NFS服务器的安装与配置详解

    一.NFS服务简介 NFS是Network File System(网络文件系统).主要功能是通过网络让不同的服务器之间可以共享文件或者目录.NFS客户端一般是应用服务器(比如web,负载均衡等),可 ...

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

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

  7. (转)Linux NFS服务器的安装与配置

    转自:http://www.cnblogs.com/mchina/archive/2013/01/03/2840040.html 由于在6系列里面,portmap已经改名了 ,6系列需要使用 serv ...

  8. 【转载】Linux NFS服务器的安装与配置

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

  9. NFS服务器搭建

    1. 安装nfs-kernel-server,然后编辑/etc/exports. /sambadata/nfsserver    10.0.0.0/255.255.255.0(fsid=0,all_s ...

随机推荐

  1. c语言指针与结构体

    #include <stdio.h> #include <stdlib.h> struct mydata { int num; ]; }; void main1() { /*i ...

  2. Annotation(一)——注解开发介绍

    <p>在编程中,一直强调的一点就是注释的编写,注释的规范等等.尤其是越是核心,程序越复杂,逻辑越多的清空下,注释的编写对我们以后的阅读代码,维护软件起着至关重要的作用.一款软件有着好的注释 ...

  3. java java.uitl.Random产生随机数

    通过使用java.uitl.Random产生一个1-10内的随机数.例: Random random = new Random(); int i = Math.abs(random.nextInt() ...

  4. python calendar标准库基础学习

    # -*- coding: utf-8 -*-# 作者:新手__author__ = 'Administrator'#标准库:日期时间基础学习:calendar:处理日期#例1import calen ...

  5. (转)iOS7界面设计规范(5) - UI基础 - 导航

    通过分页控件(page control)来暗示多个条目或内容视图的存在.该控件可以有效的向用户展示内容单元的数量,以及当前所见的这一条在队列中的位置.请参考分页控件一节,了解更多详情. 注意:虽然工具 ...

  6. HDU 5274(树链剖分)

    树链剖分第一题QAQ,纪念下 #pragma comment(linker, "/STACK:102400000,102400000") #include <iostream ...

  7. windows下绑定线程(进程)到指定的CPU核心

    一个程序指定到单独一个CPU上运行会比不指定CPU运行时快.这中间主要有两个原因:1)CPU切换时损耗的性能.2)Intel的自动降频技术和windows的机制冲突:windows有一个功能是平衡负载 ...

  8. 16 Socket通信(简单例子)

      服务端代码: import java.io.*; import java.net.ServerSocket; import java.net.Socket; import java.util.Da ...

  9. javaWeb--jsp & jQuery

    jsp页面的基本构成:指令标签HTML标记语言注释   <!-- html注释 -->  <%-- java代码注释 -->   //html注释对jsp嵌入的代码不起作用,因 ...

  10. 【0】Laravel 5.1 简介

    1.简介 Laravel是一套简洁.优雅的PHP Web开发框架(PHP Web Framework).它可以让你从面条一样杂乱的代码中解脱出来:它可以帮你构建一个完美的网络APP,而且每行代码都可以 ...