zoukankan      html  css  js  c++  java
  • NFS 服务配置篇

    安装、配置NFS服务
    1.NFS简介
    NFS(network file system)
    NFS是一个主机A通过网络,允许其他主机B可以来共享主机A的一个目录文件的一个文件系统
    2.需要安装两个包nfs-util 和rpcbind
    在安装nfs-utils,会自动安装rpcbind
    3.修改配置文件vim /etc/exports
    配置文件共三部分
    /home/ 192.168.137.0/24(rw,sync,all_squash,anonuid=501,anongid=501)
    (1)第一部分:本地要共享出去的目录
    (2)第二部分:允许远程哪个主机,可以有多个主机来共享
    (3)第三部分:权限项。为读写,同步,限定所有使用者,并且限定的uid和gid都为501。
    注意:这里uid和gid是主机A的
    4.NFS 配置说明 
    rw :读写;
    ro :只读;
    sync :同步模式,内存中数据时时写入磁盘;
    async :不同步,把内存中数据定期写入磁盘中;
    no_root_squash :加上这个选项后,root用户就会对共享的目录拥有至高的权限控制,就像是对本机的目录操作一样。不安全,不建议使用;
    root_squash:和上面的选项对应,root用户对共享目录的权限不高,只有普通用户的权限,即限制了root;
    all_squash:不管使用NFS的用户是谁,他的身份都会被限定成为一个指定的普通用户身份;
    anonuid/anongid :要和root_squash 以及all_squash一同使用,用于指定使用NFS的用户限定后的uid和gid,前提是本机的/etc/passwd中存在这个uid和gid。
    注意:anonuid 和 anongid一般和all_squash/root_squash一同使用。
    当使用all_squash anonuid/anonid 的时候,在客户端共享目录创建文件时候,发现文件的属主、属组竟然和服务主机该目录的属主、属组一样。这就squash的结果

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

    4. 客户端上挂载NFS
    客户端同样安装 yum install -y nfs-utils
    查看服务器端都共享了哪些目录
        showmount -e 192.168.137.10 
    在客户端上挂载服务端的nfs
        mount -t nfs  -onolock,nfsvers=3 192.168.137.10:/home/ /mnt/     //如果不加 -onolock,nfsvers=3 则在挂载目录下的文件属主和组都是nobody,如果指定nfsvers=3则显示root

    df -h  查看挂载的情况

    5. exportfs 命令的使用
    -a :全部挂载或者卸载;
    -r :重新挂载;
    -u :卸载某一个目录;
    -v :显示共享的目录
    改变/etc/exports配置文件后,不用重启nfs服务直接用这个exportfs即可
    exportfs -arv  使生效
    在使用nfs时,常用一个选项就是 -o nolock 
    我们还可以把要挂载的nfs目录写到client上的/etc/fstab文件中  192.168.137.10:/tmp/ /test nfs nolock 0 0  然后 mount –a

    扩展部分:

    遇到无法umount的问题:

    root@test:/# umount /data1/nfs/
    umount.nfs: /data1/nfs: device is busy
    umount.nfs: /data1/nfs: device is busy
    (1)遇到该问题时只需要使用fuser命令就可以解决:

    root@test:/# fuser -km /data1/nfs/
    root@test:/# fuser -f /data1/nfs/
    执行完上面的操作后,再去umount就可以了。fuser上面用到的几个参数的意义如下:

     http://www.361way.com/nfs-mount-nobody/2616.html

    (2)nobody问题:

    http://www.361way.com/nfs-mount-nobody/2616.html

     http://www.cnblogs.com/taosim/articles/3913075.ht 

  • 相关阅读:
    spring定时器的cronexpression表达式
    Mybatis Generator的model生成中文注释,支持oracle和mysql(通过实现CommentGenerator接口的方法来实现)
    ORA-12505, TNS:listener does not currently know of SID given in connect desc
    The Network Adapter could not establish the connection
    Shell中的>/dev/null 2>&1 与 2>&1 >/dev/null 与&>/dev/null 的区别
    大道至简、大智若愚—GO语言最佳详解实践
    rsync使用详解
    一次TIME_WAIT和CLOSE_WAIT故障和解决办法
    Go的CSP并发模型实现:M, P, G
    如何优雅打印nginx header和body
  • 原文地址:https://www.cnblogs.com/the-study-of-linux/p/4999345.html
Copyright © 2011-2022 走看看