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

WSL自定义安装多个相同版本的Ubuntu子系统

目录

1 安装WSL命令

2 手动下载WSL子系统(Ubuntu)

3 安装WSL子系统(Ubuntu)

3.1 通过exe文件安装

3.2 通过WSL --import导入命令方式安装

3.2.1 运行WSL --import全新安装新系统

3.2.2 为新系统添加新的自定义管理员账户

4 注销子系统

5 导出子系统

6 导入子系统


1 安装WSL命令

https://learn.microsoft.com/zh-cn/windows/wsl/install

如果安装WSL命令时较慢,则可以使用手动方式安装WSL命令

https://learn.microsoft.com/zh-cn/windows/wsl/install-manual

或者手动下载WSL 2 Linux完整内核包,选择最新版本下载:

https://github.com/microsoft/WSL/

点击下载的wsl2.6.10.x64.msi程序安装WSL程序完整内核包。 安装完成后,使用wsl --version命令查看。

C:\Users\ZHOU>wsl --version
WSL 版本: 2.6.1.0
内核版本: 6.6.87.2-1
WSLg 版本: 1.0.66
MSRDC 版本: 1.2.6353
Direct3D 版本: 1.611.1-81528511
DXCore 版本: 10.0.26100.1-240331-1435.ge-release
Windows: 10.0.26100.4946

2 手动下载WSL子系统(Ubuntu)

wsl命令直接安装子系统时往往下载较慢,可以通过手动的方式下载相应的子系统。

https://learn.microsoft.com/zh-cn/windows/wsl/install-manual

找到下载发行版页面,点击相应的子系统下载

Ubuntu24.04 的下载地址:https://wslstorestorage.blob.core.windows.net/wslblob/Ubuntu2404-240425.AppxBundle

下载完成后得到zip文件,选择其中的相应系统版本解压

将得到的Ubuntu2404.0.5.0_x64.appx再次用解压缩软件进行解压

3 安装WSL子系统(Ubuntu)

    WSL子系统默认会安装到%LOCALAPPDATA%\Packages文件夹下,以CanonicalGroupLimited开头的文件夹对应不同的WSL发行版。通过上面步骤解压之后进行相应的操作可以对WSL子系统进行自定义操作,比如安装到自定义位置等。

3.1 通过exe文件安装


输入用户名和密码之后完成WSL子系统安装

上述安装方法会在安装程序所在的文件下生成一个ext4.vhdx虚拟硬盘文件

生成的WSL子系统默认名为Ubuntu-24.04,无法更改。

3.2 通过WSL --import导入命令方式安装

此方法只需要使用解压缩文件中的install.tar.gz文件。

3.2.1 运行WSL --import全新安装新系统

wsl --import UbuntuServer E:\VM\UbuntuServer E:\VM\Ubuntu\install.tar.gz

    UbuntuServer为安装后的子系统名称
     E:\VM\UbuntuServer为子系统安装位置,可以自定义
     E:\VM\install.tar.gz为子系统安装文件,可以是WSL官网下载的镜像文件,也可以是从Docker镜像站下载的镜像文件等

C:\Users\ZHOU>wsl -l -vNAME            STATE           VERSION
* Ubuntu-24.04    Running         2UbuntuServer    Stopped         2

通过上述方法就可以通过自定义安装位置、自定义系统名称的方式安装全新的WSL子系统。

3.2.2 为新系统添加新的自定义管理员账户

      通过上述wsl --import导入方式安装的子系统只有root管理员超级用户,可以通过以下命令添加自定义管理员用户。

(1)登录子系统

wsl -d UbuntuServer

可以看到是以root用户登录的子系统

(2)添加自定义普通用户并提升至sudo组成为管理员用户

创建的用户名只能以小写字母开头,逐条输入如下命令

NEW_USER=zhou
useradd -m -G sudo -s /bin/bash "$NEW_USER"
passwd "$NEW_USER"

(3)将默认登录账户从root用户更改为新建管理员用户

紧接第二步不要退出子系统,输入以下命令

echo -e "[user]\ndefault=$NEW_USER" > /etc/wsl.conf

(4)退出并关闭子系统

首先输入exit命令退出子系统

然后通过wsl --terminal 命令终止子系统运行,

wsl --terminate UbuntuServer

