Linux distro review: Intel’s own Clear Linux OS – Ars Technica Linux distro review: Intel’s egen Clear Linux OS

Intels Clear Linux-distribution har fått en hel del uppmärksamhet den senaste tiden, på grund av sin osannolikt höga benchmarkprestanda. Även om distributionen skapades och förvaltas av Intel rekommenderar till och med AMD att man kör benchmarks av sina nya CPU:er under Clear Linux för att få de högsta poängen.

För en kort tid sedan testade Michael Larabel på Phoronix ett Threadripper 3990X-system med nio olika Linux-distributioner, varav en var Clear Linux – och Intels distribution fick tre gånger så många förstaplatser som någon annan testad distro. När Larabel försökte sammanställa alla testresultat till ett enda geometriskt medelvärde fann han att distributionens resultat i genomsnitt var 14 % snabbare än de långsammaste distributioner som testades (CentOS 8 och Ubuntu 18.04.3).

Se mer

Det råder ingen större tvekan om att Clear Linux är det bästa alternativet om du vill visa upp bästa möjliga benchmarksiffror. Frågan som inte tas upp här är hur det är att köra Clear Linux som daglig förare. Vi var nyfikna, så vi provkörde det.

Installation av Clear Linux

Installationen är i stort sett densamma för Clear Linux som för vilket annat operativsystem som helst – ladda ner ISO-filen, dumpa den till ett USB-minne, starta upp och kör. Det finns två versioner av installationsprogrammet: en ”server” som endast är i textläge och en ”desktop” som använder en fullfjädrad skrivbordsmiljö. Vi valde skrivbordet. På riktig hårdvara gav Clear oss inga problem och installerades omedelbart – men i en KVM-miljö vägrade det till en början att installera, med ett mindre hjälpsamt felmeddelande ”failed to pass pre-install checks”.

En liten sökning på nätet avslöjade det faktum att även om Clear Linux’ skrivbordsmiljö startar upp i BIOS-läge, så kräver det egentliga operativsystemet UEFI. I vår virtualiseringsmiljö – Linux KVM, under Ubuntu 19.10 – har nya virtuella maskiner som standard BIOS-läge om du inte markerar ”Customize configuration before install” (Anpassa konfigurationen före installation) i det sista steget och sedan i fliken Overview (Översikt) ändrar från BIOS till UEFI. Så vi blåste bort den virtuella maskinen, återskapade den med lämplig UEFI-firmware och sedan var vi igång.

När vi väl hade rett ut den virtuella maskinens firmware-arkitektur var det lika enkelt att installera Clear Linux i en virtuell maskin som på riktig hårdvara – riktig hårdvara med UEFI-firmware, alltså. Om du hoppades kunna installera Clear Linux på äldre maskinvara som endast stöder BIOS-läge har du ingen tur.

Installeringsprogrammet är tydligt och okomplicerat. Du måste välja ett språk (för närvarande från en mycket begränsad lista), ett installationsmål och ge installationsprogrammet användarnamn och lösenord för det nya operativsystemet. Du måste också låta den veta om du vill ha eller inte vill ha telefon- och hemtelemetri som används för kvalitetssäkring och utveckling.

När du ställer in ett installationsmål erbjuder Clear Linux antingen en ”säker” installation eller en ”destruktiv” installation. Vi testade inte den säkra installationen, utan valde istället att installera Clear Linux som det enda tillgängliga operativsystemet.

När du väl har valt dina alternativ bör Clear inte ta mer än några minuter totalt för att faktiskt installera – men om du går därifrån och återvänder är det värt att inse att skärmsläckningslåset kan komma att sparka in på dig. (Om du inte är van vid Gnome3 kan du klicka och dra uppåt för att avlägsna låsskärmen.)

Påföljande installation: GIMP race

För det mesta verkade det inte vara någon större mening med att göra traditionella prestandabänkningar på Clear Linux. Phoronix har redan gjort många sådana – och ja, utan tvekan är Clear Linux i genomsnitt snabbare än de flesta distributioner. Men att vinna benchmarks är inte nödvändigtvis samma sak som att känna sig snabb.

