erro hdparm: SG_IO: dados de sentido inválidos/ausentes

erro hdparm: SG_IO: dados de sentido inválidos/ausentes

Estou tentando o hdparm no Kali Live para adicionar uma senha ATA ao meu SSD autocriptografado Micron M600, eu uso:hdparm --security-set-pass PASSWORD sda

Mas eu entendo:

sda:  Issuing SECURITY_SET_PASS command, password="PASSWORD",
user=user, mode=high SG_IO: bad/missing sense data, sb[]:  70 00 05 00
00 00 00 0a 04 51 60 00 21 04 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00

Então porque isso acontece?

Quando digito hdparm -I sda, aparece que minha unidade está com "segurança congelada". Lembro que isso significa que não posso alterar nenhuma configuração de segurança, incluindo adicionar senha ATA. Esse é o problema?

Meu BIOS não suporta senha ATA e nunca a configurei antes.

EDIT: A parte de segurança de hdparm -I:

Security: 

    Master password revision code = 65534
            supported
    not     enabled
    not     locked
            frozen
    not     expired: security count
            supported: enhanced erase
    2min for SECURITY ERASE UNIT. 
    2min for ENHANCED SECURITY ERASE UNIT.

O formato deste site é sempre confuso, mas tento o meu melhor para manter o conteúdo legível.

Responder1

Resposta parcial, porque é muito longo para um comentário:

Os dados dos sentidos fornecidos são:

70  response code=Current information (about the error etc.)
00
05  sense code=Illegal Request
00 00 00 00 (not valid)
0a  additional 10 bytes
04 51 60 00  (command specific)
21 04 additional sense code=Unaligned Write Command
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

Portanto, o erro é "Solicitação ilegal, comando de gravação desalinhado". Isso não faz muito sentido se hdparmestiver usando um comando SCSI de gravação ATA.

Não tenho ideia de por que isso acontece. Se for a reação ao estado de “segurança congelada”, é uma reação realmente estranha. Possivelmente algo nas camadas de tradução SCSI para SSD não gosta do comando de gravação ATA?

Você tem certeza de que o SSD Micron M600 suporta senhas ATA?

Editar: O manual que você vinculou diz:

Suporte a SEDs da Micronqualquera especificação TCG Opal 2.0ouo CONJUNTO DE RECURSOS DE SEGURANÇA ATA. Os modos de segurança ATA geralmente são iniciados pelo BIOS do sistema ou por alguns sistemas baseados em interface de firmware extensível universal (UEFI) no modo legado. Por especificação das organizações de padrões industriais associadas, a segurança TCG Opal e ATA são mutuamente exclusivas. Em outras palavras, se um estiver habilitado, o outro estará desabilitado.

Portanto, se o seu BIOS não permitir, não funcionará. "Congelado" significa apenas que você não pode alterar o estado.

Edite sua pergunta com o resultado completo noSegurançaSeção de hdparm -I.

Editar

A hdparm -Isaída diz claramente "não habilitado", mas "congelado". Portanto, seu BIOS não o habilitou, mas congelou, então você não pode alterar o estado.

Isso significa que seu SSD está no modo TCG Opal e não tenho ideia de como acessá-lo no Linux.

Vale a pena tentar desligar e ligar enquanto estiver conectado.

Se você encontrar outro computador com BIOS que permita definir a senha ou que não a congele, você também pode tentar dessa forma.

Responder2

Tive o mesmo problema e li em outros lugares que um ciclo de energia ou hotplug do dispositivo o descongelaria. Algumas pessoas sugeriram suspender o sistema no caso de laptops, então resolvi tentar e funcionou!

Então aqui está o que fiz para "descongelar" a unidade (está em um servidor remoto na empresa de hospedagem hetzner):

Primeiro inicializei o servidor no ambiente de resgate inicializado por NFS. Então entrei e suspendi o sistema:

local $> ssh root@server    
server #> apt-get install pm-utils
server #> pm-suspend

Neste ponto o sistema está suspenso (também o SSD), meu shell ssh não responde, é claro.

Eu emiti o sinal WOL (wake on lan) usando o painel de controle do hosters (não tenho certeza se um ping teria funcionado ou não), depois de um tempo (20 segundos ou mais), o shell voltou à vida e o SSD foi descongelado para que eu pudesse emitir o comando --secure-erase usando hdparm conforme descrito em muitos tutoriais.

Responder3

Nenhuma resposta ou comentário mencionou isso desde que esta pergunta foi feita há 5 anos, mas na verdade há uma maneira extremamente fácil de decodificar localmente uma mensagem de erro do Sense em sua máquina:

Use o comando sg_decode_sensedisponível em todas as principais distribuições Linux (por exemplo, no pacote sg3_utilsdo Arch Linux) e passe a mensagem de erro hexadecimal para convertê-lo em um formato legível por humanos:

user@host$ sg_decode_sense 70 00 05 00 00 00 00 0a 04 51 60 00 21 04 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

Fixed format, current; Sense key: Illegal Request
Additional sense: Unaligned write command

PS: Como o título da pergunta é a mensagem genérica sempre impressa quando hdparmgera um erro do Sense, acredito que isso ajudará as pessoas que passam e não têm essa mensagem de erro hexa Sense exata.

Responder4

Encontrei o mesmo problema, com exatamente o mesmo código de falha. Isso foi em um sistema Dell. Eu segui o arch wikihttps://wiki.archlinux.org/index.php/Solid_state_drive/Memory_cell_clearing

Afirma claramente:

Defina a senha do disco rígido interno no BIOS (tenha cuidado, o mapa de teclado é en_US/qwerty).

Eu tenho um layout de teclado diferente, então basicamente estava usando a senha errada o tempo todo...

informação relacionada