
Я люблю делать именно это:
$ sshfs mountPoint myServer
$ cp thisFile mountPoint
Сейчас я использую LiveCD и у меня нет утилиты sshfs, а мне нужно ее запустить $ sudo dd /dev/sdb2 > mountPoint
. Как это сделать так же просто, как с помощью sshfs?
Возможно, связано
Комментарий к Psusi
$ sudo fdisk -l|tail
255 heads, 63 sectors/track, 4864 cylinders, total 78142806 sectors
Units = sectors of 1 * 4096 = 4096 bytes
Sector size (logical/physical): 4096 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk identifier: 0x181d6d22
Device Boot Start End Blocks Id System
/dev/sdb1 * 2048 3074047 12288000 7 HPFS/NTFS/exFAT
/dev/sdb2 3074048 600563711 2389958656 7 HPFS/NTFS/exFAT
/dev/sdb3 600563712 625139711 98304000 7 HPFS/NTFS/exFAT
$ sudo file -s /dev/sdb
/dev/sdb: x86 boot sector; partition 1: ID=0x7, active, starthead 32, startsector 2048, 3072000 sectors; partition 2: ID=0x7, starthead 89, startsector 3074048, 597489664 sectors; partition 3: ID=0x7, starthead 254, startsector 600563712, 24576000 sectors, code offset 0xe
$ sudo ntfsclone --save-image --output - /dev/sdb2
ntfsclone v2011.4.12AR.4 (libntfs-3g)
ERROR(22): Opening '/dev/sdb2' as NTFS failed: Invalid argument
Apparently device '/dev/sdb2' doesn't have a valid NTFS. Maybe you selected
the whole disk instead of a partition (e.g. /dev/hda, not /dev/hda1)?
решение1
Чтобы ответить на ваш вопрос напрямую
dd if=/dev/sdb2 ibs=1M | ssh -C myServer 'dd of=/path/to/destination obs=1M'
В качестве бонуса вы можете сделать следующее, чтобы увидеть прогресс (при условии, что у вас есть утилита pv
):
pv /dev/sdb2 | ssh -C myServer 'dd of=/path/to/destination obs=1M'
решение2
Вы можете использовать туннелированный канал SSH:
dd if=/dev/sdb2 ibs=1M obs=64k | ssh -C user@remotehost "cat > /path/to/destination"
Опция -C
включает сжатие в протоколе ssh, что обычно повышает производительность в подобных случаях.
Если вы pv
установили его, вы можете включить его в конвейер, чтобы получить больше информации о том, какой объем уже передан.
dd if=/dev/sdb2 ibs=1M obs=64k | pv | ssh -C user@remotehost "cat > /path/to/destination"
решение3
Я бы посоветовал вам использовать scp
то, что идет в комплекте с каждым дистрибутивом Linux. Это называется защищенная копия.
$ scp -r folder-to-copy location-of-copy