Pool wird bei Pool Import nicht angezeigt und "zpool import" funkoniert auch nicht

jan__1104

Dabbler
Joined
Apr 16, 2023
Messages
15
Guten Tag,

Wir sind vor kurzem von TrueNAS Core auf TrueNAS Scale umgestigen.

Haben 2x 20TB in ZFS im Mirror am laufen gehabt. Der Pool nannte sich Storage.

Wollte jetzt bei "Speicher" den Pool importieren nur er wird nicht angezeigt.

Wenn ich die Shell nutze kommt das:

root@pohlnas[-}# zpool import pool: Storage 5768657522921904480 sta! UNAVAIL status: One or more devices contains corrupted data. action: The pool cannot be imported due to damaged devices or data. see: https://openzfs.github. io/openzf s-docs/msg/ZFS-800@-5E config: Storage UNAVAIL insufficient replicas T7feabea-7d86-483f-bc6d-4abce49689f6 ONLINE ad70bb42-4eb6-4f17-a201-959405004390 UNAVAIL
 

jan__1104

Dabbler
Joined
Apr 16, 2023
Messages
15
Hab nicht hinbekommen den Code im Post einzufügen
 

Attachments

  • Screenshot 2023-04-16 223948.png
    Screenshot 2023-04-16 223948.png
    31.7 KB · Views: 116

VeitS

Dabbler
Joined
Aug 22, 2018
Messages
16
Ich bin kein Fachmann, was ZFS betrifft. Ich meine mal gelesen zu haben, ist aber schon länger her, daß ZFS unter Linux nicht ganz das ist was ZFS unter BSD - was den Entwicklungs-/Portierungsstand betrifft. Kann natürlich inzwischen anders aussehen. Könnte m. E. also durchaus sein, das ZFS on Linux den Pool von BSD nicht erkennt. Vielleicht ist BSD da weiter und Linux kann den Pool deshalb nicht erkennen?

Alternativ könntest du natürlich auch die Platten wieder an TrueNAS anhängen und auf externe Datentrräger umkopieren und die dann in TrueNAS Scale neu einlesen. Mit Sicherheit viel Aufwand, aber vermutlich sicher und unterm Strich vielleicht schneller als der Weg über den Poolimport?
 

LarsR

Guru
Joined
Oct 23, 2020
Messages
719
Auf dem angehängten Screenshot steht, dass eine der Platten vom Mirror nicht erkannt wird und der Pool daher nicht importiert werden kann.
Überprüf mal die Verkabelung beider Platten und, ob beide Platten im Bios erkannt werden.
Alternativ kann man glaube ich mit zpool import "poolname" -f den Import forcieren - ob das jedoch hier eine gute Idee ist kann ich nicht sagen.
 

jan__1104

Dabbler
Joined
Apr 16, 2023
Messages
15
Auf dem angehängten Screenshot steht, dass eine der Platten vom Mirror nicht erkannt wird und der Pool daher nicht importiert werden kann.
Überprüf mal die Verkabelung beider Platten und, ob beide Platten im Bios erkannt werden.
Alternativ kann man glaube ich mit zpool import "poolname" -f den Import forcieren - ob das jedoch hier eine gute Idee ist kann ich nicht sagen.
Das mit dem forcieren funkoniert nicht da wird der Poolname nicht gefunden
 

jan__1104

Dabbler
Joined
Apr 16, 2023
Messages
15
Ich bin kein Fachmann, was ZFS betrifft. Ich meine mal gelesen zu haben, ist aber schon länger her, daß ZFS unter Linux nicht ganz das ist was ZFS unter BSD - was den Entwicklungs-/Portierungsstand betrifft. Kann natürlich inzwischen anders aussehen. Könnte m. E. also durchaus sein, das ZFS on Linux den Pool von BSD nicht erkennt. Vielleicht ist BSD da weiter und Linux kann den Pool deshalb nicht erkennen?

Alternativ könntest du natürlich auch die Platten wieder an TrueNAS anhängen und auf externe Datentrräger umkopieren und die dann in TrueNAS Scale neu einlesen. Mit Sicherheit viel Aufwand, aber vermutlich sicher und unterm Strich vielleicht schneller als der Weg über den Poolimport?
Das ist das Problem. warum auch immer ist die zweite Festplatte komplett leer und formatiert ist.

Somit ist die zweite Festplatte leer und auf der ersten ist noch der pool.
 

Patrick M. Hausen

