'/ proc / partitions' e / ou 'fdisk -l / dev / sdX' me fornecem um tamanho de dispositivo confiável?

2

Eu tenho dois discos de 3 TB, que espero ter exatamente o mesmo tamanho . Isso significa que posso usar dd para copiá-los sem ser curto ou exceder alguns bytes.

Por isso, tentei descobrir a capacidade / tamanho do dispositivo de bloco HDD e usei para isso

fdisk /dev/sdX -l | grep "Disk /dev/sdX"

os dois dispositivos no meu caso estão acessíveis por /dev/sda e /dev/sdb e usando o comando acima eu recebo

Disk /dev/sda: 3000.6GB, 3000592982016

e

Disk /dev/sdb: 3000.6GB, 3000592982016

e para meu feliz alívio, parece que os dois dispositivos são exatamente do mesmo tamanho. Isto é, eles têm o número exato de bytes.

Minha pergunta

Esta informação pode ser confiável? Especialmente eu gostaria de saber se é pelo menos prática comum / hábito para os dispositivos HDD manter o número de bytes constantes ao longo do tempo (ou seja, nem perdem ou ganham alguns bytes, ou seja, devido a setores defeituosos etc.)?

    
por humanityANDpeace 10.10.2014 / 18:09

2 respostas

3

Qualquer ajuste que os 2 HDDs executem com o tempo será para manter o espaço utilizável, que não está corrompido ou danificado, na mesma contagem de bytes. Tudo isso acontece em um nível mais baixo para você, o usuário do HDD, então eu esperaria que ambos os HDDs reportassem capacidades idênticas ao longo do tempo.

OBSERVAÇÃO: Todos os HDDs modernos incluem uma reserva extra de espaço que podem ser obtidos quando os setores ficam com defeito ou se desgastam. O HDD reconhece que esses setores estão fracassando ou se tornando danificados e serão realocados da reserva, marcando o setor em falha como inutilizável, de modo que não faz mais parte do conjunto total de setores disponíveis.

O HDD deve continuar operando normalmente até que esse espaço seja esgotado, supondo que não haja outros tipos catastróficos de falhas. Uma vez que o espaço tenha sido usado, o HDD será forçado a fazer devido com quaisquer setores defeituosos que permanecem. Ele tentará realocar esses dados com falha para bons setores, mas começará a exibir erros de E / S no processo.

NOTA: Você pode monitorar o espaço de reserva de um HDD ao longo de sua vida útil usando o SMART. Ao analisar os atributos SMART , suspeito que essa contagem seja de # 5:

5 - Reallocated Sectors Count The number of the unused spare sectors. When encountering a read/write/check error, a device remaps a bad sector to a "healthy" one taken from a special reserve pool. Normalized value of the attribute decreases as the number of available spares decreases.On a regular hard drive, Raw value indicates the number of remapped sectors, which should normally be zero. On an SSD, the Raw value indicates the number of failed flash memory blocks.

Você pode verificar isso usando a ferramenta smartctl que normalmente faz parte do smartmontools pacakge (é assim que é chamado no Fedora 20).

$ sudo smartctl --all /dev/sda

Há muitas informações úteis nessa saída:

smartctl 6.2 2014-07-16 r3952 [x86_64-linux-3.16.3-200.fc20.x86_64] (local build)
Copyright (C) 2002-13, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF INFORMATION SECTION ===
Device Model:     LITEONIT LMT-256M3M
Serial Number:    002244119905
LU WWN Device Id: 5 000000 000000000
Firmware Version: VZJ4
User Capacity:    256,060,514,304 bytes [256 GB]
Sector Size:      512 bytes logical/physical
Rotation Rate:    Solid State Device
Device is:        Not in smartctl database [for details use: -P showall]
ATA Version is:   ATA8-ACS, ATA/ATAPI-7 T13/1532D revision 4a
SATA Version is:  SATA 3.0, 6.0 Gb/s
Local Time is:    Fri Oct 10 12:32:12 2014 EDT
SMART support is: Available - device has SMART capability.
SMART support is: Enabled

