Rsync


rsync (англ. Remote Synchronization) — программа для UNIX-подобных систем, которая выполняет синхронизацию файлов и каталогов в двух местах с минимизированием трафика, используя кодировку данных при необходимости.
Общий вид команды
rsync <опции> <что копировать> <куда копировать>

Копирование файлов
rsync [--progress] -av <что копировать> <куда копировать>

При копировании каталогов (а не файлов) в последнем случае следует обратить внимание на знак "/" замыкающий имя каталога-источника.
Примеры:
· копирование файла “a”
rsync -av ~/dir1/a ~/dir2/
· копирование файлов из каталога “dir1”
rsync -av ~/dir1/ ~/dir2/
· копирование самой директории “dir1” (со всем содержимым)
rsync -av ~/dir1 ~/dir2/


Синхронизация каталогов
Точная копия каталогов (с удаление всех файлов из “dir2”, которых нет в “dir1”)
rsync --delete -av ~/dir1/ ~/dir2/

Копирование файлов на удалённый сервер
rsync -rvz /home/data1/ user@server.com:/home/data1/
То же с использованием “ssh”
rsync -rvz -e ssh /home/data1/ user@server.com:/home/data1/