首页 > 咬口苹果 > MAC OS X与NTFS

MAC OS X与NTFS

2010年8月29日 发表评论 阅读评论

MAC OS X下是可以自由读取NTFS分区的,但如何写,则是很多论坛的常见问题。最近看到国外几篇不错的帖子,就顺手汇编一下,供各位参考。

一、使用MAC OS X自带的NTFS写功能

要求MAC OS X版本高于10.6

1.实现方式一:手工mount分区

这一方式类似下面这一方法,但需要每次手工umount后再使用对应参数mount上来,非常麻烦,就不赘述了。

2. 实现方式二:改动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

3.实现方式三:修改/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——回车”完成编辑。

此时你重启系统就会自动加载了。

4. 实现方式四:使用网友开发的软件ntfsmounter

直接到ntfsmounter.com下载即可。这个软件安装后在顶栏出现一个猫头,当插入NTFS分区时,点击猫头会看到所有的分区列表,点击其中一个分区,系统会自动以读写模式重新加载你选择的分区,操作还是非常方便的。如果需要开机自动加载,你还需要在系统偏好设置——账户里把这个软件加载为开机默认程序。

此外,国内也有网友开发过类似软件,是采用一个列表窗口的形式,一时找不到了,等以后补充吧。

5. 最后来讲讲注意事项。

上面任何一种方法,根本上都是使用了MAC OS X自带的这个读写程序。其实MAC OS X自带的这个是一个开源程序,有兴趣研究源码的朋友可以到这里看。自带程序还存在一些已知问题:

  • 如果NTFS分区存在一些信息不一致,则不能加载,即上面任何一种方法都仍然是用只读方式加载了。这是因为默认的读写程序仅仅是/sbin/mount_ntfs,并没有newfs_ntfs(也就是无法格式化出一个NTFS模式),也没有类似的fsck工具。解决方法是:将你的NTFS分区挂载到Windows上,进行一次磁盘修复,如果是USB的,还要记得安全退出。
  • 虽然是原生的,但是Apple也没拿到Microsoft的授权或者知识分享,所以这种方式同样是危险而不稳定的。在网上有人发现会出现实际文件在而文件图标全部丢失(也就是你在Finder里看是个空盘)、拷贝文件丢失等现象。如果你不幸遇到莫名其妙的问题,第一选择仍然是到Windows上修复磁盘并安全退出。

二、使用第三方软件

目前常见的第三方软件就是以下两类:

1. Paragon NTFS for MAC OS X

目前Paragon NTFS最新是8.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分区,稳定很多。当然,这些只是我个人用的心得,也许只是特例。

2. MACFuse + NTFS-3g

MACFuse在我之前的帖子里提到过,在低版本中会随着VMWare Fusion安装;它和NTFS-3g都是免费软件,因此无版权之忧。考虑到国内搞到Paragon的方便性,其实很少有人用吧,根据国外网友的反馈,也并不稳定,如果要实现自动加载,还需要一番手工操作。这里就不细说了,感兴趣的网友自行搜索吧,这方面有详细教程。

本文部分资料来自:

Guide: Enable native NTFS Read/Write in Snow Leopard

写作中发现这个资源也很清晰:

10.6: Enable native NTFS read/write support

  1. 2010年8月29日20:44 | #1

    懒人…ntfsmounter ;)

  2. 2010年8月29日20:49 | #2

    @imlanho
    那就要注意是否在Win中安全推出的问题哦

  3. 2011年8月27日14:34 | #3

    - -! 弄了半天… google 到的也是您老在weiphone发表的文章…

    第三次留言感谢…..

  1. 本文目前尚无任何 trackbacks 和 pingbacks.