首页 >> 手游攻略

够了够了流出来了高CBL系统

大家好,今天给各位分享够了够了流出来了高CBL系统的一些知识,其中也会对尝试微软自家出品的 Linux 系统 CBL-Mariner进行解释,文章篇幅可能偏长,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在就马上开始吧!

网管小贾/sysadm.cc

微软的Windows系统上早就搭载了Linux系统,也就是传说中的WSL。

而这个WSL现在已经发展到了WSL2,并且支持了图形界面的Linux软件,其被称为WSLg。

可是令人意想不到的是,你听说过微软其实他们家还有自己的Linux系统吗?

微软有自己的Linux,啥时候的事,我怎么不知道?

其实WSL是怎么搞出来的,那肯定他们要有个测试的平台作为基础嘛,然后才能将WSL整合到Windows上。

对了,这个微软自家的测试平台Linux系统,它的名字就是CBL-Mariner。

别打我,我也是知道没几天,所以我立刻、马上动手开展实验。

感兴趣的小伙伴们一起来吧!

先决条件

我们需要做一些前期准备工作,不可能拉过来就搞CBL-Mariner。

它需要的东西还不少呢,比如以下这些东西你得准备好,当然我会告诉你怎么准备它们。

其基本原理就是先拿一台Ubuntu系统的电脑,在上面克隆下载CBL-Mariner项目,然后再通过相关配置命令创建生成我们需要的映像文件。

参考官网:https://github.com/microsoft/CBL-Mariner/blob/1.0/toolkit/docs/building/prerequisites.md

Ubuntu系统,官方演示版本为18.04,而我连带20.04版本也测试OK了。GO运行环境PYTHON运行环境DOCKER容器环境其他一些相关的小程序,比如make、tar、git等等

#添加后备仓库以便安装最新版的Gonsudoadd-apt-repositoryppa:longsleep/golang-backportsnsudoapt-getupdatenn#安装所需依赖nsudoapt-yinstallmaketarwgetcurlrpmqemu-utilsgolang-1.15-gogenisoimagepython-minimalbisongawkpartedgitnn#推荐但非必需:`pigz`可以加快压缩速度nsudoapt-yinstallpigznn#修正添加连接到go1.15的软链接nsudoln-vsf/usr/lib/go-1.15/bin/go/usr/bin/gonn#安装Docker容器ncurl-fsSLhttps://get.docker.com-oget-docker.shnsudoshget-docker.shnsudousermod-aGdocker$USER

添加后备仓库以便安装最新版的Go。

Docker安装完成。

这里要注意一下,在安装python-minimal时会报错,实际上是因为我们需要安装的是python2版本,系统默认认为你要的是python3版本,所以找不到而报错。

那么我们可以这样安装它。

sudoaptinstallpython2-minimal

如果你使用的是Ubuntu18.04版本,则不会有这个报错,因为它默认就是python2版本。

接下来我们通过官网的“快速参考”QuickStartGuide来把玩一下CBL-Mariner。

https://github.com/microsoft/CBL-Mariner/blob/1.0/toolkit/docs/quick_start/quickstart.md克隆CBL-Mariner

这一步很简单,在终端中输入以下命令行开始克隆CBL-Mariner。

#克隆下载CBL-Mariner仓库ngitclonehttps://github.com/microsoft/CBL-Mariner.gitnn#切换目录ncdCBL-Marinernn#同步到最新稳定版本,通常克隆完成即为最新稳定版ngitcheckout1.0-stable

由于下载速度太慢甚至会失败,可能有的小伙伴会等不及,所以我将这个项目打包放在这儿,你可以直接将它上传到Ubuntu系统中。

注意,这个打包文件不包含映像文件,后面我们才会创建。

CBL-Mariner.7z(483M)

下载链接:https://pan.baidu.com/s/1KbcC3UmbBg9zl6Sky-musA

提取码:<关注公众号,发送000857>

创建虚拟映像文件VHDX和VHD

VHDX和VHD这两种格式的文件想必小伙伴们应该不陌生,它们都是虚拟磁盘文件。

