在Linux中,如何配置NFS共享?

简介: 在Linux中,如何配置NFS共享?

在Linux中配置NFS(Network File System)共享涉及以下几个主要步骤,这些步骤适用于大多数基于Debian或RedHat的Linux发行版,如Ubuntu、Debian、CentOS或RHEL。

1. 安装NFS服务器软件

首先,确保NFS服务器软件包已安装。使用相应的包管理器进行安装:

1.1 对于基于Debian的系统(如Ubuntu):
sudo apt update
sudo apt install nfs-kernel-server
1.2 对于基于RPM的系统(如CentOS/RHEL):
sudo yum install nfs-utils
2. 创建共享目录

选择一个你希望通过NFS共享的目录,并设置适当的权限。例如,创建一个名为“/srv/nfs/shared”的共享目录:

sudo mkdir -p /srv/nfs/shared
sudo chmod -R 755 /srv/nfs/shared
sudo chown -R nobody:nogroup /srv/nfs/shared
3. 配置NFS共享

编辑NFS的配置文件/etc/exports,以指定要共享的目录及其权限。添加如下行:

/srv/nfs/shared *(rw,sync,no_subtree_check,no_root_squash)

这里,

  • /srv/nfs/shared 是你要共享的目录路径。
  • * 表示允许任何网络上的主机访问(出于安全考虑,你可能希望替换为特定的IP地址或子网)。
  • (rw,sync,no_subtree_check,no_root_squash) 是共享选项,分别表示读写权限、同步写入、不检查子目录以及远程访问的root用户映射为本地的nobody用户。
4. 重载NFS配置

使更改生效,需要重载NFS配置:

sudo exportfs -arv

或者重启NFS服务:

4.1 对于Systemd系统(如Ubuntu 16.04+,CentOS 7+):
sudo systemctl restart nfs-server
4.2 对于SysVinit系统(较旧的版本):
sudo service nfs-kernel-server restart
5. 防火墙设置

确保你的防火墙允许NFS相关的端口(通常是TCP/UDP 111端口以及NFS的端口范围,通常是2049):

sudo ufw allow proto tcp from any to any port 111
sudo ufw allow proto udp from any to any port 111
sudo ufw allow proto tcp from any to any port 2049
sudo ufw allow proto udp from any to any port 2049
sudo ufw reload
6. 在客户端挂载NFS共享

在另一台Linux机器上,可以使用以下命令挂载NFS共享:

sudo mount -t nfs server_ip:/srv/nfs/shared /mnt/nfs_shared

其中server_ip是NFS服务器的IP地址,/mnt/nfs_shared是在客户端用于挂载的目录。

7. 注意事项
  • 确保客户端和服务端的NFS版本兼容。
  • 考虑使用更安全的配置选项,比如限制访问的主机范围、使用kerberos认证等。
  • 监视NFS服务的日志文件(通常位于/var/log目录下),以便于故障排查。
相关文章
|
2月前
|
Linux 数据安全/隐私保护 Windows
Linux共享Windows目录
Linux共享Windows目录
|
19天前
|
网络协议 安全 Linux
如何配置Linux端的ftp?
如何配置Linux端的ftp?
121 64
|
13天前
|
Oracle Java 关系型数据库
Linux下JDK环境的配置及 bash: /usr/local/java/bin/java: cannot execute binary file: exec format error问题的解决
如果遇到"exec format error"问题,文章建议先检查Linux操作系统是32位还是64位,并确保安装了与系统匹配的JDK版本。如果系统是64位的,但出现了错误,可能是因为下载了错误的JDK版本。文章提供了一个链接,指向Oracle官网上的JDK 17 Linux版本下载页面,并附有截图说明。
Linux下JDK环境的配置及 bash: /usr/local/java/bin/java: cannot execute binary file: exec format error问题的解决
|
15天前
|
Linux 编译器 开发工具
快速在linux上配置python3.x的环境以及可能报错的解决方案(python其它版本可同样方式安装)
这篇文章介绍了在Linux系统上配置Python 3.x环境的步骤,包括安装系统依赖、下载和解压Python源码、编译安装、修改环境变量,以及常见安装错误的解决方案。
23 1
|
20天前
|
Ubuntu Linux
Linux服务器的自动启动可以在哪里进行配置?
Linux服务器的自动启动可以在哪里进行配置?
85 3
|
2月前
|
Ubuntu Linux
内核实验(四):Qemu调试Linux内核,实现NFS挂载
本文介绍了在Qemu虚拟机中配置NFS挂载的过程,包括服务端的NFS服务器安装、配置和启动,客户端的DHCP脚本添加和开机脚本修改,以及在Qemu中挂载NFS、测试连通性和解决挂载失败的方法。
60 0
内核实验(四):Qemu调试Linux内核,实现NFS挂载
|
2月前
|
Ubuntu Linux 开发工具
【事件中心 Azure Event Hub】在Linux环境中(Ubuntu)安装Logstash的简易步骤及配置连接到Event Hub
【事件中心 Azure Event Hub】在Linux环境中(Ubuntu)安装Logstash的简易步骤及配置连接到Event Hub
|
2月前
|
存储 运维 监控
在Linux中,如何进行高可用性配置?
在Linux中,如何进行高可用性配置?
|
2月前
|
关系型数据库 MySQL Linux
在Linux中,如何配置数据库服务器(如MySQL或PostgreSQL)?
在Linux中,如何配置数据库服务器(如MySQL或PostgreSQL)?
|
2月前
|
Ubuntu 应用服务中间件 Linux
在Linux中,如何配置Web服务器(如Apache或Nginx)?
在Linux中,如何配置Web服务器(如Apache或Nginx)?