J'ai revu mon système de backup également récemment, principalement pour backuper mon PC et ceux de la famille. C'est l'occasion de faire un retour d'expérience.
J'ai 3 niveaux de backup:
- un rsync de tous les PC vers un disque dur externe (chiffré en LUKS)
- archives borg vers un autre disque dur externe
- archives borg vers un serveur distant
Borg est vraiment sympa:
- incrémental: on ne renvoie pas tout à chaque fois
- chiffré: le serveur n'a pas accès aux données
- dédupliqué: un même (bout de) fichier présent plusieurs fois dans une même archive ou dans plusieurs archives n'est stocké qu'une fois
- facile à utiliser
- un snapshot est un peu comme un commit git sur le principe (donc pas de différenciation "full" vs "incrémental" comme dans d'autres systèmes)
- on peut "monter" une archive via FUSE (borg mount) pour naviguer dedans, ce qui est très pratique
Pour le serveur distant, après de nombreuses années à l'envoyer sur une machine que je contrôlais chez mes parents, j'ai finalement opté pour un service de stockage en ligne chez LimaLabs, avec un accès SSH et borg. En "archive storage", c'est 15ドル/an par block de 500GB (il y a aussi rsync.net et BorgBase sinon).
Je réalise les backups manuellement régulièrement (il faut que le disque dur externe soit branché, que les machines que je backup soient allumées, etc., et ça permet de ne pas stocker une passphrase SSH quelque part).
Pour le backup incrémental, certaines données sont un peu pénibles à backuper par contre.
Il y a d'un côté les données qu'on veut sauvegarder mais qui changent beaucoup pour pas grand chose.
- .thunderbird contient un gros fichier INBOX qui contient tous les mails (10G sur certaines machines): dès qu'un nouveau mail est reçu, le fichier change parfois complètement (pour mes propres mails, je backup le Maildir sur le serveur directement, ça résout le problème)
- .mozilla/firefox a un peu le même problème
- le .git des projets (j'ai souvent plein de branches locales pushées nulle part, donc c'est important à sauvegarder), car git packe les objets dans des gros fichiers. D'un jour sur l'autre sur vlc par exemple, j'ai 750Mo de données incrémentales, alors que presque rien n'a changé.
Et il y a aussi les données qu'on ne veut pas backuper mais qui sont longues à lister manuellement et à maintenir (par exemple dès qu'on crée un nouveau builddir pour un projet, à moins de se forcer à respecter un certain nommage).
Comme compromis, je rsync tout le home, à l'exception de très gros dossiers facilement excluable (.cache, .ccache, .cargo, .gradle, .rustup). Si le disque dur meurt (ce qui est le plus probable), je peux restaurer rapidement l'intégralité.
Et je n'archive dans borg (local et distant) que les trucs "importants" (Documents/, les albums photos, les dotfiles, pas .mozilla/firefox complet mais juste key4.db et logins.json, le .git des projets importants uniquement...).
# Mes backups
Posté par ®om (site web personnel) . En réponse au journal Sauvegarde le retour du retour. Évalué à 5.
J'ai revu mon système de backup également récemment, principalement pour backuper mon PC et ceux de la famille. C'est l'occasion de faire un retour d'expérience.
J'ai 3 niveaux de backup:
- un rsync de tous les PC vers un disque dur externe (chiffré en LUKS)
- archives borg vers un autre disque dur externe
- archives borg vers un serveur distant
Borg est vraiment sympa:
- incrémental: on ne renvoie pas tout à chaque fois
- chiffré: le serveur n'a pas accès aux données
- dédupliqué: un même (bout de) fichier présent plusieurs fois dans une même archive ou dans plusieurs archives n'est stocké qu'une fois
- facile à utiliser
- un snapshot est un peu comme un commit git sur le principe (donc pas de différenciation "full" vs "incrémental" comme dans d'autres systèmes)
- on peut "monter" une archive via FUSE (
borg mount) pour naviguer dedans, ce qui est très pratiquePour le serveur distant, après de nombreuses années à l'envoyer sur une machine que je contrôlais chez mes parents, j'ai finalement opté pour un service de stockage en ligne chez LimaLabs, avec un accès SSH et borg. En "archive storage", c'est 15ドル/an par block de 500GB (il y a aussi rsync.net et BorgBase sinon).
Je réalise les backups manuellement régulièrement (il faut que le disque dur externe soit branché, que les machines que je backup soient allumées, etc., et ça permet de ne pas stocker une passphrase SSH quelque part).
Pour le backup incrémental, certaines données sont un peu pénibles à backuper par contre.
Il y a d'un côté les données qu'on veut sauvegarder mais qui changent beaucoup pour pas grand chose.
-
.thunderbirdcontient un gros fichierINBOXqui contient tous les mails (10G sur certaines machines): dès qu'un nouveau mail est reçu, le fichier change parfois complètement (pour mes propres mails, je backup leMaildirsur le serveur directement, ça résout le problème)-
.mozilla/firefoxa un peu le même problème- le
.gitdes projets (j'ai souvent plein de branches locales pushées nulle part, donc c'est important à sauvegarder), car git packe les objets dans des gros fichiers. D'un jour sur l'autre sur vlc par exemple, j'ai 750Mo de données incrémentales, alors que presque rien n'a changé.Et il y a aussi les données qu'on ne veut pas backuper mais qui sont longues à lister manuellement et à maintenir (par exemple dès qu'on crée un nouveau
builddirpour un projet, à moins de se forcer à respecter un certain nommage).Comme compromis, je
rsynctout le home, à l'exception de très gros dossiers facilement excluable (.cache,.ccache,.cargo,.gradle,.rustup). Si le disque dur meurt (ce qui est le plus probable), je peux restaurer rapidement l'intégralité.Et je n'archive dans borg (local et distant) que les trucs "importants" (
Documents/, les albums photos, les dotfiles, pas.mozilla/firefoxcomplet mais justekey4.dbetlogins.json, le.gitdes projets importants uniquement...).blog.rom1v.com