LINUX.ORG.RU

Как быстро скопировать 400 Гб мелких файлов в куче каталогов или смонтировать два одинаковых LVM


0

1

Сейчас запустил rsync --progress -av /input/folder /outputfolder Только что добавил ещё --exclude-from 'файл со списков *директорый*' Скорость копирвоания мелких файлов 10-200 кб/с, Что очень мало.

Думал скопировать побайтово командой dd, но не уверен что получится, так как: df -h /dev/mapper/group-data 660G 347G 280G 56% /home (откуда) /dev/vdb5 379G 131G 230G 37% /mnt (куда) Смущает факт, что при побайтовом, файлы могут быть разбросаны по всей длине /dev/mapper/group-data 660G, и в итоге не поместятся на /dev/vdb5 379G.

Подскажите как максимально быстро их скопировать?

Итоговая цель задачи: После обновления Zentyal, перестала нормально работать самба, невозможность записи(недостаточно места), открытия(недостаточно прав), и невозможность настроить(вылетает). Восстановил из бэкапа машину, но нужно скопировать свежеизмененные файлы.

Разделы на машине в LVM. И подключив к одной машине оба диска, второй выдает ошибку, уже не помню какую. Поэтому решил копировать рсинком.

Если кто то подскажет как мне смонтировать в востановленной машине /dev/mapper/group-data со старой машины, вместо восстановленного, буду благодарен. Итак имеем, vda (new), vdb (old). Старый диск просто скопирован и подключен к виртуалке. Метки и идентификаторы, значит диски имеют одинаковые.. Ибо это один и тот же диск. Как мне примонтировать диск со старой машины в востановленную?


из этого сумбура я ничего не понял, но даже дети знают, что при больших объёмах мелких файлов самый быстрый способ - это скопировать блочное устройство целиком.

zolden ★★★★★
()

Если кто то подскажет как мне смонтировать в востановленной машине /dev/mapper/group-data со старой машины, вместо восстановленного, буду благодарен.

После обновления Zentyal, перестала нормально работать самба

самба

ССЗБ

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

ну копируй от рута cp -avp, и больше не юзай всякие самбы и lvm.

drBatty ★★
()

Много, очень много слов. Если я правильно понял, то может помочь загнать все в один tar-файл. С передающей стороны пайпом запаковываешь в тар, на принимающей таким же пайпом распаковываешь.

staseg ★★★★★
()

Как вариант - использовать tar На машине, куда нужно копировать: ssh user@host 'tar cf - /path/to/folder' | tar xvf -

Предварительно переходи в ту папку, куда будешь извлекать, извлечет с абсолютным путем, например туда: /var/folder/var/www/site/httpdocs

Но тут такой момент, ресурсов использоваться будет больше, чем при стандартном копировании, но дает выигрыш при куче мелких файлов, в отличие от scp

Как ещё вариант - по nfs

leader32
()

большие россыпи мелких файлов лучше упаковать в tar

anonymous
()
Ответ на: комментарий от zolden

Да. Но места недостаточно :)

Вообщем. Имею два жестких диска (виртуальных). Содержат LVM с одинаковыми метками (/dev/mapper/group/{root,data,boot}), и второй это слепок первого неделю назад. Задача следующая: Запустить систему со второго виртуального жесткого диска, который восстановлен(vda)., примонтировать каталог «хом»(/dev/mapper/group-data) из первого диска(vdb)/

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

Возможно. Но все происходит на одной машине.

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

В архив без зжатия, перекинуть, распоковать?

Deneb
()
Ответ на: комментарий от blqs

Да. Но места недостаточно

тебе советуют налету тарить, для этого места не нужно.

вот тебе пример из документации, которую ты осилить не в состоянии:

   For example, here is how you might copy a directory's contents from
one disk to another, while preserving the dates, modes, owners and
link-structure of all the files therein.  In this case, the transfer
medium is a "pipe":

     $ (cd sourcedir; tar -cf - .) | (cd targetdir; tar -xf -)

You can avoid subshells by using `-C' option:

     $ tar -C sourcedir -cf - . | tar -C targetdir -xf -

The command also works using long option forms:

     $ (cd sourcedir; tar --create --file=- . ) \
            | (cd targetdir; tar --extract --file=-)

or

     $ tar --directory sourcedir --create --file=- . \
            | tar --directory targetdir --extract --file=-

This is one of the easiest methods to transfer a `tar' archive.

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

Да, я это понял. К сожалению по какой-то причине, простое копирование по Ф5 в МС, происходит быстрее в разы, чем любой из описанных способов.

Одно странно. Система построена на РАИД10 массиве из 4хСАСх1Тб. Поверх накатана Проксмокс, на которой крутятся виртуалки. На тестовой винде на серваке изначально скорость копирования была огромной. В любом случае, этот вопрос уже для отдельной темы.

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

К сожалению по какой-то причине, простое копирование по Ф5 в МС, происходит быстрее в разы, чем любой из описанных способов.

даже чем cp -avp? Не верю. Не то и/или не туда копируете очевидно.

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

Попробуй копировать в muCommander (нужна JRE).

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