FreeBSD 8.2 auf einen ZPOOL umziehen

ruiin

Well-Known Member
Hi,

Die Geschichte von meinem Desktop ist lang, hab auf ihm schon viele verschiedene OS ausprobiert. Jetzt benutz ich ihn als NAS mit FreeBSD 8.2 und ZFS. Mein Fehler war bisher das ich das System immer auf der Platte liegen hatte die schon beim Kauf System-Festplatte war, diese hat jetzt ihre Macken bekommen. Irgend ein Fehler hat ein paar Slices der Systemfestplatte letztens gekillt und ich musste alles neu installieren.

Die Situation jetzt ist das ich ein FreeBSD 8.2 mit ZFS laufen habe, doch FreeBSD ist immernoch auf einer eigenen Platte und nicht auf dem zpool.

Meine Frage ist ob ich aus einem laufenden System ein System auf dem zpool installieren kann und das bootfähig kriegen kann ohne den pool neu anlegen zu müssen. In dieser Anleitung wird erklärt wie man ein System auf einem zpool neu aufsetzt und dabei einen neuen zpool baut. Ich will aber meine Daten nicht verlieren, bzw über Umwege backuppen müssen. Ich bin so unsicher weil ich nicht weis was die Option bootfs macht.

Jemand Erfahrung?
 
dein zpool erstreckt sich über die gesamte Festplatte? Ohne Partition?
Irgend wie muss ja dein Bootcode noch auf die Platte kommen.

Da würde mir nur einfallen einen usb stick als Boot-Partition zu benützen.
 
genau genommen hab ich den pool auf mehrere festplatten. Alle ohne Partitionen. Ich kann die alte Festplatte noch ne weile als Bootpartition verwenden, auf lange sicht werd ich sie aber rausschmeißen. Ich denke ein USB-Stick ist da nicht schlecht als /boot.
 
beim neu aufsetzen würd ich mir ja auch ein /boot bauen. Wie gesagt, hab ich ein laufendes System deswegen würde ich aus dem laufenden system was neu bauen, evt. das aktuelle /boot nur kopieren. So wie ich die bisherigen how-tos verstanden habe ist man beim bauen von freebsd auf zfs sowieso immer in einem livesystem.

Die Frage ist eher ob ich den zpool einfach umkonfigurieren kann ohne ihn neu machen zu müssen.
 
mh…

dann nutz ich mal die chance. hab ja noch genug platz und werd wohl den neuen pool auch mit besserer parität online bringen.
 
Die Frage ist eher ob ich den zpool einfach umkonfigurieren kann ohne ihn neu machen zu müssen.

ja, ich mein das kannst du (hab es aber selber noch nicht getestet)

Wenn du schon ein usbstick hast würde ich den gleich mit einbinden. Du kannst dich eigentlich an die Anleitung halten, bis auf das du deinen pool nicht neu anlegen brauchst.

Danach kopierst du mit dem mitteln deiner Wahl (z.b. tar / dump-restore /rsync etc) dein System auf dein zpool

Also in etwa so:
Code:
gpart create -s GPT deinusbstick
gpart add -b 34 -s 128 -t freebsd-boot deinusbstick

zfs create -o mountpoint=legacy -o setuid=on deinpool/root
zpool set bootfs=deinpool/root deinpool
...
...

Danach Kopierst du dein System (Pass auf das du deine Daten vom Pool nicht mit kopierst ;) )

Code:
mkdir /newsystem
zfs set deinpool/root /newsystem
zfs set deinpool/usr /newsystem/usr
...
...kopieren...

danach alles umounten und "zfs set" wieder rückgängig machen.
 
hab mir die anleitung vom Link grad erst angeschaut und dort wird auch ein laufendes system verwendet. danke für die Info.
 
Beim Einsatz von ZFS bietet es sich an GPT formatierte Platten mit gptzfsboot zu verwenden. Zusammen mit dem seit 8.2 auch ZFS fähigen /boot/loader kann man von einem ZFS Pool mit genau einem VDEV booten d.h. man braucht gar kein UFS mehr. Diese eine VDEV sollte ein Mirror sein, wobei ein nicht degradiertes RAID-Z1 wohl auch geht. Es ist möglich das mit der weile auch degradierte RAID-Z1 funktionieren. RAID-Z1 und RAID-Z2, dedizierte Log oder Cache Devices oder auch nur mehrere VDEVS im Pool verhindern das booten von derartigen nicht trivialen Pools. Es ist halt nur ein Bootloader.
 
ich hab noch ein paar teile für die USB-Anschlüsse auf dem Mainboard rumfliegen. Ich würd den Bootloader wirklich dann auf USB verlegen, und evt. zwei Sticks mirrorn. Ein Bootloader ist auch schnell wieder hergestellt falls was kaputt geht.

EDIT: Mir ist es vorallem wichtig das der Hauptvorteil vom ZFS bleibt. Nen RaidZ(2) und einfach Platten reinwerfen die dann den Pool erweitern. Ich lese grad in der Anleitung das dort ein Mirror gemacht wird und Partitionen in den Zpool geladen werden, jede Platte hat dabei eine boot Partition, so wie ich das verstanden habe. Das währe aufwand bei vielen Platten, deswegen /boot auf nem Stick
 
Last edited:
Back
Top