Linux系统挂载NTFS文件系统

时间:2022-03-06 16:12:11
     今天尝试并成功的将一块500G的移动硬盘挂载到了RHEL5的系统上,甚感欣慰。想到也许以后自己或其他同学们会有类似经历,于是尽量细致的记录于此。

     无论是一块安装了Windows/Linux双系统的硬盘,还是通过USB连接的移动硬盘/U盘,都是可以挂载到Linux系统中的。不过由于Windows本身常用的文件系统包括fat32和NTFS,因此还是需要区别的。废话少说,进入正题。

系统环境如下:
操作系统—— RHEL5,详细版本为:Red Hat Enterprise Linux Server release 5.2 (Tikanga) 
内核版本—— 2.6.18-92.el5 for x86_64
移动硬盘—— 500G,NTFS文件系统

应用目标:
不影响移动硬盘当前数据的前提下,挂载该硬盘,可以进行读写操作。

方案A:使用linux-ntfs
特点:本方案使用简单,易于操作;但是挂载成功后却是只读

实现:
1. 下载linux-ntfs的RPM包
# wget http://prdownloads.sourceforge.net/linux-ntfs/kernel-module-ntfs-2.6.18-92.el5-2.1.27-0.rr.10.11.x86_64.rpm

2. 安装下载后的RPM包
# rpm -ivh kernel-module-ntfs-2.6.18-92.el5-2.1.27-0.rr.10.11.x86_64.rpm

3. 检查ntfs模块是否被加载进系统
# /sbin/modprobe ntfs
    [没有输出则代表存在;否则将会有错误信息报出]
# cat /proc/filesystems
nodev   selinuxfs
            ext3
nodev   rpc_pipefs
nodev   autofs
            ntfs
    [ntfs应该出现在列表中]

4. 查看NTFS系统的编号 
# /sbin/fdisk -l |grep NTFS 
/dev/sdc1               1       60801   488384001    7  HPFS/NTFS

5. 挂载NTFS文件系统 
# mkdir -p /mnt/ntfs/ 
# mount -t ntfs /dev/sdc1 /mnt/ntfs/

END. 此时如无意外应该已经成功挂载了一个只读的NTFS系统,可使用mount命令进行查看。

 

方案B:使用fusentfs-3g
特点:本方案需要下载2个包,对其进行源码安装;挂载成功后即可读写挂载分区

实现:
1. 下载源码安装包
# wget http://downloads.sourceforge.net/project/fuse/fuse-2.X/2.7.4/fuse-2.7.4.tar.gz?use_mirror=ncu
# wget http://www.ntfs-3g.org/ntfs-3g-2009.4.4.tgz

2. 安装下载后的源码包
# tar -zxf fuse-2.7.4.tar.gz
# ./configure --prefix=/usr/local/fuse-2.7.4
# make 
# make install

# tar -zxf ntfs-3g-2009.4.4.tgz
# ./configure --prefix=/usr/local/ntfs-3
# make 
# make install

3. 检查fuse模块是否被加载进系统
# /sbin/modprobe fuse
    [没有输出则代表存在;否则将会有错误信息报出]
# cat /proc/filesystems
nodev   selinuxfs
            ext3
nodev   rpc_pipefs
nodev   autofs
            ntfs
nodev   fuse
            fuseblk
nodev   fusectl
    [fuse应该出现在列表中]

4. 查看NTFS系统的编号 
# /sbin/fdisk -l |grep NTFS 
/dev/sdc1               1       60801   488384001    7  HPFS/NTFS

5. 挂载NTFS文件系统 
# mkdir -p /mnt/ntfs/ 
# mount -t ntfs-3g /dev/sdc1 /mnt/ntfs/

END. 此时如无意外应该已经成功挂载了一个所有用户均可读写的NTFS系统,可使用mount命令进行查看。