系统环境:

NFS服务器操作系统: ubuntu18.04 server lts

NFS服务器IP:  192.168.1.164

注: NFS服务器 指的是 待安装 NFS服务 的机器(物理机或者虚拟机)

步骤如下:

1. 先更新

sudo apt update

2. 安装 NFS服务 (此时该服务已设置开机自启动)

sudo apt install nfs-server

3.修改配置文件, 添加nfs-server上用于共享的目录,并设置允许访问该目录的客户机IP,及其读写权限.我这里为了配置简单使用的是 【3.1】的方式

3.1 在NFS服务器上 创建根目录 /nfsroot 用于共享 , 该目录的读写权限 共享给所有连接到该服务器的 NFS客户端

cd /
sudo mkdir nfs-server
sudo chmod +rw -R nfs-server
echo "/nfsroot *(rw,sync,no_root_squash)">>/etc/exports

3.2 在NFS服务器上 创建 根目录 /nfsdata/client1  用于共享, 该目录的读写权限共享给客户端 192.168.1.164 (该客户端主要用来写业务日志或者服务运行状态日志等)

sudo mkdir /nfsdata
sudo mkdir /nfsdata/www_logs
sudo chmod +rw -R /nfsdata/www_logs
echo "/nfsdata/www_logs 192.168.1.164(rw,sync,no_root_squash)">>/etc/exports

3.3 NFS服务器上的目录 /nfsdata/www_logs 读权限共享给客户端 192.168.1.201 (该客户端用来做日志分析, 异常校验,服务崩溃日志查询等)

echo "/nfsdata/www_logs 192.168.1.201(ro,sync,no_root_squash)">>/etc/exports

4. 重启NFS服务

sudo service nfs-server restart

5. 至此 NFS 服务端搭建完毕.

6. NFS客户端(这里和Server操作系统一致)安装

sudo apt-get install nfs-common

