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

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

Tenho dois discos de 3 TB, que espero que sejamexatamente do mesmo tamanho. Isso significa que posso ddcopiá-los sem faltar ou exceder alguns bytes.

Portanto 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, são acessíveis via /dev/sdae /dev/sdbe usando o comando acima, 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 uma prática/hábito comum para os dispositivos HDD manter o número de bytes constante ao longo do tempo (ou seja, não perder ou ganhar alguns bytes, ou seja, devido a setores defeituosos, etc.)?

Responder1

Qualquer ajuste que os 2 HDDs realizarão ao longo do tempo será para manter seu espaço utilizável, que não esteja corrompido ou danificado, na mesma contagem de bytes. Tudo isso acontece em um nível inferior 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 pode ser utilizada à medida que os setores ficam com defeito ou se desgastam. O HDD reconhece que estes sectores estão a falhar ou a ficar danificados e irá realocá-los a partir da reserva, marcando o sector em falha como inutilizável, para que deixe de fazer parte do conjunto total de sectores disponíveis.

O HDD deverá continuar a funcionar normalmente até que este espaço se esgote, desde que não haja outros tipos de falhas catastróficas. Depois que o espaço for esgotado, o HDD será forçado a compensar todos os setores defeituosos que permanecerem. Ele tentará realocar esses dados com falha para setores bons, mas começará a exibir erros de E/S no processo.

OBSERVAÇÃO:Você pode monitorar o espaço de reserva de um HDD durante sua vida útil usando o SMART. Ao olhar para oAtributos SMARTEu suspeitaria que essa contagem seria a número 5:

5-Contagem de setores reatribuídosO número de setores sobressalentes não utilizados. Ao encontrar um erro de leitura/gravação/verificação, um dispositivo remapeia um setor defeituoso para um setor "íntegro" retirado de um pool de reserva especial. O valor normalizado do atributo diminui à medida que o número de peças sobressalentes disponíveis diminui. Em um disco rígido normal, o valor bruto indica o número de setores remapeados, que normalmente deve ser zero. Em um SSD, o valor Raw indica o número de blocos de memória flash com falha.

Você pode verificar isso usando a smartctlferramenta que normalmente faz parte do smartmontoolspacakge (de qualquer maneira, é assim que é chamado no Fedora 20).

$ sudo smartctl --all /dev/sda

Há muitas informações úteis nesta 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 referia está na última tabela, ID #5.

Referências

Responder2

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

# blockdev --getsize64 /dev/sde
2000398934016

Neste exemplo /dev/sdeestá um disco de 2 TB, ou pelo menos é isso que o kernel vê. Naturalmente, fdiske partedoutros devem mostrar as mesmas informações.

Este tamanho não muda. Perder capacidade devido a setores defeituosos não é uma opção, pois causaria inúmeros problemas; a realocação de setores usa uma reserva interna e a unidade geralmente fica completamente inoperante antes de se esgotar. Você deve substituir antes que as coisas fiquem tão ruins.

Algumas pessoas gostam de deixar um pequeno espaço não particionado (alguns megas) no final do disco, já que um disco substituto pode não ter exatamente o mesmo tamanho que o antigo e pode tornar coisas como substituições de membros de raid mais difíceis se o novo o dispositivo parece ser um pouco pequeno.

informação relacionada