User Tools

Site Tools


пакет_rsync

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
пакет_rsync [2019/03/22 14:48]
val
пакет_rsync [2024/04/30 16:17] (current)
val [Инкрементное копирование (Incremental Backup)]
Line 20: Line 20:
 ==== Debian/​Ubuntu/​FreeBSD/​MacOSX ==== ==== Debian/​Ubuntu/​FreeBSD/​MacOSX ====
 <​code>​ <​code>​
-server# time cp -rvp /var/ /disk2/var/+server# mkdir /​disk2/​var/​ 
 + 
 +server# time cp -rvp /var/log/ /disk2/var/log/
   или   или
-server# time rsync -av --delete ​/var/ /disk2/var/+server# time rsync -av --del /var/log/ /disk2/var/log/
  
-node1# rsync -avz --delete ​/home/ node2:/​home/​+node1# rsync -avz --del /home/ node2:/​home/​
  
-val# /​usr/​bin/​rsync -av --delete ​-e "ssh -p XXX" /​var/​www/​html/​dokuwiki/​ val@radio.specialist.ru:​dokuwiki.mastercopy/​+node1# rsync -avz --del --rsync-path="​sudo rsync" /home/ student@node2:/​home/​ 
 + 
 +val# /​usr/​bin/​rsync -av --del -e "ssh -p XXX" /​var/​www/​html/​dokuwiki/​ val@radio.specialist.ru:​dokuwiki.mastercopy/​
 </​code>​ </​code>​
  
 +  * [[Команда dd#​Клонирование диска по сети]]
 +
 +<​code>​
 +clone# mount /dev/sda1 /mnt
 +source# rsync -avzR --sparse --del /opt/ /var/ /srv/ 192.168.13.229:/​mnt/​
 +</​code>​
 +
 +==== Инкрементное копирование (Incremental Backup) ====
 +
 +  * [[https://​linuxconfig.org/​how-to-create-incremental-backups-using-rsync-on-linux|How to create incremental backups using rsync on Linux]]
 +  * [[https://​habr.com/​ru/​post/​149059/​|Делаем свою Time Machine для Линукса]]
 +
 +<​code>​
 +Делаем первый бекап (например,​ на внешний диск или раздел,​ смонтированный по NFS)
 +
 +# BACKUP_PATH=/​mnt/​Backups/​www/​rootfs/​$(date "​+%Y-%m-%d_%H-%M"​)/​
 +# BACKUP_PATH=/​mnt/​Backups/​client1/​home/​$(date "​+%Y-%m-%d_%H-%M"​)/​
 +
 +# mkdir -p $BACKUP_PATH
 +
 +# rsync -av --del /​var/​lib/​lxc/​www/​rootfs/​ $BACKUP_PATH
 +# rsync -av --del /home/ $BACKUP_PATH
 +
 +Сохраняем линк на него
 +
 +# LATEST_LINK=/​mnt/​Backups/​www/​rootfs/​latest
 +# LATEST_LINK=/​mnt/​Backups/​client1/​home/​latest
 +
 +# ln -s $BACKUP_PATH $LATEST_LINK
 +
 +Через некоторое время, после ​ изменений,​ делаем следующий бекап с использованием линка на предыдущий
 +
 +# BACKUP_PATH=/​mnt/​Backups/​www/​rootfs/​$(date "​+%Y-%m-%d_%H-%M"​)/​
 +# BACKUP_PATH=/​mnt/​Backups/​client1/​home/​$(date "​+%Y-%m-%d_%H-%M"​)/​
 +
 +# mkdir $BACKUP_PATH
 +
 +# rsync -av --del /​var/​lib/​lxc/​www/​rootfs/​ --link-dest $LATEST_LINK $BACKUP_PATH
 +# rsync -av --del /home/ --link-dest $LATEST_LINK $BACKUP_PATH
 +
 +Направляем линк на последний бекап ​
 +
 +# rm $LATEST_LINK && ln -s $BACKUP_PATH $LATEST_LINK
 +
 +Смотрим количество hardlink на файлы, которые не менялись
 +
 +# find $LATEST_LINK/​ -type f -links +1 -ls | less
 +
 +Восстановление из бекапа
 +
 +# BACKUP_PATH=/​mnt/​Backups/​www/​rootfs/<​TAB>​
 +
 +# systemctl stop lxc@www
 +
 +# rsync -av --del $BACKUP_PATH /​var/​lib/​lxc/​www/​rootfs/​
 +</​code>​
 ===== Использование rsync сервера ===== ===== Использование rsync сервера =====
  
пакет_rsync.1553255297.txt.gz · Last modified: 2019/03/22 14:48 by val