Linux-NFS存储
1.什么是NFS
NFS是Network File System 的缩写,中文意思是网络文件共享系统,它的主要功能是通过网络(一般是局域网)让不同的主机系统之间可以共享文件或目录。

2.NFS存储服务作用
(1)实现数据的共享存储
(2)编写数据操作管理
(3)节省购买服务器磁盘开销
3.NFS服务部署流程
RPC:远程过程调用服务程序

服务端:
(1)下载安装软件
[root@nfs01 ~]# yum install nfs-utils rpcbind -y
(2)编写nfs服务的配置文件,并修改权限
[root@nfs01 ~]# vim /etc/exports
/data 172.16.1.0/24(rw,sync)
(3)创建存储目录
[root@nfs01 ~]# mkdir -p /data
[root@nfs01 ~]# id nfsnobody #安装软件后系统自动创建,虚拟用户
uid=65534(nfsnobody) gid=65534(nfsnobody) groups=65534(nfsnobody)
[root@nfs01 ~]# chown -R nfsnobody.nfsnobody /data
[root@nfs01 ~]# ll -d /data/
drwxr-xr-x 2 nfsnobody nfsnobody 6 Aug 3 15:53 /data/
(4)启动服务
#先启动rpcfuw
[root@nfs01 ~]# systemctl start rpcbind.service
[root@nfs01 ~]# systemctl enable rpcbind.service
#在启动nfs服务
[root@nfs01 ~]# systemctl start nfs
[root@nfs01 ~]# systemctl enable nfs
(5)NFS相关进程说明

