首页 > 系统相关 >Linux---nfs服务

Linux---nfs服务

时间:2024-02-22 21:22:26浏览次数:30  
标签:data 172.16 --- etc nfs Linux NFS root

1.nfs概述

NFS(Network File System)是一种在网络上实现文件共享的协议。它允许用户通过网络访问远程服务器上的文件和目录,使得这些文件和目录在本地计算机上看起来就像是本地文件和目录一样。NFS最初由Sun Microsystems开发,现在已经成为一种广泛使用的标准协议,被各种操作系统和平台所支持。

NFS的工作原理是将服务端上的特定目录标记为共享目录,并使用RPC(Remote Procedure Call)进行客户端和服务端之间的通信。当客户端需要访问远程文件时,它会向NFS服务器发送相应的请求。NFS服务器接收到请求后会执行相应的文件操作,并将结果返回给客户端。客户端可以通过挂载(mount)NFS共享到自己的文件系统上,使得远程共享的目录在客户端上变得可访问。

2.安装配置

2.1.服务端

NFS服务下载完成后文件默认是空的,直接使用vim编辑
[root@nfs ~]# yum -y install nfs-utils
1.[root@nfs ~]# vim /etc/exports
2.按a进入编辑模式
3.输入 /data 172.16.1.0/24(rw,sync,all_squash,anonuid=666,anongid=666)(这里是根据实际情况进行编辑)
#(data是共享的目录,sync同步,刷新)
4.按esc退出编辑模式 输入 :进入底层,输入wq保存并退出
5.查看文件配置
[root@nfs ~]# cat /etc/exports
/data  172.16.1.0/24(rw,sync,all_squash)

#注意: /data uid gid 只是自己创建的名称,名称可以自定义,也可根据公司规定的名称来创建

2.2.根据配置创建信息

根据配置创建必要的数据
groupadd -g666 www
useradd -u666 -g666 -M -s /sbin/nologin www
mkdir /data
chown www.www /data
(以上都是测试信息)

#如果上一步没有指定uid gid,那么就需要查看一下密码文件最后一行默认的压缩文件的用户名是那个
cat /etc/passwd
nfsnobody:x:65534:65534:Anonymous NFS User:/var/lib/nfs:/sbin/nologin

1.[root@nfs ~]#mkdir /data
2修改目录的属主属组为默认的压缩用户nfsnobody #用户压缩
chown -R nfsnobody.nfsnobody /data 

2.3.启动nfs并加入开机自动运行

[root@nfs ~]# systemctl start nfs  
[root@nfs ~]# systemctl enable nfs  

2.4.通过配置文件检查NFS配置是否正确

[root@nfs ~]# cat /var/lib/nfs/etab 
/data	172.16.1.0/24(rw,sync,wdelay,hide,nocrossmnt,secure,root_squash,all_squash,no_subtree_check,secure_locks,acl,no_pnfs,anonuid=65534,anongid=65534,sec=sys,rw,secure,root_squash,all_squash)

[root@nfs ~]# grep 65534 /etc/passwd
nfsnobody:x:65534:65534:Anonymous NFS User:/var/lib/nfs:/sbin/nologin

3.客户端

3.1.安装nfs,不启动

登录其他服务器
[root@web01 ~]# yum -y install nfs-utils

3.2.使用showmount查看服务端的目录

[root@web01 ~]# showmount -e 172.16.1.31
Export list for 172.16.1.31:
/data 172.16.1.0/24

3.3.使用mount挂载 /data 到本地的 /mnt 下

[root@web01 ~]# mount -t nfs 172.16.1.31:/data /mnt
[root@web01 ~]# df -h
Filesystem         Size  Used Avail Use% Mounted on
devtmpfs           476M     0  476M   0% /dev
tmpfs              487M     0  487M   0% /dev/shm
tmpfs              487M  7.7M  479M   2% /run
tmpfs              487M     0  487M   0% /sys/fs/cgroup
/dev/sda3           19G  2.0G   17G  11% /
/dev/sda1          197M  110M   88M  56% /boot
tmpfs               98M     0   98M   0% /run/user/0
172.16.1.31:/data   19G  2.0G   17G  11% /mnt

