今天实验室需要搭建NAS,我负责的是NFS的安装与配置,现将整理的文档分享一下:

参考一:Linux下rpm 安装包方式安装

http://linux.chinaunix.net/techdoc/beginner/2008/03/17/983528.shtml

参考二:CentOS下NFS安装与配置

http://blog.csdn.net/puwenhui/article/details/6298178

步骤:

一、服务器端

(1)安装rpm包

rpm -ivh nfs4-acl-tools-0.3.3-1.el5.x86_64.rpm

rpm -ivh libgssapi-0.10-2.x86_64.rpm

rpm -ivh libgssapi-devel-0.10-2.x86_64.rpm

rpm -ivh libevent-1.1a-3.2.1.x86_64.rpm

rpm -ivh libevent-devel-1.1a-3.2.1.x86_64.rpm

rpm -ivh nfs-utils-lib-1.0.8-7.6.el5.x86_64.rpm

rpm -ivh nfs-utils-lib-devel-1.0.8-7.6.el5.x86_64.rpm

rpm -ivh portmap-4.0-65.2.2.1.x86_64.rpm

rpm -ivh nfs-utils-1.0.9-42.el5.x86_64.rpm

(2)创建NFS文件系统服务端目录(例:/opt/nfs),并赋予用户权限

mkdir /opt/nfs

chown nastors:storage /opt/nfs

chmod 777 /opt/nfs

(3)编辑配置文件/etc/exports,加入以下语句:

/opt/nfs *(rw,sync,no_root_squash)

注:①/opt/nfs为服务器挂载目录

②IP:*处指定客户端IP,*表示所有IP

(4)启动服务

/etc/init.d/portmap start  启动RPC进程,为NFS提供端口

/etc/init.d/nfs start

/etc/init.d/nfslock start  来控制文件一致性

(5)查看端口和服务

rpcinfo –p localhost  看到portmap,nfs,mountd进程都已经开启

(6)查看nfs的设置

showmount -e localhost  查看exports文件

showmount -a localhost  查看nfs与主机连接情况

(7)重新修改 /etc/exports ,使用exportfs[-aruv]来使系统明白

-a:全部挂载(或卸除) /etc/exports 档案内的设定

-r :重新挂载 /etc/exports 里面的设定,此外,亦同步更新 /etc/exports

及/var/lib/nfs/xtab 的内容!

-u :卸除某一目录

-v :在 export 的时候,将分享的目录显示到屏幕上!

修改后一定记得重启nfs服务:service nfsrestart

二、客户端

(1)开启客户端的RPC

/etc/init.d/portmap start

(2)开启客户端的nfslock(与服务器端对应)

/etc/init.d/nfslock start

(3)检查一下RPC是否开启

showmount –e 222.31.76.177[S2]

如果显示出在服务器端写的exports文件的内容,则说明成功

(4)进行nfs挂载

原因:①服务器端做修改后未重启服务:

exportfs -a

service nfs restart

②服务器配置文件/etc/exports中指定的客户端IP不对

测试用例:

在222.31.76.177(服务器)上建了两个共享目录/opt/nfs和/opt/nfs_cwn,前者是对所有IP都开放,后者只对222.31.76.195(客户端)开放。经实验,在195上能成功加载这两个共享目录,而另一台虚拟机222.31.76.48(客户端)只能挂载/opt/nfs。

结论:NFS能同时存在多个共享目录,并分别指定共享范围,都在服务器配置文件/etc/exports下设定。另一方面,多个客户端也能同时使用这些共享目录。

[S1]* rw:read-write,可擦写的权限;

* ro:read-only,只读的权限;

* sync:数据同步写入到内存与硬盘当中;

* async:数据会先暂存于内存当中,而非直接写入硬盘!

* no_root_squash:

登入 NFS 主机使用分享目录的用户,如果是 root 的话,那么对于这个分享的目录来说,他就具有 root 的权限! 这个项目『极不安全』,不建议使用!

* root_squash:

在登入 NFS 主机使用分享之目录的用户如果是 root 时,那么这个使用者的权限将被压缩成为匿名用户,通常他的 UID 与 GID 都会变成nobody(nfsnobody) 那个系统账号的身份;

* all_squash:

不论登入 NFS 的使用者身份为何, 他的身份都会被压缩成为匿名用户,通常也就是nobody(nfsnobody) 啦!

* anonuid:

anon 意指 anonymous (匿名者) 前面关于 *_squash 提到的匿名用户的 UID 设定值,通常为 nobody(nfsnobody),但是您可以自行设定这个 UID 的值!当然,这个 UID 必需要存在于您的 /etc/passwd 当中!

* anongid:同 anonuid ,但是变成 group ID 就是了!

[S2]此IP为服务器的IP

linux之 NFS服务器与客户端的安装与配置的更多相关文章

  1. FTP服务器与客户端的安装与配置

    FTP服务器安装与配置 1. 切换到root用户:  su root 2. 查看系统中是否安装了vsftpd,可以通过执行命令 :  rpm -qa | grep vsftpd 3. 如果没有安装 v ...

  2. Ubuntu 18.04 LTS上安装NFS服务器和客户端

    NFS是基于UDP/IP协议的应用,其实现主要是采用远程过程调用RPC机制,RPC提供了一组与机器.操作系统以及低层传送协议无关的存取远程文件的操作.RPC采用了XDR的支持.XDR是一种与机器无关的 ...

  3. Oracle 11g 客户端的安装和配置。

    原文:Oracle 11g 客户端的安装和配置. 数据库和客户端在不同的机器之上. 在安装之前,在安装Oracle数据库的服务器上导航到下面的目录. 将listener.ora和tnsnames.or ...

  4. Git客户端的安装与配置入门

    GitLab与Git客户端的安装与配置入门,每次配置完一段时间,就忘记配置过程了,为了自己和同学们以后有所参照,特记录了本次下载和配置,其实Git就是一个版本控制系统,类似于SVN,CVS等 下载:W ...

  5. centos 7.3 服务器环境搭建——MySQL 安装和配置

    centos 7.3 服务器环境搭建——MySQL 安装和配置服务器信息如下:服务器:阿里云系统 centos 7.3 (阿里云该版本最新系统)mysql版本:5.7.18 (当前时间最新版本)连接服 ...

  6. Linux搭建nfs服务器

    使用linux进行嵌入式开发的时候,为了方便开发,通常是将开发板挂载到宿主机的文件系统上,然后将代码放到共享给开发板的目录中,再通过开发板运行. 首先查看是否安装了 nfs 软件包,yum list ...

  7. Linux操作系统CentOS7.2发行版本的安装与配置(安装是选择服务器类型)

    原文地址:http://1130739.blog.51cto.com/1120739/1738791 由于CentOS 7出来不久,对于这个版本的系统安装与配置的教程较少,今天就索性介绍一下CentO ...

  8. windows上搭建NFS服务器及客户端 挂载

    在Windows相关系统上搭建NFS服务及客户端挂载  有两种方式: 第一种: (Windows Server2008R2等类似企业版这样的版本的Server服务上有自带的NFS服务进行搭建) (特别 ...

  9. 自学linux——21. NFS服务器的搭建

    NFS服务器的搭建 1.NFS的认识 NFS(Network File System即网络文件系统)服务最大的功能就是可以透过网络,让不同的机器.不同的操作系统.可以彼此分享文件,可以将远程 Linu ...

随机推荐

  1. 【LeetCode-面试算法经典-Java实现】【053-Maximum Subarray(最大子数组和)】

    [053-Maximum Subarray(最大子数组和)] [LeetCode-面试算法经典-Java实现][全部题目文件夹索引] 原题 Find the contiguous subarray w ...

  2. 大数据学习(4)MapReduce编程Helloworld:WordCount

    Maven依赖: <dependency> <groupId>jdk.tools</groupId> <artifactId>jdk.tools< ...

  3. iOS手势之pinch

    今天用地图的时候有用到pinch 捏合手势 通过捏合手势动作可以很轻松的来改变视图元素的一个比例 手势的动作状态有如下三种,一般是按照顺序来进行转换的. 1. UIGestureRecognizerS ...

  4. CentOS 7 学习(一) 配置LAMP和Nginx

    CentOS 7 学习(一) 配置LAMP和Nginx CentOS是RedHat Linux企业版的代码编译版本,属于比较通用的服务器Linux版本,据说Ubuntu Server更通用,呵呵,不过 ...

  5. 运算符关键字。数据区别大小写。日期范围。判空的两种写法。NOT IN的两种写法。IN范围可含NULL,但NOT IN值范围不能含NULL。

    比较:>,<,=,>=,<=,<>(!=) 逻辑:AND,OR,NOT 范围:BETWEEN...AND... 范围:IN,NOT IN 判空:IS NULL, I ...

  6. 字符串输入时的strlen()与\0

    在做串的数据结构时,被字符串printf %s输出时的结尾判断.strlen();长度.自定义StrCopy();字符串复制函数.StrAssign();字符串赋值函数卡了一下,固写此博巩固相关知识点 ...

  7. Android 环境搭建、基础窗口window/Mac

    1.五步搞定Android开发环境部署--非常详细的Android开发环境搭建教程 2.Android开发学习之路--MAC下Android Studio开发环境搭建 4.Android常用开发工具以 ...

  8. iOS----------如何检查域名是否支持ipv6

    http://ipv6-test.com/validate.php  这个地址  也可以检测到! 1.检查你所用到的库,像af 3.0以上什么的(不用改),其他的库自己去搜下是否支持ipv6吧. 2. ...

  9. CET——4 常用短语

    在网上看到的,先拔到自己这来,四级大大,求过!!!!

  10. 1_3 C语言解决求n!

    求n!(n为键盘输入的任意整数值).要求分别用while语句和for语句实现 用while语句实现: #include <stdio.h> int main() { int n; scan ...