xfs: no puedo leer el superbloque

xfs: no puedo leer el superbloque

Obtuve el siguiente error:

[root@mediaserv ~]# mount /dev/mapper/media1 /media
mount: /media: can't read superblock on /dev/mapper/media1.

Este es Fedora 33. Tengo un RAID5 de 8 discos WD Red de 8 TB ejecutándose en un controlador RAID Adaptec 7805Q, este es /dev/sdc. Tengo una partición GPT, /dev/sdc1, que está cifrada con LUKSv2 con un sistema de archivos XFS.

[root@mediaserv ~]# lsblk /dev/sdc
NAME       MAJ:MIN RM  SIZE RO TYPE  MOUNTPOINT
sdc          8:32   1 50.9T  0 disk
└─sdc1       8:33   1 50.9T  0 part
  └─media1 253:0    0 50.9T  0 crypt
[root@mediaserv ~]#

El RAID terminó en modo degradado. Lo más probable es que golpeé un cable en la primera unidad al instalar un ventilador nuevo. De todos modos, después de arrancar, ejecuté en modo degradado durante varias horas antes de que lo detectara. Lo apagué, inicié en modo de usuario único desde una imagen de rescate y luego lo dejé ejecutar para reconstruir la matriz. Esto tomó alrededor de 14 horas.

Al reiniciarlo, se me solicita la contraseña LUK de la partición, pero simplemente permanece ahí. Dejé que esto se ejecutara durante aproximadamente 8 horas, sin estar seguro de si se estaba solucionando algo en segundo plano.

Arranqué desde el rescate nuevamente. Comenté el sistema de archivos desde /etc/crypttaby /etc/fstabpuedo iniciar sesión en el sistema sin el /mediasistema de archivos montado.

Pude ejecutar cryptsetup luksOpen /dev/sdc1 media1con éxito; la partición parece descifrarse sin error.

Cuando ejecuto el comando de montaje (arriba), obtengo lo siguiente en /var/log/messages:

Jan  5 10:23:00 mediaserv kernel: sd 12:0:0:0: [sdc] tag#340 FAILED Result: hostbyte=DID_OK driverbyte=DRIVER_SENSE cmd_age=0s
Jan  5 10:23:00 mediaserv kernel: sd 12:0:0:0: [sdc] tag#340 Sense Key : Hardware Error [current]
Jan  5 10:23:00 mediaserv kernel: sd 12:0:0:0: [sdc] tag#340 Add. Sense: Internal target failure
Jan  5 10:23:00 mediaserv kernel: sd 12:0:0:0: [sdc] tag#340 CDB: Read(16) 88 00 00 00 00 00 00 00 11 00 00 00 00 01 00 00
Jan  5 10:23:00 mediaserv kernel: blk_update_request: critical target error, dev sdc, sector 34816 op 0x0:(READ) flags 0x80700 phys_seg 1 prio class 0
Jan  5 10:23:00 mediaserv kernel: sd 12:0:0:0: [sdc] tag#341 FAILED Result: hostbyte=DID_OK driverbyte=DRIVER_SENSE cmd_age=0s
Jan  5 10:23:00 mediaserv kernel: sd 12:0:0:0: [sdc] tag#341 Sense Key : Hardware Error [current]
Jan  5 10:23:00 mediaserv kernel: sd 12:0:0:0: [sdc] tag#341 Add. Sense: Internal target failure
Jan  5 10:23:00 mediaserv kernel: sd 12:0:0:0: [sdc] tag#341 CDB: Read(16) 88 00 00 00 00 00 00 00 11 00 00 00 00 01 00 00
Jan  5 10:23:00 mediaserv kernel: blk_update_request: critical target error, dev sdc, sector 34816 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 0
Jan  5 10:23:00 mediaserv kernel: Buffer I/O error on dev dm-0, logical block 0, async page read
Jan  5 10:23:00 mediaserv kernel: sd 12:0:0:0: [sdc] tag#342 FAILED Result: hostbyte=DID_OK driverbyte=DRIVER_SENSE cmd_age=0s
Jan  5 10:23:00 mediaserv kernel: sd 12:0:0:0: [sdc] tag#342 Sense Key : Hardware Error [current]
Jan  5 10:23:00 mediaserv kernel: sd 12:0:0:0: [sdc] tag#342 Add. Sense: Internal target failure
Jan  5 10:23:00 mediaserv kernel: sd 12:0:0:0: [sdc] tag#342 CDB: Read(16) 88 00 00 00 00 00 00 00 11 00 00 00 00 01 00 00
Jan  5 10:23:00 mediaserv kernel: blk_update_request: critical target error, dev sdc, sector 34816 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 0
Jan  5 10:23:00 mediaserv kernel: EXT4-fs (dm-0): unable to read superblock
Jan  5 10:23:00 mediaserv kernel: sd 12:0:0:0: [sdc] tag#343 FAILED Result: hostbyte=DID_OK driverbyte=DRIVER_SENSE cmd_age=0s
Jan  5 10:23:00 mediaserv kernel: sd 12:0:0:0: [sdc] tag#343 Sense Key : Hardware Error [current]
Jan  5 10:23:00 mediaserv kernel: sd 12:0:0:0: [sdc] tag#343 Add. Sense: Internal target failure
Jan  5 10:23:00 mediaserv kernel: sd 12:0:0:0: [sdc] tag#343 CDB: Read(16) 88 00 00 00 00 00 00 00 11 00 00 00 00 01 00 00
Jan  5 10:23:00 mediaserv kernel: blk_update_request: critical target error, dev sdc, sector 34816 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 0
Jan  5 10:23:00 mediaserv kernel: EXT4-fs (dm-0): unable to read superblock
Jan  5 10:23:00 mediaserv kernel: sd 12:0:0:0: [sdc] tag#344 FAILED Result: hostbyte=DID_OK driverbyte=DRIVER_SENSE cmd_age=0s
Jan  5 10:23:00 mediaserv kernel: sd 12:0:0:0: [sdc] tag#344 Sense Key : Hardware Error [current]
Jan  5 10:23:00 mediaserv kernel: sd 12:0:0:0: [sdc] tag#344 Add. Sense: Internal target failure
Jan  5 10:23:00 mediaserv kernel: sd 12:0:0:0: [sdc] tag#344 CDB: Read(16) 88 00 00 00 00 00 00 00 11 00 00 00 00 01 00 00
Jan  5 10:23:00 mediaserv kernel: blk_update_request: critical target error, dev sdc, sector 34816 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 0
Jan  5 10:23:00 mediaserv kernel: EXT4-fs (dm-0): unable to read superblock
Jan  5 10:23:00 mediaserv kernel: ISOFS: unsupported/invalid hardware sector size 4096
Jan  5 10:23:00 mediaserv kernel: sd 12:0:0:0: [sdc] tag#345 FAILED Result: hostbyte=DID_OK driverbyte=DRIVER_SENSE cmd_age=0s
Jan  5 10:23:00 mediaserv kernel: sd 12:0:0:0: [sdc] tag#345 Sense Key : Hardware Error [current]
Jan  5 10:23:00 mediaserv kernel: sd 12:0:0:0: [sdc] tag#345 Add. Sense: Internal target failure
Jan  5 10:23:00 mediaserv kernel: sd 12:0:0:0: [sdc] tag#345 CDB: Read(16) 88 00 00 00 00 00 00 00 11 00 00 00 00 01 00 00
Jan  5 10:23:00 mediaserv kernel: blk_update_request: critical target error, dev sdc, sector 34816 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 0
Jan  5 10:23:00 mediaserv kernel: FAT-fs (dm-0): unable to read boot sector

Intenté ejecutar xfs_repair, pero aún no probé la -Lopción.

[root@mediaserv ~]# xfs_repair /dev/mapper/media1
Phase 1 - find and verify superblock...
superblock read failed, offset 0, size 524288, ag 0, rval -1

fatal error -- Remote I/O error

No estoy seguro de dónde debo ir a continuación, me preocupa ejecutar el comando incorrecto y causar más daño. Sin duda, cualquier ayuda sería apreciada.

¡Gracias!

-Miguel

EDITAR:

Después de investigar un poco más, no creo que sea un problema de superbloque, creo que el error se debió a que no especificé el tipo de sistema de archivos en el comando de montaje. Al volver a ejecutarlo más correctamente, obtengo:

[root@mediaserv ~]# mount -t xfs /dev/mapper/media1 /media
mount: /media: mount(2) system call failed: Remote I/O error.

Lo que arroja lo siguiente en mi /var/log/messages:

Jan  5 12:15:43 mediaserv kernel: sd 12:0:0:0: [sdc] tag#838 FAILED Result: hostbyte=DID_OK driverbyte=DRIVER_SENSE cmd_age=0s
Jan  5 12:15:43 mediaserv kernel: sd 12:0:0:0: [sdc] tag#838 Sense Key : Hardware Error [current]
Jan  5 12:15:43 mediaserv kernel: sd 12:0:0:0: [sdc] tag#838 Add. Sense: Internal target failure
Jan  5 12:15:43 mediaserv kernel: sd 12:0:0:0: [sdc] tag#838 CDB: Read(16) 88 00 00 00 00 00 00 00 11 00 00 00 00 01 00 00
Jan  5 12:15:43 mediaserv kernel: blk_update_request: critical target error, dev sdc, sector 34816 op 0x0:(READ) flags 0x1000 phys_seg 1 prio class 0
Jan  5 12:15:43 mediaserv kernel: XFS (dm-0): SB validate failed with error -121.

No estoy seguro de cómo interpretar eso. ¿Datos incorrectos a partir del sector 34816?

EDITAR #2:

Respecto al estado de la matriz RAID. Como mencioné, entró en modo degradado con el disco perdido. Lo saqué de servicio y lo puse en modo de usuario único mientras se reconstruía el RAID. El siguiente es el resultado de la herramienta Adaptec después de la reconstrucción (lo he recortado para que sea menos detallado):

arcconf getconfig 1
----------------------------------------------------------------------
Controller information
----------------------------------------------------------------------
   Controller Status                        : Optimal
   Controller Mode                          : RAID (Expose RAW)
   Controller Model                         : Adaptec ASR7805Q
   Performance Mode                         : Big Block Bypass
   --------------------------------------------------------
   RAID Properties
   --------------------------------------------------------
   Logical devices/Failed/Degraded          : 1/0/0
   Copyback                                 : Disabled
   Automatic Failover                       : Enabled
   Background consistency check             : Disabled
   Background consistency check period      : 0
----------------------------------------------------------------------
Logical device information
----------------------------------------------------------------------
Logical Device number 0
   Logical Device name                      : media
   Block Size of member drives              : 4K Bytes
   RAID level                               : 5
   Status of Logical Device                 : Optimal
   Size                                     : 53387257 MB
   Parity space                             : 7626751 MB
   Stripe-unit size                         : 1024 KB
   Interface Type                           : Serial ATA
   Device Type                              : HDD
   Read-cache setting                       : Enabled
   Read-cache status                        : On
   Write-cache setting                      : On when protected by battery/ZMM
   Write-cache status                       : On
   maxCache read cache setting              : Enabled
   maxCache read cache status               : Off
   maxCache write cache setting             : Disabled
   maxCache write cache status              : Off
   Partitioned                              : Yes
   Protected by Hot-Spare                   : No
   Bootable                                 : Yes
   Failed stripes                           : Yes
   Power settings                           : Disabled
----------------------------------------------------------------------
Physical Device information
----------------------------------------------------------------------
      Device #0
         Device is a Hard drive
         State                              : Online
         Block Size                         : 4K Bytes
      Device #1
         Device is a Hard drive
         State                              : Online
         Block Size                         : 4K Bytes
      Device #2
         Device is a Hard drive
         State                              : Online
         Block Size                         : 4K Bytes
      Device #3
         Device is a Hard drive
         State                              : Online
         Block Size                         : 4K Bytes
      Device #4
         Device is a Hard drive
         State                              : Online
         Block Size                         : 4K Bytes
      Device #5
         Device is a Hard drive
         State                              : Online
         Block Size                         : 4K Bytes
      Device #6
         Device is a Hard drive
         State                              : Online
         Block Size                         : 4K Bytes
      Device #7
         Device is a Hard drive
         State                              : Online
         Block Size                         : 4K Bytes

Este es el estado SMART de cada una de las unidades del conjunto:

