首页 > 代码库 > OS X 10.6以上支持NTFS

OS X 10.6以上支持NTFS

Mac os 默认只能读取NTFS 格式的外接 移动硬盘,U盘。只能读写 FAT32,EXTFAT 格式的磁盘。

故而使用NTFS格式的设备,需要使用一些特别的方式。

我使用过  ntfsmounter,发现不怎么好使用。 Paragon Ntfs 10,非常好用,可惜价格太贵。

而转成EXTFAT 但是 磁盘在 xp 和 windows server 2003 无法识别。

故而使用 macfuse 方案,mac os 自带的方案最靠谱,第三方软件,容易卡磁盘。 

macfuse: http://code.google.com/p/macfuse/

http://macfuse.googlecode.com/files/MacFUSE-2.0.3%2C2.dmg

NTFS-3g:http://www.tuxera.com/


下文是,我找到的一篇,比较认可的文章。

    作者: ern       
原文: http://bbs.weiphone.com/read-htm-tid-1042827.html       
       
MAC OS X下是可以自由读取NTFS分区的,但如何写,则是很多论坛的常见问题。最近看到国外几篇不错的帖子,就顺手汇编一下,供各位参考。       
       
0.使用MAC OS X自带的NTFS写功能       
       
要求MAC OS X版本高于10.6       
       
0.0.实现方式一,手工mount分区       
       
这一方式类似下面这一方法,但需要每次手工umount后再使用对应参数mount上来,非常麻烦,就不赘述了。       
       
0.1. 实现方式二,改动mount指令,自动mount分区       
 [以下操作涉及修改系统,请自行衡量,谨慎操作]       
       
打开终端:       
       
        sudo  mv /sbin/mount_ntfs /sbin/mount_ntfs.orig       
        touch mount_ntfs       
       
之后在你的用户主目录下会生成一个mount_ntfs的空文件,用文本编辑器打开,输入以下内容后保存       
       
        #!/bin/sh       
        /sbin/mount_ntfs.orig -o rw “$@”       
       
    下面继续回到你之前打开的终端执行:       
       
        sudo mv mount_ntfs /sbin/mount_ntfs       
        sudo chown root:wheel /sbin/mount_ntfs       
        sudo chmod 755 /sbin/mount_ntfs       
       
    至此,完成工作,你的系统将默认以读写的方式加载NTFS分区。今后如果需要恢复,则在终端执行:       
       
        sudo mv /sbin/mount_ntfs.orig /sbin/mount_ntfs       
       
0.2.实现方式三,修改/etc/fstab文件,实现自动挂载       
       
    首先确认你的NTFS分区已经挂载在系统上,打开终端执行:       
       
        diskutil info /Volumes/卷名       
       
    这里的卷名就是你要挂载的这个NTFS分区名,如果你没把握,也可以直接在终端输入mount,会看到类似:       
       
        /dev/disk0s2 on /Volumes/DATA (hfs, local, journaled)       
       
    这个”on”后面的/Volumes/DATA就是你的挂载点,DATA就是分区名。       
       
    好,言归正传,执行diskutil info后得到类似下面的结果:       
       
        Device Identifier:        disk0s2       
        Device Node:              /dev/disk0s2       
        ……       
        SMART Status:             Verified       
        Volume UUID:              B23CF4FE-EDBE-3E0A-8871-46078026CE40       
       
    注意将Volume UUID后面的内容拷贝出来,就是你这个分区的唯一标识号。       
       
    现在打开/etc/fstab编辑(如果之前你没有做过其他操作,默认是没有这个文件的):       
       
        sudo nano /etc/fstab       
       
    然后在文件中输入:       
       
        UUID=NTFS分区的UUID none ntfs rw       
       
    如果你有不止一个NTFS分区,那就分行输入;完成编辑后按“ctrl-x——y——回车”完成编辑。       
       
    此时你重启系统就会自动加载了。       
       
0.3.实现方式四, 免费软件 ntfsmounter       
       
到ntfsmounter.com下载即可。       
       
