LINUX.ORG.RU
решено ФорумAdmin

медленная работа rsync.


0

0

Доброе время суток, коллеги. Есть небольшая непонятка. Почему-то очень медленно рботает rsync ( запускается он командой вида: /usr/local/bin/rsync -Aztcrv --stats $DIRTOCOPY $RUSER@$RHOST:$DDIR > $LOGFILE 2>&1. Запускается все через крон скриптом, который по очреди запускает синхронизацию списка каталогов. в том смысле что есть структура: root/folder1 root/folder2 root/folder3 etc... И для каждой папки запускаются команды по очереди (это сделано по рекомендациям из ман, т.к. рсинк иногда валиться, если файлов очень много. Но и плюс для того, чтобы можно было отключать какие-нидь папки, в случае необходимости). Общий размер информации примерно 1 тер. И работает все это от 7 до почти 24 часов (один раз было даже больше 24-х), в среднем часов 18. При этом тар, с командой вида: tar -cvpf - $DIRTOCOPY 2>$LOGFILE | ssh $RUSER@$RHOST «cd $DDIR; tar -xpf - » справляется с этой же задачей примерно за 7-8 часов.

Машинки соеденены по сети... но ширина канала, примерно 4 гигабита. Вроде бы этого должно быть достаточно, не? Не подскажете, что я делаю не так? Или такая ситуация нормальна?



Последнее исправление: lutrin (всего исправлений: 1)
Ответ на: комментарий от true_admin

Ну почему же ) Из мана брал! Пробовал убирать этот параметр, но особого ускорения это не вызвало, к сожалению (

Ну и плюс к этому... файлы формируются некой внешней утилиткой, котрая (теоретически) может поменять содержимое файла, но при этом время создания и размер файла может не поменяться. Поэтому добавил проверку контрольных сумм.

Или именно в этом параметре и кроется заковыка?

lutrin
() автор топика
Ответ на: комментарий от lutrin

ctime это не время создания а время изменения, как и mtime. Как твоя утилита умудряется это делать? Это только от рута можно сделать и надо извратиться ещё.

Или именно в этом параметре и кроется заковыка?

Конечно в этом, а ещё в компрессии.

true_admin ★★★★★
()
Ответ на: комментарий от true_admin

Ну я тут имел в виду время изменения ) Просто были прецеденты (правда, честно скажу, на Винде. На юниксе в таких фокусах она пока замечена не была). А вот как она это делает - я хз. Она вообще чУдная )

Насчет компрессии. я наоборот считал, что она должна ускорить процесс. Поробую отключить оба (если честно отключать и чексумм и компрессию, вроде бы не пробовал). Насколько я понял, вы предлагаете юзать команду следующего вида:

# /usr/local/bin/rsync -Atrv --stats $DIRTOCOPY $RUSER@$RHOST:$DDIR > $LOGFILE 2>&1

сегодня ночью попробую ее. Надеюсь поможет )

lutrin
() автор топика
Ответ на: комментарий от true_admin

Solaris 10. ) Он, конечно, не Linux, но весьма близок к нему )

lutrin
() автор топика
Ответ на: комментарий от true_admin

Я в курсе. ) Но он не включает в себя -A (а просто -p у меня почему-то некорректно отработал), а так же включает -l, который мне не нужен. Поэтому я решил разделить.

Или это тоже влияет на скорость работы? :-)

lutrin
() автор топика

>Но и плюс для того, чтобы можно было отключать какие-нидь папки, в случае необходимости
--exclude

А вот чего говорят на буржуйских мейл-листах:

rsync is meant to safe bandwidth, that's the main use of the tool. If you have enough bandwidth, rsync without options might not be how you want to use it.

Their is -W for whole files.

Nao ★★★★★
()
Ответ на: комментарий от Nao

[quote]>rsync is meant to safe bandwidth, that's the main use of the tool. If you have enough bandwidth, rsync without options might not be how you want to use it.

Their is -W for whole files.[/quote]

Ну он тогда ничем от tar отличаться не будет, наверное )) Хотя попробовать можно. Спасибо за подсказку.

А насчет --exclude. Тут главным было опасение, что рсинк обвалиться из-за большого кол-ва файлов. Их там действительно очень много. А отключение - это как приятное дополнение используется )))

lutrin
() автор топика
Ответ на: комментарий от true_admin

Вроде бы, стандартная, с сайта rsync брали:

rsync version

rsync --version rsync version 3.0.6 protocol version 30 Copyright (C) 1996-2009 by Andrew Tridgell, Wayne Davison, and others. Web site: http://rsync.samba.org/ Capabilities: 64-bit files, 64-bit inums, 32-bit timestamps, 64-bit long ints, socketpairs, hardlinks, symlinks, no IPv6, batchfiles, inplace, append, ACLs, no xattrs, iconv, no symtimes

rsync comes with ABSOLUTELY NO WARRANTY. This is free software, and you are welcome to redistribute it under certain conditions. See the GNU General Public Licence for details.

Вряд ли бы мои админы его где-нидь на стороне искали )

lutrin
() автор топика
Ответ на: комментарий от lutrin

>Ну он тогда ничем от tar отличаться не будет
Будет. Будет копировать только изменённые файлы.

Nao ★★★★★
()

Или такая ситуация нормальна?

Да, если очень много файлов — расходуется много памяти на списки
Да, если много файлов изменилось — надо считать с диска файлы, найти измененные фрагменты (блоки) и передать их по сети.
Да, если ты не знаешь что такое rsync и как он работает.

sdio ★★★★★
()
Ответ на: комментарий от lutrin

Да... действительно. Либо что-то я не так протестил, либо одно из двух...

В общем с отключением проверки по котрольным суммам скорость возросла в разы. За что всем большое спасибо ) Сдается мне, проверку на контрольные суммы я вставил, т.к. мне показалось, что без него проверки на измененность файла не происходит. Но... в то время я не юзал параметр -t и соотв. файлы у меня кажждый раз были «измененные» ))) И он лил папку целиком ) Вот такая вот заковыка )

lutrin
() автор топика
Ответ на: комментарий от sdio

Эм... )) Вам, отдельное спасибо :-)

Во-первых, за исчерпывающие комментарии )

Во-вторых, за уточнение причины, по которой я обратился за помощью ;-) Логично же, если бы я знал, как все работает, или почему оно не работает, я вряд ли бы обратился ;-) не? )))

lutrin
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.