Mac OS · 2016-11-25

Mac原生系统对ntfs格式写操作支持

cat /etc/fstab
LABEL=WINDATA none ntfs rw,auto,nobrowse

WINDATA是磁盘已有的名字,设置好后重新插上移动硬盘即可。

弹出移动硬盘
执行 hdiutil eject /Volumes/Toshiba\ Portable\ Hard\ Drive/,如下输出
“disk1” unmounted.
“disk1” ejected.

创建一个目录,稍后将mount到这个目录
sodu mkdir /Volumes/MYHD

将移动硬盘以NTFS格式mount到上面的目录
sudo mount_ntfs -o rw,nobrowse /dev/disk1s1 /Volumes/MYHD/
执行完上面命令后,你可以看到你的移动硬盘灯又两起来了,没有任何输出,表示成功。

此时,你的移动硬盘可写了。 不过你不能在Finder里面操作,因为上面加了nobrowse选项。但是这个选项是必须的,否则你无法写。

 

 

完整解决方案,安装方法

1.首先安装FUSE for Mac

FUSE for MacMacFUSE的继承者,基于FUSE为MacOS用户提供除系统外的第三方文件系统的支持。详见官方网站

这里提供3.6.3版本的下载地址,最新版请前往官方网站下载。

下载FUSE for Mac

2.使用Homebrew安装ntfs-3g

在安装FUSE后,使用Homebrew安装ntfs文件系统的支持,执行如下命令:

 

brew install ntfs-3g

3.更换MacOS的NTFS默认挂载程序

首先备份系统默认的NTFS挂载程序

 

sudo mv /sbin/mount_ntfs /sbin/mount_ntfs.orig

然后将ntfs-3g挂载程序链接到/sbin/mount_ntfs

 

sudo ln -s /usr/local/sbin/mount_ntfs /sbin/mount_ntfs

4.重新启动

重新启动后插入NTFS格式的磁盘即可正常进行读写操作。

 

  • 设置自动挂载方式
    如果你想让系统自动挂载,你要多做一些事情
  1. 关闭sip 系统完整性保护 功能.
    你要进入recover 模式,在命令行中输入 csrutil disable
    重新启动macos ,进入系统后 解锁根分区 .使之可以被读写 命令: sudo mount -uw /
  2. 替换掉系统的/sbin/mount_ntfs 为我们的 ntfs-3g /usr/local/sbin/mount_ntfs
    1. 先备份
      sudo mv "/Volumes/你的macOS系统所有分区名称/sbin/mount_ntfs" "/Volumes/你的macOS系统所有分区名称/sbin/mount_ntfs.orig"
    2. 建立软连接
      sudo ln -s /usr/local/sbin/mount_ntfs "/Volumes/你的macOS系统所有分区名称/sbin/mount_ntfs"
  3. 开启sip [可选]
    csrutil enable