Auto-sync: 2026-04-27 04:02
This commit is contained in:
@@ -1,59 +1,49 @@
|
||||
---
|
||||
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-common,mount -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 System,Linux/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
|
||||
- 无冲突
|
||||
---
|
||||
title: "如何在Ubuntu Server上通过NFS挂载Synology NAS上的共享文件夹"
|
||||
type: source
|
||||
tags: [nas, nfs, synology, ubuntu]
|
||||
date: 2025-12-29
|
||||
---
|
||||
|
||||
## Source File
|
||||
- [[Home Office/如何在Ubuntu Server上通过NFS挂载Synology NAS上的共享文件夹.md]]
|
||||
|
||||
## Summary(用中文描述)
|
||||
- 核心主题:通过 NFS 协议将 Synology NAS 的共享文件夹挂载到 Ubuntu Server,实现永久性网络存储挂载
|
||||
- 问题域:Ubuntu 服务器与 Synology NAS 之间的网络存储集成,适用于备份场景
|
||||
- 方法/机制:
|
||||
- Synology DSM 控制面板配置 NFS 权限(IP白名单、Squash 映射为 admin、_netdev 参数)
|
||||
- Ubuntu 端安装 `nfs-common`,使用 `mount -t nfs` 临时挂载
|
||||
- 通过 `/etc/fstab` 配置永久挂载,含 `timeo=900`、`retrans=5`、`_netdev` 等参数
|
||||
- rsync 脚本中加入挂载点检测保护,防止 NAS 掉线时数据写入本地
|
||||
- 结论/价值:相比 Samba,NFS 能保留 Linux 文件权限(uid/gid),避免 Docker 卷恢复时的权限报错,是 Linux 服务器挂载 NAS 的标准方案
|
||||
|
||||
## Key Claims(用中文描述)
|
||||
- Synology NAS 的 Squash 设置"映射所有用户为 admin",可将 Ubuntu 端 root 请求在 NAS 端以 admin 身份执行,绕过 Linux 权限校验
|
||||
- `/etc/fstab` 中的 `_netdev` 参数可防止开机时网络未就绪导致系统挂起
|
||||
- NFS 相比 Samba 在处理 Docker 配置文件(大量小文件)时性能更强
|
||||
- rsync 脚本中加入挂载点检查,可在 NAS 掉线时主动终止备份,防止数据写入本地目录
|
||||
|
||||
## Key Quotes
|
||||
> "NFS 能完美保留(Linux 文件所有权信息),而 Samba 会丢失,导致恢复 Docker 卷时权限报错" — NFS 相对 Samba 的核心优势说明
|
||||
|
||||
> "_netdev:告诉系统这是一个网络设备,务必等到网络服务完全启动后再尝试挂载,防止开机过程因找不到网络而卡死" — fstab 中 _netdev 参数的关键作用
|
||||
|
||||
> "如果 `sudo mount -a` 没有报错,且 `df` 能看到 NAS 空间,那么以后重启服务器,挂载都会自动生效" — 永久挂载验证方法
|
||||
|
||||
## Key Concepts
|
||||
- [[NFS]]:Network File System,Linux/Unix 标准的网络文件系统协议,支持保留原始 uid/gid 权限
|
||||
- [[/etc/fstab]]:Linux 文件系统表,用于配置开机自动挂载;`_netdev` 参数确保网络设备就绪后再挂载
|
||||
- [[rsync]]:增量备份工具,可配合 NFS 挂载点实现服务器到 NAS 的自动化备份
|
||||
- [[Squash]]:NFS 权限设置中的用户映射选项,"映射所有用户为 admin" 可简化跨平台权限问题
|
||||
|
||||
## Key Entities
|
||||
- [[Synology NAS]]:群晖网络附加存储设备,提供 DSM 管理界面和 NFS 共享服务;本文示例 IP:192.168.3.17,挂载路径:/volume2/backup
|
||||
- [[Ubuntu Server]]:Linux 服务器操作系统,本文版本为 Ubuntu 24.04;示例 IP:192.168.3.47,挂载点:/mnt/nas_backup
|
||||
|
||||
## Connections
|
||||
- [[Ubuntu服务器通过rsync实现日常增量备份]] ← depends_on ← [[如何在Ubuntu Server上通过NFS挂载Synology NAS上的共享文件夹]](rsync 备份依赖 NFS 挂载的 NAS 存储)
|
||||
- [[群晖NAS科学上网方法]] ← related ← [[如何在Ubuntu Server上通过NFS挂载Synology NAS上的共享文件夹]](同为 Synology NAS 相关配置文档)
|
||||
|
||||
## Contradictions
|
||||
- 无已知冲突
|
||||
|
||||
Reference in New Issue
Block a user