web-dev-qa-db-ja.com

NVMeストレージデバイスの永続的なデバイスの命名

Linuxカーネルのストレージデバイスの単純な名前(/ dev/sda、/ dev/sdbなど)は、ブート間でランダムに変化する可能性があります。それはNVMeストレージデバイスにも当てはまりますか?これらには、/ dev/nvme0n1p1や/ dev/nvme0n1p2などの名前があります。

4
MountainX

省略:いいえ。記述子の名前に依存することはできません。そして、あなたはおそらくそうしないでしょう。

NVMe命名標準は次のことを説明しています。

  • nvme0:最初に登録されたデバイスのデバイスコントローラー
  • nvme0n1:最初に登録されたデバイスの最初の名前空間
  • nvme0n1p1:最初に登録されたデバイスの最初のネームスペースの最初のパーティション

したがって、全体的な命名は物理的なレイアウトに依存します。また、ブロックデバイスの追加/削除、ドライブ障害など、ユースケースに応じて変化する可能性があります。

基本的にはsd_記述子と同じです。

信頼できるのは、ブロックデバイスのパーティションテーブルに格納され、そこから読み取られるため、各デバイスのリストされたパーティションの順序です。パーティションのレイアウトを変更しない限り、順序は変わりません。

最後に、デバイスのUUIDまたはPARTUUIDのいずれかを参照することは、NVMeを使用する場合でも、依然として最善の方法です。ユースケースによっては、LABELを参照する方が便利な場合があります。

4
rohr