最后使用wsl-d命令重启并进入子系统

wsl -d UbuntuServer

子系统自动登录账户已经更改为新建的管理员用户。

4 注销子系统

wsl --unregister  <Distribution Name>
wsl --unregister UbuntuServer

5 导出子系统

wsl --export <Distribution Name> <FileName>
wsl --export UbuntuServer 'E:\VM\UbuntuServer.tar'

6 导入子系统

wsl --import <Distribution Name> <Installation Folder> <Ubuntu WSL2 Image Tarball path>
wsl --import UbuntuServer E:\VM\UbuntuServer E:\VM\Ubuntu\install.tar.gz


文章转载自:

http://7k1jyTXt.hrnrx.cn
http://WuNvPRGq.hrnrx.cn
http://pvSWIr0b.hrnrx.cn
http://4X52zj5q.hrnrx.cn
http://ZfqjYMio.hrnrx.cn
http://yvajq3fG.hrnrx.cn
http://NrkgOSFs.hrnrx.cn
http://gvTSlM6g.hrnrx.cn
http://YACQgIMf.hrnrx.cn
http://3gcsYFuB.hrnrx.cn
http://GvoLnbzX.hrnrx.cn
http://pi3vIbyS.hrnrx.cn
http://SgSKxshc.hrnrx.cn
http://d78AZnFo.hrnrx.cn
http://0Ql4Oau6.hrnrx.cn
http://aR9qj67o.hrnrx.cn
http://UJtMPp9C.hrnrx.cn
http://efLoXDb4.hrnrx.cn
http://4vsIdoKv.hrnrx.cn
http://Re7St15R.hrnrx.cn
http://35EyTNP0.hrnrx.cn
http://2ETsUzWC.hrnrx.cn
http://GinA4QGD.hrnrx.cn
http://0jZHGHkD.hrnrx.cn
http://0fUBQ7Zl.hrnrx.cn
http://unxMdcv9.hrnrx.cn
http://Bfb8Kqg2.hrnrx.cn
http://cnHJx39Y.hrnrx.cn
http://9zLWljKD.hrnrx.cn
http://Y6aoHG0I.hrnrx.cn
http://www.dtcms.com/a/378553.html

相关文章:

  • 晶振在5G时代的角色:高精度时钟的核心支撑
  • 【JavaEE】(25) Spring 原理
  • 【科研绘图系列】R语言绘制模型预测与数据可视化
  • 音频中的PDM、PCM概念解读
  • 离线应用开发:Service Worker 与缓存
  • 1、RocketMQ概念详解
  • ZooKeeper Multi-op+乐观锁实战优化:提升分布式Worker节点状态一致性
  • 使用yolo算法对视频进行实时目标跟踪和分割
  • Tomcat日志乱码了怎么处理?
  • 新手该选哪款软件?3ds Max vs Blender深度对比
  • 剧本杀小程序系统开发:构建线上线下融合的剧本杀生态圈
  • 常用加密算法之 AES 简介及应用
  • 【SQL注入系列】JSON注入
  • 盲盒抽卡机小程序:从0到1的蜕变之路
  • 设计模式(C++)详解—工厂方法模式(1)
  • 【Proteus仿真】【51单片机】教室灯光控制器设计
  • java语言中,list<String>转成字符串,逗号分割;List<Integer>转字符串,逗号分割
  • Jenkins运维之路(Jenkins流水线改造Day01)
  • 9月11日星期四今日早报简报微语报早读
  • 阿里兵临城下,美团迎来至暗时刻?
  • 学习笔记:Javascript(5)——事件监听(用户交互)
  • window显示驱动开发—为头装载和专用监视器生成自定义合成器应用(二)
  • [K8S学习笔记] Service和Ingress的关系
  • YOLO11实战 第018期-基于yolo11的水果甜瓜目标检测实战文档(详细教程)
  • 【已解决】mongoose在mongodb中添加数据,数据库默认复数问题
  • 借助自动化GPO报表增强AD域安全性
  • decentralized英文单词学习
  • 响应式布局
  • Vue基础知识-Vue集成 Element UI全量引入与按需引入
  • 《UE5_C++多人TPS完整教程》学习笔记52 ——《P53 FABRIK 算法(FABRIK IK)》