mac上安装sshfs 将远程服务器上的目录挂载到本地,方便使用本机上的IDE开发工具。
使用homebrew安装:
brew install sshfs
安装报错:
似睡非睡.png
【需要先下载osxfuse(用户层面的文件系统,具体介绍可百度)
macfuse是mac的fuse fs文件系统,一般的文件系统都是系统级别的,在内核层面实现,与硬件交流,而fuse是用户层面实现的,可以看做是虚拟文件系统,与软件交流。】
下载:osxfuse-2.7.3.dmg http://osxfuse.github.io/
下载:sshfs-2.5.0.pkg https://github.com/osxfuse/sshfs/releases/
下载真是艰难,还是直接命令安装吧:
brew cask install osxfuse 安装速度有点慢,甚至下载不成功,多尝试几次就好;
brew install sshfs 然后开始了漫长了一堆依赖包的下载安装,最后可能会报错:
brew link sshfs
sudo chown ${whoami} /usr/local/share/man/man1 将其变得可写即可
安装总结:
brew cask install osxfuse
brew install sshfs
sudo chown ${whoami} /usr/local/share/man/man1
brew link sshfs
安装完成后,就可以进行文件挂载了:
sshfs username@server:path local_path
当需要取消挂载时,使用:fusermount -u mount_path并不成功,命令找不到,使用umount mount_path即可(注意,不是unmount,被坑了)。
这样子每次挂载的时候,都需要输入密码,可以设置成免密码登录:
cat .ssh/id_rsa.pub | ssh username@server "cat - >>.ssh/authorized_keys" 将公钥追加到远程服务器。
挂载:
cat .ssh/id_rsa.pub | ssh username@server "cat - >>.ssh/authorized_keys"
sshfs username@server:path local_path
umount mount_path
其他:
当发现再次进入目录报错,或者取消挂载umount dir失败时,需要杀掉相应进程:
pgrep -lf sshfs
pkill -9 sshfs
之后重新挂载。
参考:
http://www.ziqiangxuetang.com/learn_share/osx_10.10_yosemite_sshfs.html
http://www.jianshu.com/p/8723ba79f35a
http://blog.csdn.net/kentyu001/article/details/48084433
网友评论