For a while, I was running Ubuntu Server instead of Gentoo on my home file server because I had some trouble figuring out how to get Greyhole running on it.
(Background: Greyhole is a redundant-storage subsystem that sits on top of Samba. Basically, it allows you to combine multiple disks (not necessarily all the same size) into one pool of storage space. If you have files you really don’t want to lose (like your wedding photos…but you should have backups!), you can tell it to maintain copies of those files on more than one drive…think of it as selective redundancy. It’s been compared to the Drive Extender feature that used to be in Windows Home Server, but I don’t think Drive Extender provided redundant storage.)
Anyway, a desire to get my home server running Gentoo again prodded another attempt at getting Greyhole working on it. A couple of weeks or so ago, I figured it out…but it was a manual process, and since it requires a loadable module to be built within the Samba source tree, it wasn’t going to be easily maintainable.
The solution to this? Write an ebuild. The peculiarities of getting Greyhole up and running made this a bit more tricky than usual, but I’ve done it:
This is part of my Portage overlay, which has a bunch of other ebuilds I’ve found useful over the years. Installing Greyhole on Gentoo is now as simple as this:
- add http://salfter.github.com/layman.xml to your overlays in /etc/layman/layman.cfg
- layman -S && layman -a salfter to pull in the overlay
- emerge greyhole to install
- configure & enjoy!
One caveat: the Greyhole ebuild will currently only with with Samba 3.x. The build process for Samba 4.x is a little bit different, and since I don’t have a Gentoo box running Samba 4 (it’s keyworded ~arch at this time), I don’t have a way to verify that it’ll work. There are three FIXMEs that would need to be replaced to use Greyhole with Samba 4.x.)