• 05 NFS基础知识


    NFS

    共享存储,文件服务器

    客户端和服务端都要安装rpcbind和nfs

    客户端安装的原因是为了使用showmount命令

    服务端

    #nfs默认的配置文件
    /etc/exports
    
    #配置
    vim /etc/exports
    /data 192.168.15.0/24(rw,sync,all_squash)
    
    #语法
    [挂载的目录] [IP]/[子网掩码] (操作权限)
    
    #根据配置文件操作
    [root@nfs ~]# mkdir /data	#建立配置文件里的文件夹
    
    #启动服务(一点要先启动rpcbind再启动nfs)
    #centos 7
    [root@nfs ~]# systemctl start rpcbind nfs
    #c6
    [root@nfs ~]# service rpcbind start
    [root@nfs ~]# service nfs start
    
    #验证启动
    [root@nfs ~]# netstat -tunlp | grep rpc
    tcp        0      0 0.0.0.0:33818           0.0.0.0:*               LISTEN      1782/rpc.statd      
    tcp        0      0 0.0.0.0:111             0.0.0.0:*               LISTEN      933/rpcbind         
    tcp        0      0 0.0.0.0:20048           0.0.0.0:*               LISTEN      1796/rpc.mountd     
    tcp6       0      0 :::56964                :::*                    LISTEN      1782/rpc.statd 
    
    #验证nfs配置文件是否正确
    [root@nfs ~]# cat /var/lib/nfs/etab 
    /data	192.168.15.0/24(rw,sync,wdelay,hide,nocrossmnt,secure,root_squash,all_squash,no_subtree_check,secure_locks,acl,no_pnfs,anonuid=65534,anongid=65534,sec=sys,rw,secure,root_squash,all_squash)
    #如果你配置错误,一定没有东西,配置的时候ip和后面的括号一定不能有空格
    

    客户端

    #查看挂载点
    [root@web01 ~]# showmount -e 192.168.15.31
    Export list for 192.168.15.31:
    /data (everyone)
    
     #挂载
     [root@web01 ~]# mount -t nfs 192.168.15.31:/data /root/data/
     
     #检查
     [root@web01 ~]# df -h
    Filesystem               Size  Used Avail Use% Mounted on
    devtmpfs                 475M     0  475M   0% /dev
    tmpfs                    487M     0  487M   0% /dev/shm
    tmpfs                    487M  7.6M  479M   2% /run
    tmpfs                    487M     0  487M   0% /sys/fs/cgroup
    /dev/mapper/centos-root   99G  2.6G   97G   3% /
    /dev/sda1               1014M  163M  852M  17% /boot
    tmpfs                     98M     0   98M   0% /run/user/0
    192.168.15.31:/data       99G  2.6G   97G   3% /root/data
    #现在你对本地的/root/data进行操作,就是对nfs端的进行操作
    
    #写入数据进行测试
    #第一次写入测试的时候出现了权限问题
    [root@web01 data]# touch 1.txt
    touch: cannot touch ‘1.txt’: Read-only file system
    
    #授权目录去操作
    [root@nfs ~]# chown -R nfsnobody.nfsnobody /data/
    [root@nfs ~]# systemctl restart rpcbind nfs
    
    #开机自动挂载
    vim /etc/fstab
    192.168.15.31:/data /nfsdir nfs defaults 0 0
    
    #验证fstab是否正确
    mount -a
    

    注意事项

    1、挂载目录后,原来文件下的内容不会丢失,仅仅是被遮盖住,取消挂载后仍然存在
    2、取消挂载时,不要在挂载的目录下面操作,否则会提示忙碌,切换到其他的目录下卸载
    总之,挂载和卸载,不要呆在挂载目录下
    
    3、如果服务端的nfs停止服务
    先检查服务端,重启nfs
    如果实在排查不到问题
    强制取消挂载	umount -lf /backup
    

    nfs配置

    NFS共享参数 参数作用
    rw 读写权限
    ro 只读权限
    root_squash 当NFS客户端以root访问时,修改权限为NFS服务器的匿名用户(不常用)
    no_root_squash 当NFS客户端以root访问时,修改权限为NFS服务器的root用户(几乎不用)
    all_squash 当NFS客户端以任意用户访问时,修改权限为NFS服务器的匿名用户(常用)
    no_all_squash 当NFS客户端以任意用户访问时,不修改权限(不常用)
    sync 同时将数据写入内存和磁盘(保证数据不丢失)
    async 优先将数据写入内存,再写入硬盘;效率高,但是会丢失数据
    anonuid 配合all_squash,指定匿名用户的uid,用户为系统用户,必须存在
    anongid 配合all_squash,指定匿名用户的gid
  • 相关阅读:
    谈一谈网站防盗链
    SEO优化步骤
    hls协议(最清晰的讲解)
    https比http到底那里安全?
    常见的php攻击(6种攻击详解)
    36)django-jsonp跨域
    35)django-验证码
    34)django-上传文件,图片预览功能实现
    33)django-原生ajax,伪ajax
    32)django-modelform
  • 原文地址:https://www.cnblogs.com/zhaokunhao/p/14678788.html
Copyright © 2020-2023  润新知