我想在 Linux 下使用 dd 来制作磁盘的备份映像。对于 sata 设备,磁盘有 /dev/sda,每个分区有 /dev/sdaX。

但是对于这个 nvme,我看到了 /dev/nvme0、/dev/nvme0n1 和 /dev/nbme0n1pX。最后一个显然是分区,但是我应该使用前者中的哪一个来备份我的磁盘?(nvme0 与 nvme0n1)。

有 2 个设备代表磁盘的目的是什么?

当我恢复磁盘时,我应该写入哪个设备?

1

  • 我正在努力想出一个dd在 2024 年作为备份解决方案的良好用例。除非您有非常具体的理由这样做,否则您可能会受益于考虑不同的方法。


    – 


最佳答案
1

您应该使用/dev/nvme0n1它来对整个磁盘进行映像处理。这是与 nvme 设备关联的块设备;您可以通过查看设备主/次设备号来验证这一点:

crw-------. 1 root root 238, 0 Sep 10 18:10 /dev/nvme0
brw-rw----. 1 root disk 259, 0 Sep 10 10:17 /dev/nvme0n1
brw-rw----. 1 root disk 259, 2 Sep 10 10:17 /dev/nvme0n1p1
brw-rw----. 1 root disk 259, 5 Sep 10 10:17 /dev/nvme0n1p2
brw-rw----. 1 root disk 259, 7 Sep 10 10:17 /dev/nvme0n1p3

主编号259对应的块设备:

$ grep 259 /proc/devices
259 blkext

主设备 238 对应于“nvme”设备:

$ grep 238 /proc/devices
238 nvme

块设备是“磁盘”;您可以从该设备创建备份,然后将其写回另一个块设备 – 无论目标是 nvme 还是其他东西。

/dev/nvme0是一个 nvme 设备,如果您需要与底层 nvme 控制器交互(例如使用 ,则可以使用它。