Windows下写代码并使用 SSHFS快速部署到 Linux 进行调试
前言
很多时候,因为不熟悉vim或者更喜欢Windows下的一些IDE,我们需要在Windows写代码并部署到Linux服务器上进行调试。
相信很多程序员都有这个需求,也有很多自己的解决方法。常见的有使用Git,Samba,NFS,rsync,ftp等等,大部分方法我都尝试过,各有优缺点。一般都需要服务器安装相应的服务端软件,还需要开放指定的端口,像NFS这种端口还动态变化的对使用容器、防火墙的情景就更不友好了。
今天给大家推荐的是SSHFS-Win
,无论你的系统是CentOS还是Ubuntu,服务器端不需要安装任何软件,只要支持SSH服务并开放SSH端口就可以了,个人觉得的一种更优雅的解决方案。
一、简介
项目地址: SSHFS-Win
SSHFS-Win是SSHFS到Windows的最小端口。在底层,它使用Cygwin作为POSIX环境,使用WinFsp作为FUSE功能。
就这?是的,就这。
二、安装步骤
- 安装最新版本的
WinFsp
- 安装最新版本的
SSHFS-Win
,根据操作系统选择x64或x86版本安装程序。
WinFsp
下载地址:
SSHFS-Win
下载地址:
三、使用方法
安装WinFsp
和SSHFS-Win
之后,您可以使用Windows资源管理器或net use
命令将网络驱动器映射到SSHFS主机上的目录。
(一)Windows资源管理器
在Windows资源管理中,右击此电脑
(win7系统为计算机
),选择映射网络驱动器(N)
,然后使用以下UNC语法输入所需的驱动器号和SSHFS路径:
1 |
|
比如你的服务器IP是:192.168.18.128
,用户名是yasin
,端口是12580
。
添加的路径就是下面这样:
1 |
|
首次映射特定的SSHFS路径时,系统将提示你输入SSHFS用户名和密码,也就是Linux服务器你的用户名和密码,连接成功后你就可以在我的电脑里看到多出一块磁盘,根目录就是你用户的home
目录。
这样就可以在Windows下使用IDE直接修改你的代码,SSFHS会将你的修改自动同步到Linux服务器,在Linux端编译运行代码即可。
你可以选择使用Windows凭据管理器保存这些凭据,在这种情况下,将不会再次提示你。
为了取消映射驱动器,请在Windows资源管理器中右键单击驱动器图标,然后选择断开连接。
下面是项目README中的一个演示:
(二)命令行
您可以使用net use
命令从命令行映射网络驱动器:
1 |
|
你可以列出你的网络使用驱动器:
1 |
|
最后,你可以按以下方式取消映射驱动器:
1 |
|
(三)UNC语法
完整的UNC语法如下:
1 |
|
REMUSER
是远程用户(即SSHFS主机上的凭据正用于访问的用户)。HOST
是SSHFS主机。PORT
是SSHFS主机上的远程端口(可选;默认值为22)。PATH
是远程路径。 解释如下:sshfs
前缀映射到SSHFS主机上的HOST:~REMUSER/PATH
(REMUSER
家目录的相对路径)。sshfs.r
前缀映射到SSHFS主机上的HOST:/PATH
(即HOST
根目录的相对路径,也就是绝对路径)。sshfs.k
前缀映射到HOST:~REMUSER/PATH
并使用%USERPROFILE%/.ssh/id_rsa
(其中%USERPROFILE%
是本地Windows用户的家目录)中的ssh密钥。
LOCUSER
是本地Windows用户(可选;USERNAME
或DOMAIN + USERNAME
格式)。- 请注意,对于最新版本的
WinFsp
,很少需要使用此功能。
- 请注意,对于最新版本的
四、Enjoy
你看是不是很简单?服务器端不用安装任何软件,Windows端安装两个小工具,然后输入你的用户名和密码即可!
Enjoy coding now.