xfs falha com erros no dmesg

3

Eu tenho um erro estranho em uma caixa linux com o xfs, e eu não sei como depurar e corrigir isso.

Abaixo está um trecho do dmesg:

Info fld=0x17
end_request: I/O error, dev sde, sector 34412208504
sd 7:0:0:0: SCSI error: return code = 0x08000002
sde: Current: sense key: Aborted Command
   <<vendor>> ASC=0xc0 ASCQ=0x23ASC=0xc0 ASCQ=0x23

Info fld=0x17
end_request: I/O error, dev sde, sector 35840057200
sd 7:0:0:0: SCSI error: return code = 0x08000002
sde: Current: sense key: Aborted Command
   <<vendor>> ASC=0xc0 ASCQ=0x23ASC=0xc0 ASCQ=0x23

Info fld=0x17
end_request: I/O error, dev sde, sector 35799212408
sd 7:0:0:0: SCSI error: return code = 0x08000002
sde: Current: sense key: Aborted Command
   <<vendor>> ASC=0xc0 ASCQ=0x23ASC=0xc0 ASCQ=0x23

Info fld=0x17
end_request: I/O error, dev sde, sector 39444095352
sd 7:0:0:1: SCSI error: return code = 0x08000002
sdf: Current: sense key: Aborted Command
   <<vendor>> ASC=0xc0 ASCQ=0x23ASC=0xc0 ASCQ=0x23

Info fld=0x17
end_request: I/O error, dev sdf, sector 32974487928
device-mapper: multipath: Failing path 8:80.
sd 7:0:0:1: SCSI error: return code = 0x08000002
sdf: Current: sense key: Aborted Command
   <<vendor>> ASC=0xc0 ASCQ=0x23ASC=0xc0 ASCQ=0x23

Info fld=0x17
end_request: I/O error, dev sdf, sector 32973734264
sd 7:0:0:1: SCSI error: return code = 0x08000002
sdf: Current: sense key: Aborted Command
   <<vendor>> ASC=0xc0 ASCQ=0x23ASC=0xc0 ASCQ=0x23

Info fld=0x17
end_request: I/O error, dev sdf, sector 22213009752
sd 7:0:0:1: SCSI error: return code = 0x08000002
sdf: Current: sense key: Aborted Command
   <<vendor>> ASC=0xc0 ASCQ=0x23ASC=0xc0 ASCQ=0x23

Info fld=0x17
end_request: I/O error, dev sdf, sector 32940065144
sd 7:0:0:1: SCSI error: return code = 0x08000002
sdf: Current: sense key: Aborted Command
   <<vendor>> ASC=0xc0 ASCQ=0x23ASC=0xc0 ASCQ=0x23

Info fld=0x17
end_request: I/O error, dev sdf, sector 32974552944
sd 7:0:0:1: SCSI error: return code = 0x08000002
sdf: Current: sense key: Aborted Command
   <<vendor>> ASC=0xc0 ASCQ=0x23ASC=0xc0 ASCQ=0x23

Info fld=0x17
end_request: I/O error, dev sdf, sector 17956282744
Buffer I/O error on device dm-3, logical block 9666270717
lost page write due to I/O error on dm-3
I/O error in filesystem ("dm-3") meta-data dev dm-3 block 0xe7ffb01c2       ("xlog_iodone") error 5 buf count 12800
Buffer I/O error on device dm-3, logical block 4028959741
lost page write due to I/O error on dm-3
xfs_force_shutdown(dm-3,0x2) called from line 956 of file fs/xfs/xfs_log.c.  Return address = 0xffffffff883bec58
Filesystem "dm-3": Log I/O Error Detected.  Shutting down filesystem: dm-3
Please umount the filesystem, and rectify the problem(s)

Como posso depurar isso?

Obrigado.

    
por Marc Riera 28.02.2013 / 10:36

2 respostas

4

Eu sei que este é um post muito antigo, mas como a resposta está incorreta, acho que pode ser útil para os futuros visitantes postarem uma resposta correta ...

A mensagem de erro informada pelo OP não tem nada a ver com o XFS por si só, mas sim o resultado de uma unidade / cabo inválido. Examinando a entrada de erro:

end_request: I/O error, dev sde, sector 39444095352

O sistema não pode recuperar dados localizados em sde no endereço do LBA 39444095352 . Isso geralmente significa um bloqueio ruim no disco.

sd 7:0:0:1: SCSI error: return code = 0x08000002
sdf: Current: sense key: Aborted Command
vendor ASC=0xc0 ASCQ=0x23ASC=0xc0 ASCQ=0x23

O comando SCSI foi cancelado devido ao tempo limite (causado pelo bloco defeituoso) e o disco retorna um código de fornecedor específico explicando o erro em mais detalhes.

A emissão de smartctl --all mostra vários contadores de discos internos. Atributos com ID 5 (Reallocated_Sector_Ct), 197 (Current_Pending_Sector) e 198 (Offline_Uncorrectable) são de interesse especial porque mostram os blocos de disco da situação ilegível / remapeada.

O que você pode fazer neste caso? A abordagem mais segura e strongmente preferida é fazer o backup de todo o conteúdo legível em outro disco seguro (talvez usando algo resiliente a erros de disco, como ddrescue )

Se esta abordagem não for possível, restam duas possibilidades:

  1. reinicie com uma distro ao vivo e emita uma badblocks -n <dev> ( aqui para a página man ): ela será iniciada um teste de leitura / gravação não-destrutivo que deve acionar o procedimento de remapeamento de blocos defeituosos no disco
  2. sobrescreva manualmente os blocos defeituosos afetados emitindo algo semelhante a dd if=/dev/zero of=/dev/sde bs=512 count=1 seek=39444095352

Observe que as duas abordagens acima (especialmente a segunda) causarão perdas de dados, pois o setor afetado e ilegível será sobrescrito.

Após a recuperação / sobrescrever concluída, você deve executar uma verificação completa do sistema de arquivos, neste caso, emitindo xfs_repair /dev/sde

    
por 15.12.2016 / 09:39
0

Você pode usar o comando xfs_db para depurar o sistema de arquivos XFS . Por favor, use a seguinte sintaxe:

xfs_db [device with XFS installed]
    
por 28.02.2013 / 10:45

Tags