Hall of Famer
Joined
Nov 25, 2013
Messages
7,776
1. ZFS ist dank des OpenZFS Projekts in Linux und FreeBSD so weit möglich identisch.
2. Das ist kein Mirror VDEV sondern ein Pool mit zwei einzelnen Platten im Stripe.
3. Eine der Platten ist offline, warum auch immer.
4. Sollte das so bleiben, weil sie z.B. defekt ist, sind die Daten Toast wegen 2.
 

jan__1104

Dabbler
Joined
Apr 16, 2023
Messages
15
1. ZFS ist dank des OpenZFS Projekts in Linux und FreeBSD so weit möglich identisch.
2. Das ist kein Mirror VDEV sondern ein Pool mit zwei einzelnen Platten im Stripe.
3. Eine der Platten ist offline, warum auch immer.
4. Sollte das so bleiben, weil sie z.B. defekt ist, sind die Daten Toast wegen 2.
Toast?
 

Patrick M. Hausen

Hall of Famer
Joined
Nov 25, 2013
Messages
7,776
Weg, kaputt, unwiederbringlich. Wenn ein VDEV eines Pools fehlt, ist der Pool weg. Hat man innerhalb der einzelnen VDEVs keine Redundanz ...
 

jan__1104

Dabbler
Joined
Apr 16, 2023
Messages
15
Weg, kaputt, unwiederbringlich. Wenn ein VDEV eines Pools fehlt, ist der Pool weg. Hat man innerhalb der einzelnen VDEVs keine Redundanz ...
Das ist aber komisch weil wo wir den pool erstellt. Und haben extra 2 festplatten gekauft und die andere in den mirror gepackt damit wenn eine ausfällt wir die daten auf einer zweiten haben
 

jan__1104

Dabbler
Joined
Apr 16, 2023
Messages
15
Das ist aber komisch weil wo wir den pool erstellt. Und haben extra 2 festplatten gekauft und die andere in den mirror gepackt damit wenn eine ausfällt wir die daten auf einer zweiten haben
außer dem sind auf der funktionierende Festplatte 9 TB von 20 TB belegt
 

Patrick M. Hausen

Hall of Famer
Joined
Nov 25, 2013
Messages
7,776
Du hast keinen Mirror gebaut sondern ein Stripe über beide Platten, wenn das hier dein Pool ist:

Es sind zwei VDEVs im Pool, die aus je einer Platte bestehen. Ein Mirror wäre ein VDEV aus zwei (mindestens) Platten.
 

jan__1104

Dabbler
Joined
Apr 16, 2023
Messages
15
Du hast keinen Mirror gebaut sondern ein Stripe über beide Platten, wenn das hier dein Pool ist:

Es sind zwei VDEVs im Pool, die aus je einer Platte bestehen. Ein Mirror wäre ein VDEV aus zwei (mindestens) Platten.
Beim erstellen des Pools habe ich die beiden Festplatten hinzugefügt und oben ist ein Dropdownmenu wo man von Stripe auf Mirror umschalten kann das habe ich getan.

Das System lief fast 4 Jahre so bei mir und die Festplatten wurden auch gleich genutzt.
 

Patrick M. Hausen

Hall of Famer
Joined
Nov 25, 2013
Messages
7,776
Mich bringt die Anzeige in deinen Screenshot zu dieser Diagnose. Ich zeigs dir morgen ausführlicher, muss eine VM dazu bauen.
 

jan__1104

Dabbler
Joined
Apr 16, 2023
Messages
15
Beim Erstellen in TrueNAS Core habe ich Unten Mirror ausgewählt

Kann ich nicht dem Pool sagen das es kein Mirror mehr ist.
 

Attachments

  • Screenshot_ZFS_Mirror.png
    Screenshot_ZFS_Mirror.png
    357.2 KB · Views: 102
Last edited:

Patrick M. Hausen

Hall of Famer
Joined
Nov 25, 2013
Messages
7,776
Poste doch bitte noch mal den Output mit dem Status in Code Tags. Sowohl dein Screenshot als auch das oben drüber sind schwierig zu deuten. Auch interessiert mich, woher du weißt, wie voll die eine Platte gerade ist, wenn sich der Pool doch nicht mehr importieren lässt?

Ich nehm nochmal das aus dem Screenshot als "Realität". Das ist ein Pool mit zwei separaten VDEVs in einem Stripe. Sieht, wenn ich das hier nachbaue, so aus:
Code:
config:

    NAME              STATE     READ WRITE CKSUM
    testpool          ONLINE       0     0     0
      /mnt/hdd/disk1  ONLINE       0     0     0
      /mnt/hdd/disk2  ONLINE       0     0     0

