安装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. P1121 环状最大两段子段和(DP)

    P1121 环状最大两段子段和 难度 提高+/省选- 题目描述 给出一段环状序列,即认为A[1]和A[N]是相邻的,选出其中连续不重叠且非空的两段使得这两段和最大. 输入输出格式 输入格式: 输入文件 ...

  2. codevs 1501 二叉树最大宽度和高度x

                         题目描述 Description 给出一个二叉树,输出它的最大宽度和高度. 输入描述 Input Description 第一行一个整数n. 下面n行每行有两 ...

  3. flask框架(十二):上下文管理***

    情况一:单进程单线程 基于全局变量实现. 情况二:单进程多线程 基于threading.local对象. threading.local对象,用于为每个线程开辟一块空间来保存它独有的值. # -*- ...

  4. python拼音库pypinyin库详解

    # -*- coding: utf-8 -*- # @Author : FELIX # @Date : 2018/6/30 9:20 from pypinyin import pinyin, lazy ...

  5. Android_(控件)使用ListView显示Android系统中联系人信息

    使用ListView显示手机中联系人的姓名和电话号码 父类布局activity_main.xml,子类布局line.xml(一个文件的单独存放) 运行截图: (避免泄露信息对部分地方进行了涂鸦O(∩_ ...

  6. 2018-2019-2 20165205 网络对抗技术 Exp9 Web安全基础

    2018-2019-2 20165205 网络对抗技术 Exp9 Web安全基础 1.基础问题 SQL注入攻击原理,如何防御 原理: SQL注入指攻击者在提交查询请求时将SQL语句插入到请求内容中,同 ...

  7. SRS之HLS部署实例源码分析

    1. 综述 SRS 关于 HLS 的具体配置可见: HLS部署实例 SRS 关于 hls 的配置文件内容如下: listen 1935; max_connections 1000; daemon of ...

  8. websphere部署不能发布war文件,提示“配置库中已存在应用程序

    碰上这种问题, 要是全删除与war相关配置文件,要么按网上教程,一点点搜下面的文件中包含的相关文件: $WAS_HOME/profiles/AppSrv01/config/cells/...cell/ ...

  9. Java-类加载(类的生命周期)

    类从被加载到虚拟机内存开始,到卸载出内存为止. 解析阶段在某些情况下可以在初始化后再开始,这是为了支持 Java 语言的运行时绑定. 一.类加载时机 JVM 规范没有强制约束类加载过程的第一阶段(加载 ...

  10. SSL及TLS

    SSL SSL(Secure Sockets Layer 安全套接层),及其继任者传输层安全(Transport Layer Security,TLS)是为网络通信提供安全及数据完整性的一种安全协议. ...