配置NFS网络文件共享存储服务
NFS(Network File System)是一种经典的网络文件系统协议,通过在网络中共享文件系统实现跨设备数据访问,它广泛应用于服务器集群、虚拟化环境、分布式存储等场景,本文将系统介绍NFS的配置流程,涵盖服务器端与客户端部署、安全优化及测试验证,并附常见问题解答。
NFS与核心概念
NFS的核心逻辑是
“服务器提供共享目录,客户端挂载后透明访问”
,服务器端通过
/etc/exports
文件定义共享规则,客户端通过命令挂载服务器共享目录,实现“远程文件即本地文件”的体验,NFS支持多种访问模式(如只读、读写)、传输方式(同步、异步),满足不同场景的性能需求。
环境准备与前提条件
配置前需确保以下环境就绪:
关键组件准备(示例:centos 8)
| 组件 | 作用 | 安装命令 |
|---|---|---|
| 提供RPC通信基础 |
sudo yum install -y rpcbind
|
|
| NFS服务器核心工具 |
sudo yum install -y nfs-utils
|
|
| 防火墙管理(可选) |
sudo firewall-cmd --add-service=nfs --permanent
|
配置NFS服务器(核心步骤)
服务器端配置是NFS部署的核心,需完成共享目录创建、权限设置、文件配置等关键操作。
创建并配置共享目录
选择空闲目录作为共享源(如
/exports/share
),设置权限确保NFS服务可读写:
# 创建共享目录sudo mkdir -p /exports/share# 设置目录所有者为nfsnobody(NFS默认客户端用户)sudo chown -R nfsnobody:nfsnobody /exports/share# 可选:允许组内成员写入sudo chmod 775 /exports/share
编辑文件
/etc/exports
文件定义共享规则,格式为“共享目录 路径 参数”,示例(允许所有主机读写):
# 编辑文件sudo nano /etc/exports/exports/share *(rw,sync,no_subtree_check)
参数说明 :
重启NFS服务并应用配置
CentOS 8中,NFS服务由
nfs-server
管理,重启服务加载文件:
sudo systemctl restart nfs-serversudo systemctl enable nfs-server --now# 开机自启动
验证服务器端状态
使用命令查看共享目录:
sudo showmount -e server_ip# 输出共享目录列表
配置NFS客户端(挂载共享)
客户端配置包括安装软件、挂载服务器共享目录,并可选持久化挂载。
安装NFS客户端软件
以CentOS 8为例,安装
nfs-common
包:
sudo yum install -y nfs-common
挂载服务器端共享目录
创建挂载点(如
/mnt/nfsshare
),执行挂载命令:
# 挂载服务器IP的/export/share到/mnt/nfssharesudo mount -t nfs server_ip:/exports/share /mnt/nfsshare
验证挂载状态
ls -l /mnt/nfsshare# 应显示共享目录中的文件
持久化挂载(可选)
将挂载配置添加到
/etc/fstab
,避免重启后丢失:
sudo echo "server_ip:/exports/share /mnt/nfsshare nfs defaults 0 0" >> /etc/fstab
安全与权限优化
生产环境需关注NFS安全性,通过防火墙、SELinux等手段限制访问。
防火墙配置
在服务器端开放NFS相关端口(TCP/UDP 2049、RPC端口):
# 永久添加服务sudo firewall-cmd --add-service=nfs --permanentsudo firewall-cmd --add-service=rpc-bind --permanentsudo firewall-cmd --add-service=mountd --permanent# 应用配置sudo firewall-cmd --reload
SElinux配置(CentOS默认启用)
若SELinux处于“enforcing”模式,临时允许NFS访问:
sudo setsebool -P nfs_export_all_ro on# 只读访问sudo setsebool -P nfs_export_all_rw on# 读写访问
测试与验证
完成配置后,通过实际操作验证NFS服务可用性。
客户端写入测试
在挂载点创建文件并写入内容:
sudo touch /mnt/nfsshare/testfileecho "This is a test file" | sudo tee /mnt/nfsshare/testfile
服务器端同步验证
登录服务器端,检查共享目录是否有新文件:
ls -l /exports/share# 应显示testfile
客户端读取测试
在客户端读取文件内容:
cat /mnt/nfsshare/testfile# 应显示“This is a test file”
常见问题与FAQs
问题:挂载时提示“permission denied”(权限拒绝)
问题:客户端无法访问服务器端共享(防火墙或网络问题)
通过以上步骤,可完成NFS网络文件共享存储服务的配置,实现跨设备的文件高效共享。
linux系统NFS系统有哪几种常用挂载方法?
2种:
1、手动挂载 mount -t nfs
2、自动挂载vi /etc/fstab
写入一行即可
极品飞车9安装后点击出现 Done?
首先..你还是需要重装一次游戏然后..用D。T打开 文件(开这个就可以了)然后弹出一个文件夹(这个千万不能关)点执行文件后就可以开了
LINUX如何虚拟光驱
挂接命令(mount)首先,介绍一下挂接(mount)命令的使用方法,mount命令参数非常多,这里主要讲一下今天我们要用到的。
命令格式:
mount [-t vfstype] [-o options] device dir
其中:
1.-t vfstype 指定文件系统的类型,通常不必指定。 mount 会自动选择正确的类型。 常用类型有:
光盘或光盘镜像:iso9660
DOS fat16文件系统:msdos
Windows 9x fat32文件系统:vfat
Windows NT ntfs文件系统:ntfs
Mount Windows文件网络共享:smbfs
UNIX(LINUX) 文件网络共享:nfs
2.-o options 主要用来描述设备或档案的挂接方式。常用的参数有:
loop:用来把一个文件当成硬盘分区挂接上系统
ro:采用只读方式挂接设备
rw:采用读写方式挂接设备
iocharset:指定访问文件系统所用字符集
要挂接(mount)的设备。
设备在系统上的挂接点(mount point)。
挂接光盘镜像文件
由于近年来磁盘技术的巨大进步,新的电脑系统都配备了大容量的磁盘系统,在Windows下许多人都习惯把软件和资料做成光盘镜像文件通过虚拟光驱来使用。 这样做有许多好处:一、减轻了光驱的磨损;二、现在硬盘容量巨大存放几十个光盘镜像文件不成问题,随用随调十分方便;三、硬盘的读取速度要远远高于光盘的读取速度,CPU占用率大大降低。 其实linux系统下制作和使用光盘镜像比Windows系统更方便,不必借用任何第三方软件包。
1、从光盘制作光盘镜像文件。 将光盘放入光驱,执行下面的命令。
#cp /dev/cdrom /home/sunky/ 或
#dd if=/dev/cdrom of=/home/sunky/
注:执行上面的任何一条命令都可将当前光驱里的光盘制作成光盘镜像文件/home/sunky/
2、将文件和目录制作成光盘镜像文件,执行下面的命令。
#mkisofs -r -J -V mydisk -o /home/sunky/ /home/sunky/ mydir
注:这条命令将/home/sunky/mydir目录下所有的目录和文件制作成光盘镜像文件/home/sunky/,光盘卷标为:mydisk
3、光盘镜像文件的挂接(mount)
#mkdir /mnt/vcdrom
注:建立一个目录用来作挂接点(mount point)
#mount -o loop -t iso9660 /home/sunky/ /mnt/vcdrom
注:使用/mnt/vcdrom就可以访问盘镜像文件里的所有文件了。














发表评论