安装wsl的方法,网上很多,一般都ok。这里主要提几个问题:

1、配置securecrt来支持ssh登录。

2、使用strace。

3、使用docker。

由于wsl不支持strace,一直盼着能升级到wsl2,笔者中间走了很多弯路。这里总结一下。

目前 wsl 是不支持 docker 的守护进程的。想要使用还是有方法的,个人觉得不太方便,可以参考这篇博客 在Linux的Windows子系统上(WSL)使用Docker(Ubuntu)

从官网上看,官方推荐使用wsl2。

第一步:升级系统到18917

这个是预览版本,所以需要去系统里面:

打开预览计划,并设置为快,否则无法监测到18917的升级版本,而是18362版本。

而实际升级之后是:

实际上是18932,比18917高,也是ok的。

第二步:配置wsl2

参考这篇文章即可:

https://meta.appinn.net/t/windows-10-wsl2/10565

第三步:检查strace

看到strace信息出来就算是ok了。

第四步:配置securecrt

1. 更新OpenSSH
移除当前的 OpenSSH 并重新安装:(注意,必须要移除再安装)

sudo apt remove openssh-server openssh-client
sudo apt install openssh-server
2. 更新SSHD配置
编辑/etc/ssh/sshd_config文件,增加如下配置:

Port 36000
ListenAddress 127.0.0.1
3. 重启SSH服务
sudo service ssh --full-restart
4. 设置XShell(securecrt类似)
按照如下顺序操作来生成密钥对,并将公钥保存至目标账号:

XShell 上:工具 - 用户密钥管理者 - 生成 - 密钥长度修改为 4096,下一步 - 密钥名称设置为「wsl」- 输入一组密码(记住该密码,下面需要用到)- 下一步,你将看到公钥,将公钥复制。

终端:将公钥复制保存至 WSL 的~/.ssh/authorized_keys中,如果没有这个文件请创建。这里需要注意,~/.ssh这个目录的权限需要设置为700,~/.ssh/authorized_keys这个文件权限需要设置为600:

chmod 700 ~/.ssh && chmod 600 ~/.ssh/config
XShell 上:新建一个会话,名称为 WSL,主机写 127.0.0.1,端口写 36000。用户身份验证:方法选择 Public Key,用户名为你的用户名,用户密钥选择「wsl」,密码填写上面创建密钥时候的密码。点进代理,确保代理服务器这里选择的是<无>。之后便可以用 XShell 连接 WSL 了。

后记:

利用wsl -l -v 检查,看到版本其实是version=1,但由于strace已经可以用了,达到了效果。所以就不计较了。

docker的使用,后面再补充吧。

WSL升级到wsl2并使用strace的更多相关文章

  1. .Net RabbitMQ实战指南——客户端开发

    开发中关键的Class和Interface有Channel.Connection.ConnectionFactory.Consumer等,与RabbitMQ相关的开发工作,基本上是围绕Connecti ...

  2. windows(wsl)下的trino编译和升级注意事项

    最近在进行旧版本的prestosql和prestodb升级相关的操作,尝试自己编译了一下,这里记录一下过程和遇到问题的处理. 因为Trino不支持windows下的编译,如果使用windows最方便的 ...

  3. C++ 与 Visual Studio 2022 和 WSL(五)——WSL2

    Build and Debug C++ with WSL 2 Distributions and Visual Studio 2022 References Build and Debug C++ w ...

  4. Win10+WSL2+Ubuntu 18.04(WSL下)+VS Code(Win10下)+TexLive 2019(Ubuntu下)安装和配置

    本人手头电脑是Win10 Home版全新安装的系统,由于不想在新系统盘里面安装TexLive导致固态硬盘不断扩大,所以,考虑安装Ubuntu做为WSL,然后把TexLive安装在Ubuntu,并通过V ...

  5. [后端及服务器][WSL2(Ubuntu)+Docker]从零开始在WSL中安装Docker

    目录 简介 WSL 安装 开启虚拟化(BIOS) 检查系统版本 安装WSL 老版本安装详情 简介 想花三篇文章写下从Windows(WSL)上开启Docker部署php/node/vue/html等项 ...

  6. wsl相关总结

    启用WSL VirtualMachinePlatform是WSL2依赖功能,需要系统支持(build 18917+),硬件支持VM功能并开启,安装完成后要重启计算机. Enable-WindowsOp ...

  7. WSL2:Windows 亲生的 Linux 子系统

    作 者:道哥,10+年的嵌入式开发老兵. 公众号:[IOT物联网小镇],专注于:C/C++.Linux操作系统.应用程序设计.物联网.单片机和嵌入式开发等领域. 公众号回复[书籍],获取 Linux. ...

  8. Windows 重装系统,配置 WSL,美化终端,部署 WebDAV 服务器,并备份系统分区

    最新博客文章链接 最近发现我 Windows11 上的 WSL 打不开了,一直提示我虚拟化功能没有打开,但我看了下配置,发现虚拟化功能其实是开着的.然后试了各种方法,重装了好几次系统,我一个软件一个软 ...

  9. 最详尽教程完整介绍-Windows 的 Linux 子系统-WSL1&WSL2

    安装 WSL 1. 开启WSL 必须启用"适用于 Linux 的 Windows 子系统"可选功能并重启,然后才能在 Windows 上运行 Linux 发行版. 以管理员运行Po ...

