OpenZFS on Linux and FreeBSD
Go to file
Brian Behlendorf b1b76c6634 Build system and packaging (RPM support) (Part 1)
An update to the build system to properly support all commonly
    used Makefile targets these include:

      make all        # Build everything
      make install    # Install everything
      make clean      # Clean up build products
      make distclean  # Clean up everything
      make dist       # Create package tarball
      make srpm       # Create package source RPM
      make rpm        # Create package binary RPMs
      make tags       # Create ctags and etags for everything

    Extra care was taken to ensure that the source RPMs are fully
    rebuildable against Fedora/RHEL/Chaos kernels.  To build binary
    RPMs from the source RPM for your system simply run:

      rpmbuild --rebuild zfs-x.y.z-1.src.rpm

    This will produce two binary RPMs with correct 'requires'
    dependencies for your kernel.  One will contain all zfs modules
    and support utilities, the other is a devel package for compiling
    additional kernel modules which are dependant on the zfs.

      zfs-x.y.z-1_<kernel version>.x86_64.rpm
      zfs-devel-x.y.2-1_<kernel version>.x86_64.rpm
2009-03-10 11:10:50 -07:00
cmd Merge commit 'refs/top-bases/zfs-branch' into zfs-branch 2009-02-18 14:30:54 -08:00
config Build system and packaging (RPM support) (Part 1) 2009-03-10 11:10:50 -07:00
doc Refresh zfs-branch 2008-12-05 09:46:11 -08:00
lib Merge commit 'refs/top-bases/zfs-branch' into zfs-branch 2009-02-18 15:20:11 -08:00
module Merge commit 'refs/top-bases/zfs-branch' into zfs-branch 2009-02-18 16:36:19 -08:00
scripts Add 2 new args for zpool_create to take extra args 2009-02-06 14:57:37 -08:00
.topdeps New TopGit dependency: feature-branch 2008-12-05 09:36:26 -08:00
.topmsg Add TODO 2009-01-21 11:26:19 -08:00
AUTHORS Refresh zfs-branch 2008-12-05 09:46:11 -08:00
COPYING Relocate COPYING+COPYRIGHT, remove README cruft 2008-12-01 15:34:53 -08:00
COPYRIGHT Relocate COPYING+COPYRIGHT, remove README cruft 2008-12-01 15:34:53 -08:00
ChangeLog Prep for zfs-0.4.2 tag 2009-02-05 15:19:27 -08:00
DISCLAIMER Initial Linux ZFS GIT Repo 2008-11-20 12:01:55 -08:00
GIT Refresh type in topgit git://* reference 2009-01-26 21:58:32 -08:00
META Prep for zfs-0.4.2 tag 2009-02-05 15:19:27 -08:00
Makefile.am Build system and packaging (RPM support) (Part 1) 2009-03-10 11:10:50 -07:00
OPENSOLARIS.LICENSE Add CDDL license file 2008-12-01 14:49:34 -08:00
README Refresh README 2009-01-20 16:16:57 -08:00
TODO Update TODO 2009-02-04 16:25:09 -08:00
ZFS.RELEASE Rebase master to b108 2009-02-18 12:51:31 -08:00
autogen.sh Update EXTRA_DIST 2008-12-05 14:56:15 -08:00
configure.ac Build system and packaging (RPM support) (Part 1) 2009-03-10 11:10:50 -07:00
zfs.spec.in Build system and packaging (RPM support) (Part 1) 2009-03-10 11:10:50 -07:00

README

============================ ZFS KERNEL BUILD ============================

1) Build the SPL (Solaris Porting Layer) module which is designed to
   provide many Solaris APIs in the Linux kernel which are needed
   by ZFS.  To build the SPL:

        tar -xzf spl-x.y.z.tgz
        cd spl-x.y.z
        ./configure --with-linux=<kernel src>
        make
        make check <as root>

2) Build ZFS, this port is based on build specified by the ZFS.RELEASE
   file.  You will need to have both the kernel and SPL source available.
   To build ZFS for use as a Linux kernel module.

        tar -xzf zfs-x.y.z.tgz
        cd zfs-x.y.z
        ./configure --with-linux=<kernel src> \
                    --with-spl=<spl src>
        make
        make check <as root>

============================ ZPIOS TEST SUITE ============================

3) Provided is an in-kernel test application called zpios which can be
   used to simulate a parallel IO load.  It may be used as a stress 
   or performance test for your configuration.  To simplify testing
   scripts provided in the scripts/ directory which provide a few
   pre-built zpool configurations and zpios test cases.  By default
   'make check' as root will run a simple test against several small
   loopback devices created in /tmp/.

       cd scripts
       ./zfs.sh					# Load the ZFS/SPL modules
       ./zpios.sh -c lo-raid0.sh -t tiny -v 	# Tiny zpios loopback test
       ./zfs.sh -u				# Unload the ZFS/SPL modules

Enjoy,
Brian Behlendorf <behlendorf1@llnl.gov>