<& xfsTemplate,top=>1,side=>1 &>
<!-- Start Project Content -->
<h2>
<b><font face="ARIAL NARROW,HELVETICA">XFS Linux Release 1.0</font></b></h2>
<h2>
<b><font face="ARIAL NARROW,HELVETICA">Installing from the Source</font></b></h2>
You can obtain the complete linux-2.4.2 (released) tree including the
XFS filesystem, or you can obtain an XFS patch onto an
existing linux-2.4.5 tree. You will then need to configure
and install the kernel.
<p>
This page provides information on the following topics:
<br>
<br>
<li>
<A HREF="#_dltree">Downloading the complete Linux tree including XFS</A>
</li>
<li>
<A HREF="#_dlpatch">Creating an XFS tree via a patchfile</A>
</li>
<li>
<A HREF="#_kerninst">Configuring and installing the kernel</A>
</li>
<li>
<A HREF="#_toolcreate">Creating the XFS tools</A>
</li>
</p>
<h3>
<A NAME="_dltree">Downloading the complete Linux tree including XFS</A>
</h3>
A complete linux 2.4.2 tree including the XFS filesystem
will be available for CVS checkout and for CVSup checkout.
For instructions on checking the tree out of CVS, see the
<a href="cvs_download.html">
CVS download instructions</a>.
For instructions on checking the tree out of CVSup, see the
<a href="cvsup.html">
CVSup download instructions</a>.
The Release 1.0 tree is named
"linux-2.4-xfs-r1.0" CVS is not currently available for Release 1.0.1.
<h3>
<A NAME="_dlpatch">Creating an XFS tree via a patchfile</A>
</h3>
<p>
With this method, you will start with a "vanilla" linux-2.4.x tarball
(linux-2.4.x.tar.gz, or linux-2.4.x.tar.bz2) and apply patches to obtain
an XFS-capable kernel. One minor change for this release is
that XFS now comes as two patches - one for the core Linux code
and one for the XFS filesystem itself.
You will need both patches to build an
XFS-capable kernel.
</p>
<ul>
<li>Obtain a vanilla linux-2.4.x tree from a <a href="http://www.kernel.org/mirrors/">
kernel.org mirror</a> and unpack it into wherever you'd like to perform the build.</li>
<p>
<li>Download the latest
<a href="ftp://oss.sgi.com/projects/xfs/download/Release-1.0.1/kernel_patches/">
Release 1.0 patch files</a> and place them in the
the top-level directory of your unpacked 2.4.x kernel (i.e. <tt>linux/</tt>).
</li><p>
<li>Uncompress each patch with <tt>gunzip <i>patchfile_name</i>.gz</tt>
</li><p>
<li>For each patch, run <tt>patch -p1 < <i>patchfile_name </i></tt>
in the top directory of your linux source tree.
</li>
</ul>
<h3>
<A NAME="_kerninst">Configuring and installing the kernel</A>
</h3>
Configure and install your kernel as usual. See
<a href="http://oss.sgi.com/LDP/HOWTO/Kernel-HOWTO.html">The Linux Kernel HOWTO</a>
for detailed instructions, if necessary.
<p>
In your kernel configuration, you will need to enable:
</p>
<p>
<ul>
<li>XFS filesystem support (CONFIG_XFS_FS)</li>
<li>Page Buffer support (CONFIG_PAGE_BUF)</li>
</ul>
</p>
<p>
You may enable these options either as modules, or build them into the
kernel. If you plan to use XFS as your root filesystem,
then xfs must either be
built into the kernel, or you must create an initial ramdisk (initrd)
with the xfs module. Instructions for generating the
initial ramdisk image are provided in
<a href="1.0_rpm.html">Installing XFS from the Red Hat RPM packages</a>.
</p>
<p>
If you wish to migrate IRIX XFS disks to Linux you should enable:
</p>
<p>
<ul>
<li>Advanced partition selection (CONFIG_PARTITION_ADVANCED)</li>
<li>SGI partition support (CONFIG_SGI_PARTITION)</li>
</ul>
</p>
<p>
You will also need to upgrade the following system utilities to
these versions or later:
</p>
<ul>
<li><a href="http://www.kernel.org/pub/linux/utils/kernel/modutils/v2.4/">modutils-2.4.0</A></li>
<li><a href="http://www.gnu.org/software/autoconf/autoconf.html">autoconf-2.13</a></li>
<li><a href="http://e2fsprogs.sourceforge.net/">e2fsprogs-devel-1.18</a></li>
</ul>
<p>
When your new kernel is built and installed, you should update LILO,
create a new ramdisk image if necessary, and you're ready to boot
an XFS-capable kernel.
</p>
<h3>
<A NAME="_toolcreate">Creating the XFS tools</A>
</h3>
<p>
You will also need to compile and install the XFS
userspace tools. If you perform
a CVS checkout, the userspace tools
are available in the <tt>cmd/</tt> directory. Otherwise,
you will need to download
<a href="ftp://oss.sgi.com/projects/xfs/download/Release-1.0.1/cmd_tars/">
the latest xfs command tarballs.</A></li>
<p>
The following userspace tools are available:
</p>
<DL>
<DT>
acl
</DT>
<DD>
A command (<tt>chacl</tt>) to manipulate POSIX access control lists
under Linux.
</DD>
<p>
<DT>
attr
</DT>
<DD>
An experimental command (<tt>attr</tt>) to manipulate extended attributes
under Linux.
</DD>
<p>
<DT>
dmapi
</DT>
<DD>
Files required by system software using the Data Management API
(DMAPI). Information on DMAPI in XFS is provided in
<A href="dmapi.html">
The Data Management API (DMAPI)</A></li> web page.
</DD>
<p>
<DT>
quota
</DT>
<DD>
The quota package contains system administration tools for monitoring
and limiting user and or group disk usage, per filesystem.
Install quota if you want to monitor and/or limit user/group disk
usage.
</DD>
<p>
<DT>
xfsdump
</DT>
<DD>
The xfsdump package contains <tt>xfsdump</tt>,
<tt>xfsrestore</tt> and a number of
other utilities for administering XFS filesystems.
<p>
<tt>xfsdump</tt> examines files in a filesystem, determines which need to be
backed up, and copies those files to a specified disk, tape or other
storage medium. It uses XFS-specific directives for optimizing the
dump of an XFS filesystem, and also knows how to backup XFS extended
attributes. Backups created with <tt>xfsdump</tt> are "endian safe" and can
thus be transferred between Linux machines of different architectures
and also between IRIX machines.
<p>
<tt>xfsrestore</tt> performs the inverse function of <tt>xfsdump</tt>;
it can restore a full backup of a filesystem.
Subsequent incremental backups can then
be layered on top of the full backup. Single files and directory
subtrees may be restored from full or partial backups.
</DD>
<p>
<DT>
xfsprogs
</DT>
<DD>
A set of commands to use the XFS filesystem, including <tt>mkfs.xfs</tt>.
</DD>
</DL>
<p>
After unpacking these files, if necessary, perform the following tasks
in each source tree:
</p>
<ul>
<li><tt>make configure</tt></li>
<li><tt>make</tt></li>
<li><tt>su root</tt></li>
<li><tt>make install</tt></li>
</ul>
<p>
See the <tt>doc/INSTALL</tt> file in each package's source
tree for more information about this process.
</p>
<p>
If you have a previous version of the XFS tools, you
must upgrade and recompile against the new kernel headers.
</p>
If all this goes well, it's time to <a href="1.0_admin.html">
make a new XFS filesystem!</a>
<br>
<br>
<& xfsTemplate,bottom=>1 &>