win10 使用LxRunOffline安装wsl2

电脑环境

618买了台联想小新pro13 锐龙版 4800U,将台式机中的win10系统迁移到笔记本。

目前win10是最新的2004版本,wsl为版本1,想要将其升级为wsl2使用,因为vmware 20H1可以和hyper-v兼容使用了,以前因为需要经常使用vmware,所以一直没有升级,这次趁着新电脑的机会搞一下。

目前的子系统为:

D:\Scoop\apps\cmder\current>wsl -l -v
  NAME            STATE           VERSION
* Ubuntu-18.04    Stopped         1

迁移系统的,发现现在状态为stopped

D:\Scoop\apps\cmder\current>wsl.exe -d Ubuntu-18.04

D:\Scoop\apps\cmder\current>wsl -l -v
  NAME            STATE           VERSION
* Ubuntu-18.04    Running         1

但是没有任何用,过不了一会又会变成Stopped

卸载以前的wsl

D:\Scoop\apps\cmder\current
λ wslconfig /list
适用于 Linux 的 Windows 子系统分发版:
Ubuntu-18.04 (默认)

D:\Scoop\apps\cmder\current
λ wslconfig /unregister Ubuntu-18.04
正在注销...

D:\Scoop\apps\cmder\current
λ wsl -l -v
适用于 Linux 的 Windows 子系统没有已安装的分发版。
可以通过访问 Microsoft Store 来安装分发版:
https://aka.ms/wslstore

注意,我以前安装过wsl,所有很多配置信息都不需要再次配置。

这里记录一下需要的配置命令:

安装LxRunOffline

scoop bucket add extras
scoop install lxrunoffline

查看具体版本

D:\Program Files (x86)\JetBrains
λ lxrunoffline l
Ubuntu-18.04

查看具体路径

D:\Program Files (x86)\JetBrains
λ lxrunoffline di -n Ubuntu-18.04
D:\Program Files (x86)\JetBrains\CanonicalGroupLimited.Ubuntu18.04onWindows_1804.2018.817.0_x64__79rhkp1fndgsc

使用lxrunoffline进行备份

D:\Program Files (x86)\JetBrains
λ lxrunoffline export -n Ubuntu-18.04 -f Ubuntu-18.04.tar.gz
[WARNING] Ignoring an unsupported file "\\?\D:\Program Files (x86)\JetBrains\CanonicalGroupLimited.Ubuntu18.04onWindows_1804.2018.817.0_x64__79rhkp1fndgsc\rootfs\dev\full" of type 0020000.
[WARNING] Ignoring an unsupported file "\\?\D:\Program Files (x86)\JetBrains\CanonicalGroupLimited.Ubuntu18.04onWindows_1804.2018.817.0_x64__79rhkp1fndgsc\rootfs\dev\null" of type 0020000.
[WARNING] Ignoring an unsupported file "\\?\D:\Program Files (x86)\JetBrains\CanonicalGroupLimited.Ubuntu18.04onWindows_1804.2018.817.0_x64__79rhkp1fndgsc\rootfs\dev\ptmx" of type 0020000.
[WARNING] Ignoring an unsupported file "\\?\D:\Program Files (x86)\JetBrains\CanonicalGroupLimited.Ubuntu18.04onWindows_1804.2018.817.0_x64__79rhkp1fndgsc\rootfs\dev\random" of type 0020000.
[WARNING] Ignoring an unsupported file "\\?\D:\Program Files (x86)\JetBrains\CanonicalGroupLimited.Ubuntu18.04onWindows_1804.2018.817.0_x64__79rhkp1fndgsc\rootfs\dev\tty" of type 0020000.
[WARNING] Ignoring an unsupported file "\\?\D:\Program Files (x86)\JetBrains\CanonicalGroupLimited.Ubuntu18.04onWindows_1804.2018.817.0_x64__79rhkp1fndgsc\rootfs\dev\urandom" of type 0020000.
[WARNING] Ignoring an unsupported file "\\?\D:\Program Files (x86)\JetBrains\CanonicalGroupLimited.Ubuntu18.04onWindows_1804.2018.817.0_x64__79rhkp1fndgsc\rootfs\dev\zero" of type 0020000.

-n :wsl的别名,就是之前用list查看的其中一个

-f :备份的路径,我这直接备份到当前路径backup.tar.gz

注意这里只能导出wsl为版本1的,版本2的不行,必须先转换成版本1的才行。

卸载旧系统,迁移位置

D:\MyLinux
λ lxrunoffline uninstall -n Ubuntu-18.04

D:\MyLinux
λ lxrunoffline l

恢复备份

D:\MyLinux
λ lxrunoffline install -n Ubuntu-18.04 -d D:\MyLinux\Ubuntu18.04 -f Ubuntu-18.04.tar.gz
[WARNING] Love this tool? Would you like to make a donation: https://github.com/DDoSolitary/LxRunOffline/blob/master/README.md#donation

指定运行某个发行版本

D:\MyLinux
λ lxrunoffline r -n Ubuntu-18
[oh-my-zsh] Would you like to update? [Y/n] Y

等同于wsl -d <WSL名称>

创建快捷方式

使用微软应用商店安装的 WSL 会在开始菜单添加应用图标(快捷方式),而使用 LxRunOf­fline 安装 WSL 时可以通过添加 -s 参数在桌面创建快捷方式。如果你安装时忘记添加参数,可以使用以下命令进行创建。

