Copia de seguridad de archivos de Synology en Ubuntu: tutorial de instantáneas de vínculo físico y extracción activa de rsnapshot

Este artículo presenta los métodos de configuración, verificación, recuperación y solución de problemas para permitir que Ubuntu extraiga activamente carpetas compartidas de Synology en modo de solo lectura y utilice rsnapshot para crear instantáneas de enlaces físicos diarias, semanales y mensuales.

Si el objetivo es “los archivos históricos simples y confiables se pueden abrir directamente”, es muy adecuado que Ubuntu extraiga activamente la carpeta compartida de Synology y luego use rsnapshot para crear una instantánea local. Synology solo proporciona datos de solo lectura y Ubuntu es responsable de la sincronización, los registros, la rotación de versiones y la copia de seguridad del disco duro. Después de que Synology elimina accidentalmente un archivo, también puede copiarlo directamente desde el directorio de ayer, la semana pasada o el mes pasado.

rsnapshot funciona en base a rsync y enlaces físicos. Cada directorio de instantáneas parece una copia completa del archivo, pero los archivos sin cambios no ocupan espacio en el disco una y otra vez. Las fotos, vídeos, PDF, DOCX, etc. siguen siendo archivos normales y no dependen de software de recuperación especializado ni de bases de datos de respaldo.

Arquitectura recomendada

1
2
3
4
5
6
7
群晖共享文件夹
photo / 工作文件 / 个人文件 / 其他共享文件夹
        ↓ 只读 SMB、NFS,或 rsync/SSH
Ubuntu:rsnapshot 定时拉取
Ubuntu 备份硬盘(ext4、XFS 等)
daily.0 / daily.1 / weekly.0 / monthly.0

Esta no es una solución para “Synology envía archivos a Ubuntu”. Ubuntu tiene acceso de solo lectura a Synology y Synology no necesita guardar la contraseña de escritura del disco de copia de seguridad de Ubuntu. Este aislamiento de permisos suele ser más seguro: cuando se hace un mal uso de Synology, se ve afectado por ransomware o se abusa de una cuenta de paquete, la superficie de ataque no se extiende directamente a las instantáneas históricas de Ubuntu. Este juicio se basa en el aislamiento de permisos, en lugar de reemplazar discos fuera de línea, copias fuera del sitio o simulacros de recuperación.

Alcance y límites aplicables

Este método es especialmente adecuado para:

carpetas compartidas comunes como fotos, vídeos, documentos, materiales de proyectos, etc.;

desea conservar varios puntos de tiempo, pero no desea aprender herramientas de recuperación especiales;
ya existe un disco duro de respaldo dedicado en Ubuntu;
solo quiero seleccionar algunas carpetas compartidas, no la imagen completa de la máquina.

Principalmente realiza una copia de seguridad de los archivos en sí y no equivale a una restauración completa del DSM, la configuración de la suite, el estado del servicio de la base de datos o todos los metadatos a nivel del sistema. Cuando se requiere una recuperación completa ante desastres, aún se deben conservar Hyper Backup, la exportación de aplicaciones, la copia de seguridad de bases de datos u otras soluciones específicas.

Cree una cuenta de copia de seguridad de solo lectura en Synology

Primero cree una cuenta dedicada en DSM, como backup-reader:

  1. Otorgue permiso de lectura solo a la carpeta compartida de la que se debe realizar una copia de seguridad;
  2. No otorgue permisos administrativos, permisos de escritura y permisos de aplicaciones innecesarios;
  3. Utilice contraseñas seguras e independientes;
  4. Solo permita que la IP fija de Ubuntu acceda a servicios SMB/NFS relacionados.

No reutilice directamente la cuenta de administrador diaria. De esta forma, incluso si se filtran las credenciales utilizadas para el montaje en Ubuntu, el impacto se limitará a los directorios cuya lectura esté autorizada.

Ubuntu Montar la carpeta compartida de Synology

Se recomienda montar cada carpeta compartida en un directorio fijo:

1
2
3
sudo mkdir -p /mnt/synology/photo
sudo mkdir -p /mnt/synology/files
sudo mkdir -p /mnt/synology/documents

Tanto SMB como NFS son aceptables. Simplemente elija un protocolo que haya habilitado en Synology y con el que esté familiarizado. Para redes domésticas normales o de equipos pequeños, SMB es más fácil de verificar los permisos, mientras que NFS está más cerca del modelo de permisos de Linux.

Ejemplo de montaje de solo lectura SMB/CIFS

Primero instale la herramienta y cree un archivo de credenciales que solo permita leer al root:

1
2
3
4
5
sudo apt update
sudo apt install -y cifs-utils rsync rsnapshot

sudo install -m 600 /dev/null /root/.smb-synology-credentials
sudo nano /root/.smb-synology-credentials

