參考鏈接:http://blog.csdn.net/netwalk/article/details/12952719
一、Ubuntu 上安裝sshfs
Ubuntu源中已經包含了sshfs,以及所需的fuse包,直接安裝即可:
sudo apt-get install sshfs
安裝的時候會自動創建用戶組fuse,要使用sshfs的用戶需要先加到這個用戶組里才行(記得完成后還要重新登錄),不然會沒有權限執行fusermount:
fuse: failed to exec fusermount: Permission denied
二、掛載遠程文件系統/目錄
掛載的一般格式為:
sudo sshfs {{user id}}@{{server hostname}}:{{desiredremote share}} {{desired local mount point}} -o idmap=user -o allow_other -ouid={{local user id}} -o gid={{local group id}}
其中比較重要的選項有:
-o transform_symlinks 表示轉換絕對鏈接符號為相對鏈接符號 -o follow_symlinks 沿用服務器上的鏈接符號 -C 壓縮,或者-o compression=yes -o reconnect 自動重連 -o cache=yes -o allow_other
掛載格式看起來比較繁瑣,這里給出一個常用的更加簡潔的格式:
sshfs -o transform_symlinks -ofollow_symlinks user@hostname:[dir] mountpoint
一個使用的實例如下(前一個user是遠程主機的user,后一個是本地主機的user):
sshfs –o cache=yes,allow_other user@192.168.1.200:/home/user/code home/user/code
說明:
1、 連接的時候可能需要管理員權限,在掛載命令前sudo即可。
2、更多參數請 man sshfs ,如果碰到其它問題請參考官方的 FAQ 。
3、如果想不輸入密碼的話,可以使用 SSH key 認證方式。
4、執行命令后 Ubuntu 會自動在桌面上顯示掛載的 sshfs 文件系統盤,現在你就可以像操作本地磁盤一樣操作這個映射的磁盤了。
三、卸載
fusermount –u /home/user/code
注意權限的使用,可能需要使用 sudo。