Добрага часу сутак.
Жадаў звярнуць увагу супольнасці на характэрную асаблівасць Linux пры працы з некалькімі NVMe SSD у адной сістэме. Асабліва актуальна будзе для тых, хто любіць рабіць з NVMe праграмныя RAID масівы.
Спадзяюся, што інфармацыя прыведзеная ніжэй дапаможа зберагчы вашыя дадзеныя і пазбавіць ад прыкрых памылак.
Усе мы абвыклі да наступнай логікі Linux пры працы з блокавымі прыладамі:
Калі прылада завецца /dev/sda, то падзелы на ім будуць /dev/sda1, /dev/sda2, і г.д.
Для прагляду SMART атрыбутаў мы выкарыстоўваем нешта накшталт smartctl -a /dev/sda, а фарматуем, і ў масівы дадаем ужо раздзелы, накшталт /dev/sda1.
Усе мы абвыклі да аксіёмы, што /dev/sda1 размяшчаецца на /dev/sda. І, калі ў адзін дзень SMART пакажа што /dev/sda амаль здох, - менавіта /dev/sda1 мы будзем выкідваць з RAID масіва на замену.
Аказваецца, пры працы з NVMe Namespaces гэтае правіла не працуе. Пруф:
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
Уважлівы чытач у параўнанні серыйных нумароў заўважыць, што /dev/nvme1n1 насамрэч размяшчаецца на /dev/nvme2, і наадварот.
Р.S.
Жадаю вам ніколі не выдаляць з RAID масіва апошні жывы NVMe SSD.
Крыніца: habr.com