У меня есть одна папка на моем внутреннем жестком диске. Мне нужно скопировать папку на несколько внешних жестких дисков. Если копия может произойти одновременно, это поможет мне выиграть время.

Папка называется "AllFiles". Папка находится в корне внутреннего жесткого диска. /Все файлы

Нет, чтобы скопировать его в /dev /sdb, /dev /sdc и /dev /sdd

Я видел некоторые командные строки, используя cat и tee. Не удалось проверить это, потому что это было для определенного, и местом назначения была сетевая папка.

Кто-нибудь может помочь?

Заранее спасибо,

Arnaud

2 ответа2

0

Способ решения этой проблемы зависит от вашей конкретной цели.

Использование TEE здесь не сильно поможет - tee позволяет вам взять стандартный вывод и разделить его на два, хотя его можно заставить выполнять ваши ставки, перебирая каждый файл через тройник.

Самый простой способ сделать это - просто смонтировать каждый диск и запустить 3 копии (вы можете сделать это в 3 терминалах или вы можете выполнить одну и ту же команду 3 раза с каждым после символа &, чтобы поместить его в фоновом режиме). Это прибьет IO к стене.

Если диски не нужно удалять и им нужна идентичная информация, я бы взял 3 диска и создал массив RAID1 (т.е. 3 копии одних и тех же данных) с использованием mdadm. Затем я бы создал файловую систему на RAID, смонтировал массив и сделал копию. Это будет означать меньшее количество операций чтения (возможно) и наименьшие накладные расходы при записи на диск, но довольно много настроек. (ДА, вы можете взять отдельный диск и смонтировать его, не будучи частью массива)

0

Да, вы можете скопировать файл в несколько мест назначения, используя cat и tee:

cat source.dat | tee copy1.dat | tee copy2.dat >copy3.dat 

Или быть более симметричным:

cat source.dat | tee copy1.dat | tee copy2.dat | tee copy3.dat >/dev/null

На практике вы должны поместить строку выше в короткий скрипт, который принимает исходный файл в качестве параметра, и вызвать этот скрипт в команде find:

find $directory_to_be_copied -type f -exec copy_multiple {} \;

Но если вы сэкономите на чтениях с диска, вы, скорее всего, столкнетесь с проблемами пропускной способности ввода-вывода.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .