当前位置:操作系统 > Unix/Linux >>

让Linux挂载NTFS

Windows 2000/XP/2003操作系统的分区格式是NTFS。NTFS格式支持高达2TB的大硬盘,而且性能不会随着磁盘容量的增大而降低。但是,因为这个格式在Linux下不能直接使用,所以Linux用户不能充分利用NTFS格式的硬盘空间。

  因为Linux没有将挂载NTFS格式这项功能编译到内核里面,所以用户必须重新编译内核。但是编译完成后,很难保证一定能够挂载NTFS分区。下面介绍怎样才能正确、可靠地把NTFS安装、编译和挂载到Linux之中。

  安装

  1.RPM

  在Linux下安装软件一般使用RPM组件管理程序。首先使用下面的命令查询目前所使用的Linux的内核版本:

  #uname -r

  得到版本信息后,到http://Linux-ntfs.sourceforge.net/网站下载系统所需的kernel-ntfs-2.4.28-27.8.0.i686.rpm组件。下载完成就可以使用下面的命令安装该组件:

  #rpm ivh kernel-ntfs-2.4.28-27.8.0.i686.rpm

  2.光盘

  首先以root身份登录Linux,将Linux的第二张安装盘放入光驱,找到/redhat/RPMS目录下的kernel-2.4.xx-x-i386.rpm(这里x代表数字)文件,输入下面的命令:

  #rpm ivh kernel-2.4.xx-x.i386.rpm

  编译

  用户安装好NTFS软件包后,就来进行编译的工作。首先进入/usr/src/linux-2.4.xx-x/configs目录,直接选择kernel-2.4.xx-x.i686.config,将该文件复制到/usr/src/linux2.4.xx-x目录下。接着用文本编辑器打开,把“#CONFIG_NTFS_FS is not set”这一行改为“CONFIG_NTFS_FS=m”。

  然后到/usr/src/linux-2.4.xx-3目录,输入下面的命令编译NTFS模块:

  #make modules

  编译完成后,到/usr/src/linux-2.4.xx-x/fs/ntf目录下找到一个ntfs.o文件,将其文件复制到/lib/modules/2.4.xx-x/kernel/fs目录。最后回到/usr/src/linux-2.4.xx-3目录,输入如下命令即可:

  #depmod

  #modprobe ntfs

  挂载NTFS

  当安装和编译完成后,便可以自行在/mnt下建立一个目录当作挂载点。以笔者而言,挂载点设为windows1。然后使用“mount”命令挂载,示例如下:

  #mount t ntfs /dev/hdc1 /mnt/windows1

  当顺利将NTFS挂载起来后,便可以切换到所建立的挂载点目录下(例如切换到/mnt/windows1下),运行如下命令来查看NTFS分区下的文件:

  #ls -l

  在用RPM方式安装可以挂载NTFS分区的组件后,此时的Linux只能在所挂载的NTFS分区内读取和运行相关文件,而无法写入任何信息或存储任何文件到NTFS分区中。

  

  此时,一般的用户无法使用NTFS分区内的东西,因为挂载的权限只有系统管理者root才拥有。在默认值上挂载后的分区,其拥有者(UID)和拥有群组(GID)都是root。如果想让一般的用户也能使用挂载后的文件,就必须重新设置。具体做法如下:

  首先,root在运行“mount”命令前,须先考虑有几位用户将使用NTFS分区内的文件,例如abc用户需要使用,就可以输入下面的命令:

  #mount /dev/hdc1 /mnt/windows1 t ntfs r o uid=abc

  挂载完成后,可以看到windows1的拥有者已经变为abc。此时,abc这位用户便可以使用windows1目录下的任何文件了,从而实现了利用NTFS磁盘空间的目的。
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,