3.4.开机自动挂载

#vim编辑配置文件,将命令写到配置文件里,保存退出,然后给/etc/rc.local 加上x权限,重启
vim /etc/rc.local
mount -t nfs 172.16.1.31:/data /mnt
chmod 744 /etc/rc.d/rc.local
reboot

标签:data,172.16,---,etc,nfs,Linux,NFS,root
From: https://www.cnblogs.com/liuzhonghua1/p/18028248

相关文章

  • Unity编辑器扩展秘籍-反射解决ParticleSystemEditor的扩展显示错误的问题
    如果使用常规的扩展编辑器方法,为ParticleSystem增加一个自定义按钮[CustomEditor(typeof(ParticleSystem))]publicclassMyParticleSystemEditor:UnityEditor.Editor{privateList<Material>_mats=newList<Material>();publicoverridevoi......
  • 5 - 设备文件创建
    DeviceFileCreation原文链接我的博客创建字符设备设备文件在上一个小节中,我们知道了如何分配主副设备号,但是到此为止,只是创建主副设备号。并未在/dev目录下创建设备文件。设备文件设备文件可以实现用户空间应用与硬件的通讯。它们并不是普通文件,只是从编程视角来看是一......
  • Oracle系列---【查看用户状态与修改密码】
    1.查看被锁住的用户SELECTUSERNAME,ACCOUNT_STATUSFROMDBA_USERSWHEREACCOUNT_STATUSLIKE'%LOCKED%';2.修改指定用户名密码sqlplus/assysdba;GRANTDBATOyour_username;sqlplususername/passwordassysdba;--只修改密码为新密码ALTERUSERAFP_COM_ASCI......
  • MySQL 多表查询 - 缺练习解析
    多表查询【一】概要(1)联表查询innerjoin:内连接--innerjoin/join#拼接两张表中共有的数据部分select*from表2innerjoin表1on表2.字段=表1.字段;leftjoin:左外连接--leftjoin#返回左表中的所有行,以及右表中与左表中相匹配的行。如果右表中没......
  • Go - memory model
     Receivingfromanemptyunbufferedchannelcausedthechildgoroutineexit.  ......
  • js-模块化AMD vs CMD
    1.AMD和require.jsdefine(function(){varbasicNum=0;varadd=function(x,y){returnx+y;};return{add:add,basicNum:basicNum};});//定义一个依赖underscore.js的模块define(['underscore'],func......
  • 文心一言 VS 讯飞星火 VS chatgpt (199)-- 算法导论15.2 1题
    一、用go语言,对矩阵规模序列(5,10,3,12,5,50,6),求矩阵链最优括号化方案。文心一言,代码正常运行:在Go语言中,为了找到矩阵链乘法的最优括号化方案,我们通常会使用动态规划(DynamicProgramming,DP)的方法。矩阵链乘法的问题是要确定计算矩阵乘积的最有效顺序,以最小化乘法操作的次数。这里......
  • 学成在线(online-course) | 【Q&A】
    模块之间的依赖❓为什么content-api模块中要填写数据库相关配置,他是api工程,应该不会与数据库连接......
  • 测试也能开发 - 点击二级分类实现自动筛选功能
    写在前面怎么来诠释下现在的心情呢?算是比较复杂吧,我也想过关于自己个人问题的事,始终是无解的状态。35岁,变成了一个没有胆量、小心翼翼的年纪,甚至说慎重到说话都要反复思考的程度,先不说内耗问题了,真的就是负能量爆棚了,我有那么一阵极度怀疑自己丧失了和人沟通的能力。今天,我co......
  • GPT-GNN论文阅读笔记
    Abstract训练GNN通常需要大量的特定于任务的标记数据,这些获取是非常昂贵的,减少标记工作的一种有效方法是对具有自监督的表达性GNN进行预训练,然后将学习到的模型转移到只有少量标签的下游任务中,本文提出了GPT-GNN的框架,通过生成式预训练来初始化GNN,GPT-GNN引入了一个自监督的属性......