微軟自家的Linux發(fā)行版開源了!
微軟正式宣布開源自家使用的Linux發(fā)行版——CBL-Mariner(CBL 即 Common Base Linux),和任何Linux發(fā)行版一樣,你可以下載它并自己運行它。
因此,CBL-Mariner不像我們想到的任何其他發(fā)行版(例如 Ubuntu 或 Fedora)那樣是通用發(fā)行版,CBL-Mariner 不是桌面 Linux 而是服務(wù)器端 Linux,它被用于微軟的云基礎(chǔ)設(shè)施以及邊緣產(chǎn)品和服務(wù)。CBL-Mariner 旨在為這些設(shè)備和服務(wù)提供一個一致的平臺,并增強(qiáng)微軟在 Linux 更新方面與時俱進(jìn)的能力。這是微軟對各種 Linux 技術(shù)不斷增加投資的一部分,例如SONiC、Azure Sphere OS和Windows Subsystem for Linux (WSL)?!?/p>
CBL-Mariner 的設(shè)計理念是,一組小的通用核心包可以滿足第一方云和邊緣服務(wù)的普遍需求,同時允許各個團(tuán)隊在通用核心之上分層附加包,為他們的工作負(fù)載生成圖像。這是通過一個簡單的構(gòu)建系統(tǒng)實現(xiàn)的,該系統(tǒng)支持:
- 包生成:這會從 SPEC 文件和源文件中生成所需的一組 RPM 包。
- 圖像生成:這會從給定的一組包中生成所需的圖像工件,如 ISO 或 VHD。
無論是部署為容器還是容器主機(jī),CBL-Mariner 都消耗有限的磁盤和內(nèi)存資源,CBL-Mariner 的輕量級特性還提供更快的啟動時間通過將核心映像中的功能集中在微軟內(nèi)部云客戶需要的功能上,可以加載更少的服務(wù)和更少的攻擊媒介。
當(dāng)出現(xiàn)安全漏洞時,CBL-Mariner 支持基于包的更新模型和基于圖像的更新模型。利用通用的RPM 包管理器系統(tǒng),CBL-Mariner 提供最新的安全補(bǔ)丁和修復(fù)程序。
如何安裝 Microsoft CBL-Mariner?
對于那些有興趣了解更多關(guān)于 CBL-Mariner 的人,他們應(yīng)該知道他們可以從 Ubuntu 或任何 Linux 發(fā)行版構(gòu)建自己的鏡像,首先你需要構(gòu)建ISO鏡像所需的先決條件:
- sudo apt install make tar wget curl rpm qemu-utils golang-go genisoimage python2-minimal bison gawk
現(xiàn)在就可以從CBL-Mariner 獲取代碼:
- git clone https://github.com/microsoft/CBL-Mariner.git
接著,進(jìn)入CBL-Mariner/toolkit 目錄并創(chuàng)建安裝 ISO 映像:
- cd CBL-Mariner/toolkit
- sudo make iso REBUILD_TOOLS=y REBUILD_PACKAGES=n CONFIG_FILE=./imageconfigs/full.json
最后,你就可以在../out/images/full/ 目錄中找到 ISO 文件。創(chuàng)建系統(tǒng)鏡像之后,可以在虛擬機(jī)上測試系統(tǒng),可以選擇使用VirtualBox、VMWare、Boxes等工具。
目前,CBL-Mariner已經(jīng)在Github上標(biāo)星1.5K,累計分支 128 個(Github地址:https://github.com/microsoft/CBL-Mariner)