看到鸟哥私房菜对NFS的介绍,就想试试玩一下。看起来步骤也很简单。

1.背景名词。

NFS(Network File System)

作用:让所有的Unix-like 机器通过网络共享彼此的文件

局限:文件权限问题。客户端和服务器端必须具备相同的账号才能够访问某些目录或文件。

RPC(Remote Procedure Call)

作用:指定每个NFS功能所对应的port number,并且通知客户端,让客户端可以连接到正确的端口上去。

当服务器在启动NFS时会随机选取数个端口,并主动向RPC注册,因此RPC可以知道每个端口对应的NFS功能。

所以启动NFS之前,要启动RPC,否则NFS无法向RPC注册。

2.服务器端配置

1)下载软件

#sudo apt-get install rpcbind nfs-kernel-server

2)建立共享目录

#sudo mkdir /home/user/nfstest

#sudo chmod 777 /home/user/nfstest

3)修改配置文件

#sudo vim /etc/exports

/home/user/nfstest     localhost(rw,sync,no_root_squash)

localhost表面只允许本机访问,这个字段可以为IP地址。也可以用正则表达式来表示。

rw代表具有可读写权限。ro代表只具有可读权限。

sync是资料同步写入内存和硬盘。async代表数据会先暂存于内存当中,而非直接写入硬盘。

no_root_squash和root_squash的不同在于客户端用户为root时,访问系统的权限不同。客户端使用NFS系统的账号为root时,root_squash会压缩用户为nfsnobody,而no_root_squash会继续保持其root身份。

all_root_squash会压缩所有的用户为nfsnobody。

4)重启服务

#sudo /etc/init.d/rpcbind restart

#sudo /etc/init.d/nfs-kernel-server restart

* Stopping NFS kernel daemon
...done.
* Unexporting directories for NFS kernel daemon...
...done.
* Exporting directories for NFS kernel daemon...
exportfs: /etc/exports [1]: Neither 'subtree_check' or 'no_subtree_check' specified for export "localhost:/home/user/nfstest".
Assuming default behaviour ('no_subtree_check').
NOTE: this default has changed since nfs-utils version 1.0.x ...done.
* Starting NFS kernel daemon
...done.

可以看到 NFS kernel daemon启动成功。如果不成功会显示fail。

5)测试服务器

#showmount -e
Export list for hostname:
/home/user/nfstest localhost
说明服务器端搭建OK。

3.客户端配置

1)下载软件

#sudo apt-get install rpcbind nfs-common

2)挂载文件

#mkdir /home/user/mnt

#chmod 777 /home/user/mnt

#mount -t nfs localhost:/home/user/nfstest /home/user/mnt

mount -t nfs 服务器名/IP地址:服务器共享目录  本地挂载目录

3)客户端测试

#cd /home/user/mnt

#touch testfile

就会看到 /home/user/nfstest和/home/user/mnt下面都有testfile文件,说明测试成功。

4.取消挂载

#sudo umount /home/user/mnt

