创建公共极简NAS

来源:互联网 发布:冯大辉 知乎 编辑:程序博客网 时间:2024/06/08 09:46


  • 一、服务器端设置
    1. 安装centos7 系统。最小化安装。
    2.  yum update 更新系统。
    3. 安装 NAS软件包
         yum install -y nfs-utils rpcbind


    4. 编辑/etc/exports文件,添加主机
          (1)创建好NAS的根目录 比如 /NAS 
                    #mkdir  /NAS
                    # chmod -R 777  /NAS    (赋予目录读写权限)      
           (2)修改配置文件 
                vi  /etc/exports
                #/NAS 代表nas根目录。  * 代表允许所有网络访问。也可以设置成 10.105.11.0/24. 括号里是权限。
                #(权限有:  rw:read-write,可读写;    注意,仅仅这里设置成读写客户端还是不能正常写入,还要正确地设置共享目录的权限,参考问题7  
                            ro:read-only,只读;  
                            sync:文件同时写入硬盘和内存;  
                            async:文件暂存于内存,而不是直接写入内存;  
                            no_root_squash:NFS客户端连接服务端时如果使用的是root的话,那么对服务端分享的目录来说,也拥有root权限。显然开启这项是不安全的。  
                            root_squash:NFS客户端连接服务端时如果使用的是root的话,那么对服务端分享的目录来说,拥有匿名用户权限,通常他将使用nobody或nfsnobody身份;  
                            all_squash:不论NFS客户端连接服务端时使用什么用户,对服务端分享的目录来说都是拥有匿名用户权限;  
                            anonuid:匿名用户的UID值,通常是nobody或nfsnobody,可以在此处自行设定;  
                            anongid:匿名用户的GID值。)
                 /NAS    *(rw,no_root_squash,no_all_squash,sync,anonuid=501,anongid=501)
                :wq(保存配置文件)
          (3)重新加载配置
                exportfs  -r
    5. 启动服务,开机自启。
           (1)启动服务              
            systemctl restart rpcbind.service
            systemctl restart nfs-server.service
           (2)开机自启
            systemctl enable rpcbind
            systemctl enable nfs-server


    6. 检查服务状态
            showmount -e nfs服务器的IP
    showmount -e 192.168.132.129




    7.防火墙设置。可以选择关闭防火墙或者开启对应端口。
       (1)关闭防火墙
             firewalld的基本使用
              启动: systemctl start firewalld
              查看状态: systemctl status firewalld 
              停止: systemctl disable firewalld
              禁用: systemctl stop firewalld
           (2)如果需要使用 防火墙的可以添加对应端口
          <1>查找 需要开放的端口
          [root@localhost ~]# rpcinfo -p localhost
                      program vers proto   port  service
                       100000    4   tcp    111  portmapper
                       100000    3   tcp    111  portmapper
                       100000    2   tcp    111  portmapper
                       100000    4   udp    111  portmapper
                       100000    3   udp    111  portmapper
                       100000    2   udp    111  portmapper
                       100005    1   udp  20048  mountd
                       100005    1   tcp  20048  mountd
                       100005    2   udp  20048  mountd
                       100005    2   tcp  20048  mountd
                       100005    3   udp  20048  mountd
                       100005    3   tcp  20048  mountd
                       100003    3   tcp   2049  nfs
                       100003    4   tcp   2049  nfs
                       100227    3   tcp   2049  nfs_acl
                       100003    3   udp   2049  nfs
                       100003    4   udp   2049  nfs
                       100227    3   udp   2049  nfs_acl
                       100021    1   udp  58950  nlockmgr
                       100021    3   udp  58950  nlockmgr
                       100021    4   udp  58950  nlockmgr
                       100021    1   tcp  43579  nlockmgr
                       100021    3   tcp  43579  nlockmgr
                       100021    4   tcp  43579  nlockmgr
                   [root@localhost ~]# 
      
          <2>添加防火墙规则
                     firewall-cmd --permanent --add-service=nfs
    firewall-cmd --permanent --add-service=ssh
                     firewall-cmd --zone=public --add-port=111/tcp --permanent
            firewall-cmd --zone=public --add-port=20048/tcp --permanent
            firewall-cmd --zone=public --add-port=20048/tcp --permanent
            firewall-cmd --zone=public --add-port=2049/tcp --permanent
            firewall-cmd --zone=public --add-port=43579/tcp --permanent
    firewall-cmd --reload


    --------------------------------------------------------------------------------
    二、 客户端设置


       1. windows客户端挂载设置
          <1> 首先要在 “打开或者关闭window功能” 中找到 “NAS客户端” 完成安装。(或者老版本的文件管理功能)
     <2> 在CMD下 通过mount命令挂载 NAS.
          C:\Users\Admin>mount 192.168.132.129:/NAS  X:
               X: 现已成功连接到 192.168.132.129:/NAS


               命令已成功完成。


               C:\Users\Admin>
               C:\Users\Admin>mount


              本地    远程                                 属性
              -------------------------------------------------------------------------------
              X:       \\192.168.132.129\NAS                  UID=-2, GID=-2
                                                              rsize=131072, wsize=131072
                                                              mount=soft, timeout=0.8
                                                              retry=1, locking=no
                                                              fileaccess=755, lang=GB2312-80
                                                              casesensitive=no
                                                              sec=sys


              C:\Users\Admin>
     
     <3> 卸载NAS磁盘
             C:\Users\Admin>umount X:


             正在断开连接            X:      \\192.168.132.129\NAS
             连接上存在打开的文件和/或未完成的目录搜索。
             要继续此操作吗? (Y/N) [N]:y
             命令已成功完成。
             C:\Users\Admin>
             C:\Users\Admin>mount


             本地    远程                                 属性
             -------------------------------------------------------------------------------


             C:\Users\Admin>    


       2. Cenos客户端挂载NAS
          <1>检查服务状态
               showmount -e nfs服务器的IP
      [root@localhost ~]# showmount -e 192.168.132.129
                Export list for 192.168.132.129:
                /NAS *
               [root@localhost ~]# 


          <2> 挂载NAS
         [root@localhost ~]# mkdir /mnt/data
         [root@localhost ~]# mount -t  nfs  192.168.132.129:/NAS  /mnt/data
         [root@localhost ~]# df -h
          Filesystem               Size  Used Avail Use% Mounted on
          /dev/mapper/centos-root   18G  1.3G   17G   8% /
          devtmpfs                 481M     0  481M   0% /dev
          tmpfs                    490M     0  490M   0% /dev/shm
          tmpfs                    490M   13M  478M   3% /run
          tmpfs                    490M     0  490M   0% /sys/fs/cgroup
          /dev/sda1                497M  152M  346M  31% /boot
          tmpfs                     98M     0   98M   0% /run/user/0
          192.168.132.129:/NAS      18G  1.3G   17G   8% /mnt/data
         [root@localhost ~]# 


          <3> 卸载NAS磁盘
              [root@localhost ~]#umount /mnt/data
      如果无法正常卸载 请点这里


    如果遇到读写权限问题 请看看 这里

  • 原创粉丝点击