Du siehst den Pool "testpool" und direkt darunter zwei VDEVs.

Wenn man ein gespiegeltes VDEV anlegt, dann sieht das Ergebnis so aus:
Code:
config:

    NAME                STATE     READ WRITE CKSUM
    testpool2           ONLINE       0     0     0
      mirror-0          ONLINE       0     0     0
        /mnt/hdd/disk1  ONLINE       0     0     0
        /mnt/hdd/disk2  ONLINE       0     0     0

Du siehst im Pool ein VDEV vom Typ "mirror" und darunter zwei Platten - ich hab hier zu Demonstrationszwecken einfach mal 1 GB große Files genommen.

Ein Pool aus gespiegelten VDEVs lässt sich auch bei Ausfall einer Platte problemlos importieren. Deshalb spricht alles dafür, dass deiner es nicht ist.

Probieren wir das hier doch auch nochmal aus und machen eine der beiden "Platten" kaputt:
Code:
dd if=/dev/zero of=/mnt/hdd/disk1 bs=1m count=1024
zpool scrub testpool2
zpool status testpool2
  pool: testpool2
 state: DEGRADED
status: One or more devices could not be used because the label is missing or
    invalid.  Sufficient replicas exist for the pool to continue
    functioning in a degraded state.
action: Replace the device using 'zpool replace'.
   see: https://openzfs.github.io/openzfs-docs/msg/ZFS-8000-4J
  scan: scrub repaired 0B in 00:00:00 with 0 errors on Tue Apr 18 15:43:36 2023
config:

    NAME                STATE     READ WRITE CKSUM
    testpool2           DEGRADED     0     0     0
      mirror-0          DEGRADED     0     0     0
        /mnt/hdd/disk1  UNAVAIL      0     0     0  invalid label
        /mnt/hdd/disk2  ONLINE       0     0     0

errors: No known data errors


Eine Platte "UNAVAIL" aber "No known data errors". Der Pool ist nach wie vor verfügbar.

Deine Topologie sieht 100% so aus, dass das eben kein Mirror ist. Wie es dazu kam, weiß ich natürlich nicht, aber der Pool, den du da zu importieren versuchst, ist in dieser Form kaputt. Wenn der Zustand "UNAVAIL" einer der beiden Platten nur temporär ist, weil nicht die Platte defekt ist, sondern Controller, Kabel, Stromversorgung, ... dann kannst du die Daten wiederbekommen. Ist die Platte hin, sind die Daten weg.
 

jan__1104

Dabbler
Joined
Apr 16, 2023
Messages
15
Als der Pool noch lief wurde gesamt 18TB angezeigt und belegt 9TB angezeigt.

Die Festplatte ist komplett leer. Gibt es eine Möglichkeit das ich die 2. Platte wiederherstellen kann?
 

Patrick M. Hausen

Hall of Famer
Joined
Nov 25, 2013
Messages
7,776
Die Platte ist nicht leer aber ohne beide Platten kann der Pool nicht wiederhergestellt werden. Wie sind die Platten angeschlossen? Hast du die Verkabelung überprüft, evtl. den Port gewechselt, wird die Platte überhaupt angezeigt, z.B. in camcontrol devlist?

Wie hast du dir denn diese "leere" Platte angesehen?

Du brauchst ein System mit ZFS und beiden Platten angeschlossen und aktiv oder die Daten sind weg. Du hast hoffentlich ein Backup?
 

jan__1104

Dabbler
Joined
Apr 16, 2023
Messages
15
Die Platte ist nicht leer aber ohne beide Platten kann der Pool nicht wiederhergestellt werden. Wie sind die Platten angeschlossen? Hast du die Verkabelung überprüft, evtl. den Port gewechselt, wird die Platte überhaupt angezeigt, z.B. in camcontrol devlist?

Wie hast du dir denn diese "leere" Platte angesehen?

Du brauchst ein System mit ZFS und beiden Platten angeschlossen und aktiv oder die Daten sind weg. Du hast hoffentlich ein Backup?
nach dem das passiert ist hatte ich beide platten na einem anderen Rechner mit Freebsd am laufen und da stand das eine formatiert worden ist

Ja ein Backup gibt es ist nur etwas älter.

ich versuche erstmal die Partition von der kaputten platte wieder herzustellen.
 

Patrick M. Hausen

Hall of Famer
Joined
Nov 25, 2013
Messages
7,776
Was genau "stand da"?
 
Top