
Ich versuche, meine Root-Partition von ext4 auf zfs (einfache Partition, ohne ZFS-Volume-Verwaltungsfunktionen) zu ändern, indem ich alle Dateien in einem Live-System (Ubtunu 14.04) von der ext4-Partition auf ein externes Gerät verschiebe, einen ZFS-Pool auf der Partition erstelle und die Dateien zurück verschiebe.
Es gibt viele Anleitungen, die erklären, wie man Betriebssysteme, einschließlich Ubuntu, auf einem Root-ZFS-Pool einrichtet, aber ich habe keine gefunden, die die einfache Migration erklärt, die ich durchführen möchte, ohne auch eine ZFS-Bootpartition/einen ZFS-Dataset einzurichten (die nützlichste, die ich gefunden habe, warhttp://blog.ls-al.com/ubuntu-auf-einem-zfs-root-dateisystem-für-ubuntu-14-04/). Natürlich ist es möglich, die Schritte aus solchen Anleitungen zu abstrahieren, aber ich hätte lieber ein paar kleine Hinweise von Experten, als selbst nach dem Prinzip „Versuch und Irrtum“ vorzugehen.
Allgemeine Probleme:Momentan verstehe ich nicht, wie ich meinem System sagen kann, dass es eine ZFS-Partition unter „ /' at boot. Although it is not recommended I guess setting
mountpoint=legacy and adding an entry in
/etc/fstab“ mounten soll (so wie ich es nach einer Migration auf einen anderen Dateisystemtyp tun würde). Das sollte doch ausreichen, oder?
Aktuelle Probleme:
- Wenn ich den Pool mit erstelle
zpool create /dev/sdaX
, erhalte ich die MeldungALERT! /dev/disk/by-uuid/<uuid of my root partition> doesn't exist
. Wenn ich ihn mit erstelle ,zpool create /dev/disk/by-id/<id>
erhalte ich die Meldung/usr/sbin/grub-probe: error: failed to get canonical path of
/dev/when I run update-grub in chroot in live system. What Do I have to specify in
zpool create`? - Muss ich das System überhaupt im Chroot-Modus vom Live-System aus einrichten (Pool importieren, Initramfs aktualisieren)? Ich habe meine Dateien zurück in einen Datensatz mit dem Namen kopiert
rpool/ROOT/ubuntu-1
und hinzugefügtrpool/ROOT/ubuntu-1
(/etc/fstab
in genau diesem Datensatz).
Die Ausführung mount -t zfs rpool/ROOT/ubuntu-1 /root && chroot /root zpool import rpool
in der Initramfs-Shell funktioniert nicht, da das ZFS-Modul nicht geladen ist. ubuntu-zfs
ist installiert und ich habe es lange Zeit ohne Probleme für eine Datenpartition verwendet.
Antwort1
Die Kernelparameter boot=zfs
, bootfs
und rpool
werden von Grub nicht korrekt gesetzt ("Updates" von ppa:zfs-native/grub
dienen nur zum Raring) und müssen zu /boot/grub/grub.cfg
den linux
Anweisungen Ihrer Wahl hinzugefügt werden, siehehttps://github.com/zfsonlinux/pkg-zfs/wiki/HOWTO-install-Ubuntu-to-a-Native-ZFS-Root-Filesystemfür Details.