Contenido del archivo de credenciales:

1
2
username=backup-reader
password=替换为专用密码

Ejemplo agregado en /etc/fstab. Reemplace la IP de Synology y el nombre compartido con valores reales:

1
2
3
//192.168.8.100/photo     /mnt/synology/photo      cifs  ro,credentials=/root/.smb-synology-credentials,vers=3.0,_netdev,nofail  0  0
//192.168.8.100/files     /mnt/synology/files      cifs  ro,credentials=/root/.smb-synology-credentials,vers=3.0,_netdev,nofail  0  0
//192.168.8.100/documents /mnt/synology/documents  cifs  ro,credentials=/root/.smb-synology-credentials,vers=3.0,_netdev,nofail  0  0

Pruebe el montaje y confirme que el directorio sea legible:

1
2
3
sudo mount -a
findmnt /mnt/synology/photo
ls -la /mnt/synology/photo | head

ro es la opción clave. Si mount -a informa que la autenticación, la versión del protocolo o el recurso compartido no existen, no configure rsnapshot primero; Lea primero el punto de montaje único.

Ejemplo de montaje de solo lectura de NFS

Si NFS se ha habilitado en DSM y la carpeta compartida ha permitido que la IP de Ubuntu se monte de solo lectura, puede usar:

1
2
sudo apt install -y nfs-common rsync rsnapshot
sudo mount -t nfs -o ro 192.168.8.100:/volume1/photo /mnt/synology/photo

La exportación de NFS La ruta varía según el nombre y el volumen del recurso compartido de Synology. Primero confirme en la página de permisos NFS de la carpeta compartida de DSM. Después de confirmar que es legible, escriba la ruta de exportación real a /etc/fstab.

Prepare el disco duro de respaldo de Ubuntu

El directorio raíz de la instantánea debe ubicarse en el disco de respaldo dedicado de Ubuntu, por ejemplo:

1
2
sudo mkdir -p /srv/backup/rsnapshot
df -Th /srv/backup/rsnapshot

da prioridad a los sistemas de archivos de Linux como ext4 y XFS. rsnapshot depende de enlaces físicos para ahorrar espacio, por lo que no coloque el directorio raíz de la instantánea en sistemas de archivos que no admitan enlaces físicos de Unix, como FAT o exFAT; ni permita que el directorio de respaldo se divida en diferentes sistemas de archivos.

Se recomienda confirmar primero que el montaje del disco duro de respaldo sea estable: después de que se reinicie el sistema, /srv/backup/rsnapshot aún debe estar ubicado en el disco de respaldo y no caer accidentalmente en el directorio vacío del disco del sistema Ubuntu.

configurar rsnapshot

Editar /etc/rsnapshot.conf. Por lo general, es necesario separar los “elementos de configuración” y los “parámetros” de este archivo de configuración mediante Tab. Si la verificación falla después de copiar, primero verifique si el editor los reemplazó con espacios.

La siguiente es la configuración principal correspondiente a la estructura de directorios de este artículo:

1
2
3
4
5
6
7
8
9
snapshot_root	/srv/backup/rsnapshot/

retain	daily	7
retain	weekly	4
retain	monthly	12

backup	/mnt/synology/photo/	photo/
backup	/mnt/synology/files/	files/
backup	/mnt/synology/documents/	documents/

tiene el siguiente significado:

Configuración Función
snapshot_root Directorio raíz donde se guardan todas las instantáneas
retain daily 7 Mantenga 7 instantáneas diarias
retain weekly 4 Mantenga 4 instantáneas semanales
retain monthly 12 Conserva las instantáneas durante 12 meses
backup Haga una copia de seguridad del directorio de montaje de solo lectura en el subdirectorio correspondiente en la instantánea

Primero verifique la configuración y luego ejecute manualmente una instantánea diaria:

1
2
sudo rsnapshot configtest
sudo rsnapshot daily

Después de la finalización normal, el directorio es aproximadamente el siguiente:

1
2
3
4
5
6
/srv/backup/rsnapshot/daily.0/photo/
/srv/backup/rsnapshot/daily.0/files/
/srv/backup/rsnapshot/daily.0/documents/

/srv/backup/rsnapshot/daily.1/photo/
/srv/backup/rsnapshot/weekly.0/photo/

daily.0 Esta es la última instantánea exitosa. Después de la siguiente ejecución, las instantáneas antiguas se rotan hacia atrás y las versiones que superen el número retain se limpiarán.

Establezca tareas programadas diarias, semanales y mensuales

Después de confirmar que la instantánea manual es normal, cree /etc/cron.d/rsnapshot:

1
sudo nano /etc/cron.d/rsnapshot

El contenido de muestra de es el siguiente:

1
2
3
0 2 * * * root /usr/bin/rsnapshot daily
30 2 * * 1 root /usr/bin/rsnapshot weekly
0 3 1 * * root /usr/bin/rsnapshot monthly

Se recomienda colocar la tarea en un período en el que Synology esté relativamente inactivo. La primera copia de seguridad copiará todos los archivos, lo que requiere más tiempo y uso del disco; Las ejecuciones posteriores transfieren principalmente las piezas cambiadas.

Antes de ejecutar las tareas programadas, asegúrese de que el montaje se haya realizado correctamente. Puede agregar una verificación simple antes de rsnapshot o implementarla a través de la dependencia de montaje de systemd; Lo más importante es no confundir el directorio vacío con el directorio de origen cuando /mnt/synology/* no está montado, lo que resultará en una instantánea de “contenido exitoso pero vacío”.

Cómo confirmar que los enlaces físicos realmente ahorran espacio

No mire sólo el tamaño lógico que se muestra para cada directorio. Puede verificar el recuento de inodos y enlaces para el mismo archivo sin cambios:

1
2
ls -li /srv/backup/rsnapshot/daily.0/photo/某个文件.jpg
ls -li /srv/backup/rsnapshot/daily.1/photo/某个文件.jpg

Si el archivo no ha cambiado, generalmente verá el mismo inodo y el recuento de enlaces es mayor que 1. Para verificar el uso real del disco de respaldo, use:

1
2
du -sh /srv/backup/rsnapshot
df -h /srv/backup/rsnapshot

Método para restaurar archivos

El comando rsnapshot no es necesario para la recuperación. Localice el directorio de fecha apropiado y copie el archivo de destino directamente:

1
cp -a /srv/backup/rsnapshot/daily.1/photo/2026/旅行.jpg /tmp/恢复文件/

Antes de restaurar en Synology, se recomienda copiar a un directorio temporal o cambiar el nombre del archivo para confirmar el contenido y evitar sobrescribir la nueva versión que todavía está en uso. Para restaurar toda la carpeta, también debe confirmar primero el espacio de destino y la cobertura.

Preguntas frecuentes

rsnapshot se muestra correctamente, pero el directorio de instantáneas está vacío

Primero verifique si el punto de montaje de origen está realmente montado:

1
2
findmnt /mnt/synology/photo
mountpoint -q /mnt/synology/photo && echo mounted

La mera existencia del directorio /mnt/synology/photo no significa que el recurso compartido de red esté montado. La tarea programada debe detenerse, eliminar esta instantánea no válida, reparar primero la conectividad SMB/NFS y luego ejecutarla nuevamente.

La verificación de configuración indica un error de sintaxis

Ejecutar:

1
sudo rsnapshot configtest

Verificación de clave snapshot_root Si termina con /, si el La regla backup tiene una ruta de origen y un subdirectorio de destino, y si se utilizan pestañas entre los elementos de configuración. No se una a cron directamente sin pasar configtest.

El uso de instantáneas es repentinamente muy grande

Primero verifique si una gran cantidad de archivos han sido renombrados, movidos, recodificados o modificados con tiempo/permisos causando que rsync se vuelva a copiar. Los enlaces físicos sólo pueden reutilizar archivos históricos cuyo contenido y atributos no hayan cambiado; al realizar una copia de seguridad por primera vez, organizar bibliotecas de fotografías en lotes o aplicar directorios de exportación con cambios frecuentes, es normal que el uso aumente.

¿Es posible realizar una copia de seguridad directa de todo Synology?

Es técnicamente posible montar más carpetas compartidas, pero no se recomienda agregar el directorio del sistema, el directorio interno del paquete y todos los volúmenes de forma indiscriminada. Priorice comenzar con datos del usuario, como fotografías, documentos y archivos de trabajo, y luego amplíelos gradualmente después de confirmar el proceso de recuperación; Las configuraciones de la base de datos y de la aplicación deben procesarse por separado de acuerdo con sus respectivos mecanismos de exportación o copia de seguridad.

Resumen

El proceso de extracción activa de Ubuntu + rsnapshot es muy claro: Synology proporciona un recurso compartido de solo lectura, Ubuntu lo monta en /mnt/synology/ y rsnapshot se escribe en el disco de respaldo dedicado. Instantáneas de daily, weekly, monthly. Las versiones históricas son archivos normales que se pueden explorar directamente y la recuperación significa copiar los archivos; al mismo tiempo, Synology no necesita tener permisos de escritura en el disco de copia de seguridad de Ubuntu. Esta es una solución práctica para el almacenamiento a largo plazo de fotografías, documentos y archivos de trabajo.

记录并分享
Creado con Hugo
Tema Stack diseñado por Jimmy