UNIX Filesystems: Evolution, Design, and Implementation
Steve D. Pate
Hello, and welcome to the home page for my book UNIX Filesystems -
Evolution, Design, and Implementation.
Initially, this page is being used to hold the source code for the uxfs
filesystem which is described in Chapter 14, Developing a Filesystem
for the Linux Kernel. As time goes by, I'll also add corrections and
answers to any questions that people may have.
The Linux kernel evolves rapidly and therefore the source in the book
will, at some stage, not compile for later versions of Linux. This page
will be updated on a regular basis to hold the source code to uxfs for
different versions of Linux. The goal is for readers to be able to download
the source code, compile and load the filesystem module in a matter of
If you have installed the Linux kernel source but never built a kernel or
modified the kernel configuration, you will see the following error when
trying to build the uxfs source:
Makefile:3: /usr/src/linux-2.4.18-14/.config: No such file
or directory make:
*** No rule to make target `/usr/src/linux-2.4.18-14/.config'.
As noted, the .config file is missing from the kernel source tree. This
can be fixed by simply changing to the source directory (for example /usr/src/linux-2.4.18-14)
running make menuconfig,
exiting straight away opting the save the config file. This will result
in a new .config file being created.
The Source Files
The source files are gzipped, tar archives. Click the appropriate link
to download the appropriate source. Note that in some cases, the same
source code can be used for multiple Linux releases/kernels.
2.4.18 and Red Hat 8.0
For each version, download, unzip, untar and run make.
Contact for further information
I realize that people will encounter problems at some stage and would
welcome feedback on anything that could be added here. Feel free to email
me with questions. If anyone compiles the source for a version of Linux
not covered here, please email me the changes and I'll add a link.
Steve Pate (firstname.lastname@example.org)