#!/bin/ash echo "Start backup." # Create backup file name. TMP_TARGET=/mnt/backups/backup-$(hostname)-$(date +'%Y-%m-%d-%H-%M-%S').tar echo $TMP_TARGET # # Samba # echo "Samba" echo "Create NTACL file." cd /var/lib/samba find ./sysvol -exec ash -c 'TMP=$(samba-tool ntacl get "{}" --as-sddl); echo "samba-tool ntacl set \"$TMP\" \"{}\""' \; > NTACL echo "Create tarball." cd / tar -cf $TMP_TARGET.1 \ etc/samba etc/bind \ var/lib/samba/private var/lib/samba/sysvol var/lib/samba/NTACL var/lib/samba/bind-dns \ var/lib/bind \ var/lib/ldap-account-manager rm var/lib/samba/NTACL # # Kopano # echo "Kopano" echo "Create tarball" cd /tmp tar -cf $TMP_TARGET.2 \ kopano/var/lib/kopano/attachments \ kopano/var/lib/mysql # # Gitea # echo "Gitea" echo "Create tarball" cd /tmp tar -cf $TMP_TARGET.3 \ gitea/data \ gitea/var/lib/mysql # # merge tarball. # echo -n "Merging " echo -n "."; head -c -$((512*2)) $TMP_TARGET.1 > $TMP_TARGET echo -n "."; head -c -$((512*2)) $TMP_TARGET.2 >> $TMP_TARGET echo -n "."; head -c -$((512*2)) $TMP_TARGET.3 >> $TMP_TARGET rm $TMP_TARGET.1 $TMP_TARGET.2 $TMP_TARGET.3 echo "Done." echo "Archiving." gzip $TMP_TARGET # Finish. echo "Backup completed."