schorsch-tech.de
Software, programming and stuff
Backup mit LVM und fsarchiver
LVM und der fsarchiver ist eine echt gute Kombo. Mit dem root volume auf dem LVM und einem snapshot hat man automatisch ein read only Volume.
lvcreate -s -L1G --name=root_snap /dev/vg/root
umount /boot
fsarchiver savefs -v -j4 root.fsa /dev/vg/root_snap /dev/sda1
mount /boot
lvremove /dev/vg/root_snap
root_snap ist mit dem 1G nur dazu da, die Änderungen aufzunehmen die währen dem erzeugen des Backups auftreten. Am Ende wird der snapshot wieder entfernt. Da fsarchiver “ungern” gemountete Dateisysteme sichert, wird es vorher ausgehängt.
Das ganze kann man auch noch verbessern mit gpg. Das Script macht meine Backups und verschlüsselt diese auch noch mit meinem öffentlichen gpg key. So kann nur ich die Backups öffnen. Das verhindert das Backups manipuliert werden können wenn diese auf dem Backup Laufwerk von Hetzner oder “in der Cloud” liegen.
#!/bin/sh
GPGHOME=/root/.gnupg
umount /boot
mount /mnt/backup
lvcreate -s -L1G --name=root_snap /dev/server/root
#lvcreate -s -L1G --name=home_snap /dev/server/home
lvcreate -s -L1G --name=var_snap /dev/server/var
# delete old backups
find /mnt/backup -mtime +14 -and -name "*.gpg" -exec rm {} \;
date=`date +%F`
fsarchiver savefs -j8 /mnt/backup/$date.fsa /dev/md126 /dev/server/root_snap /dev/server/var_snap
gpg --homedir $GPGHOME -q -r mykeyid --encrypt /mnt/backup/$date.fsa
rm /mnt/backup/$date.fsa
lvremove -f /dev/server/root_snap
lvremove -f /dev/server/var_snap
umount /mnt/backup
mount /boot
Categories
software
Permanent link to this post: https://www.schorsch-tech.de//posts/backup-mit-lvm-und-fsarchiver