[Lustre-discuss] lustre + debian

Troy Benjegerdes hozer at hozed.org
Fri Aug 15 09:38:27 PDT 2008


I'm about to try this, and figured it would be worth documenting on the
wiki..

http://wiki.lustre.org/index.php?title=Debian_Install

so far the only issue is debian.internal.sanger.ac.uk is not visible to
us outsiders ;) 

On Fri, Aug 15, 2008 at 09:30:28AM +0100, Guy Coates wrote:
> I've just gone through the exercise of recompiling the lenny packages on etch;
> it worked like a charm.
> 
> 
> This is the procedure I used. Hope it helps.
> 
> 
> 
> *Pre-requisites
> 
> Any debian machine can be used to build the packages. It does not have to be a
> lustre client or server.
> 
> *Install build essentials
> 
> Install the packages required to build debs. (build-essential, module-assistant etc)
> 
> *Get Source
> 
> Ensure sources.list contains the following lines:
> 
> deb http://debian.internal.sanger.ac.uk/debian/ etch main non-free contrib
> deb-src http://debian.internal.sanger.ac.uk/debian/ lenny main contrib non-free
> 
> *Download the source with:
> 
> #aptitude update
> #apt-get source linux-image-2.6.18-X-686
> #apt-get source lustre
> 
> This will unpack two directories, one with the lustre source and one with the
> kernel source.
> 
> *Build lustre userspace
> 
> Change to the lustre directory.
> 
> #cd lustre-X.X.X
> #dpkg-buildpackage -r fakeroot
> 
> If the build fails with automake errors you will need to install a later
> automake version. (debian/etch provides several to choose from.)
> 
> This will build the following packages:
> 
> lustre-utils        #Userspace lustre util
> lustre-dev          #Development headers
> lustre-source       #Source for the kernel module
> lustre-tests        #Test suite
> linux-patch-lustre  #Patch for the linux kernel.
> 
> Install the lustre-source and linux-patch-lustre packages on the build machine.
> These packages contain the patches to the kernel source tree that are used in
> the next step of the build.
> 
> #dpkg -i linux-patch-lustre_XXX.deb
> #dpkg -i  lustre-source_XXX.deb
> 
> 
> 
> *Build lustre patched kernel
> 
> #cd linux-2.6-XXXX
> 
> We need to grab the .config file for the debian kernel. We should be able to
> generate the config from the source package, but I'm not sure how. The easiest
> way to get the correct config is to copy /boot/config-X.X.X from a machine
> already running the debian kernel.
> 
> #cp /boot/config-2.6.XXX-686 .config
> 
> Check the kernel config works: (This might generate 1 or 2 minor questions. Just
> hit "m" or "y".)
> 
> #make oldconfig
> 
> We can now build the kernel.
> 
> #export CONCURRENCY_LEVEL=3
> #make-kpkg clean
> #make-kpkg --rootcmd fakeroot --added-patches=lustre \
> --initrd --append-to-version "-lustre-1.6.5.1" --revision=yyyymmdd  kernel_image
> 
> (You might be asked about extra scsi statistics options; selecting Y is probably
> a good idea)
> 
> You should now have a kernel-image deb.
> 
> *Build lustre kernel modules
> 
> The lustre kernel modules can now be built.
> 
> #module-assistant -u/your/working/directory -k /path/to/the/kernel/linux-2.6-X.X
> build  lustre
> 
> After the build has finished you should now have a lustre-modules.deb
> 
> *Install
> 
> To install lustre on a client or server machine, simply install the packages you
> have created:
> 
> linux-image-2.6.XX-lustre-X.X.X._XXXXXX.deb
> lustre-modules-2.6.XX-lustre-X.X.X._XXXXXX.deb
> lustre-utils_X.X.deb
> liblustre-X-X.deb
> lustre-dev-X.X.deb
> 
> The test suite is optional. For configuration of networks and timeout options in
> /etc/modprobe.d/lustre see the lustre manual.
> 
> *Extras not currently packaged
> 
> Lustre uses a special version of e2fsprogs. These allow you to specify the disk
> raid geometry at filesystem creation time to optimise performance. It also has
> extra options to support the lfsck lustre filesystem consistency check. Debian
> upstream have said they will package this in the future. In the meantime, you
> will have to build it yourself. Note that the modified program is only required
> on OST and MDS machines.
> 
> 
> *Get the e2fsprogs source
> 
> Get the latest sun patch tarball:
> 
> http://downloads.lustre.org/public/tools/e2fsprogs/latest/
> 
> eg e2fsprogs-1.40.11-sun1-patches.tar.gz
> 
> You will also need the upstream source (in this case e2fsprogs 1.40.11). This
> can be found
> 
> http://downloads.lustre.org/public/tools/e2fsprogs/upstream/
> 
> 
> 
> *Patch the source
> 
> tar -xvf e2fsprogs 1.40.11.tar.gz
> tar -xvf e2fsprogs-1.40.11-sun1-patches.tar.gz
> 
> Patch the source with quilt.
> 
> #cd e2fsprogs 1.40.11
> #ln -s -f ../patches .
> #ln -s -f ../patches/series .
> #quilt push -av
> 
> 
> *Build the source
> 
> Note that the ext2fs-dev, libsqlite3-dev, sqlite3 and libdb4.3-dev headers and
> libraries must be installed before building. (Note that libdb4.4 does not work,
> but the code will compile OK !?)
> 
> #./configure --with-lustre=/path/to/lustre/source
> #make
> #make install
> 
> 
> 
> 
> -- 
> Dr. Guy Coates,  Informatics System Group
> The Wellcome Trust Sanger Institute, Hinxton, Cambridge, CB10 1HH, UK
> Tel: +44 (0)1223 834244 x 6925
> Fax: +44 (0)1223 496802
> 
> 
> -- 
>  The Wellcome Trust Sanger Institute is operated by Genome Research 
>  Limited, a charity registered in England with number 1021457 and a 
>  company registered in England with number 2742969, whose registered 
>  office is 215 Euston Road, London, NW1 2BE. 
> _______________________________________________
> Lustre-discuss mailing list
> Lustre-discuss at lists.lustre.org
> http://lists.lustre.org/mailman/listinfo/lustre-discuss

-- 
--------------------------------------------------------------------------
Troy Benjegerdes                'da hozer'                hozer at hozed.org  

Somone asked me why I work on this free (http://www.gnu.org/philosophy/)
software stuff and not get a real job. Charles Shultz had the best answer:

"Why do musicians compose symphonies and poets write poems? They do it
because life wouldn't have any meaning for them if they didn't. That's why
I draw cartoons. It's my life." -- Charles Shultz



More information about the lustre-discuss mailing list