SMART User Capacity e fdisk -l size diferem. Por quê? Problema de segurança?

5

Eu só estou querendo saber porque o tamanho da minha unidade que smartctl ("Capacidade do Usuário") mostra diferir do valor que fdisk -l, dmesg, hdparm mostra e diferem dos valores de especificação da unidade da folha de dados. Eu preciso de algumas dicas para interpretar esses valores.

Primeiro fiz um

dd_rescue /dev/zero /dev/sdf 

até que dd_rescue seja interrompido com "nenhum espaço deixado no dispositivo".

O valor transferido foi de 3000558944256 bytes. É semelhante à quantidade de bytes do fdisk -l e dmesg.

smartctl -x diz:

=== START OF INFORMATION SECTION ===
Model Family:     Western Digital Caviar Green (Adv. Format)
(...)
Firmware Version: 80.00A80
User Capacity:    3.000.559.428.096 bytes [3,00 TB]
Sector Sizes:     512 bytes logical, 4096 bytes physical
Device is:        In smartctl database [for details use: -P show]
ATA Version is:   8
ATA Standard is:  ACS-2 (revision not indicated)
Local Time is:    Thu Jul  3 19:10:34 2014 CEST
SMART support is: Available - device has SMART capability.
SMART support is: Enabled

fdisk -l diz:

Note: sector size is 4096 (not 512)

Disk /dev/sdf: 3000.6 GB, 3000558944256 bytes
255 heads, 63 sectors/track, 45599 cylinders, total 732558336 sectors
Units = sectors of 1 * 4096 = 4096 bytes
Sector size (logical/physical): 4096 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes

dmesg diz:

[  176.168005] sd 5:0:0:0: [sdf] Spinning up disk.............ready
[  186.352957] sd 5:0:0:0: [sdf] 732558336 4096-byte logical blocks: (3.00 TB/2.72 TiB)

hdparm -I -g / dev / sdf

/dev/sdf:
 geometry      = 364797/255/63, sectors = 5860466688, start = 0             
