Windows 系统利用 SSH 和 WSL2 子系统当服务器

avatar
作者
筋斗云
阅读量:0

由于最近组内需要将一台 Windows 系统的电脑 W A W_A WA 转成能通过 SSH 访问,并且能用 Linux 命令当服务器运行。忙活了一天,终于是把全部东西弄通了。

安装 SSH

首先就是 W A W_A WA 先要安装 OpenSSH 服务,直接按照下面的教程安装即可:如何通过SSH远程连接到Windows系统指南,最好开启开机自启动。

安装好之后在另一台电脑上 W B W_B WB 用 ssh 访问,如果成功的话会显示如下的内容。
在这里插入图片描述

安装 WSL2

然后是要给 W A W_A WA 安装 WSL2,可以根据这篇博客安装:WSL2的安装与使用-Windows与Linux双系统的新选择
直到用命令

     wsl -l -v 

显示以下内容就说明安装完成。

在这里插入图片描述

用 SSH 服务软件进行连接

我们在 W A W_A WA 上查看 设置 — 关于,获取设备名称(注意,可能有一些设备不能用设备名称直接访问,只能通过 ip 地址)。假设你的设备名称是 DESKTOP-TMFN123,还有 W A W_A WA 开机时的账户名称 TMFN,以及密码 TMFN
在这里插入图片描述

W B W_B WB 打开一款 SSH 的软件,比如 Termius,配置如下内容,填上设备名称/ip地址,账户,密码,就可以愉快进入命令行界面。
在这里插入图片描述
然后再键入

wsl 

就可以进入 WSL2 子系统,完全当 Linux 系统使用。

在这里插入图片描述

Pycharm 连接

在 pycharm 的 ssh 配置如下内容,记得一定要将 authentication type 换成 openssh config,否则可能遇到无法连接的情况。
在这里插入图片描述
连接好之后,就能通过终端访问,一样键入 wsl 就可以进入 Linux 的模式。

联网问题

尽管如此,还是没办法愉快地使用 WSL2 进行代码开发,因为 WSL 默认还是不能联网的。也就是所有需要联网的命令,比如 ping www.xxx.comconda create -n env_name python=3.Xpip install xx 都是没办法运行,严重影响开发体验。

比如 conda create 的时候,会遇到报错:

CondaHTTPError: HTTP 000 CONNECTION FAILED for url <http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/linux-64/current_repodata.json> 

找了一圈,有说改 .condarc 的,还有其他的方法,但这和 WSL2 环境下的原因不匹配,实际上是 WSL2 没办法联网导致的。只有这个博客完美解决了 WSL2 的网络问题 WSL2莫名其妙的连不上网了。按照里面的命令一个一个运行,重启电脑 即可解决问题。

到这里 W A W_A WA 基本就可以充当一个 Linux 服务器以供开发使用了。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!