zoukankan      html  css  js  c++  java
  • NFS的安装配置使用

    /////////////////////////////NFS///////////////////////////////////////////////////
    写在前面:
    NFS在数据传输/信息传递时使用RPC协议(Remote Procedure Call 远程过程调用)
    Server和Client的RPC进程来管理和“对应”主机的IP、对应端口、PID
    注意对应这一词!!!
    因为在client以对应的用户身份登陆会变成对应的“所有者”(这个词不太会表达)

    权限上,默认压制root,即root_squash

    NFS端口号2049
    还会占用不固定的端口号,由rpc产生

    rcp.nfsd: 管理client能否登入主机
    rpc.mountd:管理NFS文件系统

    /////////////////////////////////////////////////////////////////////////////////////
    目录
    1.NFS简介
    2.安装、配置NFS服务
    搭建准备
    配置文件编辑
    启动服务
    更新/etc/exports
    查看共享目录
    3.NFS配置的一些选项说明


    /////////////////////////////////////////////////////////////////////////////////////
    1.NFS简介
    NFS全程是network file system
    NFS允许一个系统在网络上和他人共享目录和文件,通过NFS,用户和程序可以访问本地文件一样访问远端系统上的文件
    假如有三台机器A,B,C,他们需要访问同一个目录,目录中都是图片,传统的做法是把这些图片放到ABC,但是使用NFS只需要放到A上,然后A共享B和C即可,访问的时候,B和C是通过网络的方式访问A上的那个目录的

    2.安装、配置NFS服务
    在提供NFS服务的机器上:
    搭建准备:
    安装 nfs-utils rpcbind/portmap(centOS 5)
    yum install -y nfs-utils 会同时安装上rpcbind

    编辑配置文件:
    vim /etc/exports
    //格式如下:
    //[要共享的目录] [主机名1或者ip1(参数1,参数2...)][主机名2或者ip2(参数1,参数2)]
    //譬如我要分享/tmp这个目录,只有192.168.75.0/24这个网段可读写,其他只读:
    // /tmp 192.168.75.0/24(rw) *(wo)
    // 仅让*.linux.org网段可以访问/etc/samba,但是存储数据的时候UID,GID全部变成40身份
    // /etc/samba *.linux.org(rw,all_squash,anonuid=40,anongid=40)
    // 我要将私人目录/private开放给192.168.75.132
    // /private 192.168.75.132(rw)

    注意!!!
    上面的()必须是连着的!!!

    启动服务:
    /etc/init.d/rpcbind start
    /etc/init.d/nfs start


    在更新/etc/exports 文件之后:
    无需重启服务,只需要重新 exportfs -arv加载即可
    exportfs [-aruv]
    -a :全部挂载/卸载/etc/exports里面的设置
    -r :重新挂载/etc/exports里面的设置,同步更新/etc/exports以及/var/lib/nfs/xtab的内容
    -u :卸载某个目录
    -v :导出的时候显示到屏幕上


    在客户端上:
    客户端同样安装yum install -y nfs-utils
    查看有无可以挂载的共享目录:
    showmount [-ae] hostname
    -a :在屏幕上显示当前主机和client连接后所使用目录的状态
    -e :显示hostname机器上/etc/exports中的共享目录

    如想要在客户端上挂载服务端共享的目录:
    首先
    showmount -e hostname
    然后
    mount -t nfs 192.168.137.10:/home/ /mnt/

    3.NFS配置的一些选项说明
    rw :读写
    ro :只读
    all_squash: 所有登陆者都会变成nobody
    root_squash:如果以root登陆,就会把它变成nobody,限制了root
    no_root_squash:如果以root登陆,就会对共享的目录拥有root权限,极不安全,不建议使用
    anonuid:要和root_squash以及all_squash一起使用,用于指定使用NFS的用户限定后的uid和gid,前提是本机的/etc/passwd中存在这个uid,gid
    anongid:同上
    sync:同步模式,内存中数据时时写入磁盘
    async:不同步,把内存中数据定期写入磁盘中

    //////////////////centOS 5 听说会有问题/////////////////////////////////////////
    所以
    在客户端上挂载服务端的NFS
    mount -t nfs -onolock,nfsvers=3 192.168.137.10:/home/ /mnt/
    //如果不加-onolock,nfsvers=3 则在挂载目录下的文件属主和组都是nobody,如果指定nfsvers=3则显示root
    mount -t nfs -oremount,nolock,nfsvers=3....

  • 相关阅读:
    JavaScrip中构造函数、prototype原型对象、实例对象三者之间的关系
    (字符缓冲流)文本排序案例
    Annotation注解的应用(打印异常信息)
    Annotation(注解)
    Java关键技术强化
    基本数据类型与引用数据类型的区别
    EKT反射
    bootstrap的概念
    Servlet强化
    java数据库连接池
  • 原文地址:https://www.cnblogs.com/ImJerryChan/p/6567165.html
Copyright © 2011-2022 走看看