NVMeはNon-VolatileMemory Expressの略です 、およびこれは、ソフトウェアとストレージがPCIeおよびTCPを含む他のプロトコル間でどのように通信するかを指します。これは非営利団体が主導するオープン仕様であり、ソリッドステートストレージのいくつかの形式を定義しています。
その他のLinuxリソース
- Linuxコマンドのチートシート
- 高度なLinuxコマンドのチートシート
- 無料のオンラインコース:RHELの技術概要
- Linuxネットワーキングのチートシート
- SELinuxチートシート
- Linuxの一般的なコマンドのチートシート
- Linuxコンテナとは何ですか?
- 最新のLinux記事
私のラップトップには、デスクトップと同様にNVMeドライブがあります。そして、彼らは速いです。コンピューターの起動速度と、データの読み取りと書き込みの速度が気に入っています。目に見える遅延はありません。
また、この超高速ストレージを駆動するテクノロジーに興味を持つのにそれほど時間はかからなかったので、少し調査しました。 NVMeドライブは、SATAを介したSSDドライブと比較しても、データへのアクセスがはるかに高速でありながら、消費電力が少ないことを学びました。それは興味深いことでしたが、私は自分の特定のNVMeドライブについてもっと知りたいと思っていました。また、それらが他のドライブとどのように比較されているかを知りたいと思いました。ドライブを安全に消去できますか?どうすればその整合性を確認できますか?
これらの質問から、NVMeドライブを管理するためのツールのコレクションを備えたオープンソースプロジェクトを生み出すインターネット検索にたどり着きました。それはnvme-cliと呼ばれています。
nvme-cliをインストール
nvme-cli
をインストールできます ディストリビューションのパッケージマネージャーから。たとえば、Fedora、CentOSなどの場合:
$ sudo dnf install nvme-cli
Debian、Mint、Elementaryなどの場合:
$ sudo apt install nvme-cli
NVMeドライブの探索
nvme-cli
をインストールした後 私の配布のために、私は自分のドライブを探求したかった。 nvme-cli
のマニュアルページはありません 、ただし、nvme help
と入力すると、多くのヘルプを取得できます。 :
$ nvme help
nvme-1.14
usage: nvme <command> [<device>] [<args>]
The '<device>' may be either an NVMe character device (ex: /dev/nvme0) or an
nvme block device (ex: /dev/nvme0n1).
The following are all implemented sub-commands:
list List all NVMe devices and namespaces on machine
list-subsys List nvme subsystems
id-ctrl Send NVMe Identify Controller
id-ns Send NVMe Identify Namespace, display structure
id-ns-granularity Send NVMe Identify Namespace Granularity List, display structure
list-ns Send NVMe Identify List, display structure
list-ctrl Send NVMe Identify Controller List, display structure
nvm-id-ctrl Send NVMe Identify Controller NVM Command Set, display structure
primary-ctrl-caps Send NVMe Identify Primary Controller Capabilities
[...]
すべてのNVMeドライブを一覧表示する
sudo nvme list
コマンドは、マシン上のすべてのNVMeデバイスと名前空間を一覧表示します。私はそれを使用し、/dev/nvme0n1
でNVMeドライブを見つけました 。出力は次のとおりです:
$ sudo nvme list
Node SN Model Namespace Usage Format FW Rev
--------------------- -------------------- ---------------------------------------- --------- -------------------------- ---------------- --------
/dev/nvme0n1 S42GMY9M141281 SAMSUNG MZVLB256HAHQ-000L7 1
214.68 GB / 256.06 GB 512 B + 0 B 0L2QEXD7
nvme0n1
というドライブがあります 。シリアル番号、ブランド、サイズ、ファームウェアリビジョンなどが一覧表示されます。
id-ctrl
を使用すると、ドライブとそれがサポートする機能に関するさらに詳しい情報を入手できます。 サブコマンド:
$ sudo nvme id-ctrl /dev/nvme0n1
NVME Identify Controller:
vid : 0x144d
ssvid : 0x144d
sn : S42GMY9M141281
mn : SAMSUNG MZVLB256HAHQ-000L7
fr : 0L2QEXD7
rab : 2
ieee : 002538
cmic : 0
mdts : 9
cntlid : 0x4
ver : 0x10200
rtd3r : 0x186a0
rtd3e : 0x7a1200
[...]
健康を促進する
smart-log
を使用すると、ドライブの全体的な状態について読むことができます。 サブコマンド:
$ sudo nvme smart-log /dev/nvme0n1
Smart Log for NVME device:nvme0n1 namespace-id:ffffffff
critical_warning : 0
temperature : 21 C
available_spare : 100%
available_spare_threshold : 10%
percentage_used : 2%
endurance group critical warning summary: 0
data_units_read : 5,749,452
data_units_written : 10,602,948
host_read_commands : 77,809,121
host_write_commands : 153,405,213
controller_busy_time : 756
power_cycles : 1,719
power_on_hours : 1,311
unsafe_shutdowns : 129
media_errors : 0
num_err_log_entries : 1,243
Warning Temperature Time : 0
Critical Composite Temperature Time : 0
Temperature Sensor 1 : 21 C
Temperature Sensor 2 : 22 C
Thermal Management T1 Trans Count : 0
Thermal Management T2 Trans Count : 0
Thermal Management T1 Total Time : 0
Thermal Management T2 Total Time : 0
これにより、ドライブの現在の温度、これまでの使用時間、安全でないシャットダウンの回数などがわかります。
NVMeドライブのフォーマット
nvme-cli
を使用してNVMeドライブをフォーマットできます 、ただし注意してください:これにより、ドライブ上のすべてのデータが消去されます。ドライブに重要なデータがある場合は、必須 これを行う前にバックアップしてください。そうしないと、します データを失います。サブコマンドはformat
です :
$ sudo nvme format /dev/nvme0nX
(安全のため、ドライブの実際の場所を Xに置き換えました コピー&ペーストの事故を防ぐため。 Xを変更します 1へ または、nvme list
の結果にリストされている適切な場所 。)
NVMeドライブを安全に消去する
NVMeコンピュータを販売または廃棄する準備ができたら、ドライブを安全に消去することをお勧めします。ここでは、フォーマットプロセスの場合と同じ警告が適用されます。このコマンドは重要なデータを消去するため、最初に重要なデータをバックアップしてください。
$ sudo nvme sanitize /dev/nvme0nX
nvme-cliをお試しください
nvme-cli
コマンドはGPLv2ライセンスの下でリリースされます。これは、多くの便利なオプションを備えた堅牢なコマンドであり、データの管理方法を制御するための優れた方法です。