win10下 WSL2安装及配置

news2024/11/27 2:37:58

目录

一. Windows中WSL2(子系统)安装前提条件

二. Windows中WSL2(子系统)安装步骤(默认安装C盘)

选择包安装模式(选择到其他盘安装)

三. Windows中WSL2(子系统)设置默认root用户登入

进入

四. Windows中WSL2(子系统)无法访问网络的解决办法

如果还有问题

五. Windows中的WSL2(子系统)开机启动配置

在子系统中创建脚本

按【WIN+R 】打开运行窗口,输入【shell:startup】

六. Windows中WSL2(子系统)安装ssh

卸载同时清除openssh-server软件包和软件的配置文件,(没有安装就不用卸载重装,直接安装)

下载并安装openssh-server服务

七. window和WSL2(子系统)如何互传文件

八.注销和设置默认子系统

九. 配置代理

终端代理


一. Windows中WSL2(子系统)安装前提条件

  • 版本:win10专业版

  • 对于 x64 系统:版本 1903 或更高版本,采用 内部版本 18362 或更高版本。

  • 低于 18362 的版本不支持 WSL 2。 使用 Windows Update 助手更新 Windows 版本。

二. Windows中WSL2(子系统)安装步骤(默认安装C盘

  1. 以管理员权限运行 powershell

  2. 启用Windows10子系统功能,再打开的powershell窗口中输入如下命令:

dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
  1. 启用虚拟机平台功能,再打开的powershell窗口中输入如下命令:

dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
  1. 重启电脑

  2. - 下载 Linux 内核更新包(适用于 x64 计算机的 WSL2 Linux 内核更新包)

 - 将 WSL 2 设置为默认版本,再打开的powershell窗口中输入如下命令:

wsl --set-default-version 2
  1. 打开应用商店安装子系统 (在应用商店搜索 ubuntu)

-- 无法下载则开启代理重新下载

或者自己搜索下载

选择包安装模式(选择到其他盘安装)

下载地址:旧版 WSL 的手动安装步骤 | Microsoft Learn

解压目录后找到Ubuntu_2004.2021.825.0_x64.appx

安装

 

启动子系统并等待安装

配置用户名和密码

切记配置用户名记得使用阿里云git的用户名 要不然权限问题很难解决 手动配置的用户没办法给到权限 可能是wsl的坑吧, 重装中

三. Windows中WSL2(子系统)设置默认root用户登入

进入

C:\Users\xxxx\AppData\Local\Microsoft\WindowsApps\CanonicalGroupLimited.Ubuntu20.04LTS_79rhkp1fndgsc目录下,找到ubuntu2204.exe程序,

ubuntu2204.exe config --default-user root

重启WSL子系统即可看到效果,默认登入的就是root账户了

命令行启动

# 命令行重启。(超级管理员打开cmd) 
sc stop LxssManager sc start LxssManager

服务窗口启动

win+r 输入services.msc。找到LxssManger重新启动即可。

 

四. Windows中WSL2(子系统)无法访问网络的解决办法

打开PowerShell窗口,编辑/etc/wsl.conf文件,添加如下内容

[network] generateResolvConf = false

PowerShell重启WSL

wsl.exe --shutdown

打开PowerShell窗口,编辑/etc/resolv.conf文件,添加如下内容

如果还有问题

要编辑网络DNS配置文件

sudo vim /etc/resolv.conf

如果报错"/etc/resolv.conf" E166: Can’t open linked file for writing,删除文件重写

sudo rm /etc/resolv.conf sudo echo "" > /etc/resolv.conf sudo vim /etc/resolv.conf

然后重启网络

sudo /etc/init.d/networking restart sudo apt-get update sudo apt-get upgrade

五. Windows中的WSL2(子系统)开机启动配置

在子系统中创建脚本

打开PowerShell窗口,编辑/etc/init.wsl

sudo vim /etc/init.wsl

添加如下内容

#! /bin/sh /etc/init.d/ssh start /etc/init.d/mysql start /etc/init.d/php-fpm start /etc/init.d/nginx start

授权

sudo chmod +x /etc/init.wsl

在Windows中创建脚本

按【WIN+R 】打开运行窗口,输入【shell:startup】

打开Windows 启动脚本目录,在该目录下新建 linux-start.vbs,添加如下内容(wsl -d后面的参数是你所安装的子系统的版本 ,可通过wsl -l查看)

Set ws = WScript.CreateObject("WScript.Shell") ws.run "wsl -d Ubuntu-20.04 -u root /etc/init.wsl"

重启Windows即可

六. Windows中WSL2(子系统)安装ssh

卸载同时清除openssh-server软件包和软件的配置文件,(没有安装就不用卸载重装,直接安装)

下载并安装openssh-server服务

sudo apt-get install openssh-server

编辑/etc/ssh/sshd_config配置文件,并修改如下内容

sudo vim /etc/ssh/sshd_config #需要修改的地方 Port 22 #默认即可,如果有端口占用可以自己修改 PubkeyAuthentication yes #默认是Public Key登录,我这里注释掉改为用户名密码登录 PasswordAuthentication yes #允许用户名密码方式登录

启动ssh-server

sudo service ssh start

查看ssh服务状态,是否启动成功

sudo service ssh status

七. window和WSL2(子系统)如何互传文件

 
将window系统下的D:software/mongodb-linux-x86_64-rhel70-4.4.13.tgz上传到WSL2(子系统)的/usr/local目录下
在WSL2(子系统)中执行如下命令,即可
cp /mnt/d/software/nmongodb-linux-x86_64-rhel70-4.4.13.tgz /usr/local

八.注销和设置默认子系统

 
PS C:\Users\rd02\Desktop> wslconfig /u Ubuntu-22.04
正在注销。
操作成功完成。
PS C:\Users\rd02\Desktop> wslconfig /l
适用于 Linux 的 Windows 子系统分发:
Distrod (默认)
Ubuntu
#设置默认账户
PS C:\Users\rd02\Desktop> wslconfig /setdefault Ubuntu
操作成功完成。
PS C:\Users\rd02\Desktop> wslconfig /l
适用于 Linux 的 Windows 子系统分发:
Ubuntu (默认)
Distrod

九. 配置代理

终端代理

可以通过以下命令看下终端是否已经代理:

curl cip.cc

会显示当前自己IP挂到哪里;

  1. 方法一(recommend)改~/.zshrc或 ~/.bashrc

# 打开~/.zshrc

sudo vim ~/.zshrc

在最下面添加:

alias sethttpsproxy="export https_proxy=http://192.168.2.198:7890" 
alias unsethttpsproxy="unset https_proxy" 
alias sethttproxy="export http_proxy=http://192.168.2.198:7890" 
alias unsethttproxy="unset http_proxy"

保存关闭后

source ~/.zshrc

当需要http走代理时,

sethttproxy

当需要关闭http代理时,

unsethttproxy

参考文档:在 Windows Server 上安装 Linux 子系统 | Microsoft Learn

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/364744.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

数据结构——复杂度的详解(空间复杂度和时间复杂度)

1.程序算法效率 1.1什么是算法? 算法(Algorithm)是指解题方案的准确而完整的描述,是一系列解决问题的清晰指令,算法代表着用系统的方法描述解决问题的策略机制。 1.2衡量算法好坏的标准 这是一个通过函数递归算法实…

轻量级权限框架之-Sa-ToKen

轻量级的权限认证框架 Sa-Token 目前主要五大功能模块:登录认证、权限认证、单点登录、OAuth2.0、微服务鉴权 登录认证 —— 单端登录、多端登录、同端互斥登录、七天内免登录 权限认证 —— 权限认证、角色认证、会话二级认证 Session会话 —— 全端共享Session、…

Hadoop3 集群搭建

测试环境 信息内容主机版本centos7机器数量3台Hadoop版本3.3.4安装包解压路径/home/tools/hadoop/ hosts配置 主机ip地址对应主机host192.168.57.188node1192.168.57.189node2192.168.57.190node3 一. 前置环境准备 安装JDK1.8(Hadoop支持1.8)创建非root用户(这里用的myuser…

关于企业文档能力开放,你想知道的都在这里了

最近一个朋友向我请教关于企业文档能力开放的事,说了一大堆的问题,我是做技术的,有很多基础知识和理论要向同行学习,所以给他解答了一通,但是朋友觉得解释的没啥实际用处。。。其实这个能力对很多人来说可能都不太明白…

MYBatis-Plus常用注解@TableName、@TableId、@TableField、@TableLogic

1-1:TableName 注解作用:设置实体类对应的表明 value作用:value指定数据库中的表名 如果我们不设置这个注解,我们操作的数据库的表就由BaseMapper 泛型决定(SysLog) TableName(value "sys_Log&qu…

学习动漫插画的网络班排行榜

很多小伙伴不知道动漫插画培训机构哪个好,找不到靠谱的插画班,今天给大家整理了国内动漫插画培训机构排名! 一:动漫插画培训机构排名 1、轻微课(五颗星) 主打课程有日系插画、游戏原画、古风插画、动漫漫画…

python基于vue个人家庭理财记账管理系统

近年来在计算机的迅速发展的背景下,家庭理财领域与传统手工记账相比,使用计算机系统来管理不仅克服了地域上的局限性,而且增强了用户在时间和空间上的体验,以及能够让用户随时随地进行需要的操作,可以很好的规避传统的…

【建议收藏】Jenkins+postman+newman之API全自动化测试

1 背景 本文要介绍的环境在我司已经投入使用,举个简单的真实使用场景,开发提供了300多个API,每个API都有各种参数,所以我们会先在postman中为这300多个API编写300*n个testcase,然后在jenkins上跑;到此有人…

【Spark分布式内存计算框架——离线综合实战】2. 业务需求

1.3 业务需求 对广告数据进行初步ETL处理和业务报表统计分析,整体业务需求如下图所示: 两个主要方面的业务: 第一个、数据【ETL 处理】 依据IP地址,调用第三方库解析为省份province和城市city;将ETL后数据保存至PAR…

消费升级趋势下,平台如何在广告电商模式中攫取新流量

如今电商平台飞速发展,越来越多的人加入电商运营的行列,同行竞争逐渐变得激烈起来,为了能够让平台有更多的展现机会,提升平台的商品转化率,大家都很重视平台的优化,因为一个好的平台可以给自身带来更多的流…

比特数据结构与算法(第四章_上)树和二叉树和堆的概念及结构

1.树概念及结构1.1树的概念树是一种非线性的数据结构,它是由 n(n > 0)个有限节点组成的一个具有层次关系的集合。那么为什么叫 "树" 呢? (节点也可以称结点,建议称结点,和结构体对…

REDIS中的缓存穿透,缓存击穿,缓存雪崩原因以及解决方案

需求引入一般在项目的开发中,都是使用关系型数据库来进行数据的存储,通常不会存在什么高并发的情况,可是一旦涉及大数据量的需求,比如商品抢购,网页活动导致的主页访问量瞬间增大,单一使用关系型数据库来保存数据的系统…

多孔弹性材料中传播的膨胀波方法(Matlab代码实现)

👨‍🎓个人主页:研学社的博客💥💥💞💞欢迎来到本博客❤️❤️💥💥🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密…

海量并发低延时 RTC-CDN 系统架构设计(下)

上半部分内容:海量并发低延时 RTC-CDN 系统架构设计(上)低延时 RTC-CDN 系统的架构传统 CDN 直播发展多年,为了优化延时,业界基本上朝两大优化方向:优化传输层协议和在传输层协议的基础上优化应用层协议。R…

Hadoop环境搭建(1)

一、在已安装的虚拟机上面进行修改(以CentOS 7为例)①修改主机名查看自己主机名,命令hostname第一种修改主机名方法,命令vi /etc/hostname第二种修改主机名方法,命令hostnamectl set -hostname 自定义主机名可以更改为…

简单介绍如何使用robotium进行自动化测试

创建一个简单的工程作为被测程序,运行后显示如下界面: 2.创建一个Test Project 1). 打开eclipse,选择File->New->Project…->Android Test Project,点击Next。 2). 在Test Project Name中输入测试工程的名称&#xff…

华为HCIP-Datacom认证题库(H12-821)

第一套(100题) 1. (单选题)下面关于0SPF的特殊区域,描述错误的是: A.Totally Stub Area允许ABR发布缺省的三类LSA,不接受五类LSA和细化三类LSA B.NSSA Area和Stub区域的不同在于该区域允许自治系统外部路由的引入&…

「实践总结」订单超时自动取消

在进行开发的过程中,在开发的时候,有遇到相关的延时支付相关的问题,在解决延时支付的相关的问题的时候,会有很多种的解决办法,现在就讲对应的解决办法先进行相关的总结操作;「引言」在开发中,往…

mysql索引失效的几种情况

失效的几种情况 1、select * from xxx 2、索引列上有计算 3、索引列上有函数 4、like左边包含‘%’ 5、使用or关键字 6、not in和not exists 7、order by 8、不满足最左匹配原则 给code、age和name这3个字段建好联合索引:idx_code_age_name。 该索引字段的顺…

ChatGPT告诉你:项目管理能干到60岁吗?

早上好,我是老原。这段时间最火的莫过于ChatGPT,从文章创作到论文写作,甚至编程序,简直厉害的不要不要的。本以为过几天热度就自然消退了,结果是愈演愈烈,热度未减……大家也从一开始得玩乐心态&#xff0c…