k1l.me

Sep 07, 2017

Kaputte HDD im ZFS Raidz1 ersetzen

In meinem Homeserver nutze ich ja ubuntu mit einem ZFS Raid für die Datenplatten. Der Vorteil des ZFS Raidz1 aus 3 Platten ist ja, dass eine Platte ausfallen kann und die Daten so aufgeteilt sind, dass man die Platte ersetzt und es keinen Datenverlust gibt.

Das ist jetzt bei mir eingetreten:

k1l@server:~$ sudo zpool status -v 
pool: data
state: DEGRADED
status: One or more devices has been removed 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'.
scan: scrub repaired 0 in 5h46m with 0 errors on Sun Aug 13 06:10:02 2017
config:
NAME                                           STATE     READ WRITE CKSUM
data                                           DEGRADED     0     0     0
  raidz1-0                                     DEGRADED     0     0     0
    ata-WDC_WD2003FYPS-27W9B0_WD-WCAVY5081983  ONLINE       0     0     0
    ata-WDC_WD20EADS-00W4B0_WD-WCAVY6594242    REMOVED      0     0     0
    ata-SAMSUNG_HD204UI_S2HGJD1B502184         ONLINE       0     0     0
errors: No known data errors

Die Platte war nachdem immer wieder Fehler auftraten sogar so kaputt, dass sie direkt als REMOVED markiert ist.

Also Platte raus, neue rein. Dank dem Cremax Icy Dock FlexCage ist das kein großer Akt (man muss nur die richtige Platte erwischen :X ).

Wenn die neue Platte drin ist kann man sich mit

k1l@server:~$ ls -lh /dev/disk/by-id/

die Benennung der neuen Platte anzeigen lassen. In diesem Fall war es: ata-WDC_WD20EFRX-68EUZN0_WD-WCC4M1NN1HD9

Dann sagt man dem ZFS, dass es die Platte ins Raid ersetzen soll und die Paritätsdaten rumkopieren soll:

sudo zpool replace data ata-WDC_WD20EADS-00W4B0_WD-WCAVY6594242 ata-WDC_WD20EFRX-68EUZN0_WD-WCC4M1NN1HD9 -f

Das -f am Ende braucht man, weil sonst gemeckert wird:

use '-f' to override the following errors: /dev/disk/by-id/ata-WDC_WD20EFRX-68EUZN0_WD-WCC4M1NN1HD9 does not contain an EFI label but it may contain partition information in the MBR.

Jetzt muss man nur noch warten bis ZFS mit dem Resilvering fertig ist.