标签: NFS(network file system)网络文件系统

  • Linux NFS 网络文件系统服务 搭建 图文教程

    Linux NFS 网络文件系统服务 搭建 图文教程

    准备环境:

    1、两台虚拟机(CentOS7),一台为服务器(192.168.1.10),一台为客户端(192.168.1.20)。

    2、 配置静态ip、主机名,并写/etc/hosts记录。

    3、关闭防火墙和selinux。

    安装NFS相关组件

    nfs-utils:包含NFS服务端守护进程和NFS客户端的工具

    rpcbind:提供RPC的端口映射的守护进程及其相关文档、执行文件等

    使用yum源安装nfs、rpcbind软件包

    yum -y install nfs-utils rpcbind

    配置NFS服务

    NFS使用/etc/exports定义需要共享的目录及访问对象的控制,NFS在默认情况下不共享任何目录(/etc/exports文件为空)当需要共享目录时管理员需要手动设置。

    编辑格式:

    [共享目录] [客户端1(参数项)] [客户端2(参数项)]

    客户端常用的指定方式:

        指定ip地址的主机:192.168.1.10

        指定子网中的所有主机:192.168.1.0/24 或192.168.1.0/255.255.255.0

        指定域名的主机:www.abc.com

        指定域中所有的主机: *.abc.com

        所有主机: *

    常用选项:

        ro      设置共享目录为只读的权限

        rw      设置共享目录为可读写的权限

        all_squash      将远程访问的所有普通用户以及所属组都映射为匿名用户或用户组,相当于使用nobody用户访问该共享目录(此参数为默认设置)

        no_all_squash   与all_squash相反

        root_squash     将root用户及其所属组都映射为匿名用户或用户组(默认设置)

        no_root_squash  与root_squas相反,即以root身份访问

        anonuid和anongid   将远程访问的所有用户以及所属组都映射为匿名用户或用户组,并指定其uid,gid

        sync        将数据同步写入内存缓冲区与磁盘中,效率低,但可以保证数据的一致性

        async       将数据先保存在内存缓冲区中,必要时才写入磁盘

    NFS服务配置实例

    在/etc/exports文件中,每一行代表一个共享目录,并且描述了该目录如何被共享 vi /etc/exports ,写入以下内容

    /test 192.168.1.20(rw,no_root_squash)  #/test为共享目录,ip为192.168.1.20主机有可读可写权限,并以root身份访问。

    服务端创建共享目标:

    mkdir /test

    启动NFS服务

    systemctl restart rpcbind.service
    systemctl restart nfs.service

    查看服务是否启动成功:

    showmount -e 127.0.0.1

      –下面的显示表示已经启动

    Export list for 127.0.0.1:

    /test 192.168.1.20

    客户端查看nfs服务器共享列表:

    showmount -e  192.168.1.10

    Export list for 192.168.1.10:

    /share 192.168.1.20

    NFS文件系统挂载与卸载:

    挂载格式: mount -t nfs 服务器地址:/共享目录  /本机挂载点

    卸载格式: umount  挂载点

    客户端操作:

    mkdir   /share                            #创建本机挂载点
    mount 192.168.1.10:/test  /share          #将共享目录挂载到本地的/share目录
    df  -h                                    #查看挂载是否成功

    文件系统 容量 已用 可用 已用% 挂载点

    /dev/mapper/cl-root    17G  4.2G   13G   25% /

    devtmpfs              473M     0  473M    0% /dev

    tmpfs                 489M  144K  489M    1% /dev/shm

    tmpfs                 489M  7.1M  482M    2% /run

    tmpfs                 489M     0  489M    0% /sys/fs/cgroup

    /dev/sda1            1014M  173M  842M   18% /boot

    tmpfs                  98M  8.0K   98M    1% /run/user/0

    /dev/sr0              4.1G  4.1G     0  100% /run/media/root/CentOS 7 x86_64

    192.168.1.10:/test   17G  4.8G   13G   28% /share

    测试共享文件:

    服务器:

    cd /test
    cp /etc/passwd /test

    客户端:

    ls /share
    cat /share/passwd       #可以查看到/share/passwd中的内容

WeChat