diff --git a/Linux/Avancé/Backup.md b/Linux/Avancé/Backup.md index 7fe0b8b..89887bd 100644 --- a/Linux/Avancé/Backup.md +++ b/Linux/Avancé/Backup.md @@ -2,13 +2,13 @@ title: Backup description: Faire ses sauvegardes sous Linux published: true -date: 2021-06-14T07:44:04.611Z +date: 2021-06-14T07:47:25.423Z tags: editor: markdown dateCreated: 2021-05-24T10:35:12.754Z --- -![Linux server backup and replication services | Dogsbody Technology](https://www.dogsbody.com/wp-content/uploads/Server-backup.png) +![Linux server backup and replication services | Dogsbody Technology](https://www.dogsbody.com/wp-content/uploads/Server-backup.png =35%x) # Sauvegarder son poste @@ -37,13 +37,13 @@ Identifier la partition (ou le disque) que vous aller sauvegarder avec :fdisk -l Installer ftp et dcfldd : -```plaintext +```bash apt install ftp dcfldd ``` Connectez vous à votre serveur FTP : -```plaintext +```bash ftp ``` @@ -63,19 +63,19 @@ Connectez vous en root. Identifier la partition (ou le disque) que vous aller restaurer avec : -```plaintext +```bash fdisk -l ``` Installer ftp et dcfldd : -```plaintext +```bash apt install ftp dcfldd ``` Connectez vous à votre serveur FTP : -```plaintext +```bash ftp IP_DU_SERVEUR ``` @@ -85,7 +85,7 @@ Rendez vous dans le dossier où vous avez stocké votre sauvegarde. Lancer la restauration avec la commande suivante : -```plaintext +```bash get MON_IMAGE.gz "| gunzip | dcfldd of=/dev/MA_PARTITION sizeprobe=of statusinterval=5" ``` @@ -99,7 +99,7 @@ Redémarrer votre VPS sur le disque principal. Pour sauvegarder son système on peut utiliser la commande `tar` avec les paramètres suivants : -```plaintext +```bash tar cvpzf backup-$(date +%d-%m-%Y).tar.gz --exclude=/backup-$(date +%d-%m-%Y).tar.gz --exclude=/proc --exclude=/tmp --exclude=/mnt --exclude=/dev --exclude=/sys --exclude=/run --exclude=/media --exclude=/var/log --exclude=/usr/src/linux-headers\* --exclude=/home / ``` @@ -113,7 +113,7 @@ Ce la va créer à la racine un fichier backup.tar.gz avec la date d’aujourd On peut aussi lancer la commander avec `nohup` pour éviter de perdre le processus une fois le terminal coupé (éviter l’envoi signal SIGHUP alias « *signal hang up* » qui clôture l’ensemble des processus enfants lancées par le terminal virtuel) : -```plaintext +```bash nohup tar cvpzf backup-$(date +%d-%m-%Y).tar.gz --exclude=/backup-$(date +%d-%m-%Y).tar.gz --exclude=/proc --exclude=/tmp --exclude=/mnt --exclude=/dev --exclude=/sys --exclude=/run --exclude=/media --exclude=/var/log --exclude=/usr/src/linux-headers\* --exclude=/home --exclude=nohup.out / & ``` @@ -158,81 +158,81 @@ Lexique :  ### Installation du paquet -```plaintext -root@srv-backup:~# apt install borgbackup +```bash +apt install borgbackup ``` -```plaintext -root@srv-app:~# apt install borgbackup +```bash +apt install borgbackup ``` ### Configuration de srv-backup -```plaintext -root@srv-backup:~# adduser borg -borg@srv-backup:~$ mkdir ~/sauvegardes +```bash +adduser borg +mkdir ~/sauvegardes ``` ### Setup SSH -```plaintext -root@srv-app:~$ ssh-keygen -root@srv-app:~$ ssh-copy-id borg@srv-backup +```bash +ssh-keygen +ssh-copy-id borg@srv-backup ``` ### Initialisation du dépôt -```plaintext -root@srv-app:~# borg init -e keyfile borg@srv-backup:sauvegardes/srv-app +```bash +borg init -e keyfile borg@srv-backup:sauvegardes/srv-app ``` ### Première sauvegarde -```plaintext -root@srv-app:~# borg create borg@srv-backup:sauvegardes/srv-app::test /home +```bash +borg create borg@srv-backup:sauvegardes/srv-app::test /home ``` Vous pouvez ajouter des options, veuillez-vous référer à la documentation. Voici un exemple pour ajouter des informations pendant le transfert, choisir la compression lz4 et nommer l'archive avec la date du jour : -```plaintext +```bash # https://borgbackup.readthedocs.io/en/stable/quickstart.html#backup-compression # lz4 (super fast, low compression) # zstd (wide range from high speed and low compression to high compression and lower speed) # zlib (medium speed and compression) # lzma (low speed, high compression) -root@srv-app:~# borg create --progress --stats --compression lz4 borg@srv-backup:sauvegardes/srv-app::{now:%Y-%m-%d} /home +borg create --progress --stats --compression lz4 borg@srv-backup:sauvegardes/srv-app::{now:%Y-%m-%d} /home ``` ### Information sur le dépôt et les archives Information sur la taille du dépôt : -```plaintext -root@srv-app:~# borg info borg@srv-backup:sauvegardes/srv-app +```bash +borg info borg@srv-backup:sauvegardes/srv-app ``` Liste des archives du dépôt : -```plaintext -root@srv-app:~# borg list borg@srv-backup:sauvegardes/srv-app +```bash +borg list borg@srv-backup:sauvegardes/srv-app ``` Information sur la taille de l'archive : -```plaintext -root@srv-app:~# borg info borg@srv-backup:sauvegardes/srv-app::test +```bash +borg info borg@srv-backup:sauvegardes/srv-app::test ``` Liste des fichiers de l'archive : -```plaintext -root@srv-app:~# borg list borg@srv-backup:sauvegardes/srv-app::test +```bash +borg list borg@srv-backup:sauvegardes/srv-app::test ``` On peut voir le gains de place avec la commande borg info grâce à la compression et la déduplication : -```plaintext +```bash Original size Compressed size Deduplicated size All archives: 1.01 GB 444.37 MB 432.50 MB @@ -242,7 +242,7 @@ Chunk index: 43183 44850 ### Emplacement de la Config et du Cache -```plaintext +```bash ~/.config/borg ~/.cache/borg ``` @@ -251,35 +251,35 @@ Le dossier cache peut prendre de la place, vous pouvez le déplacer puis créer ### Monter une archive -```plaintext -root@srv-app:~# borg mount borg@srv-backup:sauvegardes/srv-app::test /mnt +```bash +borg mount borg@srv-backup:sauvegardes/srv-app::test /mnt ``` ### Supprimer une archive et un dépôt  -```plaintext -root@srv-app:~# borg delete borg@srv-backup:sauvegardes/srv-app::test +```bash +borg delete borg@srv-backup:sauvegardes/srv-app::test ``` -```plaintext -root@srv-app:~# borg delete borg@srv-backup:sauvegardes/srv-app +```bash +borg delete borg@srv-backup:sauvegardes/srv-app ``` ### Vérifier et Réparer -```plaintext -root@srv-app:~# borg check -v --progress borg@srv-backup:sauvegardes/srv-app::test +```bash +borg check -v --progress borg@srv-backup:sauvegardes/srv-app::test ``` -```plaintext -root@srv-app:~# borg check --repair borg@srv-backup:sauvegardes/srv-app::test +```bash +borg check --repair borg@srv-backup:sauvegardes/srv-app::test ``` ### Automatiser la sauvegarde Voici un script d'exemple qui va sauvegarder /etc et /home puis faire une purge des archives : -```plaintext +```bash #!/bin/bash # Variables