![将 sshfs 替换为 ssh](https://linux22.com/image/21674/%E5%B0%86%20sshfs%20%E6%9B%BF%E6%8D%A2%E4%B8%BA%20ssh.png)
我喜欢这样做:
$ sshfs mountPoint myServer
$ cp thisFile mountPoint
我现在使用 LiveCD,但没有可用的 sshfs 实用程序,我需要 run $ sudo dd /dev/sdb2 > mountPoint
,如何像使用 sshfs 一样简单地做到这一点?
或许相关
对普苏西的评论
$ 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