Och utan en referenspunkt för jämförelse – en övervakad och tickande timer eller en tävling ansikte mot ansikte – kommer de flesta människor inte att märka mindre än 33 % skillnad i tiden för att slutföra en välbekant uppgift. En typisk observatör – en som inte faktiskt tar tid på saker och ting – som ställs inför en timslång uppgift som är klar på 40 minuter kommer att tänka ”hej, det verkade snabbt”. Samma observatör, som väntar på att en uppgift på en sekund ska slutföras, kommer i allmänhet att börja rynka pannan runt 1300 ms.

Annons

Vi bör också påpeka att majoriteten av Phoronix benchmarks fokuserar på långvariga beräknings- eller lagringsuppgifter. Denna typ av benchmark korrelerar bättre med förändringar i hårdvara än med förändringar i mjukvara på distributionsnivå. Det vill säga, även om Clear Linux är snabbare på en uppgift som är relevant för skrivbordsprestanda, kan skillnaden lätt överskuggas av skillnader i själva skrivbordet – eller det specifika programpaketet.

När jag installerade och öppnade GIMP i en virtuell maskin i Clear Linux tänkte jag ”det känns snabbt” – men jag förväntade mig att det skulle kännas snabbt. För att testa min första uppfattning öppnade jag också GIMP på min Ubuntu 19.04-arbetsstation själv och räknade Mississippi – det visade sig att Ubuntus skrivbord faktiskt var dubbelt så snabbt som Clear-skrivbordet. Så mycket för mänsklig uppfattning? Kanske inte – jag arbetar mycket med virtuella maskiner, så kanske hade jag undermedvetet jämfört Clear VM med en Ubuntu VM, inte med Ubuntu på värdarbetsstationen.

För att testa den teorin tog jag upp en Ubuntu 18.04.4 VM och en Clear Linux VM sida vid sida, var och en med fyra vCPU:er och 4 GB RAM tilldelade. Sedan installerade och konfigurerade jag NTP-daemon på båda VM:erna för att få deras klockor att ligga inom en millisekund från varandra och installerade mitt eget verktyg för schemaläggning Whenits. När allt detta var gjort var resultaten av en ”GIMP-race” sida vid sida inte annorlunda – trots att båda hade samma resurser tilldelade till var och en ”vann” den virtuella maskinen Ubuntu 18.04 ändå överlägset.

Reklam

Vid ytterligare undersökningar märkte jag att Ubuntu 18.04 använder en äldre version av GIMP än vad Clear gör. Så jag avinstallerade det systemlevererade GIMP 2.08 från Ubuntu VM och installerade den senaste 2.10.14 – samma version som Clear använder – från en PPA. Resultatet förändrades inte nämnvärt – GIMP öppnades fortfarande snabbare i Ubuntu VM, och du kan se resultaten sida vid sida av den slutliga ”tävlingen” i det korta videoklippet ovan.

Inget av detta ska tas som ett slutgiltigt riktmärke som gör Clear Linux till ”långsam”. Men det visar hur falsk den mänskliga uppfattningen är och gränserna för hur stor inverkan en ”snabb” distro verkligen kan ha på den normala, dagliga driften av ett skrivbordssystem. Bortsett från uppstart kändes Clear Linux inte märkbart snabbare än Ubuntu vid allmän användning – varken i virtuella maskiner på min Ryzen 3700X-arbetsstation eller på en i7-6500U-driven Dell Latitude som jag installerade den direkt på.

Om du är den sortens person som blir riktigt entusiastisk över kompilatoroptimeringar i Gentoo- eller Arch-paketet – eller om du har en mycket specifik uppgift som du är ivrig att potentiellt påskynda med 15 % eller så – kan Clear mycket väl vara något för dig. Men om du förväntar dig den typ av kick-in-the-pants-hastighetsökning som dina vänner omedelbart kommer att märka och dregla över, kommer du förmodligen att bli besviken.

Installation av mjukvara

Ubuntu 19.10 och Clear Linux använder båda Gnome Software Center som ett grafiskt gränssnitt för installation och borttagning av mjukvara. Den mest omedelbart uppenbara skillnaden här är Canonicals ansträngningar för att få förråden i deras version av Software Center att kännas mer kuraterade och omhändertagna – Ubuntus Software Center har framträdande Editor’s Picks och presenterade program som Clear Linux inte har.