随机推荐

  1. BZOJ 3143: [Hnoi2013]游走 概率与期望+高斯消元

    Description 一个无向连通图,顶点从1编号到N,边从1编号到M.小Z在该图上进行随机游走,初始时小Z在1号顶点,每一步小Z以相等的概率随机选 择当前顶点的某条边,沿着这条边走到下一个顶点,获 ...

  2. LibreOffice/Calc:单元格设置下拉菜单

     造冰箱的大熊猫,本文适用于LibreOffice Calc 5.1.6.2 + Ubuntu 16.04@cnblogs 2019/1/2 LibreOffice是一个类似Microsoft Off ...

  3. Confluence 6.15 修改历史(Change-History)宏

    修改历史(Change-History)宏显示了页面一个的更新历史:版本号,作者,日期和备注.这些内容将会在同一栏中进行显示. 屏幕截图:Confluence 中的修改历史(Change-Histor ...

  4. Git入门学习和使用

    #开篇废话 开篇废话又回来了,离开博客算是有一年了,之间曾经痛下很多次决心,继续写博客,后来都失败了,前年为了申请个CSDN专家,每天发博客,那个高产的状态,现在已然不行了,时过境迁,当时为了吃口饱饭 ...

  5. Java线程之synchronized

    翻译:https://www.journaldev.com/1061/thread-safety-in-java 我们知道线程安全在Java中是一个非常重要的主题,当多个线程操作共享数据时,如果没有任 ...

  6. 基本CSS布局三

    基本CSS布局三------图片视频网格 <!DOCTYPE html> <html> <head> <meta charset="utf-8&qu ...

  7. Ubuntu16.04配置vncserver后 导致重复进入登陆界面,无法进入桌面的问题

      1.在配置vncserver的时候,可能导致该用户不能正常登录桌面. 2.问题现象:正确输入密码,系统无法进入桌面,闪回到登录界面. 3.在登录界面按ctrl+Alt+F1,进入虚拟控制台(输入r ...

  8. VS Code 调试 Golang 出现 Failed to continue: Check the debug console for details

    VS Code断点调试Golang时候,弹出提示:Failed to continue: Check the debug console for details 点击Open launch.json, ...

  9. 取得远端相应Json并转化为Java对象一

    JDK:1.8.0_212 IDE:STS4(Spring Tool Suit4 Version: 4.3.2.RELEASE) 工程下载:https://files.cnblogs.com/file ...

  10. [svc]linux中的文件描述符(file descriptor)和文件

    linux中的文件描述符(file descriptor)和文件 linux为了实现一切皆文件的设计哲学,不仅将数据抽象成了文件,也将一切操作和资源抽象成了文件,比如说硬件设备,socket,磁盘,进 ...