客户端:
(1)下载安装软件
[root@backup ~]# yum install nfs-utils.x86_64 -y
(2)实现远程挂载共享目录
[root@backup ~]# mount -t nfs 172.16.1.31:/data /mnt
[root@backup ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda3 50G 1.7G 49G 4% /
devtmpfs 481M 0 481M 0% /dev
tmpfs 492M 0 492M 0% /dev/shm
tmpfs 492M 7.5M 484M 2% /run
tmpfs 492M 0 492M 0% /sys/fs/cgroup
/dev/sda1 197M 105M 93M 54% /boot
tmpfs 99M 0 99M 0% /run/user/0
172.16.1.31:/data 50G 1.7G 49G 4% /mnt
4.NFS服务端详细参数配置说明

(1)支持多网段挂载
[root@nfs01 ~]# cat /etc/exports
/data 172.16.1.0/24(rw,sync) 10.0.0.0/24(rw,sync)
(2)NFS配置参数权限说明
| 参数 | 含义 |
|---|---|
| rw | 存储目录的读写权限 |
| ro | 存储目录的只读权限 |
| sync | 同步方式存储数据 |
| async | 异步方式存储数据 |
| no_root_squash | 不要将root用户身份进行转换 |
| root_squash | 将root用户身份进行转换 |
| all_squash | 将所有用户身份都进行转换 |
| no_all_squash | 不要将所有用户身份进行装换 |


(3)参数操作演示
a.操作演示no_all_squash参数功能:
[root@nfs01 ~]# vim /etc/exports
/data 172.16.1.0/24(rw,sync,no_all_squash)
[oldboy@backup mnt]$ touch shuai_data02.txt
touch: cannot touch ‘shuai_data02.txt’: Permission denied
解决权限问题:
[root@nfs01 ~]# chmod o+w /data/
[root@nfs01 ~]# ll /data/ -d
drwxr-xrwx. 2 nfsnobody nfsnobody 52 May 9 12:11 /data/
[shuai@backup mnt]$ touch shuai_data02.txt
[shuai@backup mnt]$ ll
total 4
-rw-rw-r-- 1 shuai shuai 0 May 9 12:17 shuai_data02.txt
b. 操作演示root_squash参数功能:
[root@nfs01 ~]# vim /etc/exports
/data 172.16.1.0/24(rw,sync,root_squash)
[root@backup mnt]# touch root_data.txt
[root@backup mnt]# ll
-rw-r--r-- 1 nfsnobody nfsnobody 0 May 9 12:20 root_data.txt
c.操作演示no_root_squash参数功能
[root@nfs01 ~]# vim /etc/exports
/data 172.16.1.0/24(rw,sync,no_root_squash)
[root@backup mnt]# ll
total 4
-rw-r--r-- 1 root root 0 May 9 12:23 root_data02.txt
d.企业互联网公司如何配置NFS各种squash参数
保证网站存储服务器用户数据安全性:
no_all_squash 需要进行配置 共享目录权限为www(确保客户端用户和服务端用户 uid数值一致)
root_squash 需要进行配置
以上默认配置(很多服务默认配置都是从安全角度出发)
e.查看nfs默认配置
[root@nfs01 ~]# cat /var/lib/nfs/etab
/data 172.16.1.0/24(rw,sync,wdelay,hide,nocrossmnt,secure,root_squash,no_all_squash,no_subtree_check,secure_locks,acl,no_pnfs,anonuid=65534,anongid=65534,sec=sys,rw,secure,root_squash,no_all_squash)
/data 10.0.0.0/24(rw,sync,wdelay,hide,nocrossmnt,secure,root_squash,no_all_squash,no_subtree_check,secure_locks,acl,no_pnfs,anonuid=65534,anongid=65534,sec=sys,rw,secure,root_squash,no_all_squash)
| 参数 | 含义 |
|---|---|
| anonuid=65534,anongid=65534 |
指定映射的用户信息 |
5企业中如何编辑nfs配置文件
(1)服务端配置
01.通用方法
data 172.16.1.31/24(rw,sync)
02.特殊情况(部分人员不能操作存储目录)
data 172.16.1.31/24(rw,sync) 10.0.0.0/24(ro,sync)
03.修改默认映射用户
/data 10.0.0.0/24(rw,sync,anonuid=xxx,anongid=xxx)
(2)客户端配置(永久挂载)
[shuai@backup ~]$ mount -t nfs 172.16.1.31:/data /mnt
#实现永久挂载
[shuai@backup ~]$ echo "mount -t nfs 172.16.1.31:/data /mnt" >> /etc/rc.local
#实现/etc/fstab开机自动挂载,必须开启自启动remote-fs.target服务(C7) (C6必须启动netfs)
[root@backup /mnt]# tail -1 /etc/fstab
172.16.1.31/data /mnt nfs defaults 0 0
6.mount参数
[root@backup ~]# man mount
[root@backup ~]# mount -t nfs -o rw 172.16.1.31:/data /mnt
#强制卸载挂载点
umount -lf /mnt
| 参数 | 参数意义 |
|---|---|
| rw | 实现挂载后挂载点目录可读可写 (默认) |
| ro | 实现挂载后挂载点目录只读 |
| suid | 在共享目录中可以让setuid权限位生效 (默认) |
| nosuid | 在共享目录中可以让setuid权限位失效 (提供共享目录的安全性) |
| exec | 共享目录中的执行文件可以直接执行 |
| noexec | 共享目录中的执行文件不可以直接执行 |
| auto | 可以实现自动挂载 配合mount -a使用 实现开机自动挂载 |
| noauto | 不可以实现自动挂载 |
| nouser | 禁止普通用户可以卸载挂载点 |
| user | 允许普通用户可以卸载挂载点 |
7.nfs服务问题
nfs服务器重启,挂载后创建数据比较慢 服务器重启方式不正确 服务重启:
1.restart 重启服务 强制断开所有连接 用户感受不好
2.reload 重启服务(平滑重启) 强制断开没有数据传输的连接 提升用户感受
8.NFS服务挂载不上排查方法
(1)检查nfs进程信息是否注册(服务端)
[root@nfs01 ~]# rpcinfo -p 172.16.1.31
program vers proto port service
100000 4 tcp 111 portmapper
100000 3 tcp 111 portmapper
100000 2 tcp 111 portmapper
100000 4 udp 111 portmapper
100000 3 udp 111 portmapper
100000 2 udp 111 portmapper
100024 1 udp 55958 status
100024 1 tcp 49103 status
100005 1 udp 20048 mountd
100005 1 tcp 20048 mountd
100005 2 udp 20048 mountd
100005 2 tcp 20048 mountd
100005 3 udp 20048 mountd
100005 3 tcp 20048 mountd
100003 3 tcp 2049 nfs
100003 4 tcp 2049 nfs
100227 3 tcp 2049 nfs_acl
100003 3 udp 2049 nfs
100003 4 udp 2049 nfs
100227 3 udp 2049 nfs_acl
100021 1 udp 59352 nlockmgr
100021 3 udp 59352 nlockmgr
100021 4 udp 59352 nlockmgr
100021 1 tcp 37172 nlockmgr
100021 3 tcp 37172 nlockmgr
100021 4 tcp 37172 nlockmgr
#原因服务没启动
(2)检查有没有可用的存储目录(客户端)
[root@backup ~]# showmount -e 172.16.1.31 #检查配置文件,重启服务
Export list for 172.16.1.31:
/data 172.16.1.0/24
(3)服务端进行本地挂载测试(服务端)
[root@nfs01 ~]# mount -t nfs 172.16.1.31:/data /mnt #检查网络
Linux-NFS存储的更多相关文章
- Linux NFS存储服务部署
什么是NFS 中文意思是网络文件系统,主要功能是通过网络(一般是局域网)让不同主机之间可以共享文件或目录 NFS属于本地文件存储服务 缺点1: 1 2 3 4 5 6 7 windows上无法使用 ...
- linux nfs服务配置挂载以及oracle使用nfs存储挂载注意事项
服务端共享目录 /home/XXX/nfs_shared 172.16.22.0/24(rw,no_root_squash) service nfs restart 常用命令: 查看所有nfs共享目录 ...
- 烂泥:NFS存储与VSphere配合使用
本文首发于烂泥行天下. 公司服务器的虚拟化使用的是VM ESXi 5.0,为了更有效的利用服务器的硬盘空间.就把所有的镜像文件存放到另外一台linux服务器上,这样在使用vsphere安装虚拟机时可以 ...
- NFS存储服务
NFS存储服务笔记======================================================================NFS共享存储是什么: 英文名-Netwo ...
- [svc]NFS存储企业场景及nfs最佳实战探究
办公网络里人一般系统用共享,尤其是财务, 他们喜欢直接点开编辑. 而不喜欢ftp nfs在网站架构中的用途 注: 如果pv量少,则放在一台机器上速度更快,如果几千万pv,则存储分布式部署. 网站架构中 ...
- linux nfs
linux(十四)之linux NFS服务管理 学到这里差不多就结束了linux的基础学习了,其实linux的内容并不难,我们要经常的反复的去操作它,多多和它去联络感情才能很好的掌握这个linux. ...
- NFS存储服务及部署
1 NFS简介 1.1 什么是NFS NFS=Network File System=网络文件系统.主要功能是通过网络(一般是局域网)让不同的主机系统之间可以共享文件或目录.NFS客户端(一般为应用服 ...
- nfs 存储服务
今日内容: NFS 1.什么是nfs? network file system 网络文件系统 nfs共享存储 2.nfs能干什么? nfs 能为 不同主机系统之间 实现 文件的共享 3.为什么要使用n ...
- 截取linux文件存储路径方法
1.截取linux文件存储路径方法 package com.tydic.eshop.action.freemarker; public class dddd { public static void ...
- docker volume创建、备份、nfs存储
docker存储volume #环境 centos7.4 , Docker version 17.12.0-ce docker volume创建.备份.nfs存储 #docker volume 数据存 ...
随机推荐
- [DB] Spark Core (1)
生态 Spark Core:最重要,其中最重要的是RDD(弹性分布式数据集) Spark SQL Spark Streaming Spark MLLib:机器学习算法 Spark Graphx:图计算 ...
- 选择“保留window设置、个人文件及应用”或者“升级安装windows并保留文件设置和应用程序”的 处理干净以后用ghost备份
个人经验 第一次装好以后 把所有常用软件什么的 还有系统的更新全部装好 删去乱七八糟的临时文件啊什么的 处理干净以后用ghost备份下次需要重装直接从ghost镜像恢复 然后更新软件 打补丁 再备份 ...
- Installing SFTP/SSH Server on Windows using OpenSSH
Installing SFTP/SSH Server 1. On Windows 10 version 1803 and newer In Settings app, go to Apps > ...
- openstack宿主机故障,虚拟实例恢复
前言: 因为机房服务器运行不稳定的原因导致计算节点挂掉,然后上面的Centos7虚拟机在迁移之后开机报错.这个解决方法同样适用于其它操作系统的虚拟机.基于镜像创建的虚拟机实例. I/O error, ...
- PHP使用mail函数发送邮件
yum install sendmail #需要使用到sendmail hostname jb51.net #建议修改主机名为域名格式,否则启动sendmail会很慢 systemctl start ...
- 国产龙芯3A3000处理器评测:与英特尔差距明显
国产龙芯3A3000处理器评测:与英特尔差距明显 国产龙芯3A3000处理器评测:与英特尔差距明显 新浪财经APP缩小字体放大字体收藏微博微信分享579 新酷产品第一时间免费试玩,还有众多优质达人分享 ...
- 855 gpu强 730 3倍
骁龙730G的GPU规模只有骁龙835的GPU规模的一半,Adreno 618是128 ALUs,而Adreno 540是256 ALUs. 根据GFXBench的数据,对GPU负载比较大的曼哈顿3. ...
- 在 Ubuntu 上安装 .NET SDK 或 .NET 运行时
在wsl Ubuntu 20.04上面安装dotnet链接 https://docs.microsoft.com/zh-cn/dotnet/core/install/linux-ubuntu Ubun ...
- SpringBoot打jar包-下载文件时报错-class path resource xxxxxx cannot be resolved to URL because it does not exist
一.问题由来 新项目的开发中,打包方式由war包改为了jar包的方式,这样在部署的时候更加的方便.测试环境使用pm2这个工具来管理项目的运行,停止,重启等等非常方便. 可是当测试人员在测试项目中的文件 ...
- Docker五分钟搭建Wordpress
当你看到这篇文章的时候,表明你已经有docker的基础知识了,或者可以看上一篇文章 Docker 入门教程. 传统的使用wordpress搭建网站,意味着你需要搭建以下四个环境: php: apach ...