MAC OS X下是可以自由读取NTFS分区的,但如何写,则是很多论坛的常见问题。最近看到国外几篇不错的帖子,就顺手汇编一下,供各位参考。
在OS X 10.10和10.11中不能用以下方法解决,我是通过安装tuxerantfs_2015达到目的的
一、使用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
下面的内容还没尝试。不知道能在osx10.12下运行不
打开“终端”,输入:
- sudo -i
- whoami
方法一:配置/etc/fstab,此方法让系统开机自动以读写权限挂载NTFS分区, 推荐用此法来挂载本地硬盘。
1.执行下面命令找出NTFS分区:
- diskutil list | grep NTFS
2.执行下面命令修改/etc/fstab(需要会使用vim编辑器):
- vifs
- LABEL=Data1 none ntfs rw,nobrowse,noowners,noatime,nosuid
方法二:手工操作挂载, 推荐用来挂载USB移动硬盘,这个方法总共分3个步骤:
1.找出NTFS磁盘和挂载点
2.卸载NTFS磁盘
3.加上读写参数重新挂载
3个步骤的详细操作:
1.找出NTFS磁盘和挂载点,输入以下命令:
- mount | grep ntfs
- /dev/disk0s1 on /Volumes/Win7boot (ntfs, local, noowners, read-only, nosuid)
- /dev/disk0s2 on /Volumes/Windows7 (ntfs, local, noowners, read-only, nosuid)
- /dev/disk0s3 on /Volumes/Programs (ntfs, local, noowners, read-only, nosuid)
- /dev/disk0s5 on /Volumes/Data1 (ntfs, local, noowners, read-only, nosuid)
- /dev/disk0s6 on /Volumes/Data2 (ntfs, local, noowners, read-only, nosuid)
2.根据以上的信息,来卸载当前挂载的NTFS磁盘,比如要卸载 /dev/disk0s1,就执行下面的命令:
- umount /dev/disk0s1
用同样的方法来卸载其它的磁盘。这里要*注意*如果磁盘上有文件被打开,那么这个磁盘是卸载不了的。
3.还是以/dev/disk0s1为例说明怎么以读写方式挂载NTFS。从步骤1中的第三列找到默认的挂载点,执行下面命令创建它:
- mkdir -p /Volumes/Win7boot
- mount_ntfs -o rw,auto,nobrowse,noowners,noatime /dev/disk0s1 /Volumes/Win7boot
最后,
1.此方法挂载的磁盘不会显示在Finder边栏的“设备”里。所以我把/Volumes添加到Finder的“个人收藏”了。
2.系统读写NTFS有时会“弄脏”磁盘,windows开机的时候需要检查磁盘,一般不会损坏文件,如果担心损坏那就不要让系统读写NTFS磁盘了。
3.教程的步骤在10.8.4验证过,使用过程中没有出现损坏文件的情况,如果使用过程中你的文件损坏了与作者无关