Taking the plunge back into Linux after five years of abstinence came at some shock. CentOS 5 turned out to be a great operating system, BUT the installer failed to detect and add my Windows XP to the GRUB boot-loader!

In fact, I couldn’t seem to mount my Windows XP NTFS partitions through Centos 5 at all! I tried the usual:

mount -t ntfs /dev/hdb2 /mnt/winXP
mount: unknown filesystem type ‘ntfs

Hmmm … after some digging it became apparent that CentOS did not come with NTFS support for fear that Microsoft would flex it’s legal muscle to sue anyone who would use the NTFS file structure!

Let us be clear, Microsoft, you can no more restrict the use of a disk structure, than a hardware supplier can restrict the use of a hammer sold to a carpenter! And that sometimes it is better to accept that imitation is the sincerest of flattery. Fortunately, all is not lost! NTFS-3G is an free open source NTFS driver for CentOS and MacOS and every other flavor of Linux which was very straight forward to install as I found out yesterday.

Before you start, be sure you have GCC installed (CentOS 5 does not come with this by default which also caught me out!), if you don’t have it just do:

[root@localhost]# yum install gcc

You will also need the headers to your Kernel source which you can download by entering:

[root@localhost]# yum install kernel-devel

You will need to have fuse installed which you might be able to do with:

[root@localhost]#yum install fuse fuse-ntfs-3g dkms dkms-fuse

If this fails for any reason, just download the RPM And do:

[root@localhost]#rpm -ivh fuse-2.7.3-1.rh9.rf.i386.rpm

I think I ended up downloading the source and doing:

./configure –with-kernel=<SRCDIR>
make install

You can find out your source version by doing:

[root@localhost]# uname -mr version check

I think this name is the folder that your kernel headers will appear in under /etc/src/linux/<your version>. For me, I think it was something like /usr/src/linux/2.6.18-128.el5

With fuse installed you can go ahead and download NTFS-3G, and do:

make install

Then you should be all ready to go! you should be able to mount NTFS partitions with CentOS by:

[root@localhost]#mount -t ntfs-3g /dev/hdb1 /mnt/winXP