No se puede reemplazar el disco faltante en raidz

No se puede reemplazar el disco faltante en raidz

Mi raidz se degrada después del cambio de mi placa base; no se puede encontrar un disco. El disco que faltaba solía ser /dev/sdh pero ahora se llama /dev/sdg, que es la causa del problema.

En el zpool degradado logré desconectar el disco faltante usando su uid (que encontré usando el comando zdb). Ahora el grupo degradado se ve así:

pool: Media
state: DEGRADED
status: One or more devices has been taken offline by the administrator.
    Sufficient replicas exist for the pool to continue functioning in a
    degraded state.
action: Online the device using 'zpool online' or replace the device with
    'zpool replace'.
scrub: scrub completed after 2h10m with 0 errors on Thu May  1 14:02:43 2014 
config:

    NAME                                                      STATE     READ WRITE CKSUM
    Media                                                     DEGRADED     0     0     0
      raidz1-0                                                ONLINE       0     0     0
        disk/by-id/ata-WDC_WD2003FYYS-02W0B0_WD-WMAY00171958  ONLINE       0     0     0
        disk/by-id/ata-WDC_WD2003FYYS-02W0B1_WD-WCAY00424060  ONLINE       0     0     0
        disk/by-id/ata-WDC_WD2003FYYS-02W0B1_WD-WMAY04082675  ONLINE       0     0     0
      raidz1-1                                                DEGRADED     0     0     0
        sde                                                   ONLINE       0     0     0
        sdf                                                   ONLINE       0     0     0
        sdh                                                   OFFLINE      0     0     0

Sin embargo, no logro reemplazar /dev/sdh por /dev/sdg:

zpool replace Media 3840188586753206212 /dev/disk/by-id/ata-WDC_WD20EZRX-00D8PB0_WD-WMC4M1843609 -f
invalid vdev specification
the following errors must be manually repaired:
/dev/disk/by-id/ata-WDC_WD20EZRX-00D8PB0_WD-WMC4M1843609 is part of active pool 'Media'

... ¿Como puedó resolver esté problema?

Respuesta1

emitir el comando

sudo blkid

Es posible que estés intentando reparar Raidz 1-1 con un miembro o un repuesto reservado para Raidz 1-0. De todos modos, probablemente deberías asegurarte de ensamblar tus matrices de raid en el futuro mediante id en lugar de /dev/sdx

En respuesta al comentario sobre ignorar la membresía. Este es un curso de acción peligroso. Asegúrese de que sus copias de seguridad estén actualizadas y accesibles.Este no es mi punto fuertepero encontré:

Aparentemente esto ha sido preguntado y respondido aquí.Reemplazo de un disco muerto en un zpool

También encontré información aquí que puede o no ser relevante:

http://docs.oracle.com/cd/E19253-01/819-5461/gaypw/index.html

Para eliminar un miembro de un zpool

zpool remove pool vdev

fuente:http://manpages.ubuntu.com/manpages/lucid/man1/zpool.1M.html

Respuesta2

Lo resolví. Aunque no estoy del todo seguro de cómo. En algún momento del camino (creo que después de exportar el grupo e importarlo nuevamente con un nombre diferente), las unidades no fueron dirigidas por su nombre tradicional "/dev/sd*" sino por su ID. No hice nada para forzar el esquema de direccionamiento de identificación; simplemente sucedió.

        NAME                                                      STATE     READ WRITE CKSUM
    Media                                                     ONLINE       0     0     0
      raidz1-0                                                ONLINE       0     0     0
        disk/by-id/ata-WDC_WD2003FYYS-02W0B0_WD-WMAY00171958  ONLINE       0     0     0
        disk/by-id/ata-WDC_WD2003FYYS-02W0B1_WD-WCAY00424060  ONLINE       0     0     0
        disk/by-id/ata-WDC_WD2003FYYS-02W0B1_WD-WMAY04082675  ONLINE       0     0     0
      raidz1-1                                                ONLINE       0     0     0
        disk/by-id/ata-WDC_WD2003FYYS-02W0B1_WD-WCAY00788302  ONLINE       0     0     0
        disk/by-id/ata-WDC_WD2003FYYS-02W0B1_WD-WCAY01088068  ONLINE       0     0     0
        disk/by-id/ata-WDC_WD20EZRX-00D8PB0_WD-WMC4M1843609   OFFLINE       0     0   0

Cada vez que intentaba reemplazar el dispositivo defectuoso mencionado anteriormente con /dev/sdg, la computadora devolvía un error de dispositivo /dev/sdg ocupado. Resultó que debido al cambio en la dirección de identificación, el grupo se "curó" un poco.

Cuando me di cuenta de que la entrada en zpool ya apuntaba al ID del dispositivo /dev/sdg que estaba intentando configurar, solo tuve que poner la unidad en línea con

zpool online Media /dev/disk/by-id/ata-WDC_WD20EZRX-00D8PB0_WD-WMC4M1843609 

y la piscina empezó a volver a platearse.

Por cierto: también intenté borrar los datos de la unidad /dev/sdg para borrar todas las etiquetas y hacer que la unidad olvide que ya forma parte de un grupo activo. No creo que haya ayudado pero tal vez tuvo un efecto del que no soy consciente. La limpieza de dd se describe en los hilos mencionados anteriormente.

Espero que esto ayude a alguien con un problema similar. Gracias a todos los que se tomaron el tiempo de leer mi problema.

información relacionada