你曾經想過用安全 shell 掛載一個遠程文件系統到本地嗎?如果有的話,SSHfs 也許就是你所需要的。它通過使用 SSH 和 Fuse(LCTT 譯注:Filesystem in Userspace,用戶態文件系統,是 Linux 中用於掛載某些網絡空間,如 SSH,到本地文件系統的模塊) 允許你掛載遠程計算機(或者服務器)到本地。
注意: 這篇文章假設你明白SSH 如何工作並在你的系統中配置 SSH。
在使用 SSHfs 掛載之前,需要進行一些設置 - 在你的系統上安裝 SSHfs 以及 fuse 軟件包。你還需要為 fuse 創建一個組,添加用戶到組,並創建遠程文件系統將會駐留的目錄。
要在 Ubuntu Linux 上安裝兩個軟件包,只需要在終端窗口輸入以下命令:
sudoapt-get install sshfs fuse
ubuntu 安裝 sshfs-fuse
如果你使用的不是 Ubuntu,那就在你的發行版軟件包管理器中搜索軟件包名稱。最好搜索和 fuse 或 SSHfs 相關的關鍵字,因為取決於你運行的系統,軟件包名稱可能稍微有些不同。
在你的系統上安裝完軟件包之後,就該創建好 fuse 組了。在你安裝 fuse 的時候,應該會在你的系統上創建一個組。如果沒有的話,在終端窗口中輸入以下命令以便在你的 Linux 系統中創建組:
sudogroupadd fuse
添加了組之後,把你的用戶添加到這個組。
sudo gpasswd -a "$USER" fuse
sshfs 添加用戶到組 fuse
別擔心上面命令的 $USER
。shell 會自動用你自己的用戶名替換。處理了和組相關的工作之後,就是時候創建要掛載遠程文件的目錄了。
mkdir~/remote_folder
在你的系統上創建了本地目錄之後,就可以通過 SSHfs 掛載遠程文件系統了。
要在你的機器上掛載遠程文件系統,你需要在終端窗口中輸入一段較長的命令。
sshfs -o idmap=user [email protected]:/remote/file/system/~/remote
sshfs 掛載文件系統到本地目錄1
注意: 也可以通過 SSH 密鑰文件掛載 SSHfs 文件系統。只需要在上面的命中用 sshfs -o IdentityFile=~/.ssh/keyfile
, 替換 sshfs -o idmap=user
部分。
輸入這個命令之後,會提示你輸入遠程用戶的密碼。如果登錄成功了,你的遠程文件系統就會被掛載到之前創建的 ~/remote_folder
目錄。
sshfs掛載文件系統到本地目錄2
使用完了你的遠程文件系統,想要卸載它?容易嗎?只需要在終端輸入下面的命令:
sudoumount~/remote_folder
這個簡單的命令會斷開遠程連接同時清空 remote_folder 目錄。
在 Linux 上有很多工具可以用於訪問遠程文件並掛載到本地。但是如之前所說,如果有的話,也只有很少的工具能充分利用 SSH 的強大功能。我希望在這篇指南的幫助下,也能認識到 SSHfs 是一個多麼強大的工具。
你覺得 SSHfs 怎麼樣呢?在下面的評論框裡告訴我們吧!
via: https://www.maketecheasier.com/sshfs-mount-remote-filesystem-linux/
作者:Derrik Diener 譯者:ictlyh 校對:wxy
本文由 LCTT 原創編譯,Linux中國 榮譽推出