Buen día.
Quería llamar la atención de la comunidad sobre una característica característica de Linux cuando se trabaja con múltiples SSD NVMe en un sistema. Será especialmente relevante para aquellos a quienes les gusta crear matrices RAID de software a partir de NVMe.
Espero que la siguiente información le ayude a proteger sus datos y eliminar errores molestos.
Todos estamos acostumbrados a la siguiente lógica de Linux cuando trabajamos con dispositivos de bloque:
Si el dispositivo se llama /dev/sda entonces las particiones serán /dev/sda1, /dev/sda2, etc.
Para ver los atributos SMART, usamos algo como smartctl -a /dev/sda, lo formateamos y agregamos particiones a las matrices, como /dev/sda1.
Todos estamos acostumbrados al axioma de que /dev/sda1 está ubicado en /dev/sda. Y, si un día SMART muestra que /dev/sda está casi muerto, es /dev/sda1 lo que eliminaremos de la matriz RAID para reemplazarlo.
Resulta que esta regla no funciona cuando se trabaja con espacios de nombres NVMe. Prueba:
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
Un lector astuto de la comparación de números de serie notará que /dev/nvme1n1 en realidad está ubicado en /dev/nvme2, y viceversa.
PS
Deseo que nunca elimines el último SSD NVMe vivo de la matriz RAID.
Fuente: habr.com