7. NFS客户端挂载测试。(将NFS服务器的目录 /nfsroot 挂载到 客户端目录 /mnt/nfsroot, 此时服务端 /nfsroot目录和 该客户端 /mnt/nfsroot 目录同步

mount -t nfs 192.168.1.164:/nfsroot /mnt/nfsroot

附:

(1)关于【步骤3】中的配置说明, 以  /nfsroot *(rw,sync,no_root_squash)  为例

第一项:/nfsroot

  指在NFS服务器上被用来共享的目录, 该目录会和客户端的某个目录同步

第二项: *

  这个 * 和【3.2】后面的 192.168.1.164 指的是要绑定到 该目录(第一项中指定的)的客户端 IP。若设置为 * 则表示允许任何NFS客户端绑定到该目录; 设置为192.168.1.164 表示仅允许IP 为 192.168.1.164的客户端绑定该目录

  

特定ip地址的主机:192.168.1.164
特定子网中的所有主机:192.168.1.0/ 或 192.168.1.0/255.255.255.0
特定域名的主机:nfs.rurjs.com
特定域中的所有主机:*.rurjs.com
所有主机:*

第三项: rw

  这里表示客户端对该共享目录的权限,

ro:共享目录只读;
rw:共享目录可读可写;

第四项: sync

sync:将数据同步写入内存缓冲区与磁盘中,效率低,但可以保证数据的一致性;
async:将数据先保存在内存缓冲区中,必要时才写入磁盘;

第五项: no_root_squash

all_squash:所有访问用户都映射为匿名用户或用户组;
no_all_squash(默认):访问用户先与本机用户匹配,匹配失败后再映射为匿名用户或用户组;
root_squash(默认):将来访的root用户映射为匿名用户或用户组;
no_root_squash:来访的root用户保持root帐号权限;
subtree_check(默认) :若输出目录是一个子目录,则nfs服务器将检查其父目录的权限;
no_subtree_check :即使输出目录是一个子目录,nfs服务器也不检查其父目录的权限,这样可以提高效率;

其他可用项:

anonuid=<UID>:指定匿名访问用户的本地用户UID,默认为nfsnobody();
anongid=<GID>:指定匿名访问用户的本地用户组GID,默认为nfsnobody();
secure(默认):限制客户端只能从小于1024的tcp/ip端口连接服务器;
insecure:允许客户端从大于1024的tcp/ip端口连接服务器;
wdelay(默认):检查是否有相关的写操作,如果有则将这些写操作一起执行,这样可以提高效率;
no_wdelay:若有写操作则立即执行,应与sync配合使用;

ubuntu18.04搭建NFS服务器的更多相关文章

  1. ubuntu18.04搭建nfs

    1.服务端安装 #apt-get update -y #apt-get install -y nfs-kernel-server #apt-get enable nfs-kernel-server 2 ...

  2. 虚拟机VMware15 Ubuntu18.04 搭建FTP服务器

    1.安装vsftpd sudo apt install vsftpd 2.查看是否安装成功,出现版本等信息即成功 sudo vsftpd -v 3.添加ftp用户 sudo useradd -m su ...

  3. Ubuntu 12.04 搭建TFTP服务器

    吐槽先:在Ubuntu上搭建TFTP服务器,网上搜到一堆资料,可惜基本都是部分能用,至于哪些部分能用还要自己摸索着试出来,郁闷之情仅次于找不到任何资料…… ---------------------- ...

  4. Ubuntu20.04搭建web服务器

    其他Ubuntu20以及Ubuntu18系列也可以!

  5. Ubuntu搭建NFS服务器,NFS协议详细分析

    目录 1. Ubuntu搭建NFS服务器 2. NFS协议分析 2.1 实验拓扑: 2.2 在kali抓包分析 1. Ubuntu搭建NFS服务器 ​ NFS(Network FileSystem,网 ...

  6. AIX系统搭建NFS服务器

    本文使用场景:aix6.1升级到aix7.1之后,需要打补丁aix7.1 TL4的补丁,补丁文件有将近10G,当多个系统都升级时,此时搭建nfs服务器,只需要一次上传,其余需升级系统作为客户端只需通过 ...

  7. ubuntu 18.04 搭建flask服务器(大合集,个人实操)

    ubuntu 18.04 搭建flask服务器(大合集) Ubuntu python flask 服务器 本次使用的Ubuntu版本为:Ubuntu 18.04.5 LTS (GNU/Linux 4. ...

  8. Ubuntu 12.04.2搭建nfs服务器

    1.安装nfs 服务器(192.168.0.1) apt-get install nfs-kernel-server 2.修改nfs配置文件: vim /etc/exports 在exports文件中 ...

  9. 虚拟机安装ubuntu18.04及其srs服务器的搭建

    第一次写博客,有些地方可能不太完善. 1.安装VMware,我用的是VMware12. 2.下载Ubuntu镜像(自Ubuntu 17.10开始桌面版本不再提供32位安装镜像,Ubuntu Serve ...

随机推荐

  1. Operation之其他实用操作符

    delay 该操作符会将 Observable 的所有元素都先拖延一段设定好的时间, 然后才将他们发送出来 Observable.of(1,2,3,4) .delay(5, scheduler: Ma ...

  2. Hadoop学习笔记——HDFS

    1.查看hdfs文件的block信息 不正常的文件 hdfs fsck /logs/xxx/xxxx.gz.gz -files -blocks -locations Connecting to nam ...

  3. 历时一年《Python自动化测试实战》终于出版!!!

    一.为什么会写这本书 1.系统梳理.可以加深自己对测试知识体系的系统梳理 2.名气.增加个人的名气,比如:面试时,可以很自豪的说,我是xxxx书的作者 3.利他.帮助有需要的学习者更系统.完备的学习和 ...

  4. 小程序报错:对应的服务器 TLS 为 TLS 1.0 ,小程序要求的 TLS 版本必须大于等于 1.2

    我这里出现此错误的原因是,搭载域名网站的服务器是windows2008 r2,配置的域名证书是TLS1.0版本,需要在服务器注册表中加入TLS的其他版本. 处理办法如下 小程序报错 TLS 版本必须大 ...

  5. Spring Boot JDBC:加载DataSource过程的源码分析及yml中DataSource的配置

    装载至:https://www.cnblogs.com/storml/p/8611388.html Spring Boot实现了自动加载DataSource及相关配置.当然,使用时加上@EnableA ...

  6. Quartz学习笔记:集群部署&高可用

    Quartz学习笔记:集群部署&高可用 集群部署 一个Quartz集群中的每个节点是一个独立的Quartz应用,它又管理着其他的节点.这就意味着你必须对每个节点分别启动或停止.Quartz集群 ...

  7. web端测试总结

    1.数值型输入框: 条件:demcial(x,y) ,界面显示小数点到y位 通常要检查以下几点: (1)边界值:最大值.最小值.最大值+1.最小值-1  (2)位数:最小位数.最大位数.最小位数-1最 ...

  8. 转 java 8 lamba stream

    一直在写中间件相关的代码,提供SDK给业务方使用,但很多业务方还一直停留在1.7版本,迟迟不升级,为了兼容性,不敢在代码中使用Java8的一些新特性,比如Stream之类的,虽然不能用,但还是要学一下 ...

  9. js生成条形码——JsBarcode

    原文地址:https://www.cnblogs.com/huangenai/p/6347607.html 介绍一下在GitHub生成条形码的js插件→JsBarcode 条码支持的有: CODE12 ...

  10. 21 Oracle 数据库的安装教程

    1.百度网盘中下载oracle 11g的安装包 win64_11gR2_database 解压后: 2.安装过程 <1>双击setup.exe,等待一会(2分钟左右),跳出如下界面. 点击 ...