[SOLVED] ZFS: Import von Pool schlägt fehl …

syntaxys

Webentwickler
Hallo Forum,

seit kurzem experimentiere ich mit ZFS auf meinem HomeServer und manches klappt nicht so, wie erwartet. Ich weiß jetzt nicht, ob ich hier richtig bin für den Austausch darüber. Falls jemand bessere Tipps zum Thema Hilfe zu ZFS hat, bitte her damit :)

Ich habe 2 Pools auf eigenen Partitionen angelegt. Die Snapshots möchte ich jedoch in Dateien auf einer externen Platte sichern – das klappt soweit problemlos. Nach der Sicherung der Snapshots hänge ich den Pool mit zpool export backuppool wieder aus und kann die Platte ausschalten. Jetzt möchte ich den Recovery Case testen und der schlägt fehl, daher mal der Ablauf:

Bash:
root@HomeServer:~# touch /mnt/ExterneHDD/ZFS-Backuppools/backuppool
root@HomeServer:~# truncate -s 10G /mnt/ExterneHDD/ZFS-Backuppools/backuppool
root@HomeServer:~# zpool create backuppool /mnt/ExterneHDD/ZFS-Backuppools/backuppool
root@HomeServer:~# zpool status
  pool: backuppool
 state: ONLINE
config:

    NAME                                               STATE     READ WRITE CKSUM
    backuppool                                    ONLINE       0     0     0
      /mnt/ExterneHDD/ZFS-Backuppools/backuppool  ONLINE       0     0     0

errors: No known data errors

  pool: mediapool
 state: ONLINE
  scan: resilvered 182G in 01:20:29 with 0 errors on Sun Feb 11 14:03:26 2024
config:

    NAME                   STATE     READ WRITE CKSUM
    mediapool              ONLINE       0     0     0
      6985955672989889979  ONLINE       0     0     0

errors: No known data errors

  pool: systempool
 state: ONLINE
config:

    NAME        STATE     READ WRITE CKSUM
    systempool  ONLINE       0     0     0
      sdc1      ONLINE       0     0     0

errors: No known data errors
root@HomeServer:~# zfs set mountpoint=legacy backuppool
root@HomeServer:~# zfs set compression=lz4 backuppool
root@HomeServer:~# zfs snapshot -r systempool@backup.2024-02-13
root@HomeServer:~# zfs send -v -R systempool@backup.2024-02-13 | zfs recv -F backuppool
root@HomeServer:~# zpool export backuppool

Soweit funktioniert das Backup problemlos. Wenn ich jedoch versuche, den Pool zu importieren, klappt das nicht:

Bash:
root@HomeServer:~# zpool list
NAME         SIZE  ALLOC   FREE  CKPOINT  EXPANDSZ   FRAG    CAP  DEDUP    HEALTH  ALTROOT
mediapool    232G   181G  50.8G        -         -     0%    78%  1.00x    ONLINE  -
systempool   232G  4.02G   228G        -         -     0%     1%  1.00x    ONLINE  -

root@HomeServer:~# zpool status
  pool: mediapool
 state: ONLINE
  scan: resilvered 182G in 01:20:29 with 0 errors on Sun Feb 11 14:03:26 2024
config:

    NAME                   STATE     READ WRITE CKSUM
    mediapool              ONLINE       0     0     0
      6985955672989889979  ONLINE       0     0     0

errors: No known data errors

  pool: systempool
 state: ONLINE
config:

    NAME        STATE     READ WRITE CKSUM
    systempool  ONLINE       0     0     0
      sdc1      ONLINE       0     0     0

errors: No known data errors

root@HomeServer:~# zpool import backuppool
cannot import 'backuppool': no such pool available
root@HomeServer:~# zpool import -f backuppool
cannot import 'backuppool': no such pool available
root@HomeServer:~# zpool import backup_systempool /mnt/ExterneHDD/ZFS-Backuppools/backuppool
cannot import 'backuppool': no such pool available

root@HomeServer:~# zdb -l /mnt/ExterneHDD/ZFS-Backuppools/backuppool
------------------------------------
LABEL 0
------------------------------------
    version: 5000
    name: 'backuppool'
    state: 1
    txg: 291
    pool_guid: 11901997336985195365
    errata: 0
    hostid: 1757367822
    hostname: 'HomeServer'
    top_guid: 9208831991364584357
    guid: 9208831991364584357
    vdev_children: 1
    vdev_tree:
        type: 'file'
        id: 0
        guid: 9208831991364584357
        path: '/mnt/ExterneHDD/ZFS-Backuppools/backuppool'
        metaslab_array: 131
        metaslab_shift: 29
        ashift: 9
        asize: 10732699648
        is_log: 0
        create_txg: 4
    features_for_read:
        com.delphix:hole_birth
        com.delphix:embedded_data
    labels = 0 1 2 3

root@HomeServer:~# zpool import -d /mnt/ExterneHDD/ZFS-Backuppools/backuppool
   pool: backuppool
     id: 11901997336985195365
  state: ONLINE
 action: The pool can be imported using its name or numeric identifier.
 config:

    backuppool                                    ONLINE
      /mnt/ExterneHDD/ZFS-Backuppools/backuppool  ONLINE

root@HomeServer:~# zpool import -f 11901997336985195365
cannot import '11901997336985195365': no such pool available

Ich stehe jetzt gerade auf der Leitung, warum das nicht klappt. Vielleicht sieht jemand von Euch den Fehler …

Vielen Dank für die Hilfe
Achim
 
Last edited:
Ich hab's grad selbst herausgefunden, try&error ... success ;)
Bash:
root@HomeServer:~# zpool import 11901997336985195365 -d /mnt/ExterneHDD/ZFS-Backuppools/backuppool backuppool
Man muss dem zu importierenden Pool noch einen Namen geben, das ging aus der Doku leider nicht ganz hervor. Aber so ist der Pool wieder aktiv und die Daten können ggfls. zurückgespielt werden.
 
Back
Top