У меня есть 2 абсолютно одинаковые отформатированные, одинакового размера и SD-карты той же марки. Я хотел бы, чтобы dd
изображение /dev/disk2
и /dev/disk3
одновременно.
ПСЕВДОКОД
sudo dd bs=1m if=/Users/masi/2016-05-10-raspbian-jessie.img of={/dev/disk2,/dev/disk3}
Как вы можете dd
с одного входа на много выходных SD?
... of=one of=two
не дал двух выходных данных. Может понадобиться двеdd
команды. Я не вижу формулировки в posix для dd, чтобы учесть несколькоof
.Ответы:
Заимствование из ответа don_crissti с использованием
tee
, но безdd
или bash isms:Использование
pee
из пакета moreutils Debian :С
bash
,ksh
илиzsh
, что может быть сокращено до:Или даже (если нет необходимости в
dd
полезных функциях):pee
является полезным; если требуется, один может включать (в пределах каждого аргумента в кавычках) дополнительные отличныеdd
опции и даже другие каналы и фильтры, индивидуально настроенные для каждого устройства вывода.В любом случае количество выходных дисков может быть увеличено до бесконечности.
источник
cp
. Попробуйте много форматов и разных размеров размещения. Я не нашел достаточно стабильнойcp
для работы. Пожалуйста, поправьте меня как ответ здесь, если вы можете аргументировать, насколькоcp
достаточно стабильно.cp
90-х?dd
на 20 лет старше этого. Основная причина использования вdd
том , что многие устройства, особенно ленточные накопители, необходимые для чтения / записи в фиксированных размеров блоков, поэтомуdd
имеетbs
,ibs
иobs
параметры, и это была единственная программа , которая могла бы обеспечить правильные размеры блоков.Вы можете попробовать Это расширенная версия и может одновременно выводить на несколько файлов или дисков:
dcfldd
gnu dd
источник
dd
? Как меняется расположение трубы с четырьмяdd
?dcfldd
это самый быстрый, может быть, это должно быть первым выбором.Также это возможно с
tee
иprocess substitution
:dd if=/dev/sda | tee >(dd of=/dev/sdb) >(dd of=/dev/sdc) | dd of=/dev/sdd
источник
process substitution
используется, когда вам нужно передать стандартный вывод одной команды нескольким командам. Использование простого канала позволит вам передать только одну команду. Мой ответ заключается в достижении того же результата, что и у agc, но по-другому :) Также я никогда не использовалpee
раньше, так как у меня естьtee
команда в моей системе.