Recuperar ficheiros dun backup con Borgbackup
Introducción
Recentemente tiven que reinstalar o sistema operativo no portátil. A actualización de Debian 12 a 13 non foi ben e o sistema deixou de arrancar. Así que aproveitei para instalar e probar openSuse Tumbleweed, xa escribirei para explicar que tal vai, da instalación non hai nada que comentar. Faino todo automáticamente, mesmo activar as snapshots de BTRFS que en Fedora había que facer a man. O caso é que unha vez instalado o sistema, quixen recuperar os backups que tiña. Cando o fago dende a Raspberry, para testar que funcionan, non era máis que extraer ou montar o ficheiro e listo. Aquí sen embargo tiven máis problemas, ao ter varias claves ssh e demais. Así que quero expandir un pouco máis o proceso, que no artigo anterior quedaron cousas sen engadir.
Conectar co servidor remoto escollendo a clave
Cando temos varias claves ssh e tentamos conectar cun server remoto, con Borgbackup ou non, o sistema colle a clave por defecto. No caso de ssh
podemos emparellar as claves co servidor no ficheiro known_hosts, pero parece que con Borgbackup isto non é así. Outra opción que temos
para facer a conexión manual é indicar a clave ssh -i /camiño/á/chave. Esta é a orde que precisei para conectar con Borgbackup. Neste caso
temos dúas opcións, na primeira podemos facelo de xeito temporal, só para o comando actual, do seguinte xeito.
BORG_RSH="ssh -i /camiño/á/chave" borg list usuario@remoto:/ruta
Tamén temos a opción de exportar a variable para que esté dispoñible en varias ordes. Se queremos que sempre esté dispoñible, podemos engadir o export ao noso ficheiro .bashrc, .zshrc, ou o da terminal que usemos.
export BORG_RSH="ssh -i /camiño/á/chave"
Unha vez executado isto, xa podemos executar os comandos sen máis. Por exemplo como no anterior, se queremos listar os ficheiros de backup que
temos nunha ruta, sería borg list usuario@remoto:/ruta.
Xa con isto teremos acceso con normalidade.
Montando o backup
Isto xa o explicara no artigo anterior, pero así queda tamén neste recollido o proceso compreto para recuperar ficheiros. Se non queremos recuperar unha copia compreta, se non que queremos uns poucos ficheiros, podemos montar o backup coma se fose unha unidade externa. Desta forma poderemos navegar polas carpetas e copiar o que queiramos. Para isto executaremos o comando seguinte:
borg mount ssh://usuario@SERVER_IP:/ruta/backup::ficheiro-backup /punto/montaxe
Ao igual que ocorre co mount tradicional, necesitamos permisos na carpeta destino ou executalo con sudo.
Para desmontar a unidade, simplemente borg umount /punto/montaxe. Outra vez con sudo de ser preciso.
Extraendo o backup compreto
No escenario de hoxe, eu quería recuperar os backups compretos. Os ficheiros da home, os proxectos, etc. Polo que o que utilicei foi a opción de extract por cada backup a recuperar. Executando o seguinte comando dende a carpeta destino, xa nos meterá aí os ficheiros.
borg extract ssh://usuario@SERVER_IP:/ruta/backup::backup-file
E con isto xa teño de volta todo-los meus datos recuperados.
Conclusión
Como vedes é moi útil ter unha copia de seguridade dos datos ao día. Por se pasan cousas coma esta, ou que se averíe o disco, etc. O único que fixo que o proceso de instalación se alongase máis do que me gustaría foi a reinstalación dos programas. Neste caso era algo inebitable, xa que era a primeira vez que utilizo openSuse. Pero se fose algún sistema habitual, hai ferramentas para automatizar isto. Unha das cousas que teño pendentes de ver para isto é Ansible. A ver se dou quitado tempo nalgún momento e así facilito as instalacións de cero e podo ter a mesma configuración en tódolos equipos.
Fontes
- Documentación de Borgbackup: Quickstart
- Código Morrazo: Artigo de Borgbackup
Artigos Relacionados:
- Sincronizar Merkuro calendar con Nextcloud
- Actualizar Invidious despois de que me dese erro bastante tempo
- Instalación de News en Nextcloud
- Instalación de GPodder Sync en Nextcloud
- Actualizar Nextcloud en Docker
- Configuración de Calibre web auto aloxado con Traefik
- Configuración de Jellyfin auto aloxado con Traefik
- Copias de seguridade con Borgbackup
- Controlar la temperatura del equipo con bash y telegram
- Instalación de Nextcloud
- Instalación de Pi-hole
- Configuración de Invidious auto aloxado con Traefik
- Configuración de SearXNG auto aloxado con Traefik
- Cómo instalar Traefik con docker
- Instalando docker en modo rootless en Debian
- Instalando Jekyll con Docker
- Instalar Fedora con BTRFS, cifrado e Snapshots activos
- Ciberseguridad de tú a tú
- Copias de seguridade con Borgbackup
- Crear un usuario con permisos restrinxidos para backups
- error: gpg failed to sign the data
- Instalación de Pi-hole