windows11配置wsl2虚拟linux环境
windows11配置wsl2虚拟linux环境
wsl( Windows Subsystem for Linux )是microsoft官方为windows开发的模拟Linux方法。避免了虚拟机vmware的性能损耗开销,或者双系统两者不能同时运行的问题。wsl2似乎可以满足大部分Linux需求。方便且优雅!
安装wsl2
安装方法
官方的介绍文档:
安装wsl只需要在windows终端输入一条指令
wsl --install
等待几分钟,会安装wsl工具和默认的Linux系统。
也可以指定安装的Linux系统
wsl --list --online //查看可安装的Linux版本
wsl --list --verbose //查看已安装Linux
wsl --install <Distro> //安装指定Linux版本
wsl --set-default <Distribution Name> //设置默认 Linux 发行版
通过wsl运行Linux
wsl --distribution <Distribution Name> --user <User Name> //运行特定的 Linux 发行版
可能的报错
无法运行Linux
安装完后,运行Linux,一般出现error 0x80370114。
需要在Windows中, “设置”->“应用”->“可选功能” , 下滑至菜单最下面,找到“更多windows功能”选项 。开启“适用于Linux 的Windows子系统”功能。
参考:
WIN11按照官方文档安装WSL2时出现error 0x80370114_半路杀出来的小黑同学的博客-CSDN博客
其他设置
迁移wsl位置
因为wsl默认是在C盘。出于空间问题,移动到d盘。
步骤是:导出系统 ——删除系统——导入系统并重新设置存储位置—— 修改默认登录用户
wsl --export Ubuntu D:\wsl\ubuntu.tar #即 wsl --export <系统名> <导出文件目录>
wsl --unregister Ubuntu #删除目录
wsl --import Ubuntu D:\wsl\Ubuntu D:\wsl\ubuntu.tar --version 2 # 即 wsl --import <系统名> <新的安装位置> <tar文件目录> WSL版本号
Ubunatu config --default-user <Username> //修改默认登录用户
参考:
通过WSL2搭建Pytorch1.10+CUDA11.4+NVIDIA Driver深度学习框架全过程 - 简书 (jianshu.com)
磁盘挂载
需要和系统盘不一样的磁盘(挂载不同分区不行)。这个没有配置。
Linux配置
apt换源
国内的镜像服务器,有 阿里源 ,清华源,中科大源。
apt镜像源配置文件是 /etc/apt/sources.list 。
sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak #备份
sudo vim /etc/apt/sources.list #编辑源配置文件
不同的Linux版本代号,需要用不同的源。不然后面在apt update和下载软件时,会出现各种问题。(update后有wrong,gedit下载不了,gcc下载后无法编译源文件,报错找不到stdio.h等,实际上是源问题导致下载不兼容的软件)

正常的话,reading后面是没有 wrong的。
查看系统代号
lsb_release -a #查看系统版本代号
uname -r #查看内核版本,内核不对可能也有问题

我的Ubuntu的发行版是jammy,下面的换源地址就不行,它的发行版是 bionic。可以直接把bionic 改为 jammy,懒的可以直接百度jammy的镜像源地址。
deb http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse
找到的jammy源。
# 默认注释了源码镜像以提高 apt update 速度,如有需要可自行取消注释
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-updates main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-updates main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-backports main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-backports main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-security main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-security main restricted universe multiverse
# 预发布软件源,不建议启用
# deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-proposed main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-proposed main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ jammy main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ jammy main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ jammy-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ jammy-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ jammy-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ jammy-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ jammy-proposed main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ jammy-proposed main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ jammy-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ jammy-backports main restricted universe multiverse
卸载换源前下载的软件
sudo apt-get remove XXX
sudo apt-get update
环境配置
一般的话,用apt install 安装 g++,然后用vscode写代码,用Linux工具编译。
编译时需要的硬件驱动,是在物理机(Windows)下安装。
vscode配置
WSL插件
在vscode下载官方的WSL插件。现在已经改名叫WSL了。

连接方法1
vscode中,快捷键ctrl+shift+p,可以打开插件控制面板,调用插件功能,在WSL中重新打开文件夹。
这个的优点是可以打开Windows下的目录,对应的速度慢点。这种方法更灵活。

在终端通过指令方式编译程序并运行。

连接方法2
也可以在远程资源控制器中,选择WSL目标,进入ubuntu。

