• Window10安装linux子系统及子系统安装1Panel面板


    本文为作者原创,允许转载,不过请在文章开头明显处注明链接和出处!!! 谢谢配合~
    作者:stars-one
    链接:https://www.cnblogs.com/stars-one/p/17764763.html

    本篇大约有4697个字,阅读预计需要5.87分钟


    原文地址:Window10安装linux子系统及子系统安装1Panel面板 - Stars-One的杂货小窝

    最近看到halo博客发布了2.10.0,终于是新增了个备份功能,于是有了念头想要升级下

    但是目前我还是使用halo1.5版本,所以跨版本迁移可能会有问题,官方提议还是先用个测试环境进行测试验证是否有问题

    但由于2.x版本之后,官方是不提供jar包方式,而是改用docker来进行部署,对于docker不太熟悉的我选择了1Panel面板来安装(不过1Panel面包和宝塔类似,都是属于Linux系统的管理工具)

    所以首先得有Linux系统,但手头没有Linux系统,服务器生产环境不太想乱动,也不太想安装个虚拟机,之前有了解过window10系统新增了linux的子系统可以使用,于是就有了这篇文章

    本篇文章包含window10系统安装子系统Linux以及如何把Linux系统迁移到其他盘(默认是安装C盘)

    由于我是研究成功之后才根据之前的做法回想做的记录,可能有些步骤没写全,各位仅供参考

    安装步骤

    1.前提配置和资源下载

    开启配置:

    下载安装下面的msi文件:
    wsl_update_x64.msi文件下载: https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_x64.msi

    下载并更新wsl为wsl2版本,到Releases · microsoft/WSL手动下载最新版本的安装包wsl.2.0.4.0.x64.msi,之后安装即可(这个因为后面我安装1Panel面板需要用到systemd命令,需要更新环境才成功启动1Panel)

    下载Unbuntu22.04的镜像,之后备用:
    https://www.crxsoso.com/store/detail/9PN20MSR04DW

    可以将上面的配置开启和软件都安装后,重启电脑再进行下一步

    2.安装镜像

    上面的Unbuntu22.04镜像文件,实际就是微软应用商店的安装包,我们直接安装就可以(它会默认安装到C盘,之后我们再讲如何将它移动到其他盘)

    安装的时候会弹出一个powershell的命令行窗口,之后会提示我们输入一个默认账号和密码(下面的截图因为当时是研究迁移,所以有报错,不过重点就是后面输入账号的部分,错误提示可以忽略哈)

    之后输入完密码后,就可以启动系统了(上安装完后命令行是自动帮我们启动了系统)

    之后我们设置下root账号的密码即可,linux命令如下

    sudo passwd root
    

    上面的命令会先让我们输入上面我们设置的默认账号密码,之后才是输入root的账号密码和二次密码确认

    之后切换到root账号命令:

    su root
    

    输入我们上面的root账号的密码即可切换成功(即左边的$变为#)

    PS: 可以通过开始菜单的Ubuntu22.04来启动或者通过输入wsl来启动,这个命令可以在cmd命令行或者powershell命令窗口输入

    3.Linux系统使用国内仓库源

    由于账号需要使用到ifconfig来查看IP地址信息,所以要先设置下使用国内的Linux软件仓库源

    1、将系统源文件复制一份备用

    sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak

    2、用vi编辑器打开源文件

    sudo vi /etc/apt/sources.list

    3、找到国内源复制粘贴

    阿里源地址https://developer.aliyun.com/mirror/?spm=a2c6h.12883283.1364563.38.6c69201cmnp0oi

    输入49dd清除全部内容,如果你的是22.04版本,可以直接复制下面内容

    deb http://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse 
    deb-src http://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse
    deb http://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse
    deb-src http://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse
    deb http://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse
    deb-src http://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse
    deb http://mirrors.aliyun.com/ubuntu/ focal-proposed main restricted universe multiverse
    deb-src http://mirrors.aliyun.com/ubuntu/ focal-proposed main restricted universe multiverse
    deb http://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse
    deb-src http://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse
    

    在vim编辑器按下shift+insert实现粘贴

    输入:wq 保存并退出

    更新系统仓库源:

    sudo apt-get -y update && sudo apt-get -y upgrade
    

    4.Linux安装ifconfig

    由于我们需要查看ip地址,需要需要先安装此工具

    sudo apt-get install net-tools
    

    查询ip地址命令

    ifconfig
    

    下面截图得到我们的IP地址

    迁移系统

    上面我们成功了安装完Linux系统,但是由于它是默认放在C盘,为了防止C盘爆红,所以决定将其迁移到D盘

    刚开始参考的一篇文章教程,先是使用的wsl,然后再切换为wsl2,步骤很多,到最后,迁移是成功了,但是却午无法启动Linux系统了...

    他的思路也就是利用了wsl支持导出和导入,于是基于他的思路尝试了下,发现居然完美成功了

    1.导出wsl系统

    1. 设置当前wsl版本为wsl2
    wsl --set-default-version 2
    

    设置的时候可能会出错,原因就是你没有按照上面配置开启window平台的虚拟化平台

    如果开启了还报错,可以试着输入下面2个命令其中之一(我这里是没有报错的)

    报错输入下面的命令,2选一
    
    bcdedit /set hypervisorlaunchtype auto
    bcdedit /set hypervisorlaunchtype off
    
    1. 导出子系统镜像备份
    查看镜像实例名
    wsl -l -v
    
    打包输出备份,导出到D盘,文件名为export.tar
    wsl --export Ubuntu-22.04 D:/export.tar
    
    注销实例,实际会将磁盘里的子系统文件删除
    wsl --unregister Ubuntu-22.04
    

    上面的Ubuntu-22.04就是从查询得到的,如果你是安装的其他版本,记得要爱夏

    1. 导入子系统镜像备份
    重新安装,第一个目录就是你要将子系统安装的目录位置
    wsl --import Ubuntu-22.04 D:\app\dev\Ubuntu_22_04\ D:\export.tar --version 2
    
    设置默认子系统
    wsl --setdefault Ubuntu-22.04 
    
    启动
    wsl -d Ubuntu-22.04 
    

    之后可以发现迁移已完成

    安装1Panel

    Ubuntu系统安装命令:

    curl -sSL https://resource.fit2cloud.com/1panel/package/quick_start.sh -o quick_start.sh && sudo bash quick_start.sh
    

    启动失败说明

    上面已经说了,因为要安装1Panel需要sytemd,需要更新下wsl环境即可,之后的是我一些随手记的问题和资料文章,随便看看就好

    但是启动的时候提示失败了

    查看官方文档操作系统相关 - 1Panel 文档

    给出的建议是我们需要升级wsl,输入wsl --version,看了下自己的版本比较低的

    This change is only available in the Microsoft Store version of WSL version 0.67.6 and higher

    因为我不想开启window更新设置,所以可以到Releases · microsoft/WSL手动下载安装包,之后安装即可

    WSL需要是从Microsoft Store下载安装的版本(即上面的Github链接的),而不是Windows自带的WSL
    在命令行执行:

    C:>wsl --version
    如果结果没有显示如下的输出,而是提示参数使用错误的信息,那使用的WSL是Windows自带的版本,不是可用的版本,需要替换(即上面说的更新wsl)

    WSL 版本: 1.0.3.0
    内核版本: 5.15.79.1
    WSLg 版本: 1.0.47
    MSRDC 版本: 1.2.3575
    Direct3D 版本: 1.606.4
    DXCore 版本: 10.0.25131.1002-220531-1700.rs-onecore-base2-hyp
    Windows版本: 10.0.19045.2486
    
    

    此命令查看是否systemd可用

    systemctl status | cat
    

    遇到的问题

    1.初次安装系统的时候出现Wsl/Service/0x8007273d

    window wsl2 打开 出现 Wsl/Service/0x8007273d

    原因是用了安装了VPN代理软件导致虚拟网卡被占用,卸载即可解决

    或者是可以考虑降低wsl2为1(不推荐此做法)

    参考

  • 相关阅读:
    少儿C++编程如何入门
    分享一下大转盘抽奖小程序怎么做
    vue移动端适配方案:amfe-flexible和postcss-pxtorem插件结合
    9-2-Dataset创建-import调用
    一文读懂,python实现常用的数据编码和对称加密
    X11 Xlib截屏问题及深入分析二 —— 源码实现1
    PyCharm 2022.2 发布了,支持最新 Python 3.11 和 PyScript 框架!
    如何写好代码
    使用 Clipdrop 替换长安三万里电影海报中的天空
    傻白入门芯片设计,芯片键合(Die Bonding)(四)
  • 原文地址:https://www.cnblogs.com/stars-one/p/17764763.html