如何使用 SSHFS 在 /dev/ 中的驱动器上工作

如何使用 SSHFS 在 /dev/ 中的驱动器上工作

由于某种原因,我的笔记本电脑无法为外部 2.5 英寸 HDD 供电,因此我使用 Raspberry PI 连接到驱动器。

问题是,我正在努力执行格式化磁盘和备份/恢复分区等任务。例如:

$ sshfs [email protected]:/dev/ /media/pi-dev
# ntfsclone -r -O /media/pi-dev/sda1 backup.iso
[sudo] password for zaz:         
ntfsclone v2016.2.22AR.2 (libntfs-3g)
ERROR(13): Couldn't access 'dev/sda1': Permission denied

如何使用sshfs挂载设备文件以便可以使用分区?

答案1

SSHFS 无法做到这一点。它无法访问块设备。 (来源。

您有四个选择:

  • 通过 SSH 连接到 Pi,然后安装驱动器。例如:

    root@pi# mount /dev/sda1 /mnt/disk
    

    然后使用 SSHFS 将其安装到您的笔记本电脑上。例如:

    user@laptop$ sshfs [email protected]:/mnt/disk/ /media/pi-disk
    

    现在您可以修改硬盘上的文件。但是,我认为这并不能解决您的问题 - 听起来您正在尝试重新格式化或恢复出现故障的磁盘。

  • 通过 SSH 连接到 Pi,并在那里运行磁盘恢复命令。如果您的 Pi 上没有足够的空间来进行磁盘克隆,请考虑尝试以下操作:

    ntfsclone --save-image --output - /dev/hda1 | \
       gzip -c | ssh host 'cat > backup.img.gz'
    

    (来源:ntfsclone(8) 手册。)

    此命令克隆本地分区,并将其保存到远程系统。

  • 购买一个有源 USB 集线器。 (带有壁疣的那种。)它们相当便宜,您可以将硬盘驱动器连接到笔记本电脑,而不会出现任何电源问题。

  • 使用网络块设备 (NBD) 通过网络共享块设备。例子。我从来没有尝试过这个,所以你只能靠自己了。 ;)

相关内容