rsync-zaloh
no way to compare when less than two revisions
Rozdíly
Zde můžete vidět rozdíly mezi vybranou verzí a aktuální verzí dané stránky.
Poslední revize | |||
— | rsync-zaloh [2019/10/15 09:57] – vytvořeno blazek | ||
---|---|---|---|
Řádek 1: | Řádek 1: | ||
+ | ====== Rsync záloh ====== | ||
+ | Spouští rsync na připojený vzdálený adresář přes SSHFS. Dále vyhodnotí úspěšnost a pošle report. | ||
+ | |||
+ | <file bash rsync-backup.sh> | ||
+ | #!/bin/bash | ||
+ | # | ||
+ | # Author: Jiri Blazek (blazek@isn.cz) | ||
+ | # App: RSYNC backup from VPS | ||
+ | # | ||
+ | |||
+ | # absolute path home | ||
+ | APH=$(dirname $(readlink -f $0)) | ||
+ | |||
+ | # sshfs settings | ||
+ | SSHFS_PORT=2244 | ||
+ | SSHFS_FROM=" | ||
+ | SSHFS_TO="/ | ||
+ | |||
+ | # rsync settings | ||
+ | RSYNC_FROM="/ | ||
+ | RSYNC_TO="/ | ||
+ | |||
+ | # email report content | ||
+ | REPORT_RECIPIENT=" | ||
+ | REPORT_SUBJECT=" | ||
+ | REPORT_CONTENT_FILE=" | ||
+ | |||
+ | # report file | ||
+ | echo "RSYNC BACKUP (VPS)" > $REPORT_CONTENT_FILE | ||
+ | echo "" | ||
+ | |||
+ | # check process | ||
+ | IS_ERROR=" | ||
+ | |||
+ | function log() { | ||
+ | echo $(/bin/date +" | ||
+ | } | ||
+ | |||
+ | is_not_mounted() | ||
+ | { | ||
+ | RETVAL=" | ||
+ | /bin/mount | /bin/grep $1 1>/ | ||
+ | if [ $? -eq 0 ]; then | ||
+ | RETVAL=" | ||
+ | fi | ||
+ | return $RETVAL | ||
+ | } | ||
+ | |||
+ | mount_sshfs() | ||
+ | { | ||
+ | is_not_mounted $SSHFS_TO | ||
+ | if [ $? -eq 0 ]; then | ||
+ | / | ||
+ | if [ $? -eq 0 ]; then | ||
+ | log " | ||
+ | else | ||
+ | log " | ||
+ | IS_ERROR=" | ||
+ | fi | ||
+ | else | ||
+ | log " | ||
+ | fi | ||
+ | } | ||
+ | |||
+ | umount_sshfs() | ||
+ | { | ||
+ | is_not_mounted $SSHFS_TO | ||
+ | if [ $? -eq 1 ]; then | ||
+ | /bin/umount $SSHFS_TO | ||
+ | if [ $? -eq 0 ]; then | ||
+ | log " | ||
+ | else | ||
+ | log " | ||
+ | IS_ERROR=" | ||
+ | fi | ||
+ | else | ||
+ | log " | ||
+ | fi | ||
+ | } | ||
+ | |||
+ | rsync_backup() | ||
+ | { | ||
+ | #/ | ||
+ | / | ||
+ | if [ $? -eq 0 ]; then | ||
+ | log " | ||
+ | else | ||
+ | log " | ||
+ | IS_ERROR=" | ||
+ | fi | ||
+ | } | ||
+ | |||
+ | # mount sshfs, rsync, umount sshfs | ||
+ | mount_sshfs | ||
+ | if [ $IS_ERROR -eq 0 ]; then | ||
+ | rsync_backup | ||
+ | fi | ||
+ | umount_sshfs | ||
+ | |||
+ | # report | ||
+ | echo "" | ||
+ | if [ $IS_ERROR -eq 0 ]; then | ||
+ | echo "RSYNC BACKUP (VPS) = success" | ||
+ | else | ||
+ | echo "RSYNC BACKUP (VPS) = failed" | ||
+ | REPORT_SUBJECT=" | ||
+ | fi | ||
+ | |||
+ | # send report by e-mail | ||
+ | /bin/mail -s " | ||
+ | </ |
rsync-zaloh.txt · Poslední úprava: 2023/12/26 19:13 autor: 127.0.0.1