Ubuntu环境下NFS服务器搭建的更多相关文章

  1. windows环境下apache-apollo服务器搭建及发布订阅测试

    查证了一些资料之后,发现 apache-apollo服务器使用的人还是挺多的,资料也比较齐全,所以直接选择 apache-apollo了,具体性能如何,先用起来再说吧: 1.下载 apache-apo ...

  2. Ubuntu环境下Nutch+Tomcat 搭建简单的搜索引擎

    简易的搜索引擎搭建 我的配置: Nutch:1.2 Tomcat:7.0.57 1 Nutch设置 修改Nutch配置 1.1 修改conf/nutch-site.xml <?xml versi ...

  3. Ubuntu环境下IPython的搭建和使用

    1. Ubuntu操作系统版本 说明:Ubuntu 12.04.3 LTS自带的Python 2.7.3版本. 2. 安装IPython 说明: 输入命令sudo apt-get install ip ...

  4. Linux 环境下svn 服务器搭建

    可使用自己下载的svn安装包,但要安装相关依赖包,yum 安装源提供的稳定版本svn 1.yum -y install subversion 2.创建本地库 mkdir -p /var/svn svn ...

  5. linux下的服务器搭建集成环境

    linux下的服务器搭建集成环境 ——写给初学者的我们 1.准备工具 1.1 SecureCRT SecureCRT是一款支持SSH(SSH1和SSH2)的终端仿真程序,简单地说是Windows下登录 ...

  6. Ubuntu环境下SSH的安装及使用

    Ubuntu环境下SSH的安装及使用 SSH是指Secure Shell,是一种安全的传输协议,Ubuntu客户端可以通过SSH访问远程服务器 .SSH的简介和工作机制可参看上篇文章SSH简介及工作机 ...

  7. Ubuntu环境下的Redis 配置与C++使用入门

      Redis是一个高性能的key-value数据库. Redisedis的出现,非常大程度补偿了memcached这类key/value存储的不足,在部分场合能够对关系数据库起到非常好的补充作用.它 ...

  8. Windows10 下Apache服务器搭建

    Windows10 下Apache服务器搭建   转 https://blog.csdn.net/sunqian666888/article/details/78561399 目录 一.软件下载 二. ...

  9. CentOS6.4下邮件服务器搭建

    CentOS6.4下邮件服务器搭建   linux下邮件服务器的搭建大致分为三个步骤 准备工作(真实的生产环境下需要) 发送服务器安装及配置 (Postfix) 接收服务器安装及配置(dovecot) ...

随机推荐

  1. TCP/IP协议原理与应用笔记07:HTTP、TCP/IP与socket区别

    1. TCP/IP协议与HTTP协议区别:      HTTP 超文本传输协议(HTTP,HyperText Transfer Protocol)是互联网上应用最为广泛的一种网络协议.所有的WWW文件 ...

  2. Linux shell入门基础(八)

    八.shell脚本sed&awk 01.sed的使用 流编辑器-Steam Editor #ed /etc/passwd 1,10p …… 1s/root/byf/p(替换root为byf) ...

  3. BeanFactory学习

    关于BeanFactory,一个相对易懂的博客,关于深入的理解,后续继续学习 http://www.cnblogs.com/liuling/archive/2013/04/14/BeanFactory ...

  4. 三星I9308(移动版)正确​Root的方法,进入正确的recovery的关键(网上很多方法是误导)

    三星I9308(移动版)正确​Root的方法,进入正确的recovery的关键(网上很多方法是误导)   1)首先在电脑上安装手机驱动:下载地址:点击这里下载  2)手机设置USB调试 方法1:设置- ...

  5. public static <T> Map<String, T> json2map

    /** * json string convert to map with javaBean */ public static <T> Map<String, T> json2 ...

  6. win10开始菜单打不开的解决办法

    解决方法: 1.在Win10系统下按Win+R打开运行,输入services.msc回车打开服务: 2.在服务中找到User Manager服务;3.打开usermanager服务属性,将其启动类型设 ...

  7. 织梦安装过后出现"...www/include/templets/default/index.htm Not Found!"

    在织梦网站搬家之后再整站更新,往往会遇到访问首页的时候出现www/include/templets/default/index.htm Not Found!,这个问题我遇到过两次,都是这样解决的: 进 ...

  8. 关于PHPstorm 使用技巧

    慢慢更新,一点点积累,都是自己在使用中遇到的问题 设置:(2016.4.15) 1:注释模板,phpstorm 有非常强大的注释模板,可以根据自己的需求随时更改,并设置快捷键,非常方便 新文件注释 P ...

  9. HTML5 input控件 placeholder属性

    placeholder 属性提供可描述输入字段预期值的提示信息(hint),该提示会在输入字段为空时显示,并会在字段获得焦点时消失. <input placeholder="请输入姓名 ...

  10. zend studio设置

    1.字体设置: 第一步:进入设置窗口    windows -> preferences 第二步:进入修改字体的选项卡.    General -> Appearance -> Co ...