在这儿我们要创建这两种格式的文件,可直接用于启动加载CBL-Mariner系统。

此外根据官介绍,映像文件所含已经编译的RPMs包文件都可以在以下链接仓库中找到。

https://packages.microsoft.com/cbl-mariner/1.0/prod/

有兴趣可以去看看,都是大部分Linux发行版常用的程序软件。

当然了,我们不必将这些软件包手动处理,官方已经帮我们准备好了配置文件,我们直接拿来用就可以生成包含这些软件包的映像文件了。

创建VHD或VHDX映像文件

执行以下命令,可分别创建映像,其主要区别为一个是支持EFI启动而另一个legacy是支持传统启动的。

#进入CBL-Mariner目录中,再切换到toolkit目录ncdtoolkitnn#创建VHDX映像,它放在了../out/images/core-efi中nsudomakeimageREBUILD_TOOLS=yREBUILD_PACKAGES=nCONFIG_FILE=./imageconfigs/core-efi.jsonnn#创建VHD映像,它放在了../out/images/core-legacy中nsudomakeimageREBUILD_TOOLS=yREBUILD_PACKAGES=nCONFIG_FILE=./imageconfigs/core-legacy.json

注意,如果遇到无法正常安装golang时,可能是无法连接proxy.golang.org造成的。

科学的方法是,将go包管理代理由原网址proxy.golang.org更换为goproxy.cn。

可以这么干:

sudogoenv-wGOPROXY=https://goproxy.cn

随后按前面介绍的命令正常创建映像就可以了。

在创建过程中,我们也能看到它在下载很多rpm包,这也正是前面说过的RPMs仓库的那些软件包。

只不过创建映像时它会自动下载打包,不需要我们人工干预,而且它下载一次就可以了,之后再生成映像会很快。

此外,从上面的命令行中我们也能看出来,生成映像的配置文件官方已经是设定好的,存放路径就在./CBL-Mariner/toolkit/imageconfigs中。

实际上在这个路径下有很多配置文件,用哪个文件就能按照哪个的配置生成相应的映像文件。

需要一点点耐心,创建完成会是这样。

CBL-Mariner/out/images/core-legacycore-1.0.20210728.1236.vhdx

core-legacycore-1.0.20210728.1236.vhdx(632.00M)

下载链接:https://pan.baidu.com/s/1SZeNkkYjkkQFlvSAsqeRdQ

提取码:<关注公众号,发送000857>

CBL-Mariner/out/images/core-legacycore-1.0.20210728.1250.vhd

core-legacycore-1.0.20210728.1250.vhd(2.00G)

下载链接:https://pan.baidu.com/s/1YFhYB-6aYCkdoTn2LeGBHw

提取码:<关注公众号,发送000857>

创建cloud-init配置映像

还有一点,刚才我们生成的VHDX也好或是VHD也好,这些映像只是个核心,默认并不包含用户。

所以想要让用户登录的话,还需要再生成一个用户数据映像,将这个映像加载到光驱,并通过光驱启动后就可以登录了。

生成这个用户数据映像很简单,一条简单的命令。

#创建cloud-init配置映像n#输出路径为CBL-Mariner/out/images/meta-user-data.isonsudomakemeta-user-data

meta-user-data.iso(366K)

下载链接:https://pan.baidu.com/s/1Qtgw1Qi2xLywUW7pmneW6w

提取码:<关注公众号,发送000857>

挂载VHD或VHDX映像,然后通过这个映像启动后,就可以用下面的用户名和密码登录CBL-Mariner系统了。

用户名:mariner_usern密码:p@ssw0rd创建完整版ISO映像文件

前面搞得挺热闹,也挺复杂麻烦的,其实对于只是尝试用用CBL-Mariner的小伙伴来说,还有一个好办法,就是创建生成一个完整的可启动的ISO映像文件。

ISO映像地球人都知道,直接挂载光驱即可启动安装系统了,简单粗暴疗效更棒!

那么这玩意咋整呢?

嘿嘿,官方还真有介绍,我们马上开干!

说简单是真简单,就一条命令完事。

#切换到toolkit目录ncdtoolkitnn#生成iso映像,它放到了../out/images/full这个目录中nsudomakeisoREBUILD_TOOLS=yREBUILD_PACKAGES=nCONFIG_FILE=./imageconfigs/full.json

这条命令挺眼熟不?

对了,除前面指定映像为iso外,后面的配置文件其实也是imagconfigs目录中的现成文件。

有了之前的下载的软件包缓存,这个映像生成很快就完成了!

所有都完成后,你的Ubuntu上应该会有这样的目录和文件生成。

完整版可引导full-1.0.20210728.1317.iso(677.03M)

下载链接:链接:https://pan.baidu.com/s/11dEA6ceo292WynXYmdYdSg

提取码:<关注公众号,发送000857>

尝试使用完整版ISO映像启动并安装CBL-Mariner

我使用VirtualBox创建了一个虚拟机,当然你用VMWare也是一样的。

不过我的VirtualBox感觉和其他虚拟机有冲突,启动时死过两次机,所以建议用VirtualBox的小伙伴们最好只单开一个虚拟机来做测试。

这个虚拟机平台应该是哪个呢?

我感觉既然用了RPMs包,那么应该可以用RedHat,不过我用Ubuntu也通过了测试,所以只要是通常的Linux平台版本应该都可以。

好了,创建好虚拟机,然后挂载ISO文件,光驱启动。

不一会儿启动界面出现了,第三项是图形安装界面,我是小白我选它。

我是小白,安装类型我就选完整安装。

协议内容即使是空的我也得同意,主要是我不同意它也不给我点下一步啊。

磁盘分区选项,没有啥特殊情况,我就先全部清除。

主机名、用户名和密码,按自己喜欢的来。

注意密码要求挺高的,不要用弱密码,比如连续数字等。

要开始安装了,挺激动的,按下“现在就安装”Installnow。

安装起来并不慢,就几分钟吧。

安装结束后还给出了耗费的时间,我这儿是86秒。

另外非图形界面下安装时,我这儿测试是用了74秒。

按下完成Done按钮,重启看看这个CBL-Mariner系统到底是个什么庐山真面目。

系统启动了,输入用户名和密码登录进入系统。

单单从这里可以看出Linux的内核版本是5.10,输入uname-a看看。

写在最后

之后我又试试其他的,比如一些常见的命令,都没问题。

不过当我尝试修改它的IP地址时,发现静态地址设定后网络服务无法正常启动。

研究了半天,感觉应该是它是由docker驱动的,可能无法直接修改它的网络配置。

由于没有更多的时间,所以以后有空再进一步深入研究看看。

基本上这是一个具有一般Linux发行版通常功能的又一款发行版,正如微软官方所说,它是用于研究Linux与Windows整合功能的测试版本。

随着微软的努力,使得两者结合得更加紧密,比如WSL2在新版的Win10中已经支持图形界面软件。

参考文章:《WSLg就是带GUI的WSL》

链接:https://www.sysadm.cc/index.php/xitongyunwei/836-wslg-is-short-for-windows-subsystem-for-linux-gui

小伙伴们,如果你也有兴趣尝试一下微软家的Linux,那么可以参照本文来尝试。

同时为了节省时间,你也可以直接下载文中的映像文件直接测试。

如果你在此过程中发现什么其他有趣的东西,别忘记一起讨论,与大家分享!

网管小贾/sysadm.cc

文章到此结束,如果本次分享的够了够了流出来了高CBL系统和尝试微软自家出品的 Linux 系统 CBL-Mariner的问题解决了您的问题,那么我们由衷的感到高兴!



本文由欣欣吧手游攻略栏目发布,感谢您对欣欣吧的认可,以及对我们原创作品以及文章的青睐,非常欢迎各位朋友分享到个人站长或者朋友圈,但转载请说明文章出处“够了够了流出来了高CBL系统

标签:
够了够了流出来了TXT
« 上一篇 2023-10-18