• Ubuntu环境下NFS服务器搭建


    看到鸟哥私房菜对NFS的介绍,就想试试玩一下。看起来步骤也很简单。

    1.背景名词。

    NFS(Network File System)

    作用:让所有的Unix-like 机器通过网络共享彼此的文件

    局限:文件权限问题。客户端和服务器端必须具备相同的账号才能够访问某些目录或文件。

    RPC(Remote Procedure Call)

    作用:指定每个NFS功能所对应的port number,并且通知客户端,让客户端可以连接到正确的端口上去。

    当服务器在启动NFS时会随机选取数个端口,并主动向RPC注册,因此RPC可以知道每个端口对应的NFS功能。

    所以启动NFS之前,要启动RPC,否则NFS无法向RPC注册。

    2.服务器端配置

    1)下载软件

    #sudo apt-get install rpcbind nfs-kernel-server

    2)建立共享目录

    #sudo mkdir /home/user/nfstest

    #sudo chmod 777 /home/user/nfstest

    3)修改配置文件

    #sudo vim /etc/exports

    /home/user/nfstest     localhost(rw,sync,no_root_squash)

    localhost表面只允许本机访问,这个字段可以为IP地址。也可以用正则表达式来表示。

    rw代表具有可读写权限。ro代表只具有可读权限。

    sync是资料同步写入内存和硬盘。async代表数据会先暂存于内存当中,而非直接写入硬盘。

    no_root_squash和root_squash的不同在于客户端用户为root时,访问系统的权限不同。客户端使用NFS系统的账号为root时,root_squash会压缩用户为nfsnobody,而no_root_squash会继续保持其root身份。

    all_root_squash会压缩所有的用户为nfsnobody。

    4)重启服务

    #sudo /etc/init.d/rpcbind restart

    #sudo /etc/init.d/nfs-kernel-server restart

    * Stopping NFS kernel daemon
    ...done.
    * Unexporting directories for NFS kernel daemon...
    ...done.
    * Exporting directories for NFS kernel daemon...
    exportfs: /etc/exports [1]: Neither 'subtree_check' or 'no_subtree_check' specified for export "localhost:/home/user/nfstest".
    Assuming default behaviour ('no_subtree_check').
    NOTE: this default has changed since nfs-utils version 1.0.x
    
    ...done.
    * Starting NFS kernel daemon
    ...done.

    可以看到 NFS kernel daemon启动成功。如果不成功会显示fail。

    5)测试服务器

    #showmount -e
    Export list for hostname:
    /home/user/nfstest localhost
    说明服务器端搭建OK。

    3.客户端配置

    1)下载软件

    #sudo apt-get install rpcbind nfs-common

    2)挂载文件

    #mkdir /home/user/mnt

    #chmod 777 /home/user/mnt

    #mount -t nfs localhost:/home/user/nfstest /home/user/mnt

    mount -t nfs 服务器名/IP地址:服务器共享目录  本地挂载目录

    3)客户端测试

    #cd /home/user/mnt

    #touch testfile

    就会看到 /home/user/nfstest和/home/user/mnt下面都有testfile文件,说明测试成功。

    4.取消挂载

    #sudo umount /home/user/mnt

    作者:微微微笑
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利.
  • 相关阅读:
    Linux:看门狗watchdog.sh程序编写示例
    通用linux程序看门狗(watchdog)python版
    Linux看门狗脚本 1.4
    Qt 6中的输入事件
    使用Qt5Compat库从Qt 5移植到Qt 6
    vertical-align(mozilla的在线帮助)
    css文字如何垂直居中?
    JS-apply 、call 以及 bind
    敢放手把事情给别人做
    页面----调用本地程序
  • 原文地址:https://www.cnblogs.com/miniren/p/4655199.html
Copyright © 2020-2023  润新知