lxrunoffline s -n <WSL名称> -f <快捷方式路径>.lnk

导出指定的 WSL 配置文件到目标路径

lxrunoffline ec -n <WSL名称> -f <配置文件路径>.xml

配置信息可以输入lxrunoffline sm -n <WSL名称>查看

取消注册(这个操作不会删除目录)

lxrunoffline ur -n <WSL名称>

使用新名称注册

lxrunoffline rg -n <WSL名称> -d <WSL路径> -c <配置文件路径>.xml

设置默认 WSL

设置默认 WSL 后,可以在 cmdpowershell 中输入 wsl 直接调用默认的 WSL 。

lxrunoffline sd -n <WSL名称>

等同于wsl -s <WSL名称>

安装wsl2的前置设置

bcdedit /set hypervisorlaunchtype auto

#用管理员模式启动PowerShell然后运行
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
这两个安装完成直接 重启 !!!!!!!!!重启!!!!!!

安装CentOS子系统

下载 Centosdocker 镜像

可以参考 https://github.com/RoliSoft/WSL-Distribution-Switcher 来下载。

或者直接下载

使用LxRunOffline安装CentOS

D:\MyLinux
λ lxrunoffline install -n centos -d D:\MyLinux\CentOS -f centos-7-docker.tar.xz
[WARNING] Love this tool? Would you like to make a donation: https://github.com/DDoSolitary/LxRunOffline/blob/master/README.md#donation

D:\MyLinux
λ lxrunoffline l
centos

D:\MyLinux
λ wsl
[root@qhong-Computer MyLinux]# uname
Linux
[root@qhong-Computer MyLinux]# uname -r
4.4.0-19041-Microsoft
[root@qhong-Computer MyLinux]# uname -a
Linux qhong-Computer 4.4.0-19041-Microsoft #1-Microsoft Fri Dec 06 14:06:00 PST 2019 x86_64 x86_64 x86_64 GNU/Linux
[root@qhong-Computer CentOS]# cd /
[root@qhong-Computer /]# cat /etc/redhat-release
CentOS Linux release 7.6.1810 (Core)

上面的D:\MyLinux\CentOS是安装的位置。

其中 -d 后面是要安装到的目录; -f 后面是第二部下载的镜像存放位置;-n 用来指定名称

安装完成之后,使用LxRunOffine 来开启 Centos lxrunoffline run -n centos

如果,你只安装了一个WSL,那么直接在cmder输入wsl即可启动CentOS了。

查看:

D:\MyLinux
λ wsl -l -v
  NAME      STATE           VERSION
* centos    Running         1

将其升级为wsl2

D:\MyLinux
λ wsl --set-version centos 2
正在进行转换,这可能需要几分钟时间...
有关与 WSL 2 的主要区别的信息,请访问 https://aka.ms/wsl2
转换完成。

D:\MyLinux
λ wsl -l -v
  NAME      STATE           VERSION
* centos    Stopped         2

但是升级以后是stopped,必须运行起来

D:\MyLinux
λ lxrunoffline r -n centos
[root@qhong-Computer MyLinux]# ll
total 0
drwxrwxrwx 1 root root 4096 Jun 27 17:40 CentOS

这里使用的是lxrunofflinerun命令

wsl1与wsl2区别

虚拟网卡

wsl1没有虚拟网卡,wsl2有,体现在使用tcpdump命令时

wsl1

[root@qhong-Computer MyLinux]# tcpdump -D

wsl2:

[root@qhong-Computer MyLinux]# tcpdump -D
1.eth0
2.nflog (Linux netfilter log (NFLOG) interface)
3.nfqueue (Linux netfilter queue (NFQUEUE) interface)
4.any (Pseudo-device that captures on all interfaces)
5.lo [Loopback]

安装Ubuntu子系统

这个就简单了,照猫画虎就行

我以前就有Ubuntu-18.04的子系统,这次升级为wsl2就行。

D:\MyLinux
λ lxrunoffline install -n Ubuntu-18.04 -d D:\MyLinux\Ubuntu -f Ubuntu-18.04.tar.gz

D:\MyLinux
λ wsl -l -v
  NAME            STATE           VERSION
* centos          Running         2
  Ubuntu-18.04    Stopped         1

D:\MyLinux
λ wsl --set-version Ubuntu-18.04 2
正在进行转换,这可能需要几分钟时间...
有关与 WSL 2 的主要区别的信息,请访问 https://aka.ms/wsl2
转换完成。

D:\MyLinux
λ wsl -l -v
  NAME            STATE           VERSION
* centos          Running         2
  Ubuntu-18.04    Stopped         2

D:\MyLinux
λ lxrunoffline l
centos
Ubuntu-18.04

D:\MyLinux
λ lxrunoffline r -n Ubuntu-18.04
[oh-my-zsh] Would you like to update? [Y/n] Y

安装Ubuntu以后,默认是停止的,而且是版本1,必须转换成版本2,而且再次运行即可。

参考:

安装VMware16兼容Hyper-v+WSL2+Docker+解决0x80370102报错

在 Windows 10 環境上安裝 WSL 2

LxRunOffline 使用教程 - WSL 自定义安装、备份

猜你喜欢

转载自www.cnblogs.com/hongdada/p/13200158.html