温馨提示×

Linux分卷如何实现远程访问

小樊
32
2025-12-06 03:06:29
栏目: 智能运维

Linux分卷远程访问的实现思路

在 Linux 环境中,“分卷”通常指 LVM 逻辑卷(LV)。远程访问的本质是:先把 LV 挂载到服务器本地目录,再通过 NFS/Samba/SFTP 等协议对外提供访问。若你的“分卷”其实是多块盘组成的 RAID 或普通分区,做法相同——挂载到目录后再共享。LVM 负责存储的灵活管理(可在线扩容等),远程共享由网络文件服务承担。

方案一 NFS 共享(Linux 到 Linux 推荐)

  • 准备 LV 并挂载到本地目录(示例:将 /dev/vg_data/lv_shared 挂载到 /mnt/shared
    • 创建挂载点并挂载:mkdir -p /mnt/shared && mount /dev/vg_data/lv_shared /mnt/shared
    • 开机自动挂载(按文件系统选择其一):
      • ext4:echo “/dev/vg_data/lv_shared /mnt/shared ext4 defaults 0 0” >> /etc/fstab
      • xfs:echo “/dev/vg_data/lv_shared /mnt/shared xfs defaults 0 0” >> /etc/fstab
  • 安装并启动 NFS(服务端)
    • CentOS/RHEL:yum install -y nfs-utils rpcbind && systemctl enable --now rpcbind nfs-server
    • Ubuntu/Debian:apt-get install -y nfs-kernel-server && systemctl enable --now nfs-server
  • 配置 /etc/exports(示例:对 192.168.1.0/24 读写)
    • /mnt/shared 192.168.1.0/24(rw,sync,no_root_squash)
    • 使配置生效:exportfs -r && exportfs -v
  • 客户端挂载
    • mkdir -p /mnt/nfs_shared
    • mount -t nfs 192.168.1.100:/mnt/shared /mnt/nfs_shared
    • 开机自动挂载:echo “192.168.1.100:/mnt/shared /mnt/nfs_shared nfs defaults 0 0” >> /etc/fstab
  • 验证
    • 客户端:touch /mnt/nfs_shared/test.txt && echo “NFS test” > /mnt/nfs_shared/test.txt
    • 服务端:cat /mnt/shared/test.txt 说明:NFS 适合同网段或受控网络的多机协作,权限与同步行为由导出选项控制。

方案二 Samba 共享(Linux 与 Windows 互通)

  • 安装 Samba
    • Ubuntu/Debian:apt-get install -y samba
    • CentOS/RHEL:yum install -y samba
  • 配置 /etc/samba/smb.conf(示例共享 /mnt/shared
    • [shared]
      • path = /mnt/shared
      • writable = yes
      • valid users = user1
  • 创建 Samba 用户并设置密码
    • smbpasswd -a user1
  • 启动服务
    • Ubuntu/Debian:systemctl restart smbd
    • CentOS/RHEL:systemctl restart smb
  • Windows 访问
    • 在资源管理器输入:\服务器IP\shared,使用 user1 登录 说明:Samba 提供与 Windows 的文件共享能力,适合混合环境。

方案三 SFTP 文件访问(基于 SSH 的安全传输)

  • 安装并启用 OpenSSH 服务
    • Ubuntu/Debian:apt-get install -y openssh-server && systemctl enable --now ssh
    • CentOS/RHEL:yum install -y openssh-server && systemctl enable --now sshd
  • 基本使用
    • 命令行登录:sftp user@服务器IP
    • 上传/下载:put local_file /remote/path;get /remote/file local_path
  • 可选(Chroot 到共享目录,仅 SFTP)
    • 在 /etc/ssh/sshd_config 中添加:
      • Subsystem sftp internal-sftp
      • Match Group sftp
        • ChrootDirectory /mnt/shared
        • X11Forwarding no
        • AllowTcpForwarding no
        • ForceCommand internal-sftp
    • 重启 sshd:systemctl restart sshd 说明:SFTP 基于 SSH,部署简单、加密传输,适合点对点安全访问与自动化传输。

安全与运维要点

  • 防火墙放行对应端口
    • NFS:放行 rpcbind 111nfsd 2049mountd 20048(按发行版/防火墙不同,可能需要额外端口策略)
    • Samba:放行 SMB 445/TCP(必要时 137–139/UDP/TCP)
    • SFTP:放行 SSH 22/TCP
  • 权限与身份
    • NFS 导出选项建议:生产环境慎用 no_root_squash,按需使用 rw,sync 并结合目录 owner/groupACL 精细控制
    • Samba 使用独立 smbpasswd 账户,避免与系统 root 混用
  • 可用性
    • 为 NFS/Samba 配置开机自启与监控;对关键共享设置 备份/快照(LVM 快照可用于快速回滚)
  • 文件系统匹配
    • 扩容后使用与文件系统匹配的扩容工具:ext4 用 resize2fs,xfs 用 xfs_growfs,避免扩容不一致导致数据异常。

0