最近將 macOS 更新到 Monterey 了,有些軟體也需要跟著更新,我一直都有在用 sshfs,他是基於 ssh 將遠端的硬碟空間掛載到本機端,這套工具在所有 linux 上都可以安裝,但在 macOS 上,還需要搭配 macFUSE 使用才行,那就一樣筆記寫起來,主要是針對 macOS 寫的,其他系統應該差不多。
滿足以下條件越多,越推薦使用
- 遠端伺服器上尚有空餘的空間(有磁碟陣列空間更好)
- 本機端的硬碟空間有限(尤其現在 macbook 的 SSD 空間寶貴)
- 網速夠快(有個 300M/100M 大概可以滿足大部份的使用場景)
macFUSE 安裝
macFUSE 工具可以讓你在 macOS 下,讀寫其他 file systems 的檔案。早期是由 Google 開發,現在你可到 GitHub 上找到最新的版本。但我習慣是使用 homebrew 進行安裝,這樣之後要更新時,也會比較方便。
在 Terminal 下執行以列指令進行安裝:
brew install --cask macfuse
安裝完後系統會要求重新開機,功能才會生效。
sshfs 安裝
這套工具利用 sftp 的方式,掛載遠端資料夾,使用方式和 mount 很像。
在 Terminal 下執行以列指令進行安裝:
brew install sshfs
安裝好後就可以使用了,使用方式為:
sshfs username@remote_server_ip:/remote_path_to_mount /local_path
如:使用者(ecliptic)在遠端伺服器(123.45.67.89)的資料夾(/home/ecliptic/mydata)掛載到本機上的資料夾(/Users/Ecliptic/Downloads/remote_mount)就會是:
sshfs ecliptic@123.45.67.89:/home/ecliptic/mydata /Users/Ecliptic/Downloads/remote_mount
上述步驟要先建立好 /Users/Ecliptic/Downloads/remote_mount 資料夾才行。
解除掛載和 umount 使用一樣:
umount /local_path
也就是
umount /Users/Ecliptic/Downloads/remote_mount
適用版本
我現在的 macOS 是 Monterey,版本為 12.0.1 ,macFuse 的版本 4.2.1,sshfs 版本為 2.5,目前使用上沒有問題。在上一個版本的 macOS 上,我記得有出現過版本的問題,導致必須將 macFuse 固定在 4.1.2 之上,不過現在用 4.2.1 是可行的,就不去細查詳細的原因了。