首页 > 其他分享 >NFS网络文件系统的搭建部署

NFS网络文件系统的搭建部署

时间:2023-05-27 14:32:07浏览次数:37  
标签:web zh54 文件系统 web1 NFS nfs root 搭建

(文章目录)


NFS概述

NFS(Network File System)是一种分布式文件系统,可以使多个计算机之间共享文件,其基本工作原理是通过将文件系统挂载到远程服务器来实现。NFS最初由Sun公司开发,现在已经成为了一种在Unix和Linux操作系统中广泛使用的文件系统。


NFS的优点: 1.可以实现异构网络环境的文件共享,支持多种操作系统平台。 2.对于文件的读写速度较快,能够提供高效的数据访问。 3.NFS的管理和维护比较简单,易于部署和使用。 4.能够实现透明化的文件读写操作,用户无需关注网络上文件的具体存储位置和存储细节。

NFS的缺点: 1.NFS的安全性并不是很好,传输数据时容易被窃听和篡改,如果要增强其安全性需要额外的安全措施。 2.在跨越网络连接时,NFS的性能可能会受到影响,例如延迟和带宽限制等。 3.如果NFS服务器故障或者网络连接中断,则客户端可能无法访问文件。 4.NFS不支持文件锁定,这会导致多个客户端同时写入同一个文件时出现冲突等问题。


总体来说,NFS是一种高效简单的文件系统,它为不同操作系统平台上文件共享提供了方便。然而,对于安全、性能和可靠性等问题需要进行详细的分析和解决。

搭建步骤

一.下载nfs软件

yum install nfs-utils -y

二.启动nfs服务

service nfs start

三.编写配置文件

# vim /etc/exports
/web    192.168.10.0/255.255.255.0(rw,all_squash,sync)

/web为共享目录,ip为允许来访问的网段

rw:可读写,ro:只读(raed only)

all_squash:对所有访问的用户都视为普通用户,root_squash:当NFS客户端来访问的是root,将其映射为匿名用户

sync:同步读入内存和磁盘,asnyc:先将数据保存在内存,有空时再写入磁盘,效率更高,但可能丢失数据

四.创建共享文件并添加一些文件

[root@web1 /]# mkdir web
[root@web1 /]# ls
bin  boot  dev  etc  home  lib  lib64  media  mnt  opt  proc  root  run  sbin  srv  sys  tmp  usr  var  web
[root@web1 /]# cd web
[root@web1 web]# mkdir zh54
[root@web1 web]# cd zh54/
[root@web1 zh54]# vim first.hmtl

五.开启自启和刷新服务

[root@web1 zh54]# service nfs restart	# 重启服务
Redirecting to /bin/systemctl restart nfs.service
[root@web1 zh54]# exportfs -rv		# 刷新输出文件的列表,重启和刷新列表用一个即可
exporting 192.168.10.0:/web
# service firewalld stop	# 临时关闭防火墙
# systemctl disable firewalld	# 永久关闭防火墙
[root@web1 web]# echo "service nfs start">>/etc/rc.local 	# 开启自动启动nfs服务

六.客户机配置

下载nfs工具并将html目录挂载到NFS服务器的web目录下

yum install nfs-utils -y
mount 192.168.10.142:/web /usr/local/zh54/html	# mount 源路径文件(远程机器上)	挂载点(本机上)

用df命令查看挂载情况

[root@web1 zh54]# df
文件系统                   1K-块    已用     可用 已用% 挂载点
/dev/mapper/centos-root 17811456 1611280 16200176   10% /
devtmpfs                  920416       0   920416    0% /dev
tmpfs                     932640       0   932640    0% /dev/shm
tmpfs                     932640    9760   922880    2% /run
tmpfs                     932640       0   932640    0% /sys/fs/cgroup
/dev/sda1                1038336  145060   893276   14% /boot
tmpfs                     186528       0   186528    0% /run/user/0
192.168.10.142:/web     17811456 1574400 16237056    9% /usr/local/zh54/html	# 如此显示即挂载成功

此时访问html目录相当于访问nfs服务器的web目录,即html目录的指针指向了web,当umount时,指针重新指向原html目录下的文件

[root@web1 zh54]# cd html/
[root@web1 html]# ls
zh54
[root@web1 html]# cd zh54/
[root@web1 zh54]# ls
first.hmtl
[root@web1 zh54]# cat first.hmtl 
hello zh54!

七.开机自动挂载

第一种方法:将挂载目录写入到/etc/rc.local文件里

[root@web1 html]# echo "mount 192.168.10.142:/web /usr/local/zh54/html">>/etc/rc.local
[root@web1 html]# chmod +x /etc/rc.d/rc.local

第二种方法:修改/etc/fstab文件

[root@web1 etc]# vim /etc/fstab 
192.168.10.142:/web /usr/local/zh54/html        nfs     defaults        0 0

linux系统开机会根据/etc/fstab文件里的内容进行挂载磁盘分区 ——file system table

