This commit is contained in:
parent
8b423f76da
commit
ea2df719d8
@ -1,30 +1,30 @@
|
||||
# Sauvegarder des données
|
||||
|
||||
1. Lister les partitions:
|
||||
``` { .copy }
|
||||
``` {.bash .copy }
|
||||
lsblk
|
||||
```
|
||||
2. Identifier la partition contenant les fichiers à sauvegarder
|
||||
3. Monter la partition
|
||||
``` { .copy }
|
||||
``` {.bash .copy }
|
||||
mkdir /mnt/nom_du_dossier
|
||||
mount /dev/sdXy /mnt/nom_du_dossier
|
||||
```
|
||||
4. Cibler le dossier à sauvegarder
|
||||
``` { .copy }
|
||||
``` {.bash .copy }
|
||||
ls /mnt/nom_du_dossier
|
||||
```
|
||||
5. Créer le dossier de réception sur le serveur de backup:
|
||||
``` { .copy }
|
||||
``` {.bash .copy }
|
||||
ssh -p 5555 bellinuxien@192.168.1.75
|
||||
mkdir /home/bellinuxien/BACKUPS/nom-de-dossier
|
||||
exit
|
||||
```
|
||||
6. Copier le dossier utilisateur vers le dossier sur le serveur de backup:
|
||||
``` { .copy }
|
||||
``` {.bash .copy }
|
||||
rsync -ah -e "ssh -p 5555" /mnt/nom_du_dossier bellinuxien@192.168.1.75:/home/bellinuxien/BACKUPS/nom_du_dossier/ --info=progress2 && sync
|
||||
```
|
||||
7. Rapatrier les fichiers du serveur de backup vers une machine:
|
||||
``` { .copy }
|
||||
``` {.bash .copy }
|
||||
rsync -ah -e "ssh -p 5555" bellinuxien@192.168.1.75:/home/bellinuxien/BACKUPS/nom_du_dossier/ /mnt/nom_du_dossier --info=progress2 && sync
|
||||
```
|
||||
|
||||
@ -3,11 +3,13 @@
|
||||
- [ssh](ssh.md)
|
||||
- [screen](screen.md)
|
||||
- [backup](backup.md)
|
||||
- [rsync](backup.md)
|
||||
- [rsync](rsync.md)
|
||||
- [nmcli](nmcli.md)
|
||||
- [chroot](chroot.md)
|
||||
- [lvm](lvm.md)
|
||||
- [Monter une partition](mount.md)
|
||||
- [Monter et gérer un RAID](raid.md)
|
||||
- [Système de fichier ZFS](zfs.md)
|
||||
- [chroot](chroot.md)
|
||||
- [read](read.md), pour permettre à l'utilisateur d'interagir avec un script (user prompt / user input)
|
||||
- [heredoc](heredoc.md), le fameux `EOF`, pour afficher du contenu sur plusieurs lignes
|
||||
- [listes et dictionnaires avec Bash](bash-lists.md)
|
||||
|
||||
64
docs/divers/cmd/rsync.md
Normal file
64
docs/divers/cmd/rsync.md
Normal file
@ -0,0 +1,64 @@
|
||||
# RSYNC (synchronisation de répertoires / fichiers)
|
||||
|
||||
## Synthaxe de base
|
||||
|
||||
``` {.bash .copy }
|
||||
rsync [options] source destination
|
||||
```
|
||||
|
||||
## Utilisation locale
|
||||
|
||||
1. Copier un fichier:
|
||||
``` {.bash .copy }
|
||||
rsync fichier.txt /home/user/backup/
|
||||
```
|
||||
|
||||
2. Copier le contenu d'un dossier:
|
||||
``` {.bash .copy }
|
||||
rsync -av /home/user/docs/ /home/user/backup/
|
||||
```
|
||||
|
||||
3. Copier un dossier et son contenu:
|
||||
``` {.bash .copy }
|
||||
rsync -av /home/user/docs /home/user/backup/
|
||||
```
|
||||
|
||||
## Utilisation distante (via SSH)
|
||||
|
||||
1. Serveur distant vers machine locale:
|
||||
``` {.bash .copy }
|
||||
rsync -avzP user@serveur:/home/user/docs/ /home/user/backup/
|
||||
```
|
||||
|
||||
2. Machine local vers serveur distant:
|
||||
``` {.bash .copy }
|
||||
rsync -avzP /home/user/backup/ user@serveur:/home/user/docs/
|
||||
```
|
||||
|
||||
## Les options
|
||||
|
||||
``` {.bash .copy }
|
||||
-a # archive (conserve permissions, liens, dates…)
|
||||
-g # préserve le groupe
|
||||
-l # copie les liens symboliques
|
||||
-o # préserve le propriétaire (nécéssite root)
|
||||
-p # préserver les permissions
|
||||
-u # ignore la copie des fichiers plus récents sur la destination
|
||||
-v # verbose (affiche les détails)
|
||||
-z # compresse les données lors du transfert
|
||||
-v # mode verbose pour afficher les informations de la copie
|
||||
-c # utilise la somme de contrôle pour vérifier si il faut copier le fichier ou pas
|
||||
-P # montre la progression + reprend un transfert interrompu
|
||||
--exclude= # exclure les fichiers de la copie
|
||||
--delete # supprime dans la destination les fichiers absents de la source
|
||||
--max-size # indique la taille maximale des fichiers à copier
|
||||
--dry-run # test la commande sans rien copier
|
||||
--progress # affiche une barre de progréssion
|
||||
-e ssh # passe par SSH (utile pour le réseau)
|
||||
-e "ssh -p 2222" # passe les paramètres SSH
|
||||
```
|
||||
|
||||
## Plus d'informations
|
||||
|
||||
- [Linux.die.net](https://linux.die.net/man/1/rsync)
|
||||
- [Wiki ubuntu](https://doc.ubuntu-fr.org/rsync)
|
||||
65
docs/divers/cmd/zfs.md
Normal file
65
docs/divers/cmd/zfs.md
Normal file
@ -0,0 +1,65 @@
|
||||
# Système de fichier ZFS
|
||||
|
||||
|
||||
## Créer un système de fichier ZFS
|
||||
|
||||
- Créer une pool et son dataset
|
||||
``` {.bash .copy }
|
||||
sudo zpool create tank /dev/sdb
|
||||
sudo zfs create tank/data
|
||||
```
|
||||
|
||||
??? note "explications"
|
||||
tank → pool name
|
||||
/dev/sdb → target disk
|
||||
|
||||
## Redondance (RAID)
|
||||
|
||||
- Créer une pool ZFS sur un disk:
|
||||
``` {.bash .copy }
|
||||
sudo zpool create tank /dev/sdb
|
||||
```
|
||||
|
||||
- Ajouter des disks:
|
||||
``` {.bash .copy }
|
||||
# Mirror (like RAID1)
|
||||
sudo zpool create tank mirror /dev/sdb /dev/sdc
|
||||
# RAID-Z1 (like RAID5, 1 disk fault tolerance)
|
||||
sudo zpool create tank raidz1 /dev/sdb /dev/sdc /dev/sdd
|
||||
# RAID-Z2 (2 disk fault tolerance)
|
||||
sudo zpool create tank raidz2 /dev/sdb /dev/sdc /dev/sdd /dev/sde
|
||||
```
|
||||
|
||||
- Créer un dataset:
|
||||
``` {.bash .copy }
|
||||
sudo zfs create tank/data
|
||||
```
|
||||
|
||||
## Sauvegarder (snapshots)
|
||||
|
||||
- Prendre Snapshot daté:
|
||||
``` {.bash .copy }
|
||||
# Snapshot name includes the date
|
||||
sudo zfs snapshot tank/data@$(date +%Y-%m-%d)
|
||||
```
|
||||
|
||||
- Cloner un snpashot:
|
||||
``` {.bash .copy }
|
||||
sudo zfs clone tank/data@before-upgrade tank/data_clone
|
||||
```
|
||||
|
||||
- Restorer un snapshot (rollback):
|
||||
``` {.bash .copy }
|
||||
sudo zfs rollback tank/data@before-upgrade
|
||||
```
|
||||
|
||||
- Supprimer un snapshot:
|
||||
``` {.bash .copy }
|
||||
sudo zfs destroy tank/data@before-upgrade
|
||||
```
|
||||
|
||||
## Commandes
|
||||
|
||||
``` {.bash .copy }
|
||||
zfs list -t snapshot
|
||||
```
|
||||
Loading…
x
Reference in New Issue
Block a user