Linux NTFS Project

Go to the Linux NTFS Home Page, the NTFS FAQ (Frequently Asked Questions) or back to the Information Page.

If you are a RedHat user and you simply want NTFS support, you now need only install an RPM to get it. See our RedHat Page for more details.

Compiling the Kernel

To do this you need to compile your own kernel. This isn't as hard, or scary, as it sounds. If you have problems after reading the help and the HOWTOs you can ask question on our help forum.

1. Get the source code

Your linux distribution should come with the kernel source. It's probably a good idea to start with the same version as the kernel you are already running.

These instructions are written using Linux 2.4 as a guide, but they should be almost the same for Linux 2.2. This isn't a tutorial on how to build the Linux kernel, only on how to add NTFS support.

In the source directory, in the file Documentation/Changes, there is a list of the Current Minimal Requirements to compile and run Linux. If you are upgrading to a new version, it might be wise to check these.

The latest kernel source code is available from: At the time of writing, the latest stable kernel is 2.4.18 and it can be found at:

2. Compile the source code

Many linux distributions will help you start the next job. The key to building the kernel is the .config. The kernel is very modular and you only build what you need to run.

There's a HOWTO explaining how to configure and build the kernel. It lives at:

If you are lucky, your distro left a copy of the .config for your kernel in the source directory. If not, you will just have to think a bit more.

Start with:

    make config

You should be able to accept the defaults for a lot of the options. For NTFS, choose either 'y' to build it into a kernel or 'm' to build a loadable module.

N.B. DO NOT enable write support for NTFS. It isn't finished and is potentially very dangerous.

If you make any mistakes, simply rerun the make config and try again. Each time you run it, it will remember all the values you typed last time and should be a bit quicker.


    make dep

If you want to just build some modules, do:

    make modules


    make bzImage modules

3.1 Install the modules

Now copy the modules into /lib/modules with:

    make modules_install

3.2 Install the kernel

This is complicated and depends on you bootloader. Both lilo and grub come with detailed instructions. Also there is help online at:

3.3 Reboot

If you are just building modules, ignore this section.

Cross your fingers and reboot. Good luck. If everything went well then uname -a: should tell you about your new kernel.

3.4 Add modules

If you built NTFS into the kernel, not as a module, ignore this section.

Now add the NTFS module to the running kernel:

    /sbin/modprobe ntfs

4. Mount

First try this command and check that ntfs is listed:

    cat /proc/filesystems


    mount /dev/hda1 /mnt/windows -t ntfs -r

Back to the top