当前位置: 首页 > news >正文

Windows上使用WSL2创建Ubuntu系统,实现无缝高效开发的体验

前言

WSL2(Windows Subsystem for Linux 2)是 Windows 提供的一种轻量级 Linux 运行环境,具备完整的 Linux 内核,并支持更好的文件系统性能和兼容性。它允许用户在 Windows 系统中运行 Linux 命令行工具和应用程序,而无需安装虚拟机或双系统。相比于传统的虚拟机,具有更小的开销,而且可以实现显卡直通(子系统可以直接使用显卡),文件系统相互访问,两个系统的命令混用等等,更具体的优势可参考官方文档:Windows Subsystem for Linux 文档

网上的安装教程很多,但是博主自己也遇到了很多的问题,包括没有Hyper-V、网络代理如何设置、中文乱码等等,所以想写下这篇文档,来进行记录,也让在座的各位也省去因为大量查找资料的所花费的精力,确保各位能够一次性成功安装使用。

在此感谢几位博主所创作的教程,各位可通过看第二位博主的演示,来直观的体验WSL2的巨大优势:
CSDN博主:Natsuagin
B站博主: 技术爬爬虾

一、安装WSL2

  1. 按下 Win + R 组合键,输入appwiz.cpl,然后点击 确定 或直接按 Enter
    在这里插入图片描述
  2. 进入程序和功能界面,点击 启用或关闭 Windows 功能
    在这里插入图片描述
  3. 勾选以下四项:
    适用于 Linux 的 Windows 子系统、虚拟机平台(Virtual Machine Platform)、Windows 虚拟机监控程序平台、Hyper-V
    在这里插入图片描述
    如果没有Hyper-V的话(例如Windows11家庭版),使用以下方式解决:
  • 在你的桌面新建一个hyper-v.txt,打开并粘贴以下内容:
pushd "%~dp0"
dir /b %SystemRoot%\servicing\Packages\*Hyper-V*.mum >hyper-v.txt
for /f %%i in ('findstr /i . hyper-v.txt 2^>nul') do dism /online /norestart /add-package:"%SystemRoot%\servicing\Packages\%%i"
del hyper-v.txt
Dism /online /enable-feature /featurename:Microsoft-Hyper-V-All /LimitAccess /ALL
pause
  • 把hyper-v.txt改为hyper-v.cmd,然后右键以管理员身份运行,等待执行完毕。执行完毕以后会出现:“是否重启计算机”,根据提示,输入y,进行重启。如果中途出现错误、失败等,可在开机后再次运行,重复这个操作,直到没有错误。
  1. 点击确认后会让你重启电脑,我们选择重启即可,至此,WSL2安装完毕。

二、WSL2 安装 Ubuntu-22.04

安装有两种方法,一种是使用命令行,一种是使用微软商店(Microsoft Store)。

方法一、使用命令行

1.首先,查看可用的 WSL 发行版,在Windows Powershell中执行:

wsl --list --online

接着会出现以下列表,列表中就是我们可以安装使用的
在这里插入图片描述
2.进行安装,博主根据需求这里选择安装Ubuntu-22.04,执行以下命令:

wsl --install -d Ubuntu-22.04

3.安装完毕后会要求你创建一个新用户,按照提示输入用户名和密码即可。

方法一、使用微软商店(Microsoft Store)

1.直接打开微软的商店,搜索ubuntu,选择需要安装版本,进行安装在这里插入图片描述
2.安装完毕以后,在搜索栏搜索ubuntu,即可打开:
在这里插入图片描述
或者是在Windows Powershell中打开:
在这里插入图片描述
3.安装完毕后会要求你创建一个新用户,按照提示输入用户名和密码即可。

三、更改Ubuntu安装位置

ubuntu默认的安装是安装在C盘下的,所以我们需要将其移动到其他位置。运行PowerShell。

  1. 输入wsl --shutdown关闭正在运行的ubuntu。再输入wsl -l -v查看Ubuntu-22.04的运行状态,STATE为Stopped即说明已关闭。
wsl --shutdown
wsl -l -v
  1. 创建目录。
    在合适的磁盘上创建一个目录,例如E盘的 E:\Ubuntu22.04。
  2. 导出镜像。
    在PowerShell中输入下列命令,将Ubuntu导出到指定目录,并等待操作完成。
wsl --export Ubuntu-22.04 E:\Ubuntu22.04\Ubuntu22.04.tar
  1. 注销原系统。
    在wsl中注销原有的Ubuntu系统,powershell中输入wsl --unregister Ubuntu-22.04。完成后输入wsl -l -v查看,提示适用于 Linux 的 Windows 子系统没有已安装的分发,即为卸载成功。