[root@mediaserv ~]# smartctl -a -d "aacraid,0,0,0" /dev/sdc | grep health
SMART overall-health self-assessment test result: PASSED
[root@mediaserv ~]# smartctl -a -d "aacraid,0,0,1" /dev/sdc | grep health
SMART overall-health self-assessment test result: PASSED
[root@mediaserv ~]# smartctl -a -d "aacraid,0,0,2" /dev/sdc | grep health
SMART overall-health self-assessment test result: PASSED
[root@mediaserv ~]# smartctl -a -d "aacraid,0,0,3" /dev/sdc | grep health
SMART overall-health self-assessment test result: PASSED
[root@mediaserv ~]# smartctl -a -d "aacraid,0,0,4" /dev/sdc | grep health
SMART overall-health self-assessment test result: PASSED
[root@mediaserv ~]# smartctl -a -d "aacraid,0,0,5" /dev/sdc | grep health
SMART overall-health self-assessment test result: PASSED
[root@mediaserv ~]# smartctl -a -d "aacraid,0,0,6" /dev/sdc | grep health
SMART overall-health self-assessment test result: PASSED
[root@mediaserv ~]# smartctl -a -d "aacraid,0,0,7" /dev/sdc | grep health
SMART overall-health self-assessment test result: PASSED

SIN EMBARGO, hace apenas un par de horas que revisaba los registros encontré lo siguiente:

Jan  4 08:25:25 mediaserv kernel: sd 12:0:0:0: [sdc] tag#0 FAILED Result: hostbyte=DID_OK driverbyte=DRIVER_SENSE cmd_age=9s
Jan  4 08:25:25 mediaserv kernel: sd 12:0:0:0: [sdc] tag#0 Sense Key : Hardware Error [current]
Jan  4 08:25:25 mediaserv kernel: sd 12:0:0:0: [sdc] tag#0 Add. Sense: Internal target failure
Jan  4 08:25:25 mediaserv kernel: sd 12:0:0:0: [sdc] tag#0 CDB: Read(16) 88 00 00 00 00 01 60 2f 5c bf 00 00 00 20 00 00
Jan  4 08:25:25 mediaserv kernel: blk_update_request: critical target error, dev sdc, sector 47269471736 op 0x0:(READ) flags 0x80700 phys_seg 5 prio class 0

Cinco de los anteriores en secuencia, que aún continúan en los registros, y los siguientes al mismo tiempo que la máquina perdió el sistema de archivos:

Jan  4 08:26:32 mediaserv kernel: aacraid: Host adapter abort request.#012aacraid: Outstanding commands on (12,0,0,0):
Jan  4 08:26:32 mediaserv kernel: aacraid: Host adapter abort request.#012aacraid: Outstanding commands on (12,0,0,0):
Jan  4 08:26:32 mediaserv kernel: aacraid: Host adapter abort request.#012aacraid: Outstanding commands on (12,0,0,0):
Jan  4 08:26:55 mediaserv kernel: aacraid: Host adapter abort request.#012aacraid: Outstanding commands on (12,0,0,0):
Jan  4 08:26:55 mediaserv kernel: aacraid: Host bus reset request. SCSI hang ?
Jan  4 08:26:55 mediaserv kernel: aacraid 0000:02:00.0: outstanding cmd: midlevel-0
Jan  4 08:26:55 mediaserv kernel: aacraid 0000:02:00.0: outstanding cmd: lowlevel-0
Jan  4 08:26:55 mediaserv kernel: aacraid 0000:02:00.0: outstanding cmd: error handler-0
Jan  4 08:26:55 mediaserv kernel: aacraid 0000:02:00.0: outstanding cmd: firmware-56
Jan  4 08:26:55 mediaserv kernel: aacraid 0000:02:00.0: outstanding cmd: kernel-0
Jan  4 08:26:55 mediaserv kernel: aacraid 0000:02:00.0: Controller reset type is 3
Jan  4 08:26:55 mediaserv kernel: aacraid 0000:02:00.0: Issuing IOP reset
Jan  4 08:27:30 mediaserv kernel: aacraid 0000:02:00.0: IOP reset succeeded
Jan  4 08:27:30 mediaserv kernel: aacraid: Comm Interface type2 enabled
Jan  4 08:27:56 mediaserv kernel: aacraid 0000:02:00.0: Scheduling bus rescan

Lo interesante a tener en cuenta es que la matriz entró en modo degradado y luego, 10 horas y 15 minutos después, sucedió lo anterior. Entonces, el problema de la matriz y el problema del sistema de archivos xfs estaban separados por horas. Y aunque ahora el conjunto y las unidades están en buen estado, estoyaúnrecibiendo el bloque "Resultado FALLADO" anterior.

información relacionada