这个软件安装后在顶栏出现一个猫头,当插入NTFS分区时,点击猫头会看到所有的分区列表,点击其中一个分区,系统会自动以读写模式重新加载你选择的分区,操作还是非常方便的。       
       
如果需要开机自动加载,你还需要在系统偏好设置——账户里把这个软件加载为开机默认程序。       
       
0.4.注意事项       
       
上面任何一种方法,根本上都是使用了MAC OS X自带的这个读写程序。       
       
其实MAC OS X自带的这个是一个开源程序,有兴趣研究源码的朋友可以到这里看。       
       
自带程序还存在一些已知问题:       
       
如果NTFS分区存在一些信息不一致,则不能加载,即上面任何一种方法都仍然是用只读方式加载了。       
       
这是因为默认的读写程序仅仅是/sbin/mount_ntfs,并没有newfs_ntfs(也就是无法格式化出一个NTFS模式),也没有类似的fsck工具。解决方法是:将你的NTFS分区挂载到Windows上,进行一次磁盘修复,如果是USB的,还要记得安全退出。       
       
虽然是原生的,但是Apple也没拿到Microsoft的授权或者知识分享,所以这种方式同样是危险而不稳定的。       
       
在网上有人发现会出现实际文件在而文件图标全部丢失(也就是你在Finder里看是个空盘)、拷贝文件丢失等现象。       
       
如果你不幸遇到莫名其妙的问题,第一选择仍然是到Windows上修复磁盘并安全退出。       
       
1.使用第三方软件       
       
前常见的第三方软件就是以下两类:       
              
       
       
1.0. Paragon NTFS for MAC OS X       
       
目前Paragon NTFS最新是11.0版,是一款商业软件。       
              
       
从它网站介绍来看,它是开发了一种ufsd通用分区格式,将NTFS映射到这种格式上来(相应也有软件在Windows上将hfs等格式映射到这个格式,以在Windows上读写MAC的分区)。       
       
安装后可以在/sbin/下看到有几个文件:       
       
    -r-xr-xr-x  1 root  wheel  44584  4  7 18:47 /sbin/fsck_ufsd_NTFS       
    -r-xr-xr-x  1 root  wheel  61296  4  7 18:47 /sbin/mount_ufsd_NTFS       
    -r-xr-xr-x  1 root  wheel  57860  4  7 18:47 /sbin/newfs_ufsd_NTFS       
       
可以看到它是比较齐全的,不仅有mount,还有对应的fsck和newfs,即可以自己修复分区、创建新分区。安装后在系统偏好设置里会多出Paragon的栏目,其中可以选择是否启用、挂载哪些分区等。       
       
还是非常简单易用的。       
       
在我个人的使用中,发现Paragon远远没有宣传的那么稳定。       
       
特别需要注意,如果你将一个文件直接拖到NTFS分区中一个文件夹的图标上(也就是拷贝到对应的文件夹),出错概率很高,而且往往是你再也找不到这个文件了,仿佛进了一个黑洞。此外,一次性拷贝大量小文件时也会有这个问题,会丢掉几个。       
       
对大量小文件,解决方法是将它们放到一个文件夹里,直接拖文件夹图标到NTFS分区,稳定很多。当然,这些只是我个人用的心得,也许只是特例。       
       
       
       
1.1. MACFuse + NTFS-3g       
              
MACFuse 在我之前的帖子里提到过,在低版本中会随着VMWare Fusion安装;它和 NTFS-3g 都是免费软件,无版权之忧。         
      
考虑到国内搞到Paragon的方便性,其实很少有人用吧,根据国外网友的反馈,也并不稳定,如果要实现自动加载,还需要一番手工操作。       
       
这里就不细说了,感兴趣的网友自行搜索吧,这方面有详细教程。       
       
     参考资料:       
Guide: Enable native NTFS Read/Write in Snow Leopard       
http://forums.macrumors.com/showthread.php?t=785376       
       
写作中发现这个资源也很清晰:       
10.6: Enable native NTFS read/write support       
http://hints.macworld.com/article.php?story=20090913140023382     

OS X 10.6以上支持NTFS