Como conectar o Linux a um HDD que tenha sido “trava de segurança”

3

No processo de brincar com vários discos rígidos, e as opções --security-set-pass e --security-erase do hdparm, eu tenho uma pilha de HDDs que estão em um estado "bloqueado" e não consigo desbloqueá-los.

Eu sei qual é a senha e tenho certeza de que, se conseguir convencer o Linux a criar meu dispositivo /dev/sdc block, posso usar hdparm to --security-unlock dos dispositivos. No entanto, o Linux se recusa a criar esse dispositivo de bloco. Acredito que esteja tentando identificar o dispositivo e, como está bloqueado, ele falha.

Existe alguma maneira de convencer o kernel Linux a criar o dispositivo de bloco mesmo que ele não possa (ainda) falar com o drive? A seguir, as mensagens do kernel emitidas, repetidamente:

May 10 18:40:02 kernel: [  480.989385] ata10: exception Emask 0x10 SAct 0x0 SErr 0x4000000 action 0xe frozen
May 10 18:40:02 kernel: [  480.989395] ata10: irq_stat 0x00000040, connection status changed
May 10 18:40:02 kernel: [  480.989401] ata10: SError: { DevExch }
May 10 18:40:02 kernel: [  480.989414] ata10: limiting SATA link speed to 1.5 Gbps
May 10 18:40:02 kernel: [  480.989421] ata10: hard resetting link
May 10 18:40:04 kernel: [  483.216053] ata10: SATA link down (SStatus 1 SControl 310)
May 10 18:40:04 kernel: [  483.216073] ata10: EH complete

O kernel é 2.6.38-16-genérico. Ubuntu. Usando um controlador eSATA (drive AHCI), mas a mesma coisa acontece conectada diretamente na placa-mãe. Ainda não consegui testar isso com o AHCI desativado. (Vai precisar de um computador diferente para isso).

    
por Chris Cogdon 11.05.2013 / 04:00

1 resposta

1

Eu tive o mesmo problema, com aproximadamente os mesmos erros de dmsg.

O problema foi que, embora eu soubesse a senha, a unidade rejeitou. O problema foi resultado de tentar desbloquear uma unidade que havia sido bloqueada no BIOS de um PC com um PC diferente. Longa história curta: BIOS do PC não enviou a senha real para a unidade, mas uma string de 32 caracteres consistindo da senha preenchida com zeros.

Em outra ocasião, isso ficou ainda pior: o BIOS fez algum tipo de hashing (suponho) e enviou uma senha totalmente diferente para o drive. Eu tentei vários preenchimentos diferentes, mas sem sucesso algum. (Foi um Acer.) Os ThinkPads também são conhecidos por fazer esse tipo de coisa. Veja aqui um exemplo: link

Portanto, tente desbloquear a unidade no mesmo PC em que a senha foi definida; tente paddings diferentes (0x00, 0xFF, ...); tente travar uma unidade com hdparm e veja se você pode desbloqueá-la novamente.

    
por 17.01.2014 / 17:41