FreeBSD 7.x has been using version 6 of ZFS, and originally only 8.0 was going to have the newly updated ZFS version: 13.
Last week the core team MFC’d (Merge From Current) the ZFS updates to 7.2, so I cvsup’d and re-build my server’s kernel and world ( with a simple “make buildworld && make buildkernel && make installworld && make installkernel ), rebooted, and now I have the latest ZFS version running:
[root@server ~]> zpool upgrade -v This system is currently running ZFS pool version 13. The following versions are supported: VER DESCRIPTION --- -------------------------------------------------------- 1 Initial ZFS version 2 Ditto blocks (replicated metadata) 3 Hot spares and double parity RAID-Z 4 zpool history 5 Compression using the gzip algorithm 6 bootfs pool property 7 Separate intent log devices 8 Delegated administration 9 refquota and refreservation properties 10 Cache devices 11 Improved scrub performance 12 Snapshot properties 13 snapused property For more information on a particular version, including supported releases, see: http://www.opensolaris.org/os/community/zfs/version/N Where 'N' is the version number.
Hi Mike,
I am wondering how did you do exactly the upgrade … I did csup and make world stuff and so, but no lucky. Could you please explain and show all the steps you did? For example what’s csup config file looks like.
Thanks very much,
Gabor
@gabor
Hey Gabor,
Here is my csup file:
After I ran csup to update /usr/src, I did a
After the reboot, I did a mergemaster (unrelated to zfs though), then I ran
When the kernel loads the zfs.ko module, it should say what version it is. Also, you should see this in /usr/src/UPDATING:
20090520: Update ZFS to version 13. ZFS users will need to re-build and install both kernel and world simultaneously in order for the ZFS tools to work. Existing pools will continue to work without upgrade. If a pool is upgraded it will no longer be usable by older kernel revs. ZFS send / recv between pool version 6 and pool version 13 is not supported.If you don’t see that, then you are pulling down the wrong branch
Keep in mind, I’m using RELEASE_7, not 7_2, which means I’m following a more current codebase. The big difference is there are no freebsd-update binaries available when you do this. Not a big deal for me since I only maintain this one server at home, and I use a custom kernel anyway.
Hope this help!
Hi,
Ok, what has happened:
Don’t know why csup did this …
1. I used your csup file and suprisingly csup removed all files under /usr/src
2. Anyway I reloaded source via sysinstall, then used almost the same csup file, couple of modified lines as follows:
“*default base=/var/db
*default release=cvs tag=RELENG_7″
3. Then did csup again, them make stuff … waiting for couple of hours
4. I am using BSD on a VirutalBox so assuming it caused kernel panic and reboot.
5. Though I could login and voila zfs upgrade -v shows version 13.
So, thank you very much for your help. It seems a simple process but takes a long time and not so sure I want to repeat it on my prod system.
Thanks.
Hmm, I wasn’t anticipating that supfile to remove everything, just update it to that particular branch.
I haven’t tried using ZFS inside VMWare workstation, I have loaded zfs.ko on a ESX virtual machine though, and that at least didn’t panic the kernel.
Are you running a 32bit or 64bit version of FreeBSD? For ZFS, both Sun and the FreeBSD team strongly recommend a 64bit platform.
64bit
Anyway, I think I’ll rather wait for the official upgrade.