Mässigt viktigare är att Canonical har mycket djupare förråd under sig än vad Clear har – och det kan ha en påverkan även när båda distributionerna erbjuder ett visst program. Till exempel finns spelet Frozen Bubble tillgängligt i Software Center på båda distributionerna – men på Clear kommer det som en flatpak från tredjepartskällan dl.flathub.org.

Reklam

På Ubuntu kommer Frozen Bubble från Canonicals eget Universe-repositorium istället för från en tredjepartskälla. Det kanske inte låter som om det spelar någon roll – men att installera spelet på Ubuntu från Canonicals eget arkiv tog bara några sekunder, medan det tog nästan tio minuter att installera på Clear.

Kommer det Chrome?

Varken Clear Linux eller Ubuntu innehåller webbläsaren Google Chrome – men på Ubuntu är installationen lika okomplicerad som på Windows: en sökning, en nedladdning, ett klick, och du är klar. Den faktiska nedladdningen du får är en Ubuntu-inhemskt installerad .deb-fil, och förutom att den installerar själva webbläsaren uppdaterar den automatiskt din arkivlista – så från och med nu kommer Chrome att uppdateras automatiskt av Ubuntu, på samma sätt och med samma verktyg som de vanliga systemuppdateringarna.

Bläddrar du till Chrome-nedladdningssidan i Clear Linux inhemskt installerade Firefox får du samma val mellan .deb- och .rpm-nedladdning – men ingen av dem kommer att ”bara fungera”. Det finns ett litet knep du kan göra på Clear Linux kommandorad för att ladda ner .rpm-filen, extrahera och installera den och sedan göra en manuell omkonfigurering för att teckensnitten inte ska se konstiga ut.

Reklam

Tyvärr uppdateras Chrome inte automatiskt på samma sätt som på Ubuntu eller de flesta andra skrivbordsdistributioner – du måste i stället komma ihåg att uppdatera den själv och gå igenom samma få steg på kommandoraden (inklusive omkonfigurering av teckensnitten) varje gång du gör det.

Pakethantering

Förvisso kommer mer avancerade användare troligen aldrig att bry sig om Software Center i första hand, oavsett distribution. Ubuntu, som är en Debianbaserad distribution, använder .deb-paket under huven, som kan installeras, uppdateras, tas bort och sökas med hjälp av kommandoradsverktyget apt. Clear Linux använder inte apt – eller yum, zypper, pacman, pkg eller något annat som du förmodligen har hört talas om. Istället använder den sitt eget kommandoradsverktyg för pakethantering som heter swupd.

För det mesta fungerar swupd som vilken annan pakethanterare som helst – det finns ett argument för att installera paket, ett annat par för att söka i dem antingen efter paketnamn/beskrivning eller efter inkluderade filer, och så vidare. Tyvärr måste jag erkänna att jag fann swupd konsekvent frustrerande – i synnerhet är argumenten utförliga och konstigt formulerade.

Annonsering

I Debian, Ubuntu, Fedora, OpenSUSE, CentOS eller FreeBSD skulle du <packagemanager> install <package> installera en ny app från repositories – till exempel apt install gimp. Men i swupd gör du swupd bundle-add <package> istället. På samma sätt bundle-remove, bundle-list, bundle-info och så vidare.

Detta kan låta som en liten och obetydlig skillnad, men jag tyckte att den var ganska obehaglig. Jag fumlade med syntaxen – till exempel skrev jag av misstag add-bundle istället för bundle-add – betydligt oftare än vad jag normalt gör när jag använder en okänd pakethanterare.

Paketet i sig självt bryter också ganska ofta mot relativt standardiserade namngivningskonventioner. När jag till exempel upptäckte att jag behövde en viss uppsättning headers som Ubuntu har i uuid-dev och Fedora har i libuuid-devel, hade Clear Linux dem istället i os-core-dev – och det var ett enormt besvär att ta reda på det. Att försöka med swupd search uuid visade inte os-core-dev-paketet överhuvudtaget – och inte heller att söka efter den faktiska filen jag behövde, med swupd search-file uuid.h. (Mer om detta senare.)

Annonsering

Och även om swupd fungerar, känns det väldigt mycket som ett resultat av NIH-syndromet. Intel hävdar att mycket av Clear Linux hemliga sås ligger i förpackningen, och kanske behövde man verkligen bygga ett eget hanteringsverktyg från grunden. Men från den här systemadministratörens perspektiv är det svårt att se fördelarna och lätt att se vårtorna – lite mer arbete med swupds polering och användbarhet skulle räcka långt.

