zfs Import bei FreeBSD nicht möglich

Hallo erst mal,

Ich habe lange mein ZFS-Pool unter OpenSolaris betrieben und habe vor kurzem entdeckt das nun FreeBSD auch in der Lage ist ZFS zu verwalten. Darum möchte ich eigentlich mein Storage auf FreeBDS wechseln. Leider gestalltet sich das etwas schwiriger als ich dachte denn obwohl die ZFS/ZPOOL versionen beider OS übereinander stimmen kann ich mein Pool in der neu gebauten FreeBSD Umgebung nicht importieren.

wenn ich "zpool import" benutze bekomme ich nix als feedback.

Benutze ich "zpool import <poolname>"

bekomme ich nur ein fehler das es dieses pool nicht gibt.

Das selbe in meinem alten Solaris funktioniert, er sieht mit "zpool import" den nicht eingebundenen ZFS-Pool

wenn ich aber nach den HDs suche finde ich die normal in /dev/ also wo liegt das problem ? beide OS benutzen zfs version 3 und zpool version 13

Ich wäre um etwas hilfe super froh.

Grüsse
Black
 
Ich habe lange mein ZFS-Pool unter OpenSolaris betrieben und habe vor kurzem entdeckt das nun FreeBSD auch in der Lage ist ZFS zu verwalten. Darum möchte ich eigentlich mein Storage auf FreeBDS wechseln. Leider gestalltet sich das etwas schwiriger als ich dachte denn obwohl die ZFS/ZPOOL versionen beider OS übereinander stimmen kann ich mein Pool in der neu gebauten FreeBSD Umgebung nicht importieren.

wenn ich "zpool import" benutze bekomme ich nix als feedback.
Normalerweise solltest Du eine Meldung bekommen, dass der Pool zuletzt von einem anderen System genutzt wurde und Du ihn jetzt mit der Option -f erzwingen musst.

Benutze ich "zpool import <poolname>"

bekomme ich nur ein fehler das es dieses pool nicht gibt.
Vage Vermutung: Im Pool sind als Vdevs Solaris-Gerätenamen hinterlegt (also sowas wie c0t0d0 oder so...) - und die gibt es unter FreeBSD natürlich nicht. Schau mal unter Solaris nach, aus welchen (physischen) Geräten sich der Pool zusammensetzt. Vielleicht hilft es was, Symlinks mit diesen Namen auf die FreeBSD-Geräte anzulegen.
 
Sonst könnte es noch sein, dass der Pool eine neuere ZFS-Version hat, als FreeBSD unterstützt. FreeBSD ist bei 13, OpenSolaris weiter. Irgendwo bei 16 oder vielleicht schon 17. Weiß ich nicht so genau.
 
Vage Vermutung: Im Pool sind als Vdevs Solaris-Gerätenamen hinterlegt (also sowas wie c0t0d0 oder so...) - und die gibt es unter FreeBSD natürlich nicht. Schau mal unter Solaris nach, aus welchen (physischen) Geräten sich der Pool zusammensetzt. Vielleicht hilft es was, Symlinks mit diesen Namen auf die FreeBSD-Geräte anzulegen.


Das finde ich garnicht mal so schlecht überlegt, auf die idee bin ich nicht gekommen !

Leider weis ich nicht wie ich das anstellen soll den laut solaris sind diese disks ind "/dev/rdsk" oder "/dev/dsk".
Natürlich gibt es in FreeBSD dieses Verzeichnis nicht und wenn ich es anlegen will kommt der fehler "mkdir: dsk: Operation not supported".

Yamagi, jo is wirklich beides V13. Ich habe Opensolaris relativ lange in betieb gehabt und nix geupdatet.

