Files
nexus/wiki/sources/如何在ubuntu-server上通过nfs挂载synology-nas上的共享文件夹.md

60 lines
3.9 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
---
title: "如何在Ubuntu Server上通过NFS挂载Synology NAS上的共享文件夹"
type: source
tags: [nas, nfs, synology, ubuntu]
date: 2025-12-29
---
## Source File
- [[raw/Home Office/如何在Ubuntu Server上通过NFS挂载Synology NAS上的共享文件夹.md]]
## Summary (用中文描述)
- 核心主题:在 Ubuntu Server 上通过 NFS 协议挂载 Synology NAS 共享文件夹,实现服务器到 NAS 的自动化备份存储
- 问题域Samba 挂载丢失 Linux 文件权限信息导致 Docker 卷恢复失败NFS 相比 Samba 完美保留文件所有权、性能更强
- 方法/机制:
1. Synology NAS DSM 控制面板 → 共享文件夹 → NFS 权限配置关键Squash 设为"映射所有用户为 admin"
2. Ubuntu 安装 nfs-commonmount -t nfs 挂载
3. /etc/fstab 写入永久挂载配置关键参数_netdev、timeo=900、retrans=5
4. sudo mount -a 测试后再重启
5. 备份脚本前加挂载点检查防止数据写入本地磁盘
6. systemctl enable remote-fs.target 解决 nfs-common 启动慢问题
- 结论/价值NFS 是 Linux 服务器备份到 NAS 的最佳方案,配合 rsync + Cron 实现全自动化备份
## Key Claims (用中文描述)
- **NFS 相比 Samba 的核心优势**NFS 原生保留 Linux 文件所有权信息,避免 Docker 卷恢复时的权限报错
- **Synology NFS Squash 关键配置**:必须选择"映射所有用户为 admin",否则 Ubuntu 端 root 发起的备份请求会在 NAS 端遭遇权限校验失败
- **fstab _netdev 参数的作用**:告知系统这是网络设备,等网络服务完全启动后再尝试挂载,防止开机卡死
- **永远不要直接重启测试**/etc/fstab 写错会导致系统无法正常启动,必须先用 sudo mount -a 验证
## Key Quotes
> "NFS 会完美保留文件所有权信息Samba 则会丢失 Linux 的文件所有权,导致恢复 Docker 卷时权限报错。" — NFS 相比 Samba 的优势说明
> "_netdev: **关键参数**。告诉系统这是一个网络设备,务必等到网络服务完全启动后再尝试挂载,防止开机过程因找不到网络而卡死。" — fstab 参数解析
> "千万不要直接重启!如果 `/etc/fstab` 写错了,系统可能无法正常启动。" — 配置验证警告
> "如果在执行了上述操作后重启依然不生效,通常是因为 Ubuntu 的 `nfs-common` 服务启动慢于 `mount -a` 的执行。" — nfs-common 启动时序问题
## Key Concepts
- [[NFS]]Network File SystemLinux/Unix 系统的网络文件系统协议Ubuntu 备份到 NAS 的推荐协议
- [[永久挂载]]:通过 /etc/fstab 配置实现开机自动挂载,配合 _netdev 参数确保网络设备就绪后再挂载
- [[挂载点检查]]:备份脚本执行前的安全验证,使用 mountpoint -q 命令检查挂载点有效性
- [[NFS网络备份]]:通过 NFS 协议将备份数据存储到网络存储设备(与本文 Ubuntu rsync 备份场景互补)
## Key Entities
- [[Synology NAS DS718]]:群晖 NAS 设备192.168.3.17),通过 DSM 控制面板配置 NFS 权限,作为 Ubuntu Server 的备份存储目标
- [[Ubuntu Server]]Linux 服务器发行版,运行 rsync 备份脚本,将数据写入 NAS 的 NFS 挂载点
- [[rsync]]:增量文件同步工具,与 NFS 永久挂载配合实现 Ubuntu Server 到 NAS 的自动化日常备份
## Connections
- [[Ubuntu Server]] ← runs ← [[rsync]] (备份工具)
- [[rsync]] ← writes to ← [[永久挂载]] (NFS 挂载点 /mnt/nas_backup)
- [[永久挂载]] ← depends on ← [[NFS]] (NFS 协议)
- [[Synology NAS DS718]] ← serves ← [[NFS]] (NFS 服务端)
- [[挂载点检查]] ← guards ← [[rsync]] (备份安全前置检查)
- [[Cron定时任务]] ← schedules ← [[rsync]] (定时触发备份)
- [[NFS网络备份]] ← uses ← [[NFS]] (两者同属 NFS 存储应用场景)
## Contradictions
- 无冲突