Если вы можете scp, вы, вероятно, можете бежать catза вами ssh.
sudo dd if=/dev/sda bs=4M | ssh -p 12344 potato@10.10.45.44 'cat > /volume2/share02/01.dd'
Это может быть проблематично, если sudoи то, и sshдругое запрашивает ваши пароли. В этом случае сделайте этот sudoвызов запущенным без пароля ( sudo trueможет быть достаточно только до этого); или sudo su -заранее, так что вы root и не нужны sudoраньше dd; или сделать так, sshчтобы пароль не требовался (используйте аутентификацию на основе ключей).
ddзаписывает на свой стандартный вывод, sshпринимает его и передает на удаленный cat, его вывод перенаправляется на /volume2/share02/01.dd.
Заметки:
- При чтении
/dev/sdaс ddним лучше использовать bs=больше, чем по умолчанию, например bs=4M.
- Я бы использовал
dd status=progress …или pvвместо dd(или, по крайней мере, между ddи ssh:), dd … | pv | ssh …чтобы увидеть прогресс.
- Помните, что
sdaнельзя писать в то время как ddработает. Например, смонтированный sda1(если только для чтения) может сделать изображение несовместимым.
Вы можете уменьшить размер изображения. Прочтите этот мой ответ . В вашем случае, после того как вы подготовите целое sda, команда может быть
pv /dev/sda | gzip -c -9 | ssh -p 12344 potato@10.10.45.44 'cat > /volume2/share02/01.dd.gz'
ddна самом деле это не поможет вам и представляет проблему размера файла, которую вы сейчас рассматриваете.