eric81, zfs send/Receive ist doch für Shnapshots eines bestehenden pool odeR ? ich hab den pool ja nichmal eingebunden :(

das merkwürdige ist wirklich das ich "zpool import benutze" und kein Feedback zurück kommt. Nix von wegen kein Pool gefunden. nur wenn ich gezielt nach "zpool import <poolname>" suche...

Es freut mich riesig das ihr mir so flott versucht zu helfen! Danke vielmals für euer Beitrag bis jetzt :D

Grüsse
Black
 
Zuletzt bearbeitet:
Die ZFS Version ist erstmal uninteressant, wichtiger waere, dass die ZPOOL Version uebereinstimmt. Ist das denn gegeben?

Achja, hast du den Pool auch explizit exportiert? Geht es hier um ganze Disks oder hast du den Pool auf Slices angelegt?
 
...
eric81, zfs send/Receive ist doch für Shnapshots eines bestehenden pool odeR ? ich hab den pool ja nichmal eingebunden :(
...

Du brauchst erstmal auf der FreeBSD Maschine ein FreeBSD-ZPool. Wenn das Solaris ein anderer Rechner ist, kannst Du die Datasets dann übers LAN übertragen. Wenn das Solaris und FreeBSD auf dem selben Rechner läuft, müsstes Du die Datasets erstmal (per zfs send pool/snapshot > datei) in Dateien zwischenspeichern (von Solaris aus), dann FreeBSD booten und per zfs receive in den neuen Pool schreiben. Ich befürchte jedoch Du hast nicht den Platz das erstmal zwischenzuspeichern und nur die Platten des Solaris-ZPools zur Verfügung ...
 
Die ZFS Version ist erstmal uninteressant, wichtiger waere, dass die ZPOOL Version uebereinstimmt. Ist das denn gegeben?

Achja, hast du den Pool auch explizit exportiert? Geht es hier um ganze Disks oder hast du den Pool auf Slices angelegt?

Is mir schon klar das es hier um die zpool Version geht die ZFS verion is ja noch net bei 10 oder höher (soviel ich weiss).

ja ich hab beides versucht mit und ohne vorheriges Exportieren der Disks. Es sind ganz normals 1TB Disks die via sata Controller angeschlossen sind und im Opensolaris wie auch in FreeBSD aufgeführt.

eric81 schrieb:
Du brauchst erstmal auf der FreeBSD Maschine ein FreeBSD-ZPool. Wenn das Solaris ein anderer Rechner ist, kannst Du die Datasets dann übers LAN übertragen. Wenn das Solaris und FreeBSD auf dem selben Rechner läuft, müsstes Du die Datasets erstmal (per zfs send pool/snapshot > datei) in Dateien zwischenspeichern (von Solaris aus), dann FreeBSD booten und per zfs receive in den neuen Pool schreiben. Ich befürchte jedoch Du hast nicht den Platz das erstmal zwischenzuspeichern und nur die Platten des Solaris-ZPools zur Verfügung ...

Es ist der selbe Rechner ich wechsle zZ. einfach die System Disk und somit das OS.
Wie du vermutest habe ich kein Spielraum weil ich neben dem Pool (4x 1TB Disks) nur eine 500GB und die zwei kleinen System Disks hab (16GB)
ich hab natürlich noch ein zweites System das ich temporär einspannen könnte..

Ist es möglich mit einer der Disk auf dem anderen System(freebsd) ein neues 1 Disk raidz1 zu erstellen und als (vorerst) nicht redundante disk mit Daten der verbleibenden 3 Disks zu füllen und anschliessend Disk für Disk ins neue Raid zu wechseln und somit das alte aufzulösen ?

Grüsse
Black
 
Zuletzt bearbeitet:
Ist es möglich mit einer der Disk auf dem anderen System(freebsd) ein neues 1 Disk raidz1 zu erstellen und als (vorerst) nicht redundante disk mit Daten der verbleibenden 3 Disks zu füllen und anschliessend Disk für Disk ins neue Raid zu wechseln und somit das alte aufzulösen ?

Laut zpool Manpage (Abschnitt zpool attach) kannst Du zu einem raidz keine Platten hinzufügen. Ein raidz mit nur einer Platte anlegen dürfte auch nicht klappen.

Machst Du kein Backup von dem ZPool? Kein Platz, was? Bei solchen Aktionen ist schnell mal alles weg ...
 
Laut zpool Manpage (Abschnitt zpool attach) kannst Du zu einem raidz keine Platten hinzufügen. Ein raidz mit nur einer Platte anlegen dürfte auch nicht klappen.

Machst Du kein Backup von dem ZPool? Kein Platz, was? Bei solchen Aktionen ist schnell mal alles weg ...

du normal reicht mir die eine Disk als Redundanz für meine Daten und normal bastle ich auch nix am OS. aber ich sehe das FreeBSD mir insgesammt besser gefällt als Storage OS darum wollte ich wechseln.

Dann ist es insgesammt nicht möglich so Pools von Solaris nach FreeBSD zu portieren? oder hab ich einfach pech?

Grüsse Black:(
 
Mich wundert das schon etwas, aber hier ein moeglicher Test: Schnapp dir USB stick und erzeuge ein ZFS auf dem Stick under FreeBSD, versuche ihn dann unter Solaris zu verwenden. Das selbe dann noch umgedreht, musste halt Pool mit passender Version unter Solaris erstellen.

Berichte mal, ob's geklappt hat!
 
Mich wundert das schon etwas, aber hier ein moeglicher Test: Schnapp dir USB stick und erzeuge ein ZFS auf dem Stick under FreeBSD, versuche ihn dann unter Solaris zu verwenden. Das selbe dann noch umgedreht, musste halt Pool mit passender Version unter Solaris erstellen.

Berichte mal, ob's geklappt hat!

Hey das is ne idee, werd ich machen ! *gähn* aber nicht mehr heute ... morgen ^^bin zu müde. Werde auf jedenfall berichten.

Danke, grüsse
 
@blackbinary
Das allerletzte vor dem Abschalten von Solaris sollte
Code:
zpool export poolname
gewesen sein. Hast Du das gemacht?

Hab heut bissl mit nem raidz rumgetestet: wenn man einen pool nicht vor dem Umstöpseln (neue Gerätenamen) mit "zpool export poolname" freigibt, dann wird der Pool nur als defekt / korrupt erkannt.

Das kann man umgehen, wenn man zu nem pool statt Devicenamen eine GPT-Partitions-ID angibt:
* mit gpart die Platte partitionieren
* mit "glabel list" dann die ID raussuchen
* dann "zpool create poolname gptid/42f75a46-a0ae-12de-9c3f-021d7d793460"

Diese ID sollte immer gleich bleiben, und ist damit eine eindeutiger Eintrag unter /dev/gptid/

(Das ganze natürlich ohne Gewähr)
 
hi,
Danke für die Infos jedoch hat sich das Problem erledigt. Ich hab's aufgegeben. Leider konnte ich das mit dem USB stick nicht testen da ich gerade nix zur Hand hatte.

Am ende ist es mir zu blöd und ich Lagere die Dataten bei einem Freund aus während dem ich die Disks Platt mach. - Eine gute Gelegenheit um auch noch die Geometrie des Raidz zu ändern und auf nun 8Disks zu erweitern. Entlich auf FreeBSD ZFS umstellen. *freu*

Ich danke aber riesig für eure Unterstützung echt nette Leute hier im Forum. :)

Grüsse
Black
 
uiuiui ! die machen aber vorwärts ... aber das Zeuch soll Stable werden und auf Freebsd ebenfalls kommen >.<

Man arbeitet daran die aktuelle Spezifikation v19 zu portieren:
http://www.freebsd.org/news/status/report-2009-04-2009-09.html#FreeBSD/ZFS

Aber nur weil die Versionsnummer so schnell angestiegen ist, heißt das nicht, dass sich wahnsinnig viel getan hat ;)

v14:
passthrough-x aclinherit property support

v15:
userused@... and groupused@... properties
userquota@... and groupquota@... properties

v16:
stmf property support

v17:
triple-parity RAID-Z

v18:
ZFS snapshot holds

Da ist es wirklich nur interessant, um halt ZFS-Volumes von Solaris zu importieren.
 
Pawell - Mr FreeBSD-ZFS - portiert gerade eine Version 19. Ich weiß nicht, wo er sie her hat, denn ein Solaris-Snapshot der diese nutzt, existiert noch nicht. Aber nunja, das benötigt eh Zeit. Erstmal muss 8.0 aus der Tür, dann frühestens zu 8.1. Vielleicht aber auch erst später.

EDIT: Die Version wird ja auch jedes mal erhöht, wenn sich das Datenlayout auf der Platte ändert. Daher sind wie oben gezeigt die Änderungen meist eh sehr gering. Wie -Nuke- sagt, da ist nichts bei, was man nun dringend bräuchte.
 
Zurück
Oben