zoukankan      html  css  js  c++  java
  • linux之 NFS服务器与客户端的安装与配置

    今天实验室需要搭建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

  • 相关阅读:
    模块介绍
    homebrew 更改镜像,进行成功安装
    必须要会的 50 个 React 面试题
    聚合
    mongodb高级聚合查询
    一款好用 mongodb 可视化工具
    在Mac上安装MongoDB,配置全局路径
    深入Vue2.x的虚拟DOM diff原理
    H5在WebView上开发小结
    接口文档RAP2 环境搭建(正常搭建成功)
  • 原文地址:https://www.cnblogs.com/andy6/p/8275517.html
Copyright © 2011-2022 走看看