192.168.10.142:/web 	/usr/local/zh54/html        nfs     defaults        0 				0
远程源文件				本地挂载点			文件系统类型		挂载选项默认		是否支持dump备份	开机是否检查分区文件系统	

权限

服务器远程访问受到两种权限的限制:exports里的共享权限、linux普通用户对文件的操作权限,两个权限都拥有时才能进行相应的操作

当exports里指定了all_squash属性,则所有的远程访问用户都会使用一个nfsnobody的匿名用户进行操作,而该用户权限默认仅为普通用户

[root@web1 web]# tail -1 /etc/passwd
nfsnobody:x:65534:65534:Anonymous NFS User:/var/lib/nfs:/sbin/nologin

标签:web,zh54,文件系统,web1,NFS,nfs,root,搭建
From: https://blog.51cto.com/u_16077445/6362192

相关文章

  • 基于Electron24+Vite4+Vue3搭建桌面端应用
    一说到创建桌面应用,就不得不提及Electron和Tauri框架。这次给大家主要分享的是基于electron最新版本整合vite4.x构建vue3桌面端应用程序。之前也有使用vite2+vue3+electronc创建桌面端项目,不过 vue-cli-plugin-electron-builder 脚手架插件构建的项目electron版本只有13.x。如......
  • 长亭雷池waf社区版搭建
    dockerversion#检查docker版本执行以下命令创建并进入雷池安装目录mkdir-psafeline#创建safeline目录cdsafeline#进入safeline目录执行以下命令,将会自动下载镜像,并完成环境的初始化curl-fsSLkhttps://waf-ce.chaitin.cn/release/latest/setup.sh|bash执行......
  • rhel 7.3搭建mysql的主从复制—非单机场景
    文档课题:rhel7.3搭建mysql的主从复制—非单机场景.数据库:mysql8.0.27系统:rhel7.3安装包:mysql-8.0.27-linux-glibc2.12-x86_64.tar.xz环境介绍:1、理论知识master将操作语句记录到binlog日志,然后授予slave远程连接权限(master需开启binlog,为数据安全考虑,slave也开启binlog).s......
  • Linux入门篇之环境搭建
    前言对于Linux的初学者来说,云服务器是最好也是最方便的选择一、搭建Linux环境的方法1.裸机安装Linux操作系统,不推荐2.虚拟机安装Linux操作系统,不推荐3.云服务器安装,推荐二、白嫖使用云服务器云服务器的安装平台有很多,例如腾讯云,阿里云等,我们可以直接进入对应平台官网进行下载但是,有......
  • 一步一步搭建Svn服务之主干分支操作
        公司的项目越来越大,开发人员越来越多,项目中有不同的里程碑,也就是不同版本。软件开发的过程中,如果发现上一个版本有一个紧急BUG,并且需要立即发包修复。这个时候就进退两难,如果你做了版本管理,直接切换到上个版本开发就好了。    在版本控制的系统中,我们经常需要......
  • 一步一步搭建Svn服务之VisualSVN扩展在线修改密码功能
    一、修改密码原理要实现客户端修改密码,其实就是通过apache的cgi模块去实现,就是把数据提交到那个指定的地址。本次操作需要用到ApachePasswd包,网上有很多apachepasswd的包,但是用了之后发现无法重启服务了,所以要找符合当前VisualSVN版本的包。我准备的附件在VisualSVN4.2.1和VisualS......
  • 直播软件搭建,css设置滚动条样式
    直播软件搭建,css设置滚动条样式设置滚动条样式/*滚动条样式*/    ul::-webkit-scrollbar{/*滚动条整体样式*/       4px;   /*高宽分别对应横竖滚动条的尺寸*/      height:4px;    }    ul::-webkit-scrollbar-thumb......
  • 手把手教你在昇腾平台上搭建PyTorch训练环境
    摘要:在昇腾平台上运行PyTorch业务时,需要搭建异构计算架构CANN软件开发环境,并安装PyTorch框架,从而实现训练脚本的迁移、开发和调试。本文分享自华为云社区《手把手教你在昇腾平台上搭建PyTorch训练环境》,作者:昇腾CANN。PyTorch是业界流行的深度学习框架,用于开发深度学习训练脚本......
  • 搭建mysql 初始环境
    安装MySQL数据库实验环境:centos操作系统、cmake源码包、mysql源码包实验目的,安装数据库实验步骤: 一、安装前的准备工作:为了避免发生端口冲突,程序冲突等现向,建议先查询mysql软件的安装情况,确认没有使用以RPM方式安装的mysql-server、mysql软件包,否则建议将其卸载。[root@loc......
  • 一步一步搭建Svn服务之TortoiseSVN基本操作
        SVN作为源代码文件版本管理的工具,在日常项目中,经常使用到。没有使用过SVN的用户,经常不知道如何操作。这篇文章主要介绍了客户端TortoiseSVN基本操作(图文教程),需要的朋友们下面随着我来一起学习吧。一、导入本地项目到SVN    svn中默认是没有任何项目代码的,需要......