• redhat7 nfs的配置以及auto自动挂载


    服务器端:(192.168.10.10)

    首先创建一个测试的共享目录,修改exports文件

    [root@server ~]# mkdir /nfs_share
    [root@server ~]# vim /etc/exports
    /nfs_share      *(rw)
    ~    
    [root@server ~]# systemctl restart nfs-server
    [root@server ~]# systemctl enable nfs-server.service                  

    nfs服务器已经配置好了,不过还得需要开启防火墙,把nfs服务添加到防火墙中去命令如下

    [root@server ~]# firewall-cmd --permanent --add-service=nfs
    success
    [root@server ~]# firewall-cmd --reload
    success

    挂载方式一:客户机端(192.168.10.20)

    首先需要ping通服务器,保证网络的互通
    修改客户机的/etc/fstab的文件 ,添加下面这一行,然后保存

    [root@client ~]# vim /etc/fstab 
    192.168.10.10:/nfs_share                  /nfs                 nfs     sync            0 0
    
    "/etc/fstab" 14L, 697C written

    执行mount -a命令 没有报错,说明挂载成功,df -h命令查看

    [root@client ~]# mount -a       
    [root@client ~]# df -h          
    Filesystem                Size  Used Avail Use% Mounted on
    /dev/sda2                  15G  2.9G   12G  20% /
    devtmpfs                  906M     0  906M   0% /dev
    tmpfs                     914M   80K  914M   1% /dev/shm
    tmpfs                     914M  9.0M  905M   1% /run
    tmpfs                     914M     0  914M   0% /sys/fs/cgroup
    /dev/sr0                  3.5G  3.5G     0 100% /yum
    /dev/sda3                  15G  125M   15G   1% /var
    /dev/sda1                 297M   91M  207M  31% /boot
    192.168.10.10:/nfs_share   15G  2.9G   12G  20% /nfs

    问题1:在挂载的目录里创建一个文件,发现创建失败,这是因为默认的权限选项是root_squash,禁止远端用户具有root权限

    [root@client ~]# touch /nfs/myhost
    touch: cannot touch ‘/nfs/myhost’: Permission denied

    在服务器端查看cat /var/lib/nfs/etab 文件,发现有很多选项

    [root@server ~]# cat /var/lib/nfs/etab 
    /nfs_share      *(rw,sync,wdelay,hide,nocrossmnt,secure,root_squash,no_all_squash,no_subtree_check,secure_locks,acl,anonuid=65534,anongid=65534,sec=sys,rw,secure,root_squash,no_all_squash)

    解决方案1:
    在服务器端的/etc/exports添加以下配置

    [root@server ~]# vim /etc/exports
    /nfs_share      *(rw,no_root_squash)
    [root@server ~]# exportfs -a               #不要轻易重启nfs服务,否则客户机端会出现卡顿的现象,尽量使用exportfs命令

    解决方案2:服务器端恢复之前的配置

    [root@server ~]# vim /etc/exports
    /nfs_share      *(rw)
    #在服务器端把共享的目录other的权限添加写入的权限
    [root@server ~]# chmod o+w /nfs_share -R  
    [root@server ~]# ll -d /nfs*
    drwxrwxrwx. 2 root root 33 Jul 19 10:37 /nfs_share

    在客户机端测试

    [root@client ~]# touch /nfs/myhost1
    [root@client ~]# ll /nfs/
    total 0
    -rw-rw-rw-. 1 root      root      0 Jul 19 10:29 myhost
    -rw-r--r--. 1 nfsnobody nfsnobody 0 Jul 19 10:37 myhost1

    完美解决!!!!

    另外,客户机端还有一种方式可以用来自动挂载nfs服务的,那就是autofs服务

    挂载方式二:在客户机端(192.168.10.10)

    • autofs服务的间接映射
      首先在服务器创建/nfs_share1目录,并且这个目录共享出去
      mkdir /nfs_share1
      echo -e“/nfs_share1 *(rw)”>>/etc/exports
      然后在客户机安装autofs服务
      yum -y install autofs
      重启autofs服务并且加入自启动项中
    [root@client ~]# systemctl enable autofs
    ln -s '/usr/lib/systemd/system/autofs.service' '/etc/systemd/system/multi-user.target.wants/autofs.service'
    [root@client ~]# systemctl restart autofs

    编辑autofs的主映射文件

    #这里的主映射文件的后缀名一定要以autofs结尾,其中/auto为基础目录,就是挂载点的上级目录,/etc/nice.auto为二级映射文件,文件名字可以随便
    [root@client ~]# vim /etc/auto.master.d/nice.autofs
    /auto   /etc/nice.auto

    编辑autofs的二级映射文件

    #nice为挂载点,挂载的路径相当于/auto/nice  中间为挂载的权限,必须以-开头,最后192.168.1.11:/nfs_share1表示服务器的地址以及共享目录,中间以":"隔开.
    [root@client ~]# vim /etc/nice.auto
    nice    -rw     192.168.10.10:/nfs_share1

    重启autofs服务
    没有报错基本说明成功了;
    会发现一个问题,用df -h 会看不到挂载的文件目录,但是你cd进去这个挂载的目录 再df -h 就会出现挂载的目录了(以我这个为例,需要cd /auto/nice ,之后df -h就会出现挂载的目录了)
    还有一个问题,我们在二级映射文件里,那个nice的目录是不需要创建的,autofs会自己创建的,
    补充:间接映射,和直接挂载,所有的挂载点都会自动创建,自动删除(autofs服务停止时)

  • 相关阅读:
    XML指南——XML 瀏覽器(Netscape、Explorer)
    XML指南——察看 XML 文件
    ASP中Dictionary的使用
    SQL Mobile的RDA数据同步开发
    XML指南——XML 確認
    简单的js分页脚本
    浏览器语种检测,适合于多语言版本的站点
    Com/Dcom/Com+的思考
    XML指南——XML數據島
    MOSS 2007 功能概述
  • 原文地址:https://www.cnblogs.com/sujc-blogs/p/9722498.html
Copyright © 2020-2023  润新知