Microsoft har offentliggjort den første stabile opdatering af den nye gren af distributionen CBL-Mariner 2.0 (Common Base Linux Mariner), som udvikles som en universel basisplatform for Linux-miljøer, der anvendes i cloud-infrastrukturer, edge-systemer og forskellige Microsoft-tjenester. Projektet har til formål at ensrette de Linux-løsninger, der anvendes i Microsoft, og forsimple vedligeholdelsen af Linux-systemer til forskellige formål. Projektets resultater distribueres under MIT-licensen. Pakkeopbygninger laves til arkitekturerne aarch64 og x86_64.
Den nye udgivelse er bemærkelsesværdig med en betydelig opdatering af programversioner. Blandt andet er Linux-kernen blevet opdateret til version 5.15 (i gren 1.0 blev kernel 5.4 anvendt), systemd 250, glibc 2.35, GCC 11.2, clang 12, Python 3.9, ruby 3.1.2, rpm 4.17, qemu 6.1, perl 5.34, ostree 2022.1. Basislageret inkluderer komponenter til opbygning af grafiske grænseflader, såsom Wayland 1.20, Mesa 21.0, GTK 3.24 og X.Org Server 1.20.10, som tidligere blev leveret i et separat coreui-lager. Der er tilføjet kernesamlinger med PREEMPT_RT patches til brug i systemer, der arbejder i realtid.
CBL-Mariner-distributionen tilbyder et lille standardudvalg af grundpakker, der fungerer som en universel base for opbygning af container-inhold, værtsmiljøer og tjenester, der kører i cloud-infrastrukturer og på edge-enheder. Mere komplekse og specialiserede løsninger kan skabes ved at tilføje ekstra pakker oven på CBL-Mariner, men basen for alle sådanne systemer forbliver uændret, hvilket forenkler vedligeholdelsen og forberedelsen af opdateringer. For eksempel anvendes CBL-Mariner som grundlag for minidistributionen WSLg, der leverer komponenter til den grafiske stak for kørsel af GUI-applikationer i Linux-miljøer baseret på WSL2 (Windows Subsystem for Linux). Den udvidede funktionalitet i WSLg implementeres ved at inkludere ekstra pakker med serveren Weston, XWayland, PulseAudio og FreeRDP.
CBL-Mariner byggeværktøj gør det muligt at generere både individuelle RPM-pakker baseret på SPEC-filer og kildekoder, samt monolitiske systembilleder, der dannes ved hjælp af rpm-ostree-værktøjet og opdateres atomisk uden opdeling i separate pakker. Dette understøtter to leveringsmodeller for opdateringer: gennem opdatering af individuelle pakker og gennem ombygning og opdatering af hele systembilledet. Et repository er tilgængeligt, som indeholder cirka 3000 allerede samlede RPM-pakker, der kan bruges til at sammensætte egne billeder baseret på konfigurationsfilen.
Distributionen inkluderer kun de mest nødvendige komponenter og er optimeret til minimalt forbrug af hukommelse og diskplads, samt for høj opstartshastighed. Distributionen er også bemærkelsesværdig ved at inkludere forskellige ekstra mekanismer til at forbedre sikkerheden. I projektet anvendes en tilgang med 'maksimal sikkerhed som standard'. Det er muligt at filtrere systemopkald ved hjælp af seccomp-mekanismen, kryptering af diskpartitioner og verifikation af pakker via digitale signaturer.
De understøttede randomiseringsmetoder i Linux-kernen er aktiveret, samt mekanismer til beskyttelse mod angreb relateret til symboliske links, mmap, /dev/mem og /dev/kmem. For hukommelsesområder, hvor kerne- og moduldatasegmenter er placeret, er der indstillet skrivebeskyttelse, og udførelse af kode er forbudt. Der er mulighed for at forhindre indlæsning af kernemoduler efter systeminitialisering. Til filtrering af netværkspakker anvendes værktøjet iptables. Beskyttelsesmetoder mod stack-overflow, buffer-overflows og formatproblemer (_FORTIFY_SOURCE, -fstack-protector, -Wformat-security, relro) er som standard aktiveret under bygningsprocessen.
Systemd bruges til at administrere tjenester og belastning. Pakkehåndterere RPM og DNF leveres til pakkehåndtering. SSH-serveren er ikke aktiveret som standard. Installationsprogrammet til distributionen tilbydes, som kan køre i både tekst- og grafiske tilstande. Installationsprogrammet giver mulighed for installation med et fuldt eller grundlæggende sæt pakker, tilbyder en grænseflade til at vælge diskpartition, vælge værtsnavn og oprette brugere.
Kilde: opennet.ru