wsl --unregister Ubuntu-22.04
  1. 导入镜像。
    在powershell中输入wsl --import Ubuntu-22.04 E:\Ubuntu22.04 E:\Ubuntu22.04\Ubuntu22.04.tar,将之前导出的镜像导入到新的Ubuntu系统。在powershell中输入wsl -l -v查看,出现Ubuntu-22.04的NAME即为导入成功。
wsl --import Ubuntu-22.04 E:\Ubuntu22.04 E:\Ubuntu22.04\Ubuntu22.04.tar
wsl -l -v
  1. 更改默认用户,因为重新导出导入,ubuntu会默认启动root用户,所以需要这一步,注意用户名是你前面填写的那个用户名。在powershell中输入ubuntu2204.exe config --default-user [YourUesrName],将新的Ubuntu系统默认用户设置为[YourUesrName]
    如更改默认用户为nanwan,则输入下列命令:
ubuntu2204.exe config --default-user nanwan

Tips: 导出的这一步其实可以当做传统虚拟机的快照,用于备份系统。

Tips: 在Windows的资源管理器中,按住Shift键,右键空白处或者文件夹,即可选择在此处打开 Linux shell,从而实现快速启动Ubuntu子系统并切换终端目录。

Tips: 在Windows的资源管理器中,输入 \\wsl$ 即可访问Ubuntu的文件系统,该系统是通过网络接口访问的,可右键该文件夹并选择 映射网络驱动器 将其映射为带有盘符的目录,从而实现快速访问Ubuntu文件。

四、在ubuntu中设置代理

如果想要在ubuntu中设置代理使用的话,按照以下步骤进行:

  1. 打开WSL Settings
    在这里插入图片描述

  2. 网络模式选择镜像,其他的跟我一样就行。
    在这里插入图片描述

  3. 记得关闭wsl。此时,在你的windows中打开代理,然后再次启动ubuntu。

  4. 接着打开浏览器测试即可。没有安装浏览器可用以下命令安装Google浏览器,安装其他浏览器也可以。

cd /tmp
wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
sudo apt install -f ./google-chrome-stable_current_amd64.deb
  1. 当然如果想在ubuntu对git配置使用代理,只需要在终端中使用:
git config --global http.proxy http://127.0.0.1:7897
git config --global https.proxy https://127.0.0.1:7897

实际地址和端口请根据本机实际的情况修改。
在这里插入图片描述

五、中文乱码的解决

这个是我在打开浏览器的时候发现,如果切换到中文的话,会出现大量乱码。解决的方案按照以下进行解决:

  1. 在ubuntu终端中依次输入执行:
sudo apt install fonts-noto-cjk -y
sudo apt install language-pack-zh-hans -y 
sudo locale-gen zh_CN.UTF-8
sudo update-locale LANG=zh_CN.UTF-8

2.退出所有ubuntu终端,关闭wsl

wsl --shutdown
wsl -l -v

3.重新启动ubuntu,乱码问题即可解决

http://www.dtcms.com/a/558555.html

相关文章:

  • 好的活动策划网站华为荣耀官网手机旗舰店
  • Arthas工具快速使用
  • 网站建设要实现的目标外贸添加外链网站
  • psd简单的网站首页wordpress简单统计插件
  • 【AI基础篇】微积分在AI中的核心作用与应用浅析
  • 做网站卖机器怎么弄新能源汽车价格表
  • 免费舆情信息网站网站开发需要掌握的知识
  • 推广网站软文高德地图是国产软件吗
  • 威海网站建设兼职郑州模板建站哪家好
  • 土豆做视频在线观看网站网站建设的多吗
  • 电子商务网站建设摘要旅游做义工的同城网站
  • 网站开发建设费用包括那些郑州高端网站建设哪家好
  • 网站开发税率是多少wordpress选定文字标红
  • dummy|trick
  • 计算机软件开发网站建设取什么名字手机怎样下载安装建设银行网站
  • FreeRTOS 学习:(七)FreeRTOS 中相关的 API 函数的命名规则
  • 如何用博客网站做cpa网站建设哪家公司好网站建设
  • 自动化测试的使用场景有哪些?
  • 安徽哪家公司做网站比较好淘宝上网站开发退款
  • view()与transpose()函数使用注意事项
  • WHAT - 前端自动化测试系列(二)
  • 【代数学】置换群的正规子群与猜拳游戏
  • 南京做网站南京乐识权威京东购物网站怎么做
  • 3.5 介质访问控制【2010统考真题】
  • 网站导航条用什么做邢台123最新事件
  • 网站建设模板免费下载万联芯城网站建设
  • 电商网站 性能目标有哪些桂阳网站制作
  • 百度有网站建设吗cn网站
  • 利用选择法对数据排序
  • django网站开发源代码企业画册图片