在 CentOS 6.x 中,默认 NTFS 文件系统是没有安装的,也就是说在 CentOS 6.x 中是不能直接挂载 NTFS 分区的。但是目前 Windows 的分区绝大多数是 NTFS 分区,这就需要在 CentOS 6.x 中安装 NTFS 文件系统的模块之后,才能使用 NTFS 分区。
安装 NTFS 文件系统模块的方法有三种:
1.下载内核:可以到内核的官方网站下载和本机安装的内核版本相同的内核源码。本机内核的版本可以使用 uname -r 命令查看,命令如下:
[root@CncLucZK ~]# uname -r
2.6.32-279.el6.i686
2.解压内核:下载的内核是压缩包,需要解压。解压命令如下:
[root@CncLucZK ~]# tar -jxvf linux-2.6.32.tar.bz2
[root@CncLucZK ~]# cp -r linux-2.6.32 /usr/src/kernels/
#复制内核源码到默认内核源码保存位置
3.生成内核编译所需的 .config 文件:在进行内核编译时,是需要依赖 .config 配置文件来配置内核功能的,这个文件是通过 make menuconfig 命令生成的。不过,这里不讲解完整的内核编译过程,只是为了生成 ntfs.ko 文件,那么我们就不需要执行复杂的 make menuconfig 命令了。我们可以安装 RPM 包的内核,虽然 RPM 包安装的内核源码并不完整(早期 Linux 版本会安装完整的内核源码),但是有 .config 配置文件,我们可以直接利用这个配置文件,而不需要使用 make menuconfig 命令自己生成 .config 配置文件(在进行真正的内核编译时,是需要使用 make menuconfig 命令来配置自己需要的功能,并生成 .config 配置文件的)。 命令如下:
[root@CncLucZK ~]# mount /dev/cdrom /mnt/cdrom/
[root@CncLucZK ~]# rpm -ivh /mnt/cdrom/Packages/kernel-devel-2.6.32-279.el6.i686.rpm
#安装RPM包的不完整的内核源码
[root@localhost ~]# cp /usr/src/kernels/2.6.32-279.el6.i686/.config /usr/src/kernels/linux-2.6.32/
#从RPM包的内核源码中复制.config配置文件到源码包的内核源码中
[root@CncLucZK ~]# vi /usr/src/kernels/linux-2.6.32/.config
…省略部分输出…
# CONFIG_NTFS_FS is not set
#改为
CONFIG_NTFS_FS=m
…省略部分输出…
4.编译模块:使用 make modules 命令来编译所有的模块,因为我们开启了 NTFS 文件系统模块,所以会生成 ntfs.ko 文件。当然,编译要想正确进行,gcc 编译器是必须安装的。命令如下:
[root@CncLucZK ~]# cd /usr/src/kernels/linux-2.6.32/
#编译命令一定要进入内核目录才能执行,因为编译命令编译的是模块当前所在目录
[root@CncLucZK linux-2.6.32]# make modules
#在命令执行过程中,需要选择安装哪些模块,这时只选择NTFS相关模块,其他模块都不安装,这样能加快安装速度。注意:需要选择的选项较多,不要漏选
…省略部分输出…
NTFS file system support (NTFS_FS) [M/n/y/?] m
NTFS debugging support (NTFS_DEBUG) [N/y/?] (NEW)y
NTFS write support (NTFS_RW) [N/y/?] (NEW)y
#只有这几个功能选择y(安装)或m(安装成模块),其他功能都不需要安装
…省略部分输出…
[root@CncLucZK linux-2.6.32]# ll /usr/src/kernels/linux-2.6.32/fs/ntfs/ntfs.ko
-rw-r--r--. 1 root root 3175255 10 月 4 18:57 /usr/src/ kemels/linux-2.6.32/
fs/ntfs/ntfs.ko
5.模块安装:我们有了 ntfs.ko 模块,接下来的安装过程就比较简单了。先把 ntfs.ko 复制到指定位置,命令如下:
[root@CncLucZK linux-2.6.32]# cp fs/ntfs/ntfs.ko/lib/ modules/2.6.32-279.el6.i686/kernel/fs/
[root@CncLucZK linux-2.6.32]# depmod -a
#扫描所有模块
[root@CncLucZK linux-2.6.32]# modprobe ntfs
#安装ntfs模块
[root@CncLucZK linux-2.6.32]# modprobe -f ntfs
#-f:强制
[root@CncLucZK linux-2.6.32]#lsmod | grep ntfs
ntfs 93874 0 [permanent]
注意,虽然我们使用了部分内核编译命令,但是我们的目的不是编译内核,而只是生成 ntfs.ko 模块,所以不需要完成内核的完整编译与安装过程。而且,如果用内核的完整编译与安装( make install )过程,那么安装的新内核有 ntfs 功能,其他功能都不存在,新内核是不能正确使用的。
1.下载 NTFS-3G 插件:首先,下载 NTFS-3G 插件到 Linux 服务器上。
2.安装 NTFS-3G 插件:在编译安装 NTFS-3G 插件之前,要保证 gcc 编译器已经安装。具体安装命令如下:
[root@CncLucZK ~]# tar -zxvf ntfs-3g_ntfsprogs-2013.1,13.tar.gz
#解压
[root@CncLucZK ~]#cd ntfs-3g_ntfeprogs-2013.1.13
#进入解压目录
[root@CncLucZK ntfs-3g_ntfsprogs-2013.1.13]#./ configure
#编译器准备。没有指定安装目录,安装到默认位置
[root@CncLucZK ntfs-3g_ntfsprogs-2013.1.13]# make
#编译
[root@CncLucZK ntfs-3g_ntfsprogs-2013.1.13]# make install
#编译安装
[root@localhost ~]# mount -t ntfs-3g 分区设备文件名 挂载点
[root@localhost ~]# mount -t ntfe-3g /dev/sdb1 /mnt/win
使用安装 NTFS-3G 插件的方式比安装 NTFS 文件系统更加简便方便。
参考文献:
Linux NTFS文件系统安装教程