zpool import -f fuehrt zu panic

ageriti

New Member
Hallo,

nach dem Wechsel einer fehlerhaften Platte kann der Pool nicht mehr importiert werden:
System ist: FreeBSD rescue 9.2-RELEASE FreeBSD 9.2-RELEASE #0 r256259M:

Die Situation ist folgende:

Code:
[root@rescue ~]# zpool status
no pools available
[root@rescue ~]# zpool import
  pool: nas
    id: 14937102299129524248
  state: ONLINE
status: One or more devices contains corrupted data.
action: The pool can be imported using its name or numeric identifier.
  see: http://illumos.org/msg/ZFS-8000-4J
config:

        nas                      ONLINE
          mirror-0                ONLINE
            ada0                  ONLINE
            ada1                  ONLINE
          mirror-1                ONLINE
            12927891433275576434  UNAVAIL  corrupted data
            ada3                  ONLINE
          mirror-2                ONLINE
            ada4                  ONLINE
            ada5                  ONLINE
        spares
          ada6
[root@rescue ~]# zpool status
no pools available

Die ausgetauschte Platte war die mit der langen ID (ehemals ada2).

Ein zpool import -f nas fuehrt unter Freebsd zu einer Panic.
Unter Debian 7 zu Segmentation fault (Datei im Anhang).

Code:
[root@rescue /tmp]# zdb -Fe nas

Configuration for import:
        vdev_children: 3
        version: 28
        pool_guid: 14937102299129524248
        name: 'nas'
        state: 0
        vdev_tree:
            type: 'root'
            id: 0
            guid: 14937102299129524248
            children[0]:
                type: 'mirror'
                id: 0
                guid: 14427233583464092272
                metaslab_array: 35
                metaslab_shift: 34
                ashift: 9
                asize: 3000588042240
                is_log: 0
                create_txg: 4
                children[0]:
                    type: 'disk'
                    id: 0
                    guid: 16016056518956875653
                    phys_path: '/dev/ada0'
                    whole_disk: 1
                    create_txg: 4
                    path: '/dev/ada0'
                children[1]:
                    type: 'disk'
                    id: 1
                    guid: 16471102537926839413
                    phys_path: '/dev/ada1'
                    whole_disk: 1
                    create_txg: 4
                    path: '/dev/ada1'
            children[1]:
                type: 'mirror'
                id: 1
                guid: 3782514580033266983
                metaslab_array: 33
                metaslab_shift: 34
                ashift: 9
                asize: 3000588042240
                is_log: 0
                create_txg: 4
                children[0]:
                    type: 'disk'
                    id: 0
                    guid: 12927891433275576434
                    phys_path: '/dev/ada2'
                    whole_disk: 1
                    create_txg: 4
                    path: '/dev/ada2'
                children[1]:
                    type: 'disk'
                    id: 1
                    guid: 7272933400704860253
                    phys_path: '/dev/ada3'
                    whole_disk: 1
                    create_txg: 4
                    path: '/dev/ada3'
            children[2]:
                type: 'mirror'
                id: 2
                guid: 2249867484320554072
                metaslab_array: 31
                metaslab_shift: 34
                ashift: 9
                asize: 3000588042240
                is_log: 0
                create_txg: 4
                children[0]:
                    type: 'disk'
                    id: 0
                    guid: 5487307246971773706
                    phys_path: '/dev/ada4'
                    whole_disk: 1
                    create_txg: 4
                    path: '/dev/ada4'
                children[1]:
                    type: 'disk'
                    id: 1
                    guid: 11650709242787012863
                    phys_path: '/dev/ada5'
                    whole_disk: 1
                    create_txg: 4
                    path: '/dev/ada5'
Assertion failed: (c < SPA_MAXBLOCKSIZE >> SPA_MINBLOCKSHIFT), file /usr/src/cddl/lib/libzpool/../../../sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zio.c, line 288.
Abort trap: 6 (core dumped)

Weiss jemand weiter?
 

Anhänge

  • panic.txt
    9,9 KB · Aufrufe: 349
Bist du der Assertion schon auf den Grund gegangen?

Allgemein würde ich versuchen den Pool unter der neusten verfügbaren ZFS Version zu importieren. Entferne beschädigte Devices aus dem System, wenn durch redundante VDEVs der Pool dies übersteht.

Teilweise hilft es vfs.zfs.recover=1 in loader.conf zu setzen um noch Daten von einem eigentlich zerstörten Pool zu bekommen. Damit läd man aber Kernelpanics ein, weil man ZFS dazu zwingt mit einem defekten Pool weiterzuarbeiten anstatt rechtzeitig mit einem Fehler abzubrechen.
 
Zurück
Oben