Re: FreeBSD von UFS auf ZFS migrieren

Autor: Raphael Eiselstein <rabe_at_uugrn.org>
Datum: Thu, 22 Aug 2013 00:01:56 +0200
Hallo Peter,


On Sat, Aug 17, 2013 at 12:50:09PM +0200, Peter Mueller wrote:
> ich habe folgendes laufendes System 9.1 amd64:
> ada0: Boot, Swap, Root mit UFS
> ada1/2: zfs mirror (2x2G)

Ich nehme an, dass es 2x2TB Platten sind? 
 
> Und wuerde es gerne auf 'zfs only' mit nur 2 Festplatten umstellen.
> 
> Wie ist die beste Vorgehensweise?

Du willst auf die *bestehenden* ZFS-Platten nachträglich den Bootloader
und kerel mit draufpacken? Das kommt darauf an, worauf Dein aktueller
zpool derzeit *tatsächlich* läuft. Wenn es direkt /dev/ada1 und
/dev/ada2 ist (Für Linux-Leute: ada=atapi direct access oder atapi-scsi, 
/dev/sda2 und /dev/sda3) und nicht in Partitionen, dann wird es
schwirig oder unmöglich.

 
> Im Web habe die eine oder andere Seite darüber gefunden. Es wird dort aber immer ein neues System aufgesetzt.
> 
> Ich habe daher folgendes versucht:
> 
> - 2G Platte im ext. Gehäuse angeschlossen
> - Boot, ZFS Partitionen anlegen mit Cachefile auf tmp
> - Root System auf neue ZFS Platte kopieren
> - den im Netz befindlichen Anleitungen im wesentlichen weiter  folgen ...

Ich denke hier kommt es echt auf die Details an.
Meine root-on-zfs Systeme verwenden allesamt GPT zur Partitionierung. Es
gibt im Netz verschiedene Anleitungen, einige davon *falsch* (v.a.
cachefile) oder zu mindest *suboptimal* (zB. 4k alignment bei GPT)
 
Relevant ist vor allem, dass das gpt+zfs-Bootloader verwendet wird.

> Ein 2. identischer Rechner bootet von der dann eingebauten Platte und startet auch den Kernel,
> findet aber die Rootpartition nicht. Error 2 wird angezeigt und die Option das RootFS per Hand anzugeben.

Am "mountroot"-Prompt? Mit "?" kannst Du Dir hier verfügbare devices
anzeigen lassen. Du müsstest hier dann das passende "zfs:zroot" oder
sowas angeben. Aber das geht nur, wenn die USB-Platte tatsächlich
erkannt wurde.

 
> Kann die Weg per USB prinzipiell funktionieren?

USB kann gehen, muss aber nicht.

> Oder gibt es eine bessere Loesung?
Verwende eSATA

> 
> Ich habe auch schonmal in ein Live System auf dem 2. Rechner gebotet, aber dann war da kein rsync um das System vom Originalrechner zu kopieren ...

Das geht auch mit tar+ssh:
auf dem Quellsystem: tar cf - / | ssh zweitrechner "cd /neu && tar xf - "

> Bin fuer Tips dankbar!

Ich kann leider aus deinen eher allgemeinen Angaben keinen Anhaltpunkt
dafür finden, was bei Dir falsch gelaufen sein könnte. Ich weiss, dass
ich wirklich sehr viele Versuche unternommen habe, bis ich gemerkt habe,
wo der eigentliche Bug bei der "zfs-on-root"-Anleitung ist, der ich
gefolgt bin.

IIRC (und soweit ich meine IRC-Logs vom 20. April noch richtig quergelesen
habe): Der relevante Fehler mit dem cachefile ist, dass die Anleitung
korrekt ist bis zu dem punkt, an dem sie auffordert den pool zu
exportieren (vor dem reboot). Scheinbar wird ein zuvor exportierter Pool
eben *nicht* automatisch importiert sondern existiert beim booten
schlichtweg einfach nicht.

Verichtet man auf den "zpool export" in der Anleitung, dann gehts auch
mit dem cachefile.
 
> Gruß,
> Peter

Gruß
Raphael

-- 
Raphael Eiselstein <rabe@uugrn.org>               http://rabe.uugrn.org/
xmpp:freibyter@gmx.de  | https://www.xing.com/profile/Raphael_Eiselstein   
GnuPG:                E7B2 1D66 3AF2 EDC7 9828  6D7A 9CDA 3E7B 10CA 9F2D
.........|.........|.........|.........|.........|.........|.........|..


-- 
UUGRN e.V. http://www.uugrn.org/
http://mailman.uugrn.org/mailman/listinfo/uugrn
Wiki: https://wiki.uugrn.org/UUGRN:Mailingliste
Archiv: http://lists.uugrn.org/

Empfangen am 22.08.2013

Dieses Archiv wurde generiert von hypermail 2.2.0 : 22.08.2013 CEST