This is an update post to making an Ubuntu 14.04 (Trusty Tahr) OS work with ZFS root volume. Mostly the instructions remains the same as a previous post so this is a shortened version:
Small warning I did this 4 times. It worked the first time but of course I did not document it well the first time and when I tried again I had grub issues.
Step 1:
$ sudo -i # apt-add-repository --yes ppa:zfs-native/stable
** Don't need grub ppa as per github instructions???
# apt-get update # apt-get install debootstrap ubuntu-zfs
** Will take quite a while kernel modules compiles!!
# modprobe zfs # dmesg | grep ZFS: [ 1327.346821] ZFS: Loaded module v0.6.2-2~trusty, ZFS pool version 5000, ZFS filesystem version 5
Step 2:
# ls /dev/disk/by-id ata-VBOX_HARDDISK_VBb4fe25f7-8f14d419 ata-VBOX_HARDDISK_VBb4fe25f7-8f14d419-part1 ata-VBOX_HARDDISK_VBb4fe25f7-8f14d419-part2 # fdisk /dev/disk/by-id/ata-VBOX_HARDDISK_VBb4fe25f7-8f14d419
** Make partitions as follow
# fdisk -l /dev/disk/by-id/ata-VBOX_HARDDISK_VBb4fe25f7-8f14d419
Device Boot Start End Blocks Id System
/dev/disk/by-id/ata-VBOX_HARDDISK_VBb4fe25f7-8f14d419-part1 * 2048 206847 102400 be Solaris boot
/dev/disk/by-id/ata-VBOX_HARDDISK_VBb4fe25f7-8f14d419-part2 206848 16777215 8285184 bf Solaris
Step 3:
# mke2fs -m 0 -L /boot/grub -j /dev/disk/by-id/ata-VBOX_HARDDISK_VBb4fe25f7-8f14d419-part1 # zpool create -o ashift=9 rpool /dev/disk/by-id/ata-VBOX_HARDDISK_VBb4fe25f7-8f14d419-part2 # zpool list NAME SIZE ALLOC FREE CAP DEDUP HEALTH ALTROOT rpool 7.88G 117K 7.87G 0% 1.00x ONLINE - # zfs create rpool/ROOT # zfs create rpool/ROOT/ubuntu-1 # zfs umount -a # zfs set mountpoint=/ rpool/ROOT/ubuntu-1 # zpool export rpool
Step 4:
# zpool import -d /dev/disk/by-id -R /mnt rpool # mkdir -p /mnt/boot/grub # mount /dev/disk/by-id/scsi-SATA_disk1-part1 /mnt/boot/grub # debootstrap trusty /mnt
WTF: ** System seems hung. I see on a different terminal there was a messages system restart required. Weird. If you get this after debootstrap you have to redo Step 1 and Step 4.1 then...Is this because of only 2G RAM?
Step 5:
# cp /etc/hostname /mnt/etc/ # cp /etc/hosts /mnt/etc/ # tail -1 /mnt/etc/fstab /dev/disk/by-id/ata-VBOX_HARDDISK_VBb4fe25f7-8f14d419-part1 /boot/grub auto defaults 0 1 # mount --bind /dev /mnt/dev # mount --bind /proc /mnt/proc # mount --bind /sys /mnt/sys # chroot /mnt /bin/bash --login # locale-gen en_US.UTF-8 # apt-get update # apt-get install ubuntu-minimal software-properties-common # apt-add-repository --yes ppa:zfs-native/stable # apt-add-repository --yes ppa:zfs-native/grub < - See below note on this command # apt-get update # apt-get install --no-install-recommends linux-image-generic linux-headers-generic # apt-get install ubuntu-zfs # apt-get install grub2-common grub-pc
Quick note on grub issues. During the install I had to create soft links since I could not figure out the grub-probe failures. From memory I think I created soft links as follow and purged grub2-common grub-pc and re-installed:
/dev/disk/by-id/ata-VBOX_HARDDISK_VBb4fe25f7-8f14d419 >>>> /dev/ata-VBOX_HARDDISK_VBb4fe25f7-8f14d419 /dev/disk/by-id/ata-VBOX_HARDDISK_VBb4fe25f7-8f14d419-part1 >>>> /dev/ata-VBOX_HARDDISK_VBb4fe25f7-8f14d419-part1 /dev/disk/by-id/ata-VBOX_HARDDISK_VBb4fe25f7-8f14d419-part2 >>>> /dev/ata-VBOX_HARDDISK_VBb4fe25f7-8f14d419-part2
Update 5.6.14: After I had time to look at it closer I see my grub issues all came from the fact that there is no trusty grub ppa and the apt-add-repository command above is setting up a trusty repo. Quickest way to fix this is after the apt-add-repository --yes ppa:zfs-native/grub command fix the file manually to use raring. As follow:
# more /etc/apt/sources.list.d/zfs-native-grub-trusty.list deb http://ppa.launchpad.net/zfs-native/grub/ubuntu raring main
Now ready to continue on.
# apt-get install zfs-initramfs # apt-get dist-upgrade # passwd root
Step 6:
# grub-probe / zfs # ls /boot/grub/i386-pc/zfs* /boot/grub/i386-pc/zfs.mod /boot/grub/i386-pc/zfsinfo.mod # update-initramfs -c -k all update-initramfs: Generating /boot/initrd.img-3.13.0-24-generic # grep "boot=zfs" /boot/grub/grub.cfg linux /ROOT/ubuntu-1@/boot/vmlinuz-3.13.0-24-generic root=ZFS=rpool/ROOT/ubuntu-1 ro boot=zfs linux /ROOT/ubuntu-1@/boot/vmlinuz-3.13.0-24-generic root=ZFS=rpool/ROOT/ubuntu-1 ro boot=zfs # grep zfs /etc/default/grub GRUB_CMDLINE_LINUX_DEFAULT="boot=zfs" # update-grub # grub-install $(readlink -f /dev/disk/by-id/ata-VBOX_HARDDISK_VBb4fe25f7-8f14d419) Installation finished. No error reported. # exit
Step 7:
# umount /mnt/boot/grub # umount /mnt/dev # umount /mnt/proc # umount /mnt/sys # zfs umount -a # zpool export rpool # reboot
Post First Reboot:
- Made a VB snapshot of course
- apt-get install ubuntu-desktop
** grub issues again so I remade the link again. Later fixed with the grub ppa repo pointing to raring instead.
- create a user
- install VB Guest Additions
TODO:
- Check into grub issue and having to create soft links. Something to do with grub not following soft links.