=== START OF READ SMART DATA SECTION ===
SMART overall-health self-assessment test result: PASSED

General SMART Values:
Offline data collection status:  (0x00) Offline data collection activity
                    was never started.
                    Auto Offline Data Collection: Disabled.
Self-test execution status:      (   0) The previous self-test routine completed
                    without error or no self-test has ever 
                    been run.
Total time to complete Offline 
data collection:        (   10) seconds.
Offline data collection
capabilities:            (0x15) SMART execute Offline immediate.
                    No Auto Offline data collection support.
                    Abort Offline collection upon new
                    command.
                    No Offline surface scan supported.
                    Self-test supported.
                    No Conveyance Self-test supported.
                    No Selective Self-test supported.
SMART capabilities:            (0x0002) Does not save SMART data before
                    entering power-saving mode.
                    Supports SMART auto save timer.
Error logging capability:        (0x00) Error logging supported.
                    General Purpose Logging supported.
Short self-test routine 
recommended polling time:    (   1) minutes.
Extended self-test routine
recommended polling time:    (  10) minutes.
SCT capabilities:          (0x003d) SCT Status supported.
                    SCT Error Recovery Control supported.
                    SCT Feature Control supported.
                    SCT Data Table supported.

SMART Attributes Data Structure revision number: 1
Vendor Specific SMART Attributes with Thresholds:
ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE
  1 Raw_Read_Error_Rate     0x0003   100   100   070    Pre-fail  Always       -       0
  5 Reallocated_Sector_Ct   0x0003   100   100   000    Pre-fail  Always       -       0
  9 Power_On_Hours          0x0002   100   100   000    Old_age   Always       -       2248
 12 Power_Cycle_Count       0x0002   100   100   000    Old_age   Always       -       706
171 Unknown_Attribute       0x0032   000   000   000    Old_age   Always       -       0
172 Unknown_Attribute       0x0032   000   000   000    Old_age   Always       -       0
173 Unknown_Attribute       0x0032   000   000   000    Old_age   Always       -       12
174 Unknown_Attribute       0x0030   000   000   000    Old_age   Offline      -       126
178 Used_Rsvd_Blk_Cnt_Chip  0x0003   100   100   000    Pre-fail  Always       -       0
187 Reported_Uncorrect      0x0002   100   100   000    Old_age   Always       -       0
192 Power-Off_Retract_Count 0x0003   100   100   000    Pre-fail  Always       -       126
230 Unknown_SSD_Attribute   0x0032   100   100   000    Old_age   Always       -       24851
232 Available_Reservd_Space 0x0003   100   100   010    Pre-fail  Always       -       2784
241 Total_LBAs_Written      0x0003   100   100   000    Pre-fail  Always       -       86211
242 Total_LBAs_Read         0x0003   100   100   000    Pre-fail  Always       -       25145

SMART Error Log Version: 0
No Errors Logged

SMART Self-test log structure revision number 1
No self-tests have been logged.  [To run self-tests, use: smartctl -t]


Selective Self-tests/Logging not supported

A informação a que me refiro está na última tabela, ID # 5.

Referências

por 10.10.2014 / 18:30
3

Se você quiser saber o tamanho de um dispositivo (em bytes), você pode usar o blockdev:

# blockdev --getsize64 /dev/sde
2000398934016

Neste exemplo, /dev/sde é um disco de 2TB ou, pelo menos, é o que o kernel vê. Naturalmente, fdisk , parted e outros devem mostrar as mesmas informações.

Este tamanho não muda. Perder a capacidade devido a setores defeituosos não é uma opção, não causaria o fim dos problemas; realocar setores usa uma reserva interna e a unidade geralmente está completamente esgotada antes de ser usada. Você deve substituir antes que as coisas fiquem tão ruins.

Algumas pessoas gostam de deixar algum pequeno espaço não particionado (alguns megas) no final do disco, já que um disco de substituição pode não ter exatamente o mesmo tamanho do antigo, e pode dificultar as coisas como substituição de membros de ataque. se o novo dispositivo parece ser um pouco pequeno demais.

    
por 10.10.2014 / 18:40