Бодрый день!
Вчера на вечер запланировал перенос данных (винт освободить), но почему-то с этой процедурой случился облом.
Задача стояла такая: на большом томе (~3ТБ, LVM, ext3) записано около 200ГБ данных. Требуется слить всё 1:1 в другое место. Для этого был создан target раздел размером 400ГБ (если важно, то даже не раздел, а файл на другом сервере, отформатированный в ext3 и примонтированный через loop). Никаких виртуальных файлов (типа procfs) в исходном разделе нет, есть только файлы, hard- и sym-линки.
Первое что попробовал - «rsync -aH». Он запустил зачем-то два процесса rsync, и в течение минут 15-20 каждый из них съел по 3ГБ оперативки, после чего память кончилась, и начался пилёж свапа. Рассудив, что такими темпами мы, если и уедем куда-нибудь, то очень нескоро, обломал это дело и попробовал «dump | restore». Первые пол-часа елозил по диску dump, читая по 40 мегабайт в секунду. Куда он девал прочитанное - непонятно, ибо в оперативку бы явно не влезло, ну да ладно. Потом за работу принялся restore. Этот сожрал одно из четырёх процессорных ядер целиком, и за полтора часа интенсивной «работы» создал в target пару десятков каталогов и ни одного файла. Я понял, что в обозримом будущем результата тоже не будет, и вернул всё назал.
Вопрос: чем можно выполнить такое копирование, затратив на всю операцию не более 6-8 часов? Сеть гигабитная, на требуемый объем хватит с большим запасом, но только если копирующий софт будет не тупить, а хотя-бы худо-бедно переписывать данные.