代码之家  ›  专栏  ›  技术社区  ›  Jet Blue

如何在WSL上使用DD?

  •  4
  • Jet Blue  · 技术社区  · 6 年前

    我怎么用 dd 在wsl中转储可移动磁盘内容的命令?

    当我跑步时,

    dd if=/mnt/d of=sdDump bs=512 count=1
    

    我得到错误 dd: error reading '/mnt/d': Is a directory

    我跟着 steps shown here 要装入磁盘:

    sudo mkdir /mnt/d
    sudo mount -t drvfs D: /mnt/d
    

    这样做可以让我通过 ls ,但正在运行 DD 产生上述错误。

    2 回复  |  直到 6 年前
        1
  •  7
  •   Asad Saeeduddin    6 年前

    这是使用中的类别错误。 dd 不适用于目录,它适用于文件。文件可以是 device files (像 /dev/sda /dev/urandom 在Linux上)或常规文件(如 echo foo >> myfile.txt )您要传递的是安装的文件系统中的一个目录。

    不幸的是,WSL似乎不支持访问您的阻止设备文件(即,它没有 /dev )你可以跟着 this 在他们的问题跟踪器上的功能请求,以查看他们何时将添加支持。

        2
  •  0
  •   pcjr    6 年前

    mount命令的典型用法是指定要装入的内容(a 装置 ,关于*尼克斯A 装置 实际上只是一种特殊类型的文件)以及要将其装入的位置(目录)。这个 dd 命令需要某种类型的文件。在你的例子中, D: 装置 ,这是您需要传递给的参数 DD :

    dd if=D: of=sdDump bs=512 count=1
    

    免责声明:我没有WSL经验,但我一直在使用 mount DD 几十年来。