Categorías
Guias Miniguías

Cómo hacer una copia de seguridad y sincronizar Google Photos en tu PC

gphotos-sync es una herramienta de línea de comandos para realizar copias de seguridad de Google Fotos (incluyendo álbumes) utilizando la API de Google Fotos, para Linux, macOS y Windows. Podés utilizarla periódicamente para obtener todas las fotos recién añadidas, manteniendo una copia de seguridad completa de Google Fotos en un servidor o equipo de escritorio.

Esta herramienta es especialmente útil ya que Google dejó de sincronizar Fotos con Drive desde 2019.

gphotos-sync puede hacer una copia de seguridad de todas las fotos que un usuario haya subido a Google Fotos, así como de las fotos adicionales creadas automáticamente con Google Fotos, como animaciones, panorámicas, películas, fotos mejoradas o collages.

Esta aplicación sólo sirve para la descarga/copia de seguridad de Google Fotos. No puede subir imágenes a Google Fotos.

La primera sincronización completa crea 2 directorios

  • fotos, que contiene todas las fotos y vídeos de Google Photos organizados en una estructura de subcarpetas de año/mes (fotos/AAAA/MM)
  • álbumes, que contiene una jerarquía de carpetas que representa el conjunto de álbumes y álbumes compartidos de tu biblioteca (álbumes/AAAA/MM Nombre del álbum original). Como esta carpeta contiene las mismas fotos que las de fotos/, las imágenes de albums/ son enlaces simbólicos a las fotos de fotos/

Las siguientes ejecuciones de gphotos-sync con la misma carpeta raíz actualizarán la copia local con las nuevas fotos añadidas a Google Fotos desde el último análisis. Sin embargo, no actualizará las fotos modificadas en Google Fotos, porque no hay forma de averiguar la fecha de modificación de las imágenes desde Google Fotos.

También hay que tener en cuenta que la API de la biblioteca de fotos de Google elimina los datos GPS de la información EXIF de las imágenes (hay un problema abierto al respecto). La página de gphotos-sync incluye una solución para este problema, explicada aquí, que no he probado.

Las características / opciones de gphotos-sync incluyen:

  • descargar todas tus imágenes y vídeos de Google Fotos, incluidos los creados automáticamente por Google Fotos (animaciones, panorámicas, películas, fotos mejoradas o collages)
  • obtener todas las nuevas fotos añadidas a tu cuenta de Google Fotos desde la anterior sincronización
    opcionalmente, descargar y sincronizar sólo un álbum (utilizando –album «ALBUM NAME»)
  • comparar las imágenes de tu cuenta de Google Fotos con una carpeta local, como una copia de seguridad anterior. La comparación no requiere que los archivos estén organizados en las mismas carpetas, sino que utiliza los metadatos de los archivos, como la fecha de creación y el UID exif, para hacer coincidir los pares de elementos (utiliza –compare-folder «CARPETA_A_COMPARAR») Consulta este enlace para obtener más información
  • borrar la base de datos de índices y volver a escanear todo (–flush-index)
    opcionalmente, volver a escanear toda la biblioteca, ignorando la fecha del último escaneo (–rescan)
  • comprobar la existencia de archivos marcados como ya descargados y volver a descargar los que falten. Utilizá esta opción si has eliminado algunos archivos locales (–retry-download)
  • omitir los vídeos al sincronizar (–skip-video)
  • establecer la fecha de inicio y de finalización de los archivos que se van a sincronizar en el formato AAAA-MM-DD (–start-date FECHA_INICIO / –end-date FECHA_FIN)
  • buscar en el sitio web de Google Fotos los metadatos de ubicación y añadirlos a los metadatos EXIF de los archivos locales (–get-locations)

Instalar y configurar gphotos-sync

Esta herramienta utiliza la API de Google Fotos, y requiere que crees un nuevo proyecto de Google Cloud, que habilites la API de Photos para tu proyecto y que configures OAuth 2.0 para ello, de modo que puedas utilizar tu propia clave de API, no funciona sin esto.

Instalar gphotos-sync usando pipenv en Linux

1. Instalar pip3:

  • Debian, Ubuntu, Linux Mint, Pop!_OS, elementary OS:
sudo apt install python3-pip

2. Exporta ~/.local/bin al PATH si aún no los hecho (allí es donde los ejecutables para paquetes instalados usando pip3 están almacenados):

echo "export PATH=\"\$PATH:\$HOME/.local/bin\"" >> ~/.bashrc

. ~/.bashrc

3. Instala pipenv, crea la carpeta llamada gphotos-sync en tu directorio personal, e instala gphotos-sync usando pipenv:

python3 -m pip install pipenv
mkdir ~/gphotos-sync
cd ~/gphotos-sync
pipenv install gphotos-sync

Ahora podés ejecutar gphotos-sync:

pipenv run gphotos-sync

Necesitas ejecutar este comando en la carpeta ~/gphotos-sync (así que tendrías que cd ~/gphotos-sync, y luego usar pipenv run gphotos-sync). Podés utilizar una carpeta/ruta diferente, pero recordá reemplazar todas las ocurrencias de ~/gphotos-sync con tu ubicación personalizada a lo largo de esta guía.

Crea un proyecto Google Cloud, habilitar la API de la biblioteca Photos y crear un ID de cliente OAuth

1. Crea un nuevo proyecto Google Cloud

Ir a https://console.cloud.google.com/cloud-resource-manager y crear un nuevo proyecto.

2. Ir a https://console.cloud.google.com/apis/library?project=_, seleccionar el proyecto, luego buscar la API de la biblioteca Photos y habilitarla para este proyecto.

3. Ir a https://console.cloud.google.com/, asegúrate de seleccionar el proyecto correcto del menu desplegable, luego clic en APIs & Servicios en la barra lateral, y finalmente clic Credenciales en la barra lateral. Crea el ID de cliente OAuth. Como tipo de aplicación, selecciona «Otro».

Puedes ver el procedimiento completo para configurar OAuth 2.0 con tu nuevo proyecto en la documentación de gphotos-sync

4. Una vez que el ID de cliente fue creado, descárgalo como client_secret.json (renómbralo, ya que tendrá un nombre más largo) y guárdalo en el directorio de configuración de la aplicación:

  • ~/.config/gphotos-sync/ under Linux

Ahora es el momento de la ejecución inicial. Para ello, deberás ejecutar pipenv run gphotos-sync en el directorio ~/gphotos-sync, seguido de la ruta donde se deben descargar todas tus fotos. Por ejemplo, para descargarlas en ~/Imágenes, usá:

cd gphotos-sync
pipenv run gphotos-sync ~/Imágenes

La primera vez que ejecutes gphotos-sync, necesitarás autorizarlo con tu cuenta de Google, un enlace será mostrado en la terminal.

Al abrirlo en el navegador mostrará una página que dice «Esta aplicación no está verificada por Google aún». Esto es normal, ya que la app está usando tu API key, y no la enviaste a Google para verificación. Haz clic en Avanzado, luego Ir a El_Nombre_de_tu_Proyecto (no seguro). Clic Permitir.

Ejecuta el mismo comando (pipenv run gphotos-sync ~/Imágenes en el ejemplo) cada vez que quieras actualizar la copia local de tu Google Fotos.

Deja una respuesta

Tu dirección de correo electrónico no será publicada.