Support #521
Updated by Daniel Curtis almost 10 years ago
{{>toc}} One of the many projects I had for my pi was installing ZFS. While Raspbian is a a good distro for beginners, I require a bit more control and up to date packages than Raspbian can provide, so I use Arch Linux. This is a guide on how I compiled support for ZFS on my Raspberry Pi. *WARNING*: I have not yet finished this yet, so please treat this as experimental for the time being. *NOTE*: I have found that installing the zfs-dkms package from the AUR is much easier than trying to roll a custom kernel just for ZFS. h2. Prepare The System * Update the system: <pre> pacman -Syu </pre> * Install base-devel, cmake, and linux-headers packages <pre> pacman -S base-devel cmake linux-headers </pre> --- h2. Install yaourt Yaourt isn't necessary, but makes managing AUR packages a lot easier. * Download the packages for yaourt: <pre> cd /tmp wget https://aur.archlinux.org/packages/pa/package-query/package-query.tar.gz && wget https://aur.archlinux.org/packages/ya/yaourt/yaourt.tar.gz tar xzf package-query.tar.gz tar xzf yaourt.tar.gz </pre> #* Install package-query: <pre> cd ../package-query makepkg -csi </pre> #* Install yaourt <pre> cd ../yaourt makepkg -csi </pre> --- h2. Install ZFS DKMS from the AUR * Install zfs-dkms: <pre> yaourt zfs-dkms </pre> * Install zfs-utils: <pre> yaourt zfs-utils </pre> #* Force install the zfs-utils package (probably a bad idea, but the only way I could get it to install properly): <pre> pacman -U --force /tmp/yaourt-tmp-username/zfs-utils-0.6.3-1.2-armv6h.pkg.tar.xz </pre> #* Replace *username* with the user that built the zfs-utils package #* Replace the version with the current version being installed * *NOTE*: Edit the +PKGBUILD+ for *zfs-dkms*, *spl-dkms*, and *zfs-utils* #* And modify the arch parameter to match the following; adding *"armv6h"* and *"armv6l"*: <pre> arch=("i686" "x86_64" "armv6h" "armv6l") </pre> * Install the zfs kernel module: <pre> depmod -a modprobe zfs </pre> * # Check that the zfs modules were loaded: <pre> lsmod </pre> #* _Example output:_ <pre> zfs 1229845 0 zunicode 322454 1 zfs zavl 5993 1 zfs zcommon 43765 1 zfs znvpair 80689 2 zfs,zcommon spl 165409 5 zfs,zavl,zunicode,zcommon,znvpair </pre> h2. Resources * https://wiki.archlinux.org/index.php/ZFS * https://aur.archlinux.org/packages/zfs-dkms/ * https://aur.archlinux.org/packages/zfs-utils/