赞
踩
vscode
的ssh-remote
插件与tmux
进行终端复用,便可实现本地无感的远程开发。ZeroTier 作为一款非常简单易用的内网穿透工具,不需要复杂配置,就能实现虚拟局域网的组建,让你可以在外也能连回实验室的NAS、服务器获取数据、远程开发。
免费网络限制 100 台设备,超过了就要付费。100 台对于个人或者小团队使用来说都足够了。
安装客户端,加入Network ID
windows下ipconfig
,ubuntu下ifconfig
出现ZeroTier的网段后说明连接成功(也可直接ping其他ip验证):
管理:
可以选择子网地址:
查看连接客户端,第三列机器即为所有机器的局域网IP,接下来的步骤即shh该ip地址:
Remote-SSH插件是基于SHH的,所以首先要确保本机和远程服务器都安装好了OpenSHH
Ubuntu:
ubuntu默认并没有安装ssh服务,如果通过ssh链接ubuntu,需要自己手动安装ssh-server。判断是否安装ssh服务,可以通过如下命令进行:
ssh localhost
ssh: connect to host localhost port 22: Connection refused
若出现上述情况,表示还没有安装,可通过以下命令安装:
sudo apt-get install openssh-server
sudo /etc/init.d/ssh start
安装启动后,可以通过如下命令查看服务是否正确启动:
ps -e|grep ssh
6212 ? 00:00:00 sshd
如上表示安装成功
Windows:
Win10现在已经支持OpenSSH,可在设置->应用->可选功能中查看:
若未安装,直接使用添加功能->搜索SSH安装即可,其他安装方式可参考Windows安装OpenSSH支持SSH - 简书 (jianshu.com)
Mac OS:
Mac OS X系统已经默认安装了SSH,但是SSH服务并未启用,启用SSH服务的方法:
系统偏好设置->共享->勾选“远程登陆”:
验证ssh:
使用:ssh <username>@<ip>
连接任意主机,输入密码连接成功即可:
安装Remote-SSH:
在vscode的拓展商店中搜索Remote-SSH进行安装,安装完成后左侧会出现以下按钮:
配置config文件:
进入该拓展,点击SSH TARGETS上面的设置按钮,选择所要配置的ssh config文件(一般为第一个):
配置远程服务器的名称、ip与用户名:
Host
: 主机的自定义显示名,可以随便起
HostName
: 登录远程主机的内网IP,即1.4中主机内网穿透后得到的虚拟IP
User
: 登录远程主机的用户名
Port
: 用于登录远程主机的端口(可选)
IdentityFile
: 本地的id_rsa的路径(用于免密登陆的私钥)(多人使用不推荐配置私钥免密)(可选)
远程连接测试:
配置完成后,该窗口下会出现所配置的主机,可以在新窗口下进行连接:
(第一次连接需要选择服务器操作系统)-> 输入密码->等待服务器安装vscode远程端->打开远程项目文件夹后即可开始使用,所有的使用均和本地使用无任何差异:
命令行的典型使用方式是,打开一个终端窗口(terminal window,以下简称"窗口"),在里面输入命令。用户与计算机的这种临时的交互,称为一次"会话"(session) 。
会话的一个重要特点是,窗口与其中启动的进程是连在一起的。打开窗口,会话开始;关闭窗口,会话结束,会话内部的进程也会随之终止,不管有没有运行完。
一个典型的例子就是,SSH 登录远程计算机,打开一个远程窗口执行命令。这时,网络突然断线,再次登录的时候,是找不回上一次执行的命令的。因为上一次 SSH 会话已经终止了,里面的进程也随之消失了。
为了解决这个问题,会话与窗口可以"解绑":窗口关闭时,会话并不终止,而是继续运行,等到以后需要的时候,再让会话"绑定"其他窗口。
(1)它允许在单个窗口中,同时访问多个会话。这对于同时运行多个命令行程序很有用。
(2) 它可以让新窗口"接入"已经存在的会话。
(3)它允许每个会话有多个连接窗口,因此可以多人实时共享会话。
(4)它还支持窗口任意的垂直和水平拆分。
# Ubuntu 或 Debian
$ sudo apt-get install tmux
# CentOS 或 Fedora
$ sudo yum install tmux
# Mac
$ brew install tmux
$ tmux new -s <窗口名> # 打开新窗口
ctrl+b d # 分离窗口
$ tmux info # 列出当前所有 Tmux 会话信息
$ tmux attach -t <窗口名> # 连接窗口
ctrl+b % # 分割窗口
ctrl+b s # 切换窗口
直接使用以下命令即可:
$ scp <本地文件路径> <远程主机用户名>@<远程主机ip>:<要拷贝到的远程主机路径>
#或
$ scp <远程主机用户名>@<远程主机ip>:<要拷贝的远程主机文件路径> <拷贝到的本地文件路径>
例如:
$ scp .\labels.zip hp3090@192.168.192.164:/media/hp3090/HDD-2T/renjunjie/WSOL_RS/dataset/C45V2
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。