# Mac 外接磁盤寫入 (NTFS | exFAT)

Mac 可以從一個通過 USB 連接的磁盤 ( U 盤或者移動硬盤這里統稱為外接磁盤)里拷貝文件到 Mac 電腦里,但是反過來卻不可以,也就是從 Mac 里拷貝文件到外接磁盤。因為大部分的磁盤初始格式都是 NTFS ,Mac 默認未開啟 NTFS 格式的文件寫入。本篇將介紹 Mac 讀寫外接磁盤的5種方案,相信總有一種方案適合你。
> NTFS 是 New Technology File System 的縮寫,簡單來講就是一種文件系統。同樣 exFAT 也是一種文件系統,如果你聽說過早期 Windows 的 FAT32 文件系統,那么你可以把 exFAT 理解為 FAT32 的 64 位版本。
## 方案1. 希捷 (Seagate) 移動硬盤官方特供的寫入 NTFS 的軟件
<img src="http://img.xiaobotalk.cn/macSkills/macSkills_08.png" width = "20%" alt="NTFS" />
如果你剛好買的是希捷 (Seagate) 的移動硬盤(如上圖,圖片僅供參考,理論上只要是希捷品牌的硬盤都可以),Mac 寫入的問題就很好解決了,希捷官方提供了磁盤讀寫軟件的免費下載,該軟件就是大名鼎鼎的 Paragon NTFS for Mac ,沒錯正常情況下,該軟件是收費的,而且不便宜,現在你可以在希捷的官方網站下載到,但是只是針對希捷的硬盤有效。[點我到希捷官網下載免費的 Paragon NTFS for Mac。](https://www.seagate.com/cn/zh/support/downloads/item/ntfs-driver-for-mac-os-master-dl/)
軟件的安裝和使用都很簡單,先安裝軟件:
<img src="http://img.xiaobotalk.cn/macSkills/macSkills_06.png" width = "50%" alt="NTFS" />
安裝后一般都要重啟電腦,重啟后基本就可以使用了,個別第一次安裝的可能勾選了 `只讀模式安裝` 勾選去掉就可以了。
<img src="http://img.xiaobotalk.cn/macSkills/macSkills_07.png" width = "50%" alt="NTFS" />
## 方案2. 新硬盤可以考慮格式化成 exFAT 格式
如果是新入手的硬盤 (老硬盤,里邊存的文件太多,又不好備份,格式化需要先備份里邊的數據),或者硬盤里文件不多,可以考慮格式化成 exFAT ,exFAT 格式的硬盤 Windows 和 Mac 都原生支持讀寫,如果你需要經常在 Mac 和 Windows 之間切換,可以考慮將硬盤格式化為 exFAT 格式。具體 exFAT 是什么,以及它的歷史,可以去[維基百科 exFAT](https://zh.wikipedia.org/wiki/ExFAT),畢竟本文重點不是介紹各種文件系統的,讓我們專注在解決 MAC 讀寫磁盤上;總之 exFAT 也是一種文件系統, MAC 和 Windows 都支持原生讀寫。
`格式化會抹掉硬盤里所有的數據,如需備份,請自行做好備份。`
#### Mac 系統自帶的磁盤工具軟件,就可以進行格式化了:
<img src="http://img.xiaobotalk.cn/macSkills/macSkills_09.png" width = "20%" alt="NTFS" />
打開磁盤工具軟件
<img src="http://img.xiaobotalk.cn/macSkills/macSkills_10.png" width = "50%" alt="NTFS" />
1. 選擇你要格式化的磁盤
2. 點擊'擦掉'
3. 選擇 ExFAT 格式 點擊擦掉
#### Windows 資源管理器或我的電腦里面選擇格式化:
<img src="http://img.xiaobotalk.cn/macSkills/macSkills_11.png" width = "20%" alt="NTFS" />
當然很多人可能不是很樂意格式化為 exFAT,因為這種格式占空間,穩定性比較 NTFS 稍微差了點;使用時,如果沒有先在電腦上點彈出,就直接拔掉 USB,可能還會在硬盤里生成一些垃圾文件;不過總體問題不是很大,發生數據丟失也是小概率事件。如果你不是特別有電腦使用潔癖的,格式化成 exFAT 是最省心的辦法。
## 方案3. 付費的三方軟件
1: [Paragon NTFS for Mac ](http://www.dpbolvw.net/click-3607085-12975586?sid=ct236055),已經閱讀到這里了,看來你的硬盤很可能不是希捷品牌,那么就要付費使用 Paragon NTFS for Mac 了,雖然可以免費試用幾天,但完全享用需要 130 多 RMB (具體價格可能隨時間推移而發生變動,最好自己去官網看一下),還好不是訂閱制,購買后便可終身使用,如果官方不再做什么變更的話。
2: [Tuxera NTFS for Mac](http://www.tuxera.com/products/tuxera-ntfs-for-mac/), 也是一款具有相同功能的付費軟件,但是它比 Paragon NTFS for Mac 還要貴上不少,大概 200 RMB (價格說明同上) 左右。
付費軟件唯一讓人不太樂意選擇的原因就是它的 '付費' 屬性,很多人可能沒有購買軟件的習慣,但是付費確實是最省心,最安全的。畢竟 "免費的才是最貴的"。
## 方案4. 免費的三方軟件
[FUSE for macOS](https://github.com/osxfuse/osxfuse/releases) 是一款免費的三方軟件,同樣是為了解決 Mac 讀寫 NTFS 問題;但是相比上邊兩款付費軟件,使用起來要麻煩一些,需要做一些額外的工作,手動雖然繁瑣一點,但是比較安全;如果想更進一步如果想讓 Mac 自動掛載 NTFS 分區,還要替換 Mac 系統內置的 NTFS 工具,則需要承擔安全性的風險。
首先下載并且安裝 [FUSE for macOS](https://github.com/osxfuse/osxfuse/releases) 。
#### 1. 手動使用命令行 (Terminal) 軟件掛載 NTFS 分區:
這種方式相對繁瑣,需要操作命令行,不過也就幾行命令而已;先來認識一下 Terminal: 應用程序 --> 實用工具 --> 終端。
<img src="http://img.xiaobotalk.cn/macSkills/macSkills_12.png" width = "20%" alt="NTFS" />
程序員的話可能習慣用 iTerm2 來代替 Terminal;雖然看起來步驟繁瑣,但是請堅持閱讀下去,很有可能你僅僅需要執行后邊幾條命令,并且除去第一次操作會繁瑣一些,以后只需要兩條命令。
**1.1: 安裝 xcode-select ,在終端執行如下指令,如果安裝請略過(執行一次,下次啟動不用安裝):**
``` shell
xcode-select --install
```
安裝會彈出對話框
<img src="http://img.xiaobotalk.cn/macSkills/macSkills_02.png" width = "50%" alt="NTFS" />
點擊"Install"
**1.2: 安裝 Homebrew ,在終端執行如下指令,如果安裝請略過 (執行一次,下次啟動不用安裝):**
``` shell
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
```
**1.3: 使用剛才安裝的 Homebrew 安裝 ntfs-3g,如果安裝請略過(執行一次,下次啟動不用安裝):**
``` shell
brew install ntfs-3g
```
**1.4: 到此,你可以開始手動管理 NTFS 的讀寫模式了,先創建一個 NTFS 分區文件夾,這個操作只需要執行一次:**
``` shell
sudo mkdir /Volumes/NTFS
```
**1.5: 當 NTFS 磁盤連接到電腦后,通過下面命令查看磁盤分區列表**
``` shell
diskutil list
```
<img src="http://img.xiaobotalk.cn/macSkills/macSkills_03.png" width = "60%" alt="NTFS" />
可以看到 Windows_NTFS 字樣,它在 /dev/disk2 下邊,在最后一列 IDENTIFIER 可以看到 Windows_NTFS 被定義為: disk2s1,已經被 Mac 自動裝載。
**1.6: 先解除 disk2s1 自動裝載**
``` shell
sudo umount /dev/disk2s1
```
執行完這行命令,桌面上的外接磁盤圖案會短暫的消失,別怕,很快會回來的。
<img src="http://img.xiaobotalk.cn/macSkills/macSkills_05.png" width = 20% alt="NTFS" />
**1.7: 然后用 我們在 1.4 步驟創建的 NTFS 分區代替 /dev/disk2s1**
``` shell
sudo /usr/local/bin/ntfs-3g /dev/disk2s1 /Volumes/NTFS -olocal -oallow_other
```
Done!!!
這時候你可以再看看桌面上的外接磁盤圖案,你會發現圖標發生了神器的變化:
<img src="http://img.xiaobotalk.cn/macSkills/macSkills_04.png" width = 20% alt="NTFS" />
打開它,開始寫入吧!
其實也不是很復雜,除去第一次安裝稍顯繁瑣,以后我們只需要重復 `1.6` 和 `1.7` 步驟即可。當然也有可能你討厭命令行,已經開始傾向去買付費軟件了,也開始感受到了 "免費的才是最貴的"。
**希望上述各種方案你能采納其中之一,因為后邊的方案都缺乏安全性,也不建議去嘗試,沒必要為了寫入磁盤功能承擔太大的風險;**
#### 2. 讓 Mac 自動掛載 NTFS 分區 (折騰有風險,掛載需謹慎):
接著 1.7 步驟,我們已經結合 FUSE for macOS 和 終端完成了手動控制寫入 NTFS 了,但你可能覺得手動還是繁瑣,想自動完成,也是可以的,不過想要讓 Mac 自動掛載可寫入的 NTFS,需要先禁用 '[系統完整性保護](https://www.howtogeek.com/230424/how-to-disable-system-integrity-protection-on-a-mac-and-why-you-shouldnt/)' ,再次申明: 這樣做有風險,開始操作前你要考慮清楚。
**2.1: 重啟 Mac 按住 Command + R ,讓 Mac 進入 recovery 模式,啟動終端執行命令:**
``` shell
csrutil disable
```
命令會關閉系統完整性保護。
**2.2: 然后再次正常啟動 Mac,再次打開終端,依次執行命令:**
``` shell
sudo mv /sbin/mount_ntfs /sbin/mount_ntfs.original
sudo ln -s /usr/local/sbin/mount_ntfs /sbin/mount_ntfs
```
命令會使用 ntfs-3g 工具替換 Mac 中的 NTFS 安裝工具。
**2.3: 然后,再次重啟進入 recovery ,恢復系統完性保護。**
``` shell
csrutil enable
```
最后再次正常重啟 Mac,Done!!! 不同的系統可能會發生失敗。
**最后的最后如果撤銷上述一系列操作,先重復 1.8.1 步驟關閉系統完整性保護,再命令行依次執行下邊命令。**
``` shell
sudo rm /sbin/mount_ntfs
sudo mv /sbin/mount_ntfs.original /sbin/mount_ntfs
brew uninstall ntfs-3g
```
## 方案5. 實驗性方案 /etc/fstab 修改,不建議
可能你還聽說過,通過 nano /etc/fstab 的方式,實現 NTFS 的讀寫,但是這種方式安全風險更高,也不一定能成功,很有可能升級完系統后又失效了,普通用戶大可不要去嘗試。筆者自己也沒有嘗試過這種方式,就不做介紹了。
## 延伸閱讀
[ NTFS 維基百科](https://zh.wikipedia.org/zh-hans/NTFS)
[ exFAT 維基百科](https://zh.wikipedia.org/wiki/ExFAT)
(完)
- 前言
- 一:Mac 基礎介紹和基本技巧篇
- 1.1. Mac 基礎操作實用小技巧
- 1.2. Mac 與 iPhone 互聯
- 1.3. 你可能會用到的 Mac 自帶軟件
- 二:Mac 常見問題與佳軟推薦篇
- 2.1. Mac 外接磁盤寫入問題
- 2.2. Mac 第一神軟 Alfred
- 2.3. Markdown 高級技巧與寫作軟件
- 2.4. Chrome 插件推薦
- 2.5. 云服務簡介與科學上網
- 三:Mac 使用進階和輕度編程
- 3.1. Mac Terminal 相關配置
- 3.2. Shell 常用指令與 Mac 特有的命令
- 3.3. Charles 抓取網絡請求
- 3.4. 輕度編程從 Git 開始
- 3.5. Git 進階知識點
- 聯系作者
- 附錄