Linux

如何創建 NVMe SSD 的 ISO 磁碟映像?

  • January 13, 2021

dd我想使用(disk dump) 命令創建我的固態驅動器的磁碟映像。SSD 上有多個分區。是否可以製作包含所有分區的驅動器的完整映像?

這是它如何與 HDD 一起使用的範例:

dd if=/dev/sda of=/mnt/sdb/disk.img conv=sync,noerror bs=64K

但是,我不確定,因為/dev/我的 NVMe SSD 的路徑看起來不同。有這些變體:

 /dev/nvme0

 /dev/nvme0n1

 /dev/nvme0n1p1

 /dev/nvme0n1p2

 /dev/nvme0n1p3

 /dev/nvme0n1p4

我必須將哪個路徑設置為輸入文件if=?為什麼?nvme0n1p1tonvme0n1p4是四個分區。正如我之前所說,我不想只創建單個分區的映像。nvme0和 和有什麼不一樣nvme0n1

如果您想製作整個磁碟的映像,請使用/dev/nvme0n1,這是 NVMe 驅動器塊設備(它實際上是一個“命名空間”,理論上您可以在 NVMe 驅動器上擁有多個命名空間,就像“硬體級別的分區” ,但大多數“消費者”NVM 只帶有一個命名空間)。

/dev/nvme0是控制器,用於控制/管理 NVMe 設備的字元設備(如添加新的命名空間、更改塊大小等)。您可以使用nvme-cli工具進行 NVMe 管理,例如使用nvme0設備獲取 SMART 數據或溫度:

sudo nvme smart-log /dev/nvme0
Smart Log for NVME device:nvme0 namespace-id:ffffffff
critical_warning                        : 0
temperature                             : 38 C
available_spare                         : 100%
...

(但我一般不建議使用該工具,您可以很容易地從驅動器中刪除所有內容。)

如果您對更多細節感興趣,ArchWiki 有一篇關於 NVMes 的精彩文章,但您需要知道的一切是:

  • 忽略nvme0,你可能永遠不會使用它
  • nvme0n1是驅動器 (= sda)
  • nvme0n1pX是分區nvme0n1,唯一的區別是不是sda + number你有nvme0n1 + p + numberwherep表示“分區”並且僅因為nvme0n1以數字結尾而添加(這不是 NVMe 特定的)

引用自:https://unix.stackexchange.com/questions/629049