NVME Admin command error INVALID OPCODE(2001)
Podczas próby wykonania Secure Erase na dysku SSD typu NVME przy użyciu nvme format może wystąpić błąd NVME Admin command error:INVALID_OPCODE(2001). W tym przypadku przyczyną jest zazwyczaj fakt, że dysk SSD ma status Frozen. Rozwiązaniem problemu może być Suspend/Resume lub aktualizacja BIOS-u.
Problem
Podczas próby przeprowadzenia Secure Erase na dysku SSD 1,92 TB Samsung PM983 M.2 (MZ1LB1T9HALS-00007) w systemie z płytą główną Supermicro X11DPi-N i BIOS-em w wersji 2.0b występuje następujący błąd:
test@ubuntu-18-04:~$ sudo nvme list Node SN Model Namespace Usage Format FW Rev ---------------- -------------------- ---------------------------------------- --------- -------------------------- ---------------- -------- /dev/nvme0n1 S436NA0M403379 SAMSUNG MZ1LB1T9HALS-00007 1 1,92 TB / 1,92 TB 512 B + 0 B EDA7202Q test@ubuntu-18-04:~$ sudo nvme format /dev/nvme0 -s 1 NVME Admin command error:INVALID_OPCODE(2001) test@ubuntu-18-04:~$
Zapytanie w protokole bezpieczeństwa 0xEF (ATA Device Server Password Security) wyświetla następujące dane wyjściowe:[1]
test@ubuntu-18-04:~$ sudo nvme list Node SN Model Namespace Usage Format FW Rev ---------------- -------------------- ---------------------------------------- --------- -------------------------- ---------------- -------- /dev/nvme0n1 S436NA0M403379 SAMSUNG MZ1LB1T9HALS-00007 1 1,92 TB / 1,92 TB 512 B + 0 B EDA7202Q test@ubuntu-18-04:~$ sudo nvme security-recv /dev/nvme0n1 -t 16 -p 0xef -n 0 -x 16 NVME Security Receive Command Success:0 0 1 2 3 4 5 6 7 8 9 a b c d e f 0000: 00 0e 00 01 00 01 ff fe 00 29 00 00 00 00 00 00 ".........)......" test@ubuntu-18-04:~$
Wartość heksadecymalna "29" pod bitem o numerze 9 wskazuje na stan "frozen".
Rozwiązanie problemu
Suspend and Resume
W niektórych systemach wystarczy wykonać "Suspend" (Sleep) i następnie "Resume".[2]
Jednakże, w niektórych BIOS-ach nawet po wykonaniu "Resume" jest wysyłane odpowiednie polecenie bezpieczeństwa, dlatego w takich przypadkach jedynie aktualizacja BIOS-u (jeśli jest dostępna) może pomóc. Tak jest również w przypadku Supermicro X11DPi-N.
Aktualizacja BIOS-u
Po aktualizacji BIOS-u płyty głównej Supermicro X11DPi-N do wersji 3.1 dysk SSD nie znajduje się już w stanie "Frozen".
Zapytanie protokołu bezpieczeństwa 0xEF zwraca teraz:
test@ubuntu-18-04:~$ sudo nvme list Node SN Model Namespace Usage Format FW Rev ---------------- -------------------- ---------------------------------------- --------- -------------------------- ---------------- -------- /dev/nvme0n1 S436NA0M403379 SAMSUNG MZ1LB1T9HALS-00007 1 1,92 TB / 1,92 TB 512 B + 0 B EDA7202Q test@ubuntu-18-04:~$ sudo nvme security-recv /dev/nvme0n1 -t 16 -p 0xef -n 0 -x 16 NVME Security Receive Command Success:0 0 1 2 3 4 5 6 7 8 9 a b c d e f 0000: 00 0e 00 01 00 01 ff fe 00 21 00 00 00 00 00 00 ".........!......"
Dziesiąty bit wyświetla teraz wartość szesnastkową "21" zamiast "29". Dysk SSD nie znajduje się już w stanie "Frozen". Secure Erase może teraz zostać przeprowadzony:
test@ubuntu-18-04:~$ sudo nvme format /dev/nvme0 -s 1 Success formatting namespace:ffffffff test@ubuntu-18-04:~$ sudo nvme list Node SN Model Namespace Usage Format FW Rev ---------------- -------------------- ---------------------------------------- --------- -------------------------- ---------------- -------- /dev/nvme0n1 S436NA0M403379 SAMSUNG MZ1LB1T9HALS-00007 1 0,00 B / 1,92 TB 512 B + 0 B EDA7202Q test@ubuntu-18-04:~$
Odnośniki
- ↑ nvme: Don't add namespaces for locked drives (Linux NVME Mailing List, 24.06.2016)
- ↑ NVME Admin command error: INVALID_OPCODE(2001) (github.com/nvme-cli/issues)
Autor: Werner Fischer