插件窝 干货文章 如何在Linux上设置网络存储(如NFS)

如何在Linux上设置网络存储(如NFS)

sudo NFS shared bash 971    来源:    2025-04-16

Linux上设置网络存储(NFS)指南

NFS(Network File System)是一种常用的网络存储解决方案,允许不同系统间共享文件和目录。以下是设置NFS的详细步骤:

1. 安装NFS服务

在服务端(共享文件的机器):

# 对于基于Debian/Ubuntu的系统
sudo apt update
sudo apt install nfs-kernel-server

# 对于基于RHEL/CentOS的系统
sudo yum install nfs-utils

在客户端(访问共享的机器):

# Debian/Ubuntu
sudo apt install nfs-common

# RHEL/CentOS
sudo yum install nfs-utils

2. 配置NFS服务端

创建共享目录

sudo mkdir -p /shared
sudo chown nobody:nogroup /shared  # 设置权限
sudo chmod 777 /shared            # 简化权限设置,生产环境应根据需要调整

编辑导出配置文件

sudo nano /etc/exports

添加以下内容(根据需求调整):

/shared *(rw,sync,no_subtree_check)

或者限制特定客户端访问:

/shared 192.168.1.0/24(rw,sync,no_subtree_check)

应用配置

sudo exportfs -a
sudo systemctl restart nfs-kernel-server  # 或nfs-server(RHEL/CentOS)

3. 配置NFS客户端

创建挂载点

sudo mkdir -p /mnt/nfs/shared

手动挂载

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

自动挂载(通过/etc/fstab)

sudo nano /etc/fstab

添加:

server_ip:/shared /mnt/nfs/shared nfs defaults 0 0

然后执行:

sudo mount -a

4. 验证NFS共享

在服务端创建测试文件:

sudo touch /shared/testfile

在客户端检查:

ls /mnt/nfs/shared

5. 安全注意事项

  1. 生产环境中应限制访问IP范围
  2. 考虑使用NFSv4(更安全)
  3. 可能需要配置防火墙规则:

    # 对于UFW(Ubuntu)
    sudo ufw allow from 192.168.1.0/24 to any port nfs
    
    # 对于firewalld(RHEL/CentOS)
    sudo firewall-cmd --permanent --add-service=nfs
    sudo firewall-cmd --permanent --add-service=mountd
    sudo firewall-cmd --permanent --add-service=rpc-bind
    sudo firewall-cmd --reload
    

6. 高级选项

  • 使用no_root_squash选项(谨慎使用)允许root访问
  • 调整rsizewsize参数优化性能
  • 考虑使用Kerberos进行身份验证(NFSv4支持)

如需更详细的配置或遇到问题,可以提供具体错误信息以便进一步诊断。