进入之后的界面如图
但是这个相当于进入了Linux目录中,只能在Linux中建立文件和目录,速度也快些。
其他问题
讲道理,应该是可以直接用vscode的运行按钮,直接编译文件的。但是要处理配置文件,而vscode的配置文件launch.json,我目前还是看不懂的。不然会更方便。
windows11配置wsl2虚拟linux环境的更多相关文章
- keras安装配置指南【linux环境】【转】
本文转载自:https://keras-cn.readthedocs.io/en/latest/for_beginners/keras_linux/#kerasmnist 本教程不得用于任何形式的商业 ...
- linux环境下配置虚拟主机域名
linux环境下面配置虚拟主机域名 第一步:在root目录下面(即根目录)ls(查看文件)cd进入etc目录find hosts文件vi hosts 打开hosts文件并进行编辑在打开的文件最下面添加 ...
- LNMP1.3一键安装Linux环境,配置Nginx运行ThinkPHP3.2
LNMP1.3一键安装Linux环境,配置Nginx运行ThinkPHP3.2 你是否遇见过:安装LNMP1.3环境后,运行ThinkPHP 3.2,只能打开首页,不能访问控制器,报404错误. 按照 ...
- Linux下FTP虚拟账号环境部署总结
vsftp的用户有三种类型:匿名用户.系统用户.虚拟用户.1)匿名登录:在登录FTP时使用默认的用户名,一般是ftp或anonymous.2)本地用户登录:使用系统用户登录,在/etc/passwd中 ...
- 【云和恩墨】性能优化:Linux环境下合理配置大内存页(HugePage)
原创 2016-09-12 熊军 [云和恩墨]性能优化:Linux环境下合理配置大内存页(HugePage) 熊军(老熊) 云和恩墨西区总经理 Oracle ACED,ACOUG核心会员 PC S ...
- Linux下配置Hadoop伪分布式环境
1. 准备Linux环境 提示:我用的系统是CentOS 6.4. 1.0点击VMware快捷方式,右键打开文件所在位置 -> 双击vmnetcfg.exe -> VMnet1 host- ...
- WIN10 vagrant和virtualbox虚拟机和一键搭建lnmp环境配置thinkphp虚拟主机
版本:win10系统 virtualbox:5.1.26 vagrant :1.9.7 centos 7.0 xshell/git 首先下载好对应版本的软件 配置vagrant和virtualbox ...
- linux环境配置nginx导致页面不刷新
在linux环境下,配置了nginx负载均衡,由于可能在虚拟主机的配置文件nginx.conf中,对缓存机制未配置成功,导致页面不刷新,仍然显示缓存中的内容. 最后通过注释nginx.conf文件中的 ...
- linux环境下jdk安装以及配置
linux 环境安装jdk和配置环境变量: (此处以root用户安装,此方式安装一台虚拟机装一个jdk即可,所有普通用户可以共用) 1.下载安装jdk 链接: https://pan.baidu.co ...
- 每日所学之自学习大数据的Linux环境的配置
今天开始配置环境,因为下载镜像文件需要很长时间,加上训练,所以Linux环境之配置了一半 VMware下载及安装教程(Window) 在安装虚拟机时需要下载镜像文件 下面是我下载的镜像文件的地址 Ce ...
随机推荐
- 我真的不想再用mybatis和其衍生框架了选择自研亦是一种解脱
我真的不想再用mybatis和其衍生框架了选择自研亦是一种解脱 文档地址 https://xuejm.gitee.io/easy-query-doc/ GITHUB地址 https://github. ...
- sshpass快速登录远程主机:s2
#!/bin/bash passwd= if [ $# -ne 1 ] then echo "$0 [31|37|61]" fi if command -v sshpass the ...
- KVM VM set net moel virtio and mulltiqueues
check $ qemu-kvm -net nic,model=help qemu: Supported NIC models: ne2k_pci,i82551,i82557b,i82559er,rt ...
- 并发编程-FutureTask解析
1.FutureTask对象介绍 Future对象大家都不陌生,是JDK1.5提供的接口,是用来以阻塞的方式获取线程异步执行完的结果. 在Java中想要通过线程执行一个任务,离不开Runnable与C ...
- typroa文件迁移时的图片问题
如下图所示设置即可 会自动在同级目录中创建img文件夹,并存储图片
- QMainWindow类中比较重要的方法
方法和描述 addToolBar():添加工具栏 centralWidget():返回窗口中心的一个空间,未设置时返回NULL menuBar(): 返回主窗口的菜单栏 setCentralWidge ...
- 如何用IoT边缘连接器实现云端应用控制PLC?
本文分享自华为云社区<数字工厂深入浅出系列(十):IoT边缘连接器实现云端应用控制PLC>,作者: 云起MAE. 通过IoT云平台和边缘计算的技术设施,工厂可以将PLC等OT过程制造控制器 ...
- 【pandas小技巧】--字符串转数值
字符串转数字的用途和场景很多,其中主要包括以下几个方面: 数据清洗:在进行数据处理时,经常会遇到一些数据类型不匹配的问题,比如某些列中的字符串类型被误认为是数字类型,此时需要将这些字符串类型转换为数字 ...
- 每日一库:fsnotify简介
fsnotify是一个用Go编写的文件系统通知库.它提供了一种观察文件系统变化的机制,例如文件的创建.修改.删除.重命名和权限修改.它使用特定平台的事件通知API,例如Linux上的inotify,m ...
- Shiro配置类中的各个配置项浅谈
背景: 上文中在落地实践时,对Shiro进行了相关的配置,并未对其含义作用进行详细学习,本章将进一步详解其作用含义. Shiro配置类中的各个配置项的作用: @Bean public Security ...