最简单的方法就是把 OS X 自带的 mount_ntfs 默认加载方式从只读改成读写, 具体方法如下
# 用 root 身份做如下操作 (高危! 请切记自己在干什么)
sudo -s
cd /sbin
# 将系统自带的挂载程序改名
mv mount_ntfs mount_ntfs_orig
# 新建我们要的挂载脚本并编辑
vim mount_ntfs
#!/bin/sh
/sbin/mount_ntfs_orig -o rw,nobrowse "[email protected]"
# 保存退出后改一下权限
chmod a+x mount_ntfs
# 都搞定了, 退出 root 身份
exit
然后就可以跟用其他类型分区一样的随意用了
<del>有其他答案做类似操作时在 -o 参数里加了 nobrowse, 这个是让 GUI 默认不可见, 即 Finder 的左边栏 "设备" 里不出现, 找起来麻烦推出也麻烦, 个人建议不要加</del>
// 2014.05.06 更新, 如果 -o 参数里不加 nobrowse 可能挂载上来的还是只读模式, 这个具体原因还没研究清楚, 如果遇到挂载上去还是只读, 将脚本里 -o rw 改成 -o rw,nobrowse
// 为了方便访问, 可以在 finder 里用 cmd+shift+G 打开跳转, 输 /Volumes 进入所有磁盘目录, 然后在用 cmd+shift+T 将 /Volumes 保存到边栏
============================================================================
第一步,当然是插上磁盘啦。
可以从finder或者使用以下命令查看到磁盘的Volume Name:
diskutil list
/dev/disk0
#: TYPE NAME SIZE IDENTIFIER
0: GUID_partition_scheme *128.0 GB disk0
1: EFI EFI 209.7 MB disk0s1
2: Apple_CoreStorage 127.7 GB disk0s2
3: Apple_Boot Boot OS X 134.2 MB disk0s3
/dev/disk1
#: TYPE NAME SIZE IDENTIFIER
0: GUID_partition_scheme *500.1 GB disk1
1: EFI EFI 209.7 MB disk1s1
2: Apple_CoreStorage 499.2 GB disk1s2
3: Apple_Boot Boot OS X 650.0 MB disk1s3
/dev/disk2
#: TYPE NAME SIZE IDENTIFIER
0: Apple_HFS Macintosh HD *621.4 GB disk2
/dev/disk3
#: TYPE NAME SIZE IDENTIFIER
0: FDisk_partition_scheme *1.0 TB disk3
1: Windows_NTFS FreeAgent GoFlex Drive 1.0 TB disk3s1
可以看到,我的 Volume Name 是FreeAgent GoFlex Drive。
紧接着更新 /etc/fstab文件
sudo vim /etc/fstab
把以下内容写入进去
LABEL=FreeAgent\040GoFlex\040Drive none ntfs rw,auto,nobrowse
下面来依次解释一下,其中的\040的意思是代替空格键,因为我的Volume Name是有空格的,所以必须把这个空格给转义了。
后面的Ntfs rw表示把这个分区挂载为可读写的ntfs格式,最后nobrowse非常重要,因为这个代表了在finder里不显示这个分区,这个选项非常重要,如果不打开的话挂载是不会成功的。
编辑好以后重新插入磁盘,就能识别到了,但是这个时候有了一个最大的问题,因为这个分区在finder里不显示了,那么我们要怎么找到它呢,总不能一直用命令行把。
解决办法其实很简单,因为这个分区是挂/Volumes下的,我们把这个目录在桌面做一个快捷方式就行了。
sudo ln -s /Volumes ~/Desktop/Volumes
然后我们能在桌面找到
点开以后就能找到磁盘了
用这种方法打开的是系统原生的ntfs功能,稳定实用,比第三方工具要好用的多了。