(that's the fdisk -l value / 512)

 LBA48  user addressable sectors: 5860467633 
(that's the SMART reported value / 512)

Especificação do Drive no site da WD:

User sectors per drive: 5860533168
(That is LBA48 Value + 65 535) (?!)

hdparm --dco-identify / dev / sdf

DCO Revision: 0x0002
(...)
Real max sectors: 5860533168

hdparm -N / dev / sdf

/dev/sdf:
 READ_NATIVE_MAX_ADDRESS_EXT failed: Input/output error    

O problema: É uma diferença de 483840 Bytes da informação SMART para os valores dd_rescue, fdisk e dmesg. E a especificação do produto mostra que a unidade é 65535 setores maior do que o relatado para o SMART e não pode ser acessado pelo LBA. Então eu tenho 3 valores de tamanho que eu não entendo.

Eu calculei ao redor e descobri que

483840 / 4096 = 118
483840 / 512 = 945
(483840 / 63 (sectors/track) = 7 680)

Talvez isso tenha algum significado, que os bytes ausentes sejam n vezes o tamanho do setor? Alguns setores são inquestionáveis? Por quê? É do LBA - > Tradução CHS?

A unidade é nova na loja. O SMART não mostra setores pendentes, nenhum evento de realocação e nenhum setor realocado.

Fiz algumas experiências adicionais:
No meu disco rígido interno "Hitachi Deskstar T7K500" os valores SMART e fdisk não diferem.
No meu disco rígido USB externo "SAMSUNG SpinPoint F2 EG", os valores SMART e fdisk não são diferentes. É apenas no meu disco rígido externo USB (Western Digital My Book).

Talvez haja algum espaço reservado? Para quê? Talvez tenha algo a ver com a capacidade de criptografia de hardware (não ativada)?

Pode haver setores defeituosos na unidade que o firmware foi remapeado internamente e não foi reportado ao SMART?

A unidade veio com um sistema de arquivos NTFS inválido que era reparável. Mas um novo disco rígido não deve ter um sistema de arquivos corrompido, eu acho. Talvez aqui houvesse um remapeamento interno de setores?

Acabei de descobrir que a minha outra unidade USB externa Western Digital (Western Digital My Passport Essential SE) tem o mesmo problema, há 2 842 624 bytes ausentes entre a saída SMART e a saída fdisk -l. (mas existem setores pendentes nesta unidade).

Acho que isso pode até ser um problema de segurança:

Normalmente, com o comando dd_recue você pode sobrescrever todo o disco, mas com esse problema de diferença de byte eu não tenho certeza se tudo foi sobrescrito (eu sei, setores fisicamente ruins e provavelmente setores remapeados internamente e setores pendentes podem ser não é acessível e não pode ser sobrescrito, mas não há setores remapeados no log SMART).

Entre eu ouvi do conceito de "host protected area" e DCO, mas o dmesg não mostrou nenhuma sugestão sobre isso. OS é o OpenSuse 12.2 e a versão do kernel (uname -r) é "3.4.11-2.16-desktop".

Além disso, encontrei este site:
link
o que também poderia ser uma dica. Mas eu calculei em torno de meus valores e não encontrei a solução.

Alguém tem sugestões ou uma explicação para isso?

As perguntas são:
1. Por que há uma diferença de 483840 bytes entre o SMART Info e o dmesg?
2. Por que há uma diferença de 65535 setores entre a especificação hd e os setores LBA?
3. Existe uma área protegida do host ou um DCO na unidade? Como descobrir?
4. Qual é o tamanho do meu disco rígido e como posso segurá-lo? (Eu assumo que o ATA SECURITY ERASE UNIT não funcionará via USB, vou tentar mais tarde)

Obrigado!

    
por Michael D. 03.07.2014 / 19:56

1 resposta

2

Esta não é uma resposta, mas pode ajudar. Eu tenho uma situação semelhante com um disco rígido externo USB relatando capacidade diferente quando questionado de maneiras diferentes.

smartctl -i -d scsi /dev/sdb dá:

smartctl 6.2 2013-07-26 r3841 [x86_64-linux-3.14.27-std-def-alt1] (ALT Linux 6.2-alt0.M70P.1)
Copyright (C) 2002-13, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF INFORMATION SECTION ===
Vendor:               BUFFALO
Product:              HD-PNTU3
Revision:             0001
User Capacity:        1,000,173,428,736 bytes [1.00 TB]
Logical block size:   512 bytes
Logical Unit id:      0x6000039426a846b30000000000000000
Device type:          disk
Local Time is:        Thu Jan 22 19:57:29 2015 JST
SMART support is:     Unavailable - device lacks SMART capability.

No entanto, smartctl -i -d sat /dev/sdb dá:

smartctl 6.2 2013-07-26 r3841 [x86_64-linux-3.14.27-std-def-alt1] (ALT Linux 6.2-alt0.M70P.1)
Copyright (C) 2002-13, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF INFORMATION SECTION ===
Model Family:     Toshiba 2.5" HDD MQ01ABD...
Device Model:     TOSHIBA MQ01ABD100
Serial Number:    72D7F1JHS
LU WWN Device Id: 5 000039 426a846b3
Firmware Version: AX0A1U
User Capacity:    1,000,204,886,016 bytes [1.00 TB]
Sector Sizes:     512 bytes logical, 4096 bytes physical
Rotation Rate:    5400 rpm
Device is:        In smartctl database [for details use: -P show]
ATA Version is:   ATA8-ACS (minor revision not indicated)
SATA Version is:  SATA 2.6, 3.0 Gb/s (current: 3.0 Gb/s)
Local Time is:    Thu Jan 22 19:57:36 2015 JST
SMART support is: Available - device has SMART capability.
SMART support is: Enabled

Eles diferem não apenas na capacidade, mas também no nome do modelo, e se é ou não relatado que o tamanho do setor físico é de 4096 bytes. Agora, no meu caso:

  • hdparm -I /dev/sdb parece ver a maior capacidade / informações do setor físico de 4KiB.

  • hdparm -g /dev/sdb , fdisk -l /dev/sdb , cat /sys/block/sdb/size e cat /sys/block/sdb/queue/physical_block_size all mostram a menor capacidade / informações do setor físico 512B.

Quanto ao problema de segurança, não há problema em ninguém ter escrito dados confidenciais para os setores "inacessíveis". fdisk não consegue vê-los e, no meu caso, o Windows também não os está vendo. Provavelmente eles nunca pertenceram a uma partição.

No entanto, parece que algumas ferramentas do LVM se confundem com a discrepância: link

    
por 24.01.2015 / 12:41