Linux NVMe Rig

Schönen Tag.

Ich wollte die Community auf ein charakteristisches Merkmal von Linux aufmerksam machen, wenn ich mit mehreren NVMe-SSDs in einem System arbeite. Dies ist besonders wichtig für diejenigen, die Software-RAID-Arrays aus NVMe erstellen möchten.

Ich hoffe, dass die folgenden Informationen dazu beitragen, Ihre Daten zu schützen und Sie vor lästigen Fehlern zu bewahren.

Wir alle sind an die folgende Linux-Logik
gewöhnt, wenn wir mit Blockgeräten arbeiten: Wenn das Gerät / dev / sda heißt, lauten die Partitionen darauf / dev / sda1, / dev / sda2 usw.
Um SMART-Attribute anzuzeigen, verwenden wir so etwas wie smartctl -a / dev / sda, formatieren es jedoch und fügen Partitionen zu Arrays wie / dev / sda1 hinzu.

Wir sind alle an das Axiom gewöhnt, dass sich / dev / sda1 auf / dev / sda befindet. Und wenn SMART an einem Tag zeigt, dass / dev / sda fast tot ist, werden wir / dev / sda1 aus dem RAID-Array entfernen, um es zu ersetzen.

Es stellt sich heraus, dass diese Regel bei der Arbeit mit NVMe-Namespaces nicht funktioniert. Beweis:

nvme list && ( smartctl -a /dev/nvme0 && smartctl -a /dev/nvme1  && smartctl -a /dev/nvme2 ) | grep Serial
Node             SN                   Model                                    Namespace Usage                      Format           FW Rev  
---------------- -------------------- ---------------------------------------- --------- -------------------------- ---------------- --------
/dev/nvme0n1     S466NX0K72XX06M      Samsung SSD 970 EVO 500GB                1          96.92  GB / 500.11  GB    512   B +  0 B   1B2QEXE7
/dev/nvme1n1     S466NX0K43XX48W      Samsung SSD 970 EVO 500GB                1          91.00  GB / 500.11  GB    512   B +  0 B   1B2QEXE7
/dev/nvme2n1     S466NX0K72XX01A      Samsung SSD 970 EVO 500GB                1           0.00   B / 500.11  GB    512   B +  0 B   1B2QEXE7
Serial Number:                      S466NX0K72XX06M
Serial Number:                      S466NX0K72XX01A
Serial Number:                      S466NX0K43XX48W

Ein aufmerksamer Leser beim Vergleich von Seriennummern wird feststellen, dass sich / dev / nvme1n1 tatsächlich in / dev / nvme2 befindet und umgekehrt.

P.S.

Ich möchte, dass Sie niemals die letzte Live-NVMe-SSD aus dem RAID-Array entfernen.

All Articles