đ Sauvegardes
Dans le contexte de l'auto-hĂ©bergement, les sauvegardes (backups) sont un Ă©lĂ©ment important pour pallier les Ă©vĂ©nements inattendus (incendies, corruption de base de donnĂ©es, perte d'accĂšs au serveur, serveur compromis...). La politique de sauvegardes Ă mettre en place dĂ©pend de l'importance des services et des donnĂ©es que vous gĂ©rez. Par exemple, sauvegarder un serveur de test aura peu d'intĂ©rĂȘt, tandis que vous voudrez ĂȘtre trĂšs prudentâ e si vous gĂ©rez des donnĂ©es critiques pour une association ou une entreprise. Dans ce genre de cas, il est crucial d'avoir de disposer de sauvegardes dans un, ou idĂ©alement plusieurs endroits diffĂ©rents.
Sauvegarde manuelleâ
YunoHost est fourni avec un systÚme de sauvegarde, qui permet de sauvegarder (et restaurer) les configurations du systÚme, les données « systÚme » (comme les mails) et les applications si elles le supportent.
Vous pouvez gérer vos sauvegardes via la ligne de commande (yunohost backup --help) ou la webadmin (dans la section Sauvegardes) bien que certaines fonctionnalités ne soient pas disponibles via celle-ci.
La méthode de sauvegarde actuelle consiste à créer des archives .tar qui contiennent les fichiers pertinents.
CrĂ©er une sauvegardeâ
- Depuis la webadmin
- Depuis la ligne de commande
Vous pouvez facilement créer des archives depuis la webadmin en allant dans Sauvegardes > Archives locales et en cliquant sur Nouvelle sauvegarde. Vous pourrez ensuite sélectionner les éléments à sauvegarder (configuration, données "systÚme", applications).

Vous pouvez créer de nouvelles archives depuis la ligne de commande. Voici quelques exemples de commandes et leur comportement correspondant :
- Tout sauvegarder (systĂšme et apps) :
yunohost backup create
- Sauvegarder seulement les apps :
yunohost backup create --apps
- Sauvegarder seulement deux apps (WordPress et Shaarli) :
yunohost backup create --apps wordpress shaarli
- Sauvegarder seulement les mails :
yunohost backup create --system data_mail
- Sauvegarder les mails et WordPress :
yunohost backup create --system data_mail --apps wordpress
Pour plus d'informations et d'options sur la création d'archives, consultez yunohost backup create --help. Vous pouvez également lister les parties du systÚme qui sont sauvegardables avec yunohost hook list backup.
TĂ©lĂ©charger la sauvegardeâ
- Depuis la webadmin
- Avec un client SFTP
- Depuis la ligne de commande
AprĂšs avoir créé des sauvegardes, il est possible de les lister et de les inspecter grĂące aux vues correspondantes dans l'interface d'administration web. Un bouton propose de tĂ©lĂ©charger l'archive. Si l'archive fait plus de 3Go, il peut ĂȘtre prĂ©fĂ©rable de procĂ©der via SFTP.
Sauvegarde > Archives locales > <Nom de l'archive> > Télécharger
à l'heure actuelle, la solution la plus accessible pour récupérer les sauvegardes de grosse taille est d'utiliser le programme FileZilla comme expliqué dans cette page.
Par défaut, les sauvegardes sont stockées dans /home/yunohost.backup/archives/.
The yunohost backup list and yunohost backup info <archive_name> commands provide information about the names and sizes of backups.
Il est possible d'utiliser scp (un programme basé sur ssh) pour copier des fichiers entre deux machines grùce à la ligne de commande. Ainsi, depuis une machine sous GNU/Linux, vous pouvez utiliser la commande suivante pour télécharger une archive :
scp admin@your.domain.tld:/home/yunohost.backup/archives/<archive_name>.tar ./
En cas de port SSH autre que 22 :
scp -P ssh_port admin@your.domain.tld:/home/yunohost.backup/archives/<archive_name>.tar ./
N'oubliez pas de stocker votre sauvegarde dans un lieu différents de celui ou se trouve votre serveur.
Si vous le souhaitez, vous pouvez connecter un disque externe Ă votre serveur pour que les archives arrivent directement dessus. Voir ce guide pour Ajouter un stockage externe Ă son serveur
Testerâ
Vous devriez tester réguliÚrement vos sauvegardes à minima en listant le contenu des archives et en vérifiant le poids des données associées. Le mieux est de s'entrainer rÚguliÚrement à restaurer.
# List the files
tar -tvf /home/yunohost.backup/archives/ARCHIVE.tar | less
# List database exports
tar -tvf /home/yunohost.backup/archives/ARCHIVE.tar | grep "(db|dump)`.sql"
# Check the weight
ls -lh /home/yunohost.backup/archives/ARCHIVE.tar
Restaurerâ
SPOILER: Plus votre volume de données et le nombre d'applications sont important, plus votre restauration sera complexe.
Cas simple : peu de donnĂ©es, archive dĂ©jĂ prĂ©senteâ
- Depuis la webadmin
- Depuis la ligne de commande
Allez dans Sauvegardes > Archives locales et sélectionnez l'archive. Vous pouvez ensuite choisir les différents éléments que vous voulez restaurer puis cliquer sur "Restaurer".

à partir de la ligne de commande, vous pouvez exécuter yunohost backup list pour obtenir les noms des archives disponibles. Il s'agit essentiellement de leur nom de fichier sans extension.
You can then run yunohost backup restore <archivename> (hence without its .tar extension) to restore an archive. As for yunohost backup create, this will restore everything in the archive by default. If you want to restore only specific items, you can use something like yunohost backup restore <archivename> --apps wordpress, which will restore only the wordpress app.
Dans le cas d'une restauration complĂšte, il est possible de restaurer Ă la place de lancer la configuration initiale.
Pour restaurer une application, le domaine sur laquelle elle est installĂ©e doit dĂ©jĂ ĂȘtre configurĂ© (ou il vous faut restaurer en mĂȘme temps la configuration correspondante). Aussi, il n'est pas possible de restaurer une application dĂ©jĂ installĂ©e... ce qui veut dire que pour restaurer une sauvegarde d'une app, il vous faut dĂ©jĂ la dĂ©sinstaller.
TĂ©lĂ©verser une archiveâ
Dans de nombreux cas, l'archive n'est pas sur le serveur sur lequel on souhaite la restaurer. Il faut donc la téléverser, ce qui selon son poids peut prend plus ou moins de temps.
- Avec un client SFTP
- Depuis la ligne de commande
à l'heure actuelle, la solution la plus accessible pour téléverser les sauvegardes est d'utiliser le programme FileZilla comme expliqué dans cette page.
Par défaut, les sauvegardes sont à placer dans /home/yunohost.backup/archives/.
You can use the scp (a command built on ssh) to copy files between two machines from CLI. For example for a Linux terminal:
scp /path/to/your/<archive_name>.tar admin@your.domain.tld:/home/yunohost.backup/archives/
En cas de port SSH autre que 22 :
scp -P ssh_port /path/to/your/<archive_name>.tar admin@your.domain.tld:/home/yunohost.backup/archives/