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 [2018/08/29 10:27]
val [FreeBSD/Ubuntu/MacOSX]
пакет_rsync [2024/04/30 16:17] (current)
val [Инкрементное копирование (Incremental Backup)]
Line 4: Line 4:
  
 ===== Установка ===== ===== Установка =====
 +
 +==== Debian/​Ubuntu ====
 +
 +<​code>​
 +root@nodeN:​~#​ apt install rsync
 +</​code>​
  
 ==== FreeBSD ==== ==== FreeBSD ====
Line 10: Line 16:
 </​code>​ </​code>​
  
-==== Ubuntu/​Debian ​====+===== Использование rsync клиента =====
  
-Уже установлен+==== Debian/​Ubuntu/​FreeBSD/​MacOSX ==== 
 +<​code>​ 
 +server# mkdir /​disk2/​var/​ 
 + 
 +server# time cp -rvp /var/log/ /​disk2/​var/​log/​ 
 +  или 
 +server# time rsync -av --del /var/log/ /​disk2/​var/​log/​ 
 + 
 +node1# rsync -avz --del /home/ node2:/​home/​ 
 + 
 +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>​ 
 + 
 +  * [[Команда dd#​Клонирование диска по сети]]
  
 <​code>​ <​code>​
-root@nodeN:​~apt install ​rsync+clone# mount /dev/sda1 /mnt 
 +source# rsync -avzR --sparse --del /opt/ /var/ /srv/ 192.168.13.229:/​mnt/​
 </​code>​ </​code>​
  
-===== Использование ​rsync клиента ===== +==== Инкрементное копирование ​(Incremental Backup) ​==== 
-==== FreeBSD/Ubuntu/MacOSX ====+ 
 +  * [[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>​ <​code>​
-server# cp -rp /var/ /​disk2/​var/​ +Делаем первый бекап (например,​ на внешний диск или раздел, смонтированный по NFS)
-  ​или +
-server# rsync -av --delete /var/ /disk2/var/+
  
-node1rsync -avz --delete ​/homenode2:/home/+BACKUP_PATH=/​mnt/​Backups/​www/​rootfs/​$(date "+%Y-%m-%d_%H-%M")/ 
 +# BACKUP_PATH=/mnt/​Backups/​client1/home/$(date "​+%Y-%m-%d_%H-%M"​)/
  
-val/​usr/​bin/​rsync -av --delete -e "​ssh ​-p XXX" /​var/​www/​html/​dokuwiki/​ val@radio.specialist.ru:​dokuwiki.mastercopy/​ +mkdir -p $BACKUP_PATH
-</​code>​+
  
 +# 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.1535527678.txt.gz · Last modified: 2018/08/29 10:27 by val