Kommer det ZFS?

Inte alla kommer att bry sig om huruvida du kan få OpenZFS att fungera på Clear Linux. Men jag brydde mig verkligen, och jag spenderade löjligt mycket tid på att jaga just den här draken. Jag funderade allvarligt på att lägga sten på min huvudsakliga bärbara dator och installera om den med Clear Linux för en långsiktig testkörning – men även på ”bara en bärbar dator” ville jag inte avstå från ZFS förmåga att snabbt asynkront replikera, kryptografiskt upptäcka och reparera bitrot, använda inline-komprimering och så vidare och så vidare.

OpenZFS-projektet självt har inga installationsanvisningar för Clear Linux, och en swupd search zfs gav inget resultat, så jag slog mig ner på Internet. När man söker på ”Clear Linux ZFS” kommer man snabbt till Clear’s FAQ, där det står ”ZFS is not available with Clear Linux OS” och man erbjuder btrfs som ett alternativ.

Btrfs erbjuder de flesta av samma funktioner som ZFS – men tyvärr, om man faktiskt använder de mest intressanta av dessa funktioner, som till exempel redundanta matriser med dataläkning, snabb replikering eller inline-komprimering, så blir det snabbt opålitligt. (Ja, verkligen – kommersiella NAS-enheter som Synology och Netgears ReadyNAS använder btrfs, men de lägger det ovanpå LVM och mdraid, och det gör de av goda skäl. Se Debians wiki för mer information och notera Red Hats beslut att avskaffa btrfs helt och hållet i RHEL 7.4.)

Annonsering

Clear Linux FAQ pekar oss också på ett äldre Github-ärende där en användare begär en ZFS-paketlösning och blir nedskjuten. En annan användare ber om hjälp med att få osignerade kärnmoduler att fungera och får en hänvisning till viss dokumentation via en numera död länk. Jag hittade en kopia av den döda dokumentationen på web.archive.org (och senare tillhandahöll en medlem av Clear Linux-projektet en uppdaterad länk till den aktuella versionen), men det ledde inte heller dit jag behövde komma.

Installation av linux-lts-dev-paketet var okomplicerad, liksom skapandet av en konfigurationsfil för kärnan som skulle tillåta att osignerade moduler laddas. Men att byta tillbaka till LTS-kärnan – vilket var nödvändigt eftersom den ursprungliga kärnan var lite för bleeding-edge för officiellt stöd från OpenZFS – visade sig vara knepigare. Att installera kärnan var enkelt-swupd bundle-add kernel-lts2018-men att få Clear Linux att faktiskt starta från den var lite av en mardröm.

Verktyget clr-boot-manager ser ganska okomplicerat ut - men alla alternativ fungerade inte.
Förstora / Verktyget clr-boot-manager ser ganska okomplicerat ut – men alla alternativ fungerade inte.
Jim Salter

Distributionen behåller inte konfigurationen för starthanteringen på något av de ställen där en erfaren *nix-användare skulle kunna leta efter dem –/boot, /etc/default, något som har med grub att göra, etc. Jag hittade aldrig den faktiska platsen för konfigurationsdata, men upptäckte så småningom att en Clear Linux-användare förväntas manipulera startmiljön med verktyget clr-boot-manager. Tyvärr gjorde clr-boot-manager set-kernel org.clearlinux.lts2018.4.19.103-113 följt av clr-boot-manager update – som skulle ha valt den kärnan för användning vid nästa uppstart – absolut ingenting, och jag snurrade på saker och ting, startade om, körde uname -a och såg fortfarande en 5.5-kärna som kördes under en längre tid.

Till slut gav jag upp clr-boot-manager set-kernel och försökte i stället med clr-boot-manager set-timeout 10. Det fungerade faktiskt – efter omstart den här gången fick jag se en kernel-lista och valde manuellt 4.19 LTS-kärnan. Nu visade uname -a att jag körde på 4.19-kärnan och jag var redo att kompilera ZFS!

Annonsering

Problemen var tyvärr långt ifrån över. När jag hämtade och extraherade OpenZFS source tarball, chdirgick in i den och körde ./configure, fick jag ett fel: uuid/uuid.h missing, libuuid-devel package required. Tyvärr finns det inget libuuid-devel-bundle i swupd – inte heller finns det libuuid, uuid, uuid-dev, uuid-devel eller något annat i den stilen. Varken swupd search uuid eller swupd search-file uuid.h gav några användbara resultat heller – även om de borde ha gjort det.

Till sist öppnade jag ett nytt ärende i ZFS on Linux tracker, i hopp om att någon annan hade fått ZFS att fungera på Clear eller att jag kunde få tillräckligt med information om configure-skriptet för att försöka fixa det själv. Brian Behlendorf – grundande utvecklare av Linux-anpassningen av OpenZFS och en i alla avseenden trevlig kille – hade inte heller något svar.

Men Brian gav mig en ledtråd som slutligen löste pusslet – även om swupd search-file uuid.h inte hittade paketet jag behövde, så gjorde swupd search-file libuuid.so.1 det. Så en swupd bundle-add os-core-dev senare/configure och make install, båda slutfördes framgångsrikt!

Reklam

Det återstående problemet som jag stötte på var att det enkla kommandot insmod för manipulation av Linux Kernel Module (LKM) – som gör det möjligt för dig att ange en sökväg till modulen som ska infogas i kärnan – inte löser upp beroenden och därför misslyckades insmod /path/to/zfs.ko med felet unknown symbol. Det mycket smartare verktyget modprobe upptäcker och löser beroendeproblem – men det låter dig inte ange sökvägen till kärnmoduler, och installationsprogrammet hade dumpat dem på ställen där modprobe inte visste att han skulle leta.

Efter lite fumlande dumpade jag så småningom bara en symlänk till var och en av ZFS’ package.ko-filer – som låg i enskilda kataloger under /lib/modules/extra – direkt i /lib/modules själv. Därmed fungerade modprobe zfs och jag hade faktiskt ZFS igång på Clear Linux. Huzzah!

Och även om ZFS fungerade nu fanns det fortfarande papperskorten att ta itu med. Kommandona zpool och zfs fanns i /usr/local/sbin, som inte ingår i standard PATH i Clear Linux. Dessutom var ZFS-modulen inte inställd på att laddas automatiskt vid uppstart. Dessa återstående problem är lyckligtvis ganska triviala att lösa. För att åtgärda sökvägsproblemet kan du antingen uppdatera din PATH så att den innehåller /usr/local/sbin eller symlänka verktygen där till /usr/local/bin. För att få ZFS att autoload vid uppstart skapar du en katalog /etc/modules-load.d, skapar sedan en fil /etc/modules-load.d/zfs.conf och fyller den med en enda rad som bara säger zfs.

Annonsering

Denna shaggy dog-historia handlar egentligen inte om ZFS i sig självt – den handlar om det faktum att problem som är relativt enkla under mer välkända distributioner kan vara en jättelik plåga i baken under Clear Linux. Den här typen av problem kan naturligtvis lösas, men om du inte är villig och intresserad av att vara en del av arbetet med att lösa dem själv eller för dem som kommer efter dig, bör du förmodligen undvika Clear som en daglig drivrutin.

Det goda

  • Clear Linux stöds av Intel, ett av världens största och främsta företag inom datavetenskap
  • Clear Linux har ett kortfattat och tydligt mandat: Var säker, var snabb, gör saker rätt
  • De flesta saker fungerar med lite eller ingen justering
  • Om du är fast besluten att ha The Fastest Linux In The West, är detta distro för det – tyvärr, Arch- och Gentoo-användare
  • ”Det här är Linux! Jag kan det här!”

Det dåliga

  • Och även om de flesta saker fungerar utan att justeras kommer de flesta användare snabbt att vilja ha något som inte gör det
  • Intels swupd pakethanteringsverktyg är klumpigt, vårtigt och tycks inte indexera alla paket på rätt sätt
  • Det finns så få användare att det kan kännas som en tidsresa till det förflutna om man söker efter hjälp (Vem var du, DenverCoder9? Vad såg du?!)

Det fula

  • Clear Linux – åtminstone för tillfället – lämpar sig mycket bättre för en enkel uppsättning repetitiva uppgifter där exekveringshastigheten är absolut kritisk än för en bred och allmän daglig användning

.

Lämna en kommentar