Você experimentou (pelo menos) um bloqueio ruim em seu disco. Infelizmente, ele atingiu uma estrutura de dados XFS, então você perdeu alguns metadados do sistema de arquivos. Espero que você tenha backups.
Verifique o smartctl
Espero que você tenha smartctl
instalado (ele precisa ser executado como raiz, por exemplo, via sudo
). Se instalado, deve dar saída assim:
ID# ATTRIBUTE_NAME FLAG VALUE WORST THRESH TYPE UPDATED WHEN_FAILED RAW_VALUE
1 Raw_Read_Error_Rate 0x000f 103 098 006 Pre-fail Always - 212688305
3 Spin_Up_Time 0x0003 094 094 000 Pre-fail Always - 0
4 Start_Stop_Count 0x0032 100 100 020 Old_age Always - 76
5 Reallocated_Sector_Ct 0x0033 002 002 036 Pre-fail Always FAILING_NOW 4015
7 Seek_Error_Rate 0x000f 084 060 030 Pre-fail Always - 291678490
9 Power_On_Hours 0x0032 052 052 000 Old_age Always - 42540
10 Spin_Retry_Count 0x0013 100 100 097 Pre-fail Always - 0
12 Power_Cycle_Count 0x0032 100 100 020 Old_age Always - 39
183 Runtime_Bad_Block 0x0032 098 098 000 Old_age Always - 2
184 End-to-End_Error 0x0032 100 100 099 Old_age Always - 0
187 Reported_Uncorrect 0x0032 018 018 000 Old_age Always - 82
188 Command_Timeout 0x0032 100 097 000 Old_age Always - 25770393781
189 High_Fly_Writes 0x003a 084 084 000 Old_age Always - 16
190 Airflow_Temperature_Cel 0x0022 061 061 045 Old_age Always - 39 (Min/Max 38/39)
194 Temperature_Celsius 0x0022 039 040 000 Old_age Always - 39 (0 16 0 0 0)
195 Hardware_ECC_Recovered 0x001a 034 013 000 Old_age Always - 212688305
197 Current_Pending_Sector 0x0012 100 099 000 Old_age Always - 0
198 Offline_Uncorrectable 0x0010 100 099 000 Old_age Offline - 0
199 UDMA_CRC_Error_Count 0x003e 200 200 000 Old_age Always - 0
240 Head_Flying_Hours 0x0000 100 253 000 Old_age Offline - 42617 (160 246 0)
241 Total_LBAs_Written 0x0000 100 253 000 Old_age Offline - 3791056483
242 Total_LBAs_Read 0x0000 100 253 000 Old_age Offline - 1003117143
Os atributos exatos mostrados variam de disco para disco, mas a maioria deles tem 197 e / ou 198 informando quantos setores defeituosos não reparados o disco conhece. Na saída acima, você pode ver # 5 é FAILING_NOW
e seu tipo é Pre-fail
. Isso significa que o firmware do disco espera que o disco falhe em 24 horas. Se você tiver algum atributo com falha, especialmente pré-falha, eu substitui o disco (e se ele ainda estiver na garantia, você deve ser capaz de usar o RMA).
Se você não tem smartctl
Se você não tiver o smartctl, o não será o momento de instalá-lo.
Próximo passo crítico
Se você tiver arquivos importantes no disco da máquina, especialmente os que ainda não foram armazenados em backup, tente copiá-los para um disco diferente, unidade flash USB, compartilhamento de rede, etc. Seu sistema de arquivos foi danificado e é possível que esta seja sua última chance de fazê-lo facilmente.
Use um sistema ativo para executar o smartctl, xfs_repair
Se você não tiver o smartctl
instalado, poderá reinicializar (depois de copiar dados importantes!) em um sistema ativo (do CD, pendrive, etc.) e executar o smartctl a partir dele. Você também pode usar xfs_repair
do sistema ativo para tentar reparar o sistema de arquivos. (Por favor, leia a manpage para xfs_repair
primeiro; confesso que não tenho muita experiência com XFS).
Observe que os discos feitos na última década ou dois têm setores sobressalentes e usarão um deles para substituir o setor defeituoso na próxima vez em que forem gravados. smartctl -A
normalmente terá atributos mostrando quantas vezes isso foi feito.
Após o reparo do sistema de arquivos
Se houver arquivos importantes que você não conseguiu antes, tente novamente.
Dependendo do tamanho do dano (quantos arquivos você perdeu e quais), você precisará reinstalar alguns pacotes (usando dpkg -i
ou apt-get install --reinstall
) ou, se estiver ruim, reinstale o sistema operacional.
Claro, se você tiver um backup recente do sistema completo, provavelmente mais fácil de restaurar a partir do backup.
Como evitar isso no futuro
Usar dois discos (em um espelho mdraid RAID1) permite que o kernel lide com blocos defeituosos lendo o setor do outro disco. Em seguida, ele grava os dados corretos, permitindo que o disco use um setor reserva. Você também pode executar o RAID1 entre duas partições no mesmo disco, o que ocupará metade do espaço disponível, mas protegerá contra setores defeituosos (mas não contra a falha total do disco).
Alguns sistemas de arquivos (por exemplo, btrfs com modo "duplicado") podem manter duas cópias de seus metadados ou seus dados, protegendo também contra setores defeituosos.