Fonctionnalités¶
BombVault est simple par défaut et profond quand vous en avez besoin. L'interface ne montre que l'essentiel jusqu'à ce que vous basculiez le commutateur Simple / Avancé. Cette page regroupe l'ensemble des fonctionnalités.
Périmètre de sauvegarde¶
| Quoi | Ce qui est enregistré |
|---|---|
| Conteneurs Docker | Le répertoire appdata plus la définition du conteneur (image, variables d'environnement, ports, labels, volumes). |
| VMs KVM / libvirt | La ou les images disque de la VM, la définition XML et la NVRAM UEFI (arrêt propre ou instantané à chaud, via SSH). Les instantanés à chaud se rabattent automatiquement sur une sauvegarde propre si l'instantané ne peut pas être créé, de sorte qu'une sauvegarde de VM n'échoue jamais simplement. |
| Flash Unraid | Toute la clé USB flash (/boot) : OS, licence, config de la matrice, partages, réseau et config des plugins. La restauration est un téléchargement .zip en un clic et n'écrase jamais la flash active. |
| Configuration de l'application | Le propre /config de BombVault (base de réglages, identifiants hors site, paire de clés SSH libvirt), capturé avec VACUUM INTO de SQLite afin qu'une base en mode WAL ne soit jamais capturée en pleine écriture. Restauré via un auto-redémarrage, de sorte que la base active n'est jamais écrasée sous un handle ouvert. |
| Fichiers et dossiers | Des jeux de fichiers nommés : n'importe quel dossier du serveur (un partage, vos documents, une bibliothèque de photos), chacun avec des motifs d'exclusion optionnels par jeu. Parité complète avec les autres domaines (plannings, rétention, copie hors site, vérifications d'intégrité et essais de restauration). |
Restauration¶
- Restauration complète en un clic. Choisissez un instantané, cliquez sur Restaurer. Terminé.
- Restauration depuis le local ou le hors site. Chaque navigateur de sauvegardes dispose d'un commutateur Local / Hors site, de sorte que si un dépôt local est perdu ou corrompu, vous pouvez lister et restaurer directement depuis le réplica hors site. La suppression est par source : retirer une sauvegarde n'affecte que la copie que vous consultez.
- Les conteneurs sont automatiquement réinstallés. La définition du conteneur est rejouée contre l'API Docker, de sorte que le conteneur réapparaît dans l'onglet Docker d'Unraid exactement comme il était.
- Les VMs sont automatiquement recréées. Le XML est réimporté via SSH afin que la VM réapparaisse dans le VM Manager avec son disque et sa NVRAM UEFI rattachés, même après la suppression de la VM. Découvrir les sauvegardes reconstruit une entrée entièrement disparue (par exemple après une réinstallation).
- Restauration individuelle. Restaurez un conteneur, une VM ou un jeu de fichiers sans toucher aux autres.
- La restauration flash est un téléchargement
.zip. Elle est diffusée vers votre navigateur sousflash-<id>.zip, prête à déposer dans le créateur de clé USB Unraid. Le/bootactif n'est jamais touché. - Export zip flash planifié. Après chaque sauvegarde flash, écrivez éventuellement l'instantané sous forme de
.zipsimple dans un dossier de votre choix (un uniqueflash-latest.zipécrasé ou un historique glissant). Pointez-le vers un dossier Syncthing ou rclone pour que votre sauvegarde de clé USB amorçable quitte le serveur automatiquement. - Vérification de conflit avant lancement. Avant que quoi que ce soit ne soit arrêté ou supprimé, la restauration vérifie que l'IP statique du conteneur et les ports hôtes publiés sont libres, et s'interrompt avec un message clair au lieu de laisser une restauration à moitié faite.
- Restauration au niveau fichier. Dépliez les Fichiers d'un instantané de conteneur, filtrez, cochez autant de fichiers et dossiers que vous voulez, puis restaurez la sélection sur place ou dans un dossier de votre choix.
- Restauration de jeu de fichiers. Restaurez un instantané de jeu de fichiers sur place (après une confirmation explicite) ou dans un dossier de votre choix, jamais en silence. La restauration sélective fonctionne aussi ici.
- La restauration conserve l'état d'exécution. Un conteneur ou une VM en cours d'exécution au moment de la sauvegarde revient en cours d'exécution ; celui qui était arrêté reste arrêté. Cochez Laisser arrêté après restauration pour recréer sans démarrer.
- Restaurer toute une pile. Les conteneurs d'un même projet Docker Compose sont regroupés dans un panneau Piles. Restaurer la pile reconstruit chaque membre à partir de sa dernière sauvegarde en le laissant arrêté, puis les démarre éventuellement dans l'ordre
depends_on. - Progression en direct, annulation et retour d'occupation. Une restauration longue affiche une barre de pourcentage en direct et peut être annulée avec une confirmation adaptée au type. Une restauration annulée est enregistrée comme annulée, pas comme échouée.
- Récupération guidée. Un onglet Récupération dédié accompagne une installation neuve à travers le cas de sinistre. Voir Sauvegarde hors site et récupération.
- Restauration depuis un autre dépôt BombVault. Une session unique en lecture seule ouvre le dépôt d'une autre instance BombVault avec l'
APP_KEYde cette instance, afin que vous puissiez tirer un conteneur du serveur A vers le serveur B sans toucher à vos propres réglages. Voir Sauvegarde hors site et récupération.
Stockage et planification¶
- Sauvegardes incrémentales et dédupliquées via restic, de sorte que même de grandes images disque de VM ne font pas exploser le dépôt.
- Destinations : un chemin local, ou hors site. SMB/CIFS et NFS (montez le partage sur Unraid et pointez-y un Chemin de sauvegarde), backends restic natifs sans rclone (
s3:...,rest:http://host:8000/repo,b2:...,sftp:user@host:/repo), ou n'importe quel remote rclone viarclone:<remote>:<bucket>/path. Tous les identifiants sont stockés chiffrés. - Les cibles SSH ne nécessitent rien d'installé côté distant.
sftp:requiert seulement un serveur SSH, de sorte qu'un simple Raspberry Pi (sans Docker, sans restic) fonctionne comme destination hors site. Les clés d'hôte sont épinglées automatiquement au premier contact. - Copie hors site (local + distant). Conservez la sauvegarde locale rapide et ajoutez un ou plusieurs réplicas hors site, répliqués avec
restic copyau mieux (un accroc hors site ne fait jamais échouer la sauvegarde locale). Chaque domaine a son propre planning hors site, plus un bouton Répliquer maintenant. - Plusieurs cibles hors site par domaine. Chaque domaine (conteneurs, VMs, flash, config et jeux de fichiers) peut répliquer vers plusieurs destinations hors site à la fois, pas seulement une. Ajoutez des cibles supplémentaires dans l'onglet Hors site, chacune avec son propre dépôt, sa classe de stockage S3, son indicateur append-only, sa rétention et son budget de croissance. Votre copie hors site existante est reprise comme première cible, de sorte que rien ne change tant que vous n'en ajoutez pas une seconde, et chaque cible d'un domaine réplique selon le planning hors site de ce domaine.
- Ordre de sauvegarde manuel. Définissez l'ordre exact dans lequel vos conteneurs sont sauvegardés depuis le panneau d'ordre de sauvegarde sur la page Conteneurs. Les exécutions planifiées et multi-sélection le suivent ; tout conteneur laissé sans ordre conserve le comportement précédent du plus en retard d'abord, et une sauvegarde de conteneur unique est inchangée.
- Rétention configurable : conserver-les-derniers / quotidiens / hebdomadaires / mensuels, élagués automatiquement après chaque sauvegarde, définie par source (local à côté des chemins de sauvegarde, hors site dans l'onglet Hors site afin de pouvoir garder les copies hors site plus longtemps comme archive).
- Planification par domaine (quotidien / hebdomadaire incluant des jeux multi-jours / tous-les-N-jours / cron brut), le tout édité au même endroit dans Paramètres, Plannings.
- Limites de bande passante hors site. Plafonnez le débit d'envoi/de téléchargement de restic afin que la réplication ne sature pas votre WAN.
- Classe de stockage froid et archivage (S3). Pour un dépôt hors site S3 natif, vous pouvez choisir la classe de stockage, restreinte aux niveaux lisibles à la restauration (Standard, Standard-IA, One Zone-IA, Intelligent-Tiering, Glacier Instant Retrieval), afin qu'une tarification d'archivage ne casse jamais silencieusement une restauration. Les niveaux d'archivage profond qui nécessitent d'abord un dégel asynchrone (Glacier Flexible, Deep Archive) sont volontairement laissés de côté. Backends S3 natifs uniquement ; les remotes rclone définissent leur classe dans la config rclone.
- Les dossiers de sauvegarde restent copiables hors de la machine. Après chaque sauvegarde, BombVault assouplit l'arborescence du dépôt local à dossiers
0755/ fichiers0644(les dépôts sont chiffrés, donc rien n'est exposé), afin qu'un utilisateur de synchronisation non-root via SMB ne soit pas bloqué. Les définitions de récupération vivent à l'intérieur de chaque dépôt, de sorte qu'un dossier de dépôt copié est entièrement autonome.
Analyse, vérification et surveillance¶
- État de protection (RPO). Le tableau de bord affiche un indicateur vert / orange / rouge par domaine, comparant la dernière sauvegarde réussie à son planning, de sorte qu'une sauvegarde en retard devient rouge au lieu de se cacher dans un journal.
- Carte de chaleur de santé des sauvegardes. Un calendrier de style contributions GitHub des résultats de sauvegarde par jour et par domaine, avec un bascule Conteneurs / VMs / Flash / Config / Fichiers.
- Chronométrage des exécutions partout. Chaque entrée d'historique d'exécution se lit
début, fin (durée), et chaque conteneur et VM porte sa propre liste Exécutions récentes sur sa page. - Un tableau de bord que vous pouvez réorganiser. Activez le mode personnalisation pour faire glisser les cartes dans votre ordre et masquer celles dont vous n'avez pas besoin. La disposition est enregistrée par navigateur.
- Taille du dépôt et tendance de déduplication. Taille actuelle du dépôt, ratio de déduplication et nombre d'instantanés par domaine, avec un sparkline de la croissance du stockage.
- Essais de vérification de restaurabilité. BombVault prouve périodiquement que vos sauvegardes sont restaurables (
restic check --read-data-subset, borné) et affiche un badge dernière restaurabilité vérifiée par domaine. - Opérations auto-réparatrices. Un verrou restic prouvé orphelin (laissé par un redémarrage en pleine opération) est forcé à se libérer et réessayé une fois, automatiquement. La rétention est stable en identité (élaguée par élément, immunisée contre les changements de chemin ou d'hôte) et un échec de rétention envoie une notification.
- Kit de récupération de clé de chiffrement. Téléchargement en un clic de la clé maîtresse, du mot de passe restic dérivé et des emplacements et commandes exacts du dépôt, afin que vous puissiez restaurer sans un BombVault en fonctionnement. Voir Sauvegarde hors site et récupération.
- Exporter et importer vos réglages. Une carte Exporter et importer les réglages sur la page Paramètres écrit toute votre configuration (réglages de domaine, cibles hors site, plannings, rétention, notifications) dans un fichier JSON portable, de sorte que migrer vers une nouvelle machine ou cloner une configuration ne signifie pas tout ressaisir à la main. Vous choisissez d'inclure ou non les identifiants hors site et de notification ; avec eux, le fichier est aussi sensible que votre kit de récupération. L'import affiche un aperçu et demande confirmation, et ne touche jamais à vos données ou votre historique de sauvegarde.
- Notifications. Webhook (Discord / Slack / Gotify / ntfy), Matrix, Healthchecks.io, e-mail (SMTP), un serveur Apprise API auto-hébergé, et le système de notifications natif d'Unraid. Politique par sauvegarde : jamais / en cas d'échec / toujours. Une exécution planifiée de nombreux éléments peut envoyer un unique résumé N sur M réussis. Healthchecks reçoit tout le cycle de vie (
/start, puis succès ou/fail) dès qu'une URL est définie. /metricsPrometheus. Optionnel (désactivé par défaut, jeton bearer facultatif) pour Grafana ou Uptime Kuma. Expose l'état, les tailles et les horodatages des sauvegardes, sans secrets ni chemins dans les labels.
Protection contre les rançongiciels¶
- Hors site immuable (append-only). Marquez un dépôt hors site en append-only afin qu'un rançongiciel ou un hôte compromis ne puisse ni supprimer ni réécrire vos sauvegardes. Le côté distant (un
restic/rest-serveren mode--append-only) l'impose ; BombVault ne fait que le vérifier et n'affiche jamais du vert sur la seule foi d'une déclaration de configuration. - Test de sabotage. BombVault prouve périodiquement la garantie append-only en tentant réellement une suppression contre le dépôt hors site (visant un objet inexistant) : refusé signifie protégé, accepté signifie non protégé. Un résultat non concluant ne renverse jamais le verdict stocké.
- Configuration hors site guidée. Un assistant vous accompagne du choix du backend jusqu'à un extrait de déploiement rest-server prêt à coller, un test de connexion, la bascule d'immuabilité et une stratégie de rétention.
- Essais de reprise après sinistre (hors site). Restaurez une vraie cible depuis le dépôt hors site dans un bac à sable jetable, vérifiez-la fichier par fichier et octet par octet, puis nettoyez. Voir Sauvegarde hors site et récupération.
- Tableau de bord de protection contre les rançongiciels. Une carte du tableau de bord avec une posture verte / orange / rouge par domaine et une liste de contrôle horodatée ; chaque ligne rouge renvoie directement au correctif. Elle ne passe au vert que sur des faits vérifiés.
- Alarme de budget de croissance. Pour un hors site immuable (où les anciens instantanés ne sont délibérément jamais élagués), définissez un budget de taille et soyez alerté avant qu'il ne s'emballe.
- Tableau de bord récepteur (côté réception). Sur la machine qui reçoit des copies hors site immuables d'un autre BombVault, activez la bascule Récepteur (Paramètres) pour révéler un onglet Récepteur. Enregistrez un dépôt reçu en lecture seule (ouvert avec la clé de l'instance émettrice) pour voir son inventaire d'instantanés groupé par source, quand chaque source est arrivée pour la dernière fois, et lancer un
restic checkindépendant sur le matériel de réception. Il vous alerte lorsqu'une source cesse d'émettre dans une fenêtre que vous définissez (un dispositif d'homme mort) ou lorsqu'une vérification d'intégrité échoue. Strictement en lecture seule, il n'écrit donc jamais dans le dépôt reçu, et est désactivé par défaut. Voir Sauvegarde hors site et récupération.
Exports en clair¶
- Export en clair de conteneur. Un bouton Exporter par conteneur écrit une copie parcourable et sans outil à côté du dépôt :
<name>.tar.gzdes dossiers de sauvegarde plus le modèle Unraid<name>.xml. Restic reste le moteur ; c'est une copie de confort supplémentaire. - Export en clair de VM. Les VMs ont le même Exporter (tar brut) :
<name>.tar.gzde la ou des images disque plus<name>.xml, restaurable avecvirsh defineplus le disque, sans BombVault ni restic. - Chiffrer les exports en clair (age). Les exports se trouvent en dehors de restic, ils sont donc en clair par défaut. Activez le chiffrement age dans les Paramètres et ajoutez un ou plusieurs destinataires (une clé publique age ou une clé publique SSH). Chaque export (
.tar.gzde conteneur et de VM, leurs fichiers annexes.xml, et le ZIP flash) est alors scellé pour ces destinataires, et vous le déchiffrez plus tard hors de la machine avec la clé privée correspondante. Par règle de sécurité, avec le chiffrement activé et aucun destinataire valide, un export échoue avec une erreur claire au lieu d'écrire du texte en clair.
Autres¶
- Sauvegarder plusieurs à la fois. Multi-sélectionnez des conteneurs et cliquez sur Sauvegarder la sélection. Le lot s'exécute côté serveur, il continue donc même si vous fermez l'onglet ou perdez la connexion. BombVault ne sauvegarde jamais (et donc n'arrête jamais) son propre conteneur.
- Navigateur d'instantanés avec une liste de points de restauration, une suppression par instantané, et une arborescence de dossiers repliable pour la restauration au niveau fichier.
- Maintenance du dépôt par domaine : Vérifier (
restic check), Déverrouiller (libérer un verrou bloqué), et Élaguer (applique la politique de rétention à la demande lorsqu'une est définie, sinon une simple récupération d'espace). - Hooks pré/post-sauvegarde par conteneur. Des commandes shell s'exécutent à l'intérieur du conteneur (par exemple
mysqldumpdans appdata avant la sauvegarde) ; un pré-hook en échec annule la sauvegarde. - Arrêter d'autres conteneurs pendant la sauvegarde, avec un redémarrage conditionné à la santé. Nommez les conteneurs dépendants (par exemple une base de données) à arrêter pendant la sauvegarde de celui-ci. Ensuite, BombVault les ramène dans leur ordre
depends_onde Compose et, par défaut, attend que chacun se signale sain (ou en cours d'exécution, s'il n'a pas de healthcheck) avant de démarrer les conteneurs qui en dépendent, de sorte qu'une dépendance comme Pi-hole, une base de données ou une passerelle VPN soit réellement active avant les services qui en ont besoin, au lieu que ceux-ci reviennent sur un connection refused. L'attente est bornée par un délai par conteneur (120 secondes par défaut) afin qu'un conteneur lent ou jamais sain ne puisse jamais bloquer l'exécution ; l'attente comme le délai vivent dans Paramètres, Plannings (désactivez l'attente pour le redémarrage simultané précédent). Le même redémarrage ordonné et conditionné à la santé enveloppe aussi la mise à jour d'image post-sauvegarde, de sorte que le jour où une mise à jour arrive, les dépendants sont maintenus arrêtés pendant la recréation et ne sont ramenés, conditionnés à la santé, qu'une fois celle-ci terminée. - Motifs d'exclusion par conteneur. Listez les sous-répertoires à ignorer à l'intérieur d'un volume sauvegardé, un par ligne. Saisissez les chemins tels que vous les voyez à l'intérieur du conteneur ; un aperçu en direct montre ce que chaque ligne résout et avertit lorsqu'une ligne n'exclurait rien.
- Mettre à jour après une sauvegarde réussie (avancé, désactivé par défaut). Activez ceci sur un conteneur et BombVault tire l'image la plus récente et le recrée, mais seulement lorsqu'il existe réellement une image plus récente, afin qu'un point de restauration frais existe toujours d'abord. Extras optionnels : une notification par conteneur mis à jour et le nettoyage d'image (une image de base partagée par d'autres conteneurs n'est jamais supprimée). Après la mise à jour, BombVault demande aussi à Unraid de revérifier l'état de mise à jour de ce conteneur, de sorte que la bannière mise à jour disponible périmée de l'onglet Docker se dissipe d'elle-même au lieu de s'attarder (les mises à jour Unraid passent directement par l'API Docker, donc son état en cache, et sur certaines versions un digest en cache, continueraient sinon d'afficher la bannière). C'est au mieux, n'affecte jamais la sauvegarde, activé par défaut et dispose d'une bascule dans les Paramètres.
- Restaurer vers un dossier alternatif pour le clonage ou l'inspection.
- Diff et étiquettes d'instantanés. Comparez deux instantanés pour voir ce qui a changé, et étiquetez les instantanés pour les filtrer.
- Quoi de neuf après une mise à jour. Les notes de version s'affichent une fois par nouvelle version, servies depuis des notes intégrées au binaire, de sorte que le dialogue fonctionne hors ligne.
- HTTPS par défaut (auto-signé, ou apportez votre propre certificat derrière un reverse proxy).
- Healthcheck Docker. Le conteneur se signale sain/non sain depuis son propre
/api/health, de sorte qu'un outil d'auto-réparation peut le redémarrer si le moteur venait à se coincer. - Interface sombre/claire en 26 langues avec un sélecteur de drapeaux.