Compiling RH kernel for NTFS support
Having switched my home desktop distribution from SuSe to Red hat, I've noticed that I can no longer mount my data drives which are formatted NTFS for win2k.
I have gathered that I need to recompile the kernel, but am not having much luck finding out what is entailed in doing this or what I need to add to enable me to get this functionality enabled. |
hello,
compiling kernels is very easy, i am surprised the is no ntfs module, but comoiling a kernel is something one should not miss! check out: http://www.tldp.org/HOWTO/Kernel-HOWTO.html also a small how to is -> here when you do a make xconfig look for the filesystems box and select NTFS - note in order to do this you will need to have 'expermental/incomplete ' options enabled also. |
It's not as difficult as most people think it is.
You start with a good look at the URL indicated in the other post (if you want my advice, print it out and spend a lot of time studying it); then you go to http://www.kernel.org and download the latest kernel - or whatever kernel you think you need. I've been using 2.4.18 for some time and it works quite fine. Traditionally, the sources are kept in /usr/src, so save it there. Be aware that it will untar in a subdirectory called linux. You might already have one there , or a symlink, so make sure you move it before uncompressing. The usual practice seems to be to move the uncompressed directory to something like linux-2.4.xx and then symlink it to "linux" - this way you can have as many source trees as you want and always point the symlink to the latest - or the one you currently use. You'll need to collect some information about your system before actually recompiling the kernel. Basically, the output of lspci and lsmod should be enough, plus the knowledge of what filesystems you use, and stuff like that. At that point just cd to linux and execute make menuconfig (do this as root, makes your life easier). What else? Ah, yes, make it as modular as you can - but remember that a few things must be compiled-in: support for whatever filesystem you have in / and for whatever controller you use for your boot disk; and for ELF executables, at the very least. |
Ok, I have a really stupid (at least the people who know the answer will think this) question. What is the difference between FAT and NTFS? And what is the difference between NTFS and EXT2 or even EXT3? I know that FAT is Win9x and NTFS is Win2k and XP, and obviously EXT2/EXT3 is linux native.... but what's the real difference??
|
NTFS= NT File System http://www.microsoft.com/msj/1198/ntfs/ntfstop.htm
ext3 http://www.redhat.com/support/wpaper...xt3/index.html Lately I'm interested in the reiser fs http://www.namesys.com/ Red Hat does have read only support for NTFS Compile the kernel as such cd /usr/src/linux make xconfig # goto filesystems check the read only NTFS #module or built in your choice make clean && make dep && make bzImage && make modules # yawn # {have cuppa cuppa} cp ./arch/i386/boot/bzImage /boot//vmlinuz-yourkernname cp System.map /boot/System.map-yourkernname make modules_install mkinitrd /boot/initrd-yourkernname # I am having trouble w/this # command on my RH 7.2 box. Returns: All your # loopback devices are busy!! If anyone knows why #please tell me boot to kernel test then recofigure grub if it is suitable |
Thanks for the info guys, much appreciated, apols for taking so long to reply, been exiled away from net access for a few days.
I will give this a shot over the weekend, do feel like I havent cut my teeth properly on linux yet without having taken this step :) |
Here is the script I use to compile kernels.
If your kernel is in /usr/src/linux rebuild_kernel will put the net kernel in /boot/vmlinuz rebuild_kernel fred would also put it in /boot but name it fred Hope this is of use. I always find nothing is more helpful than an example #!/bin/sh # # recompiles the kernel # if [ -n "$1" ] then target=/boot/$1 fi echo target set to $target sleep 2 cd /usr/include rm -rf linux rm -rf asm ln -s /usr/src/linux/include/linux linux ln -s /usr/src/linux/include/asm-i386 asm ln -s /usr/src/linux/include/scsi scsi cd /usr/src/linux make dep if [ -z "$2" ]; then make clean else echo "no make clean today" sleep 2 fi make bzImage cp /usr/src/linux/arch/i386/boot/bzImage $target make modules make modules_install depmod -a # |
All times are GMT -5. The time now is 05:28 AM. |