Ubuntu环境下NFS服务器搭建
看到鸟哥私房菜对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服务器搭建的更多相关文章
- windows环境下apache-apollo服务器搭建及发布订阅测试
查证了一些资料之后,发现 apache-apollo服务器使用的人还是挺多的,资料也比较齐全,所以直接选择 apache-apollo了,具体性能如何,先用起来再说吧: 1.下载 apache-apo ...
- Ubuntu环境下Nutch+Tomcat 搭建简单的搜索引擎
简易的搜索引擎搭建 我的配置: Nutch:1.2 Tomcat:7.0.57 1 Nutch设置 修改Nutch配置 1.1 修改conf/nutch-site.xml <?xml versi ...
- Ubuntu环境下IPython的搭建和使用
1. Ubuntu操作系统版本 说明:Ubuntu 12.04.3 LTS自带的Python 2.7.3版本. 2. 安装IPython 说明: 输入命令sudo apt-get install ip ...
- Linux 环境下svn 服务器搭建
可使用自己下载的svn安装包,但要安装相关依赖包,yum 安装源提供的稳定版本svn 1.yum -y install subversion 2.创建本地库 mkdir -p /var/svn svn ...
- linux下的服务器搭建集成环境
linux下的服务器搭建集成环境 ——写给初学者的我们 1.准备工具 1.1 SecureCRT SecureCRT是一款支持SSH(SSH1和SSH2)的终端仿真程序,简单地说是Windows下登录 ...
- Ubuntu环境下SSH的安装及使用
Ubuntu环境下SSH的安装及使用 SSH是指Secure Shell,是一种安全的传输协议,Ubuntu客户端可以通过SSH访问远程服务器 .SSH的简介和工作机制可参看上篇文章SSH简介及工作机 ...
- Ubuntu环境下的Redis 配置与C++使用入门
Redis是一个高性能的key-value数据库. Redisedis的出现,非常大程度补偿了memcached这类key/value存储的不足,在部分场合能够对关系数据库起到非常好的补充作用.它 ...
- Windows10 下Apache服务器搭建
Windows10 下Apache服务器搭建 转 https://blog.csdn.net/sunqian666888/article/details/78561399 目录 一.软件下载 二. ...
- CentOS6.4下邮件服务器搭建
CentOS6.4下邮件服务器搭建 linux下邮件服务器的搭建大致分为三个步骤 准备工作(真实的生产环境下需要) 发送服务器安装及配置 (Postfix) 接收服务器安装及配置(dovecot) ...
随机推荐
- IOS 获取wifi的SSID
#import <SystemConfiguration/CaptiveNetwork.h> - (NSString *)currentWifiSSID { // Does not wor ...
- msp
10月8号加入了微软的msp项目,其实那时候对msp没有什么概念,不知道要干嘛,真的觉得大不了就退出呗,反正也没啥大事, 现在再也不那么看了,这二十多天虽然没怎么水群,但是还是一直在关注着我们这个 ...
- jqPlot,一个 jQuery这个 JavaScript 框架的绘图插件
因为项目中需要做报表的功能,于是学习了如何使用jqplot这个绘图插件 结合ajax技术,动态交互后台数据 前前后后花了三四天的时间. 感觉它会出来的想说还可以. 我的后台模板是bootstrap,在 ...
- Python文件之----JSON
#coding=utf-8import json def writeJSON(filaName="test.json"): f=open(filaName, "wb&qu ...
- 如何让Hadoop运行得更快一些
在数据处理方面,我们发现数据输入速度一般要比的数据处理速度快很多,这种现象在大多数据领域尤为明显.随着数据不断膨胀,相应的响应时间自然要有所增加,数据处理的复杂度也在不断提高.作为一个开发者,我们自然 ...
- CentOS6.5 下 Mysql5.7主从复制
包下载http://url.cn/WrNg5S 主数据库:192.168.161.129 从数据库1:192.168.161.130 从数据库1:192.168.161.138 MySQL安装地址:/ ...
- C++ Primer 5th 第11章 关联容器
练习11.1:描述map 和 vector 的不同. map是关联容器,vector是顺序容器,关联容器与值无关,vector则与值密切相关 练习11.2:分别给出最适合使用 list.vector. ...
- 35 Search Insert Position(找到数的位置Medium)
题目意思:在递增数组中找到目标数的位置,如果目标数不在数组中,返回其应该在的位置. 思路:折半查找,和相邻数比较,注意边界 class Solution { public: int searchIns ...
- grails&groovy的IllegalArgument异常
我在开发的过程中遇到了这样一个异常,总是提示IllegalArgument异常,代码大致如下: if(haomgl.save(flush:true)){ //更新库存:状态为2的位置存煤 def cu ...
- SOLID (面向对象设计) 基本原则
SOLID (面向对象设计) 基本原则 在 程序设计领域, SOLID (单一功能.开闭原则.里氏替换.接口隔离以及依赖反转)是由罗伯特•C•马丁在21世纪早期[1] 引入的记忆术首字母缩略 ...