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 5Step 2:
# ls /dev/disk/by-idata-VBOX_HARDDISK_VBb4fe25f7-8f14d419ata-VBOX_HARDDISK_VBb4fe25f7-8f14d419-part1ata-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 SolarisStep 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 listNAME SIZE ALLOC FREE CAP DEDUP HEALTH ALTROOTrpool 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 rpoolStep 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 /mntWTF: ** 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-pcQuick 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-part2Update 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.listdeb http://ppa.launchpad.net/zfs-native/grub/ubuntu raring mainNow ready to continue on.
# apt-get install zfs-initramfs# apt-get dist-upgrade# passwd rootStep 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 allupdate-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/grubGRUB_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.
# exitStep 7:
# umount /mnt/boot/grub# umount /mnt/dev# umount /mnt/proc# umount /mnt/sys# zfs umount -a# zpool export rpool# rebootPost 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.