OMP: Red Hat: A quick way to enable NTFS Support
一种让红帽子7.3能支持ntfs的快速方法
Red Hat: A quick way to enable NTFS Support (text only version)
文本版
Created: June 9, 2002
Modified: June 20, 2002
Author: Jim Hayward
Author E-mail: jimhayward@earthlink.net
Copyright 2002, Jim Hayward. All Rights Reserved.
Distro Specific: Red Hat Linux
Relevant Links:
http://www.redhat.com
http://linux-ntfs.sourceforge.net
Title: Red Hat: A quick way to enable NTFS Support
Section: Distribution Specific
Sub-Section: Red Hat Linux
What is NTFS?
什么是NTFS
NTFS is the filesystem used by Windows NT, Windows 2000, and Windows XP.
NTFS是Windows NT, Windows 2000, 和 Windows XP所使用的文件系统
Why didn't Red Hat enable NTFS support in their kernels?
为什么红帽子不在其内核中直接支持NTFS?
Editors note: Anton Altaparmakov, the ntfs maintainer, took offense to my stating
that read only support can cause data corruption problems. You can read his e-mail
to me here
编者按:安东 艾尔塔帕马科夫,ntfs的维护人员,对我关于只读支持能造成数据损坏问题的说法感
到愤怒。这里你可以读到他给我的妹儿。
My prior statement was not in any way meant to be offensive to him, so I have removed
the passage he objected too. However, in the past even while using read only support
the ntfs module has been known to cause filesystem corruption. Enabling write support
for the ntfs module, WILL EAT YOUR DATA!
我先前的陈述没以任何方式激怒他,所以我删了他反对的一段。可是,在过去一段时间,ntfs模块甚至
在使用只读模式时也曾造成文件系统的崩溃。如果打开它的写支持,将吃掉你的数据!
Why is NTFS support poor under Linux?
为什么NTFS在linux中支持得这么差?
Microsoft chooses not to release the information necessary to write a driver to access
the NTFS filesystem for operating systems other then Windows. This basically makes
writing a driver a case of trial and error.
微软不发布在windows以外的其他系统中支持ntfs的驱动程序所必需的信息。这是使为其写的驱动容易造成
很多错误的最根本的原因。
This may lead you to ask the question, "Then why is Linux support for FAT and FAT32
filesystems any good?". The NTFS filesystem is a lot more complex then FAT and FAT32,
thus making it harder to write a driver.
你可能因此问到:为什么linux支持FAT和FAT32很好呢?NTFS文件系统比FAT和FAT32要复杂得多,所以使得给
它写驱动要复杂得多。
Alternatives to using NTFS support
使用NTFS的替代方法。
Create an FAT32 (vfat) partition and store the data you need to access from Linux on it.
建立一个FAT32分区。把你需要从linux访问的数据放在这个分区里。
Is your system up to date?
你的系统是最新的了吗?
I am going to assume you have updated your Red Hat 7.3 install with all of the currently
available updates. Kernel version 2.4.18-5 is the latest official kernel available for
Red Hat 7.3
我打算假定你已经把你的红帽子7.3升级到目前所能得到的最新的内核。目前最新的是2.4.18-5(译者注:
不升级也完全可以这样做,我在自己机器测试过了,而且目前最新版为2.4.18-10)
Installing the kernel sources.
安装内核源文件
First check and see what kernel you are running. You must use the kernel source for the
same kernel you are running.
首先检查看看你在用什么内核在运行你的系统,你必须用和你的内核相同的源文件。
[jimh@garfield jimh]$ uname -r
2.4.18-5
Check to see if you already have the kernel source installed with:
检查看看你的内核源文件的版本:
[jimh@garfield jimh]$ rpm -q kernel-source-2.4.18-5
kernel-source-2.4.18-5
If you don't have the kernel-source installed you will see:
如果你没装内核原文件你将看到这样的:
[jimh@garfield jimh]$ rpm -q kernel-source-2.4.18-5
package kernel-source-2.4.18-5 is not installed
If the kernel source is not installed, download the source from your favorite Red Hat mirror
site. You will need to be logged in as root to install the kernel source. Install the kernel
source with:
如果内核源文件没装,从Redhat的站点下载一个,你需要用root权限装它。用如下命令:
rpm -ivh kernel-source-2.4.18-5.i386.rpm
If you are registered with The Red Hat Network you can also use up2date to install the kernel.
This will download and then install the kernel-source for you.
如果你已经是redhat网的注册用户,你可以用up2date命令来安装kernel,这样的命令将下载并安装kernel source
up2date kernel-source
Preparing the kernel source
准备内核源文件
Login as the root user.
以root用户登录
Change to the /usr/src/linux-2.4.18-5 directory
换到/usr/src/linux-2.4.18-5目录
[root@garfield root]# cd /usr/src/linux-2.4.18-5
"make mrproper"
[root@garfield linux-2.4]# make mrproper
"make xconfig"
[root@garfield linux-2.4]# make xconfig
Load the default Red Hat kernel config that was used to compile the kernel you have installed.
载入RedHat用于编译你所安装的内核的内核配置文件(作者这个是athlon速龙)
[root@garfield linux-2.4]# rpm -q --qf '%{ARCH}\n' kernel-2.4.18-5
athlon
Click "Load Configuration from file"
点击"Load Configuration from file"
Side note: Red Hat did not ship an i586 uniprocessor kernel with 7.3. If you have a uniprocessor
i586 system the command above will probably return i386. Use the i386.config if it does.
旁记:RedHat没发行7.3的i586 uniprocessor内核,如果你用了i586 uniprocessor上面的系统将返回i386.这种情况
下就用i386.config
You can look in /usr/src/linux-2.4.18-5/configs to see what the default kernel configs Red Hat
uses to compile their kernels.
你可以看看/usr/src/linux-2.4.18-5/configs来看看红帽子都有哪些缺省的内核配置
[jimh@garfield jimh]$ ll /usr/src/linux-2.4.18-5/configs
total 564
-rw-r--r-- 1 root root 39830 May 2 14:36 kernel-2.4.18-athlon.config
-rw-r--r-- 1 root root 39858 May 2 14:36 kernel-2.4.18-athlon-smp.config
-rw-r--r-- 1 root root 49146 May 2 14:36 kernel-2.4.18-i386-BOOT.config
-rw-r--r-- 1 root root 40020 May 2 14:36 kernel-2.4.18-i386.config
-rw-r--r-- 1 root root 39960 May 2 14:36 kernel-2.4.18-i386-smp.config
-rw-r--r-- 1 root root 39957 May 2 14:36 kernel-2.4.18-i586.config
-rw-r--r-- 1 root root 39897 May 2 14:36 kernel-2.4.18-i586-smp.config
-rw-r--r-- 1 root root 40021 May 2 14:36 kernel-2.4.18-i686-bigmem.config
-rw-r--r-- 1 root root 39968 May 2 14:36 kernel-2.4.18-i686.config
-rw-r--r-- 1 root root 40414 May 2 14:36 kernel-2.4.18-i686-debug.config
-rw-r--r-- 1 root root 39966 May 2 14:36 kernel-2.4.18-i686-smp.config
-rw-r--r-- 1 root root 35944 May 2 14:36 kernel-2.4.18-i686-uml.config
-rw-r--r-- 1 root root 40170 May 2 14:36 kernel-2.4.18-x86_64.config
-rw-r--r-- 1 root root 40170 May 2 14:36 kernel-2.4.18-x86_64-smp.config
In the dialog box type the full path to the config file you want to use.
Example: /usr/src/linux-2.4.18-5/configs/kernel-2.4.18-i686.config
在对话框输入你要用的全路径文件名,
比如:/usr/src/linux-2.4.18-5/configs/kernel-2.4.18-i686.config
Click "Ok" to load the config and exit the dialog box.
点"Ok"来载入配置并退出对话框。
Click "File Systems"
Scroll down and find "NTFS filesystem support (read only)"
点"File Systems"然后找到"NTFS filesystem support (read only)"
Click "m" to build NTFS support as a module.
点m来把NTFS支持编译成一个模块。