Есть centos7, на нем два диска sda и sdb. sda1 это всё кроме /home. sdb1 это /home. sdb2 это /backup. Хочу выполнять резервное копирование образа системы с исключением каталога /var/lib/pgsql/10/data/base и возможно инкрементальное копирование если есть инструменты под это. Хочу пихнуть это всё в расписание с дальнейшей отправкой на почту и удалением старых архивов. На просторах находил инструменты tar, dd, rsync, cp. Не понятно какой из низ нужно применять и как комбинировать.
К примеру на этом же сервере я делаю pg_dump для баз postgresql, но делаю коряво, поскольку не понятно как именно передать результат pg_dump на почту, поэтому просто отправляется сообщение без результата самого pg_dump,делаю это через cron:
# get date
DATA=`date +"%Y-%m-%d_%H-%M"`
# loging
echo "`date +"%Y-%m-%d_%H-%M-%S"` Start backup base1c" >> /var/log/postgresql/myservice.log
# backup
/usr/bin/pg_dump -U postgres mybase | pigz > /backup/$DATA-mybase.gz
# loging end
echo "`date +"%Y-%m-%d_%H-%M-%S"` End backup base1c" >> /var/log/postgresql/myservice.log
# delete old backups older 30 days
/usr/bin/find /backup -type f -mtime +30 -exec rm -rf {} \;
# send mail notification
echo "$DATA"| mail -v -s "subject" -S smtp="smtp.mail.ru:587" -S smtp-use-starttls -S smtp-auth=login -S smtp-auth-user="mymail@mail.ru" -S smtp-auth-password="mypassword" -S ssl-verify=ignore -S nss-config-dir=/etc/pki/nssdb -S from=mymail@mail.ru mymail@mail.ru
Текущий мой /etc/fstab:
UUID=9321ed79-2d9b-4476-a196-5e5bad49776c / ext4 defaults 1 1
UUID=6ec4eac4-2de3-4436-9d44-8993e61ba957 /home ext4 defaults 1 2
UUID=28f8de93-2206-43db-99c6-b49d3fe6b34a /backup ext4 defaults 1 2
Текущий мой fdisk -l:
Disk /dev/sda: 499.0 GB, 498999492608 bytes, 974608384 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk label type: dos
Disk identifier: 0x000d5d24
Устр-во Загр Начало Конец Блоки Id Система
/dev/sda1 * 2048 974608383 487303168 83 Linux
Disk /dev/sdb: 999.0 GB, 998999326720 bytes, 1951170560 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk label type: dos
Disk identifier: 0x0004bb5c
Устр-во Загр Начало Конец Блоки Id Система
/dev/sdb1 2048 419432447 209715200 83 Linux
/dev/sdb2 419432448 1951170559 765869056 83 Linux
blkid:
/dev/sda1: UUID="9321ed79-2d9b-4476-a196-5e5bad49776c" TYPE="ext4"
/dev/sdb1: UUID="6ec4eac4-2de3-4436-9d44-8993e61ba957" TYPE="ext4"
/dev/sdb2: UUID="28f8de93-2206-43db-99c6-b49d3fe6b34a" TYPE="ext4"