• centos搭建NFS网络文件系统


    NFS服务器端

    安装NFS服务器非常之简单:

    yum install nfs-utils protmap

    这样就安装好了,其中nfs-utils是提供NFS服务器程序和相应的管理工具。protmap是一个管理RPC连接的程序。

    NFS服务器一些配置文件和命令:

    • 主配置文件:/etc/exports
    • NFS文件系统维护命令:/usr/sbin/exportfs
    • 分享资源的登录档:/var/lib/nfs/*tab
    • 客户端查询服务器分享资源的命令:/usr/sbin/showmount

    主配置文件:/etc/exports

    配置文件的格式为:[共享目录] [主机名或IP(参数,参数)]

    共享目录:服务器上需要共享的目录路径;
    主机名或IP:如果主机名或IP地址为空,则表示共享给所有客户机;
    参数:NFS共享的常用参数如下:

    • ro:只读
    • rw:读写
    • sync:同步写入资料到内存与硬盘中
    • async:资料会先暂存于内存中,而非直接写入硬盘
    • secure:NFS通过1024以下的安全TCP/IP端口发送
    • insecure:NFS通过1024以上的端口发送
    • wdelay:如果多个用户要写入NFS目录,则归组写入(默认)
    • no_wdelay:如果多个用户要写入NFS目录,则立即写入,当使用async时,无需此设置。
    • hide:在NFS共享目录中不共享其子目录
    • no_hide:共享NFS目录的子目录
    • subtree_check:如果共享/usr/bin之类的子目录时,强制NFS检查父目录的权限(默认)
    • no_subtree_check:同上,但不检查父目录权限
    • all_squash:共享文件的UID和GID映射匿名用户anonymous,适合公用目录。
    • no_all_squash:保留共享文件的UID和GID(默认)
    • root_squash:root用户的所有请求映射成如anonymous用户一样的权限(默认)
    • no_root_squash:root用户具有根目录的完全管理访问权限
    • anonuid=xxx:指定NFS服务器/etc/passwd文件中匿名用户的UID
    • anongid=xxx:指定NFS服务器/etc/passwd文件中匿名用户的GID 

    当将同一目录共享给多个客户机,但对每个客户机提供的权限不同时,可以这样:

    [共享目录] [主机名1或IP1(参数1,参数2)] [主机名2或IP2(参数3,参数4)]

    示例

    cat /etc/exports
    
    /share 192.168.1.6(rw,no_root_squash) *(ro)

    共享目录/share 允许192.168.1.6客户机读写并且root用户有管理权限。其他机器只有可读权限。

    启动NFS相关服务

    service portmap start
    service nfs start
    
    chkconfig --level 35 nfs on
    chkconfig --level 35 portmap on

    如果修改了/etc/exports文件后不需要重新激活nfs,只要使用exportfs命令重新扫描一次/etc/exports文件,且重新将设定加载即可。

    exportfs -arv

    exportfs命令用法:

    exportfs [-aruv] 

    参数说明如下:

    • -a:全部挂载(或卸载)/etc/exports文件内的设定。
    • -r:重新挂载/etc/exports中的设置,此外同步更新/etc/exports及/var/lib/nfs/xtab中的内容。
    • -u:卸载某一目录。
    • -v:在export时将共享的目录显示在屏幕上。

    确认NFS成功运行:

    rpcinfo -p | grep nfs
        100003    2   udp   2049  nfs
        100003    3   udp   2049  nfs
        100003    4   udp   2049  nfs
        100003    2   tcp   2049  nfs
        100003    3   tcp   2049  nfs
        100003    4   tcp   2049  nfs

    NFS客户端

    安装软件包

    yum install nfs-utils protmap

    启动必要服务

    service portmap start

    显示NFS服务器的共享目录

    showmount -e 192.168.1.5
    
    Export list for 192.168.1.5:
    /share   192.168.1.0/24
    /nishome 192.168.1.0/24

    创建本地目录并挂载远程共享目录

    mkdir /share
    mkdir /nishome
    
    mount -t nfs 192.168.1.5:/sharee /share
    mount -t nfs 192.168.1.5:/nishome /nishome

    客户端查看挂载情况

    mount
    
    /dev/sda3 on / type ext3 (rw)
    proc on /proc type proc (rw)
    sysfs on /sys type sysfs (rw)
    devpts on /dev/pts type devpts (rw,gid=5,mode=620)
    /dev/sda2 on /data type ext3 (rw)
    /dev/sda1 on /boot type ext3 (rw)
    tmpfs on /dev/shm type tmpfs (rw)
    none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw)
    sunrpc on /var/lib/nfs/rpc_pipefs type rpc_pipefs (rw)
    192.168.1.5:/nishome on /nishome type nfs (rw,addr=192.168.1.5)
    192.168.1.5:/share on /share type nfs (rw,addr=192.168.1.5)

    或者

    df -h
    
    Filesystem            Size  Used Avail Use% Mounted on
    /dev/sda3             9.7G  1.6G  7.7G  18% /
    /dev/sda2              38G  177M   36G   1% /data
    /dev/sda1             190M   19M  163M  11% /boot
    tmpfs                  59M     0   59M   0% /dev/shm
    192.168.1.5:/nishome  9.7G  1.8G  7.4G  20% /nishome
    192.168.1.5:/share    9.7G  1.8G  7.4G  20% /share

    客户端取消挂载命令

    umount /share
    umount /nishome

    客户端空闲时取消挂载

    umount -l /share
    umount -l /nishome

    客户机开机自动挂载

    客户端可以设置系统启动时自动挂载NFS文件,需要将NFS的共享目录挂载信息写入/etc/fstab/文件,以实现对NFS共享目录的自动挂载。

    编辑/etc/fstab文件:

    vi /etc/fstab 

    在最后加入如: 

    192.168.1.5:/home/share /share nfs defaults 0 0
  • 相关阅读:
    Django学习系列之Cookie、Session
    Django学习系列之CSRF
    Django学习系列之Form验证
    Django学习系列之结合ajax
    Logstash学习系列之插件介绍
    Logstash学习系列之基础介绍
    Kubernetes DNS安装配置
    Kubernetes网络配置
    kubernetes节点安装配置
    Kubernetes控制节点安装配置
  • 原文地址:https://www.cnblogs.com/sign-ptk/p/5750675.html
Copyright © 2020-2023  润新知