【Linux】NFS搭建及使用详解
环境:CentOS release 6.8
server 192.168.25.100
client1 192.168.25.101
client2 192.168.25.102
1.服务端操作
1.1 安装nfs需要的包
yum install -y nfs-utils rpcbind
1.2 创建挂载路径
mkdir /nfsfile 我这里的这个路径是一个独立的磁盘,方便存储和管理
1.3 编写配置文件
vim /etc/exports
内容只有下面一行
/nfsfile 192.168.25.0/24(rw,async,no_root_squash,no_all_squash)
说明 第一部分是挂在的路径,第二部分是允许哪些网段的可以访问,我这里设置的是整个网段的,可以细粒度到指定一个IP,括号里面的内容可以写如下的内容
rw 读写
ro 只读
sync 同步模式,内存数据实时写入磁盘
async 非同步模式 ,把内存总数据定期写入磁盘
no_root_squash 客户端挂载NFS共享目录后,root用户不受约束,权限很大 ,不安全,不建议使用
root_squash 与上面选项相对,客户端上的root用户受到约束,被限定成某个普通用户
all_squash 客户端上所有用户在使用NFS共享目录时都被限定为一个普通用户
anonuid/anongid 和上面几个选项搭配使用,定义被限定用户的uid和gid
no_all_squash 客户端上所有用户在使用NFS共享目录时不受约束,显示操作用户
--------------------小插曲------------------------------------
温馨提示,如果不开后面的两个no_权限的话,操作的时候,所有者和所属组都是匿名的操作
这是客户端进行操作的
[root@test6_102 export]# mkdir test
[root@test6_102 export]# ll
total 24
drwx------ 2 root root 16384 Aug 18 01:09 lost+found
drwxr-xr-x 2 nfsnobody nfsnobody 4096 Aug 18 01:44 test
--------------------------------------------------------------
完成配置文件后保存退出,开启服务
service rpcbind start
service nfs start
1.4 查看一下是否启动成功
showmount -e 192.168.25.100
Export list for test100:
/nfsfile 192.168.25.0/24
1.5 分配权限:
如果磁盘想让别人可以读写的话,建议给777权限,不然只能进行读取权限
chmod 777 /nfsfile
1.6 服务端查看全部的nfs共享
exportfs -avr // -a 全部 -v 详细信息 -r刷新
或者:
showmount -e 127.0.0.1 // 查看本机全部nfs共享
2.客户端操作
两台服务器的操作是完全一样的,这里只说明其中一台,另一台服务器同样操作
2.1 安装nfs需要的包
yum install nfs-utils rpcbind -y
2.2 创建路径
mkdir /nfsfile
2.3 挂载nfs文件
mount 192.168.25.100:/nfsfile /nfsfile
查看是否挂载成功
df -Th
Filesystem Type Size Used Avail Use% Mounted on
192.168.25.100:/nfsfile
nfs 2.0G 3.2M 1.9G 1% /nfsfile
挂载成功
2.4 开机自动挂载
2.4.1 客户端操作修改/etc/fstab:
vi /etc/fstab
在最后的位置添加上如下内容:
192.168.25.100:/nfsfile /nfsfile nfs defaults 0 0
这样永久挂载后,每次系统启动都会自动挂载服务器端NFS,当服务端NFS没有开启时,本地客户端启动时会执行挂载任务,导致系统启动速度变慢。因此,我们可以把服务端的NFS自动挂载到本地,当我们需要时,再去访问。
2.4.2 修改系统自带配置文件
自动挂载用到的软件包automount,
一般系统都默认安装了的。如果没有安装再安装下:yum install autofs
下面进行自动挂载配置:
mkdir /nfs_mount //先在根目录创建一个用于自动挂载的目录
vim /etc/auto.master //编辑配置文件
添加内容:
/nfs_mount /etc/auto.nfs //最后一行添加(左边目录是指需要挂载的目录,右边目录是指关联到所需自动挂载路径)
保存退出
vim /etc/auto.nfs //新建我们刚刚设置的自动挂载路径,添加如下信息
nfs_client -rw,async,no_root_squash,no_all_squash 192.168.125.100/nfsfile //左边代表自动挂载目录,中间权限,sync 代表同步,右边代表所需挂载的文件路径
service autofs reload //重置自动挂载map
df -Th
Filesystem Type Size Used Avail Use% Mounted on
192.168.25.100:/nfsfile
nfs 2.0G 3.2M 1.9G 1% /nfsfile
这时,我们去访问我们建立的自动挂载目录,去触发自动挂载
cd /nfs_mount/
ls --ls是没有任何文件的,但是下面的cd是可以进入路径的
cd nfs_client //上面ls查看没有nfs_client目录,但是我们可以cd访问nfs_client目录去触发自动挂载
ls
nfsfile
df -Th
Filesystem Type Size Used Avail Use% Mounted on
192.168.25.100:/nfsfile
nfs 2.0G 3.2M 1.9G 1% /nfsfile
192.168.25.100:/nfsfile
nfs 2.0G 3.2M 1.9G 1% /nfs_mount/nfs_client
参考文档:https://blog.csdn.net/hustcxl/article/details/78561384
【Linux】NFS搭建及使用详解的更多相关文章
- linux route命令的使用详解 添加永久静态路由 tracert traceroute
linux route命令的使用详解 添加永久静态路由 tracert traceroute route -n Linuxroute print Windows traceroute ...
- Linux文件系统的目录结构详解
Linux文件系统的目录结构详解 一.前 言 文章对Linux下所有目录一一说明,对比较重要的目录加以重点解说,以帮助初学者熟练掌握Linux的目录结构. 二.目 录 1.什么是文件系统 2.文件 ...
- 基于CentOS6.5下snort+barnyard2+base的入侵检测系统的搭建(图文详解)(博主推荐)
为什么,要写这篇论文? 是因为,目前科研的我,正值研三,致力于网络安全.大数据.机器学习研究领域! 论文方向的需要,同时不局限于真实物理环境机器实验室的攻防环境.也不局限于真实物理机器环境实验室的大数 ...
- 基于Windows7下snort+apache+php 7 + acid(或者base) + adodb + jpgraph的入侵检测系统的搭建(图文详解)(博主推荐)
为什么,要写这篇论文? 是因为,目前科研的我,正值研三,致力于网络安全.大数据.机器学习.人工智能.区域链研究领域! 论文方向的需要,同时不局限于真实物理环境机器实验室的攻防环境.也不局限于真实物理机 ...
- 转载]OK6410之tftp下载内核,nfs挂载文件系统全过程详解[转]
原文地址:OK6410之tftp下载内核,nfs挂载文件系统全过程详解[转]作者:千山我独行 由于工作的平台也是嵌入式,差不多的平台,所以一直就没有把自己买过来的ok6410板子好好玩玩.以前一直都是 ...
- Linux上的free命令详解、swap机制
Linux上的free命令详解 解释一下Linux上free命令的输出. 下面是free的运行结果,一共有4行.为了方便说明,我加上了列号.这样可以把free的输出看成一个二维数组FO(Free ...
- linux PHP 编译安装参数详解
linux PHP 编译安装参数详解 ./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc -- ...
- Linux Shell数组常用操作详解
Linux Shell数组常用操作详解 1数组定义: declare -a 数组名 数组名=(元素1 元素2 元素3 ) declare -a array array=( ) 数组用小括号括起,数组元 ...
- Linux CAT与ECHO命令详解 <<EOF EOF
Linux CAT与ECHO命令详解 cat命令是Linux下的一个文本输出命令,通常是用于观看某个文件的内容的: cat主要有三大功能: .一次显示整个文件. $ cat filename .从键盘 ...
随机推荐
- JSON类型解析
JSON类型解析 一.序列化和反序列化 程序中的对象,如python中的字典.列表.函数.类等,都是存在内存中,不方便传递或存储,所以需要将内存中的对象转化为文本或者文件格式,来满足传输和持久化(存储 ...
- mysql主从双机keepalived配置
1.关闭selinux SELINUX=disabled 2.yum安装keepalived yum install -y keepalived 3.修改配置文件 主库配置文件: ! Configur ...
- SpringBoot2.x集成Quartz实现定时任务管理(持久化到数据库)
1. Quartz简介 Quartz是OpenSymphony开源组织在Job scheduling领域又一个开源项目. Quartz是一个完全由Java编写的开源作业调度框架,为在Java应 ...
- torch中squeeze与unsqueeze用法
import torch torch中的squeeze与unsqueeze作用是去除/添加维度为1的行 例如,a=torch.randn(2,3) 那么b=a.unsqueeze(0),b为(1,2, ...
- Python定时任务利器—Apscheduler
导语 在工作场景遇到了这么一个场景,就是需要定期去执行一个缓存接口,用于同步设备配置.首先想到的就是Linux上的crontab,可以定期,或者间隔一段时间去执行任务.但是如果你想要把这个定时任务作为 ...
- 升级jenkins之后无法启动 报错Unable to read /var/lib/jenkins/config.xml
故障记录 点击jenkins升级后再点击回滚到之前版本,jenkins就起不来了. 欲哭无泪,报错如下 hudson.util.HudsonFailedToLoad: org.jvnet.hudson ...
- Peomise
什么是promise 简单回答: 一种异步的解决方案 回顾一下什么是异步 事件 / setTimeout 异步执行的时机 同步->异步微任务->GUI渲染->异步宏任务 #为 ...
- 用Python分析北京市蛋壳公寓租房数据
本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,如有问题请及时联系我们以作处理 近期,蛋壳公寓"爆雷"事件持续发酵,期间因拖欠房东房租与租客退款,蛋壳公寓陷入讨 ...
- Python循环语句代码详解:while、for、break
1 while循环 循环语句是程序设计中常用的语句之一.任何编程语言都有while循环,Python也不例外.while循环的格式如下所示. while(表达式): - else: ...
- ELK原理介绍
本篇转载自:https://www.cnblogs.com/aresxin/p/8035137.html 为什么使用日志系统: 日志系统记录了系统运行.业务处理的方方面面,在故障排除.业务分析.数据挖 ...