Problema: Tengo una biblioteca de Apple Photos de casi 2TB ya descargada en un disco externo. Quería migrar esta biblioteca a Synology Photos sin tener que volver a descargarla de internet. Exportar originales desde Apple Photos era demasiado lento y poco práctico. Después de investigar, descubrí que el archivo .photoslibrary
es esencialmente una carpeta regular que contiene una base de datos SQLite y las imágenes y videos originales. Así que moví este archivo a mi NAS de Synology.
Resultado esperado: Quería mover los archivos multimedia desde el directorio .photoslibrary/originals
hacia home/Photos
en mi NAS, organizados en una jerarquía de directorios %Y/%m/%d
. Idealmente me gustaría mantener la mayor cantidad posible de metadatos de Apple Photos.
Solución: Creé un programa que:
- Recorre de forma recursiva todos los archivos dentro del directorio
originals
. - Consulta un archivo CSV (exportado de la tabla
ZASSET
en la base de datos SQLite de Apple Photos). El CSV contiene dos columnas:ZFILENAME
yZDATECREATED
. - Convierte
ZDATECREATED
al formato%Y/%m/%d
y crea/selecciona la carpeta apropiada dentro dehome/Photos
. - Mueve el archivo a ese directorio.
Limitaciones: Un número significativo de archivos en el directorio originals
tienen sufijos _2
, _3
antes de la extensión, y la base de datos no tiene registros de ZASSET
para estos archivos. ¿Cómo debo manejar esto?
En general, me gustaría escuchar sugerencias de cualquier persona que haya hecho una migración similar de su biblioteca de Apple Photos a Synology Photos. ¿Cuál es el mejor método con la menor pérdida de metadatos?
¡Gracias!