Vad är Linux? Det operativsystem med öppen källkod som förändrar världen

Linux är ett beprövat operativsystem med öppen källkod som släpptes 1991 för datorer, men dess användning har utvidgats till att även ligga till grund för system för bilar, telefoner, webbservrar och, på senare tid, nätverksutrustning.

Dess livslängd, mognad och säkerhet gör det till ett av de mest betrodda operativsystemen som finns tillgängliga idag, vilket innebär att det är idealiskt för kommersiella nätverksenheter samt för företag som vill använda det och dess kringutrustning för att anpassa sin egen nätverks- och datacenterinfrastruktur.

Det i sin tur gör att Linuxkunskaper är mycket eftertraktade av chefer som rekryterar IT-personal. Till exempel är många av de nya tekniker som förknippas med DevOps, till exempel containrar, infrastruktur och SDN-kontroller, byggda på Linux.

Vad är Linux?

Linux är ett operativsystem som liknar – även om det, som vi kommer att se, inte härstammar direkt från – Unix. Liksom de flesta Unix-liknande operativsystem består Linux av flera komponenter.

Kärnan

Detta är systemets kärna och skickar instruktioner till processorn, kringutrustning och minnet.

Bootloader

Processerna som hanterar uppstarten av systemet. På en dator skulle användaren känna igen detta genom den splash screen som var uppe. På en nätverksenhet finns det en status som indikerar uppstartsprocessen.

Daemons

Bakgrundstjänster som startar vid uppstart eller efter att systemet är helt uppe. Nätverksdemonen aktiverar till exempel alla nätverksgränssnitt vid uppstart. Andra daemoner är saker som tid och DNS.

Shell

Detta är Linux kommandorad. Den kan vara skrämmande för personer som är vana vid att arbeta i grafiska miljöer, men de flesta nätverksexperter är vana vid att arbeta i ett skal.

Linux-kommandon

Kommandoradsgränssnittet (CLI) i skalet erbjuder ett antal kraftfulla funktioner – bland annat sådana som är avgörande för nätverks- och systemadministration – för expertanvändare som är bekanta med det textbaserade gränssnittet.

Linux skrivbordsmiljöer

Bortom skalet finns det ett antal skrivbordsmiljöer för Linux, som fungerar som de fönsterbaserade grafiska gränssnitt som är bekanta från Windows och macOS. Till skillnad från dessa operativsystem kan Linux utrustas med en av många skrivbordsmiljöer för att tillgodose användarens behov och smak.

Linux-pakethanterare och program

Men även om många program – särskilt de som styrs från kommandoraden – ingår i de flesta installationer av Linux-operativsystemet, kommer du självklart att vilja installera fler för att få den funktionalitet du behöver, och många av dessa program kommer att vara grafiska, GUI-baserade program som är mer bekanta än de som styrs från en CLI. I allmänhet använder du en pakethanterare, ett program som hämtar programvarupaket från fritt tillgängliga programvarubibliotek, för detta ändamål. Vissa nätverksprogram för Linux, t.ex. de som fokuserar på trafikanalys, säkerhet och nätverkshantering, har grafiska gränssnitt, men de är betydligt färre än de för servrar och stationära datorer.

Linus Torvalds och Linux historia

Som nämnts är Linux ett av de många operativsystem som faller under rubriken ”Unix-liknande”. Unix egen historia är extremt trasslig, men Linux ger visserligen mycket av känslan av Unix, men återanvänder faktiskt inte någon Unix-källkod.

Linux kan faktiskt betraktas som ett barnbarn till Unix. Dess omedelbara föregångare var MINIX, ett litet Unix-liknande operativsystem som skapades i slutet av 80-talet för att illustrera principerna för operativsystemdesign för studenter.

MINIX-koden var tillgänglig för utbildningsändamål men kunde inte återanvändas för kommersiella tillämpningar. År 1991 meddelade en 21-årig datavetenskapsstudent vid namn Linus Torvalds att han skulle skapa ett nytt operativsystem, inspirerat av MINIX men skrivet från grunden så att koden kunde släppas som öppen källkod under GNU GPL. Han kombinerade namnet MINIX med sitt eget namn och döpte det nya operativsystemet till Linux.

Linuxkärnan

Linuxkärnan är kärnan i operativsystemet. Den utgör också den viktigaste skillnaden mellan Linux och MINIX (vilket är något ironiskt, eftersom Torvalds hade anklagats för att ha stulit kod från MINIX för att skapa sitt operativsystem). Medan MINIX bygger på en mikrokärna som innehåller ett minimum av kod som krävs för att köra ett operativsystem, har Linux en monolitisk kärna, vilket innebär att funktioner som filsystemet, virtuellt minne och olika systemanrop äger rum i det privilegierade kärnutrymmet.

En av fördelarna med detta – som också är en av de viktigaste fördelarna med Linux som helhet – är att även om operativsystemet kan utvecklas med tiden, förblir gränssnittet mellan kärnan och användarutrymmet – den del av systemet där enskilda användares program körs – mycket stabilt, vilket innebär att en uppgradering av Linux inte tvingar dig att uppgradera dina program.

Linux community

Som nämnts är Linux kod öppen källkod – närmare bestämt släpps koden under den tillåtande GNU Public License. Det betyder:

  • Linux operativsystem kan laddas ner och installeras gratis.
  • Administratörer kan studera operativsystemet och anpassa det.
  • Det finns obegränsade rättigheter för vidaredistribution av de ursprungliga eller modifierade versionerna av operativsystemet.

En av de tydligaste signalerna på att Linux är ett gemenskapsbaserat projekt är att kärnan inte underhålls i hemlighet i ett företagslaboratorium utan snarare via en offentlig e-postlista, där alla förslag till uppdateringar och debatter om huruvida de ska antas i operativsystemet är tillgängliga för alla att se. Vem som helst kan ansluta sig till Linuxgemenskapen genom att delta i och bidra till denna e-postlista.

Torvalds leder listan som en inte särskilt välvillig diktator – han var ökänd för att släppa lös obscena utfall om kod som han fann särskilt problematisk – men på senare tid har han försökt att bättra sig lite.

Linuxgemenskapen sträcker sig dock långt bortom bara kärnan. Linux öppna natur innebär att det finns en stor grupp yrkesverksamma och entusiaster som aktivt deltar i arbetet med att hitta nya sätt att använda Linux. Containers har till exempel till stor del utvecklats tack vare gemenskapens engagemang.

Och att Linux är ett gemenskapsprojekt betyder inte att en Linuxbaserad plattform är en ”sämre” enhet. Linux har ett utmärkt ekosystem med mogna API:er samt en smidig nätverksstack som är optimerad för det moderniserade datacentret. Linux är till exempel utformat med separata kontroll- och dataforwardingsplan vilket gör det lätt att släppa in mjukvarudefinierade nätverksarkitekturer eftersom separeringen av dessa plan är grunden för SDN.

Linuxdistributioner

Eftersom Linux är en öppen källkod finns det ingen leverantör som säljer den; teoretiskt sett skulle du kunna ladda ner kärnan, en skrivbordsmiljö och olika andra verktyg och program och installera allt själv. I praktiken är dessa operativsystemskomponenter paketerade tillsammans i vad som kallas en distribution – i princip ett Linux-operativsystem som har justerats på ett visst sätt och som är redo att användas direkt ur lådan.

I teorin skulle vem som helst kunna sätta ihop en Linux-distribution, men de flesta erbjuds av företag och ideella organisationer. Kommersiella distributörer kan ta betalt för sin distribution eller erbjuda valfria betalda supporttjänster. Några av de mer kända Linuxdistributionerna är:

  • Ubuntu
  • SuSE
  • Debian
  • Red Hat
  • Fedora
  • Oracle Linux
  • CentOS
  • Arch Linux
  • Mandriva

Listan ändras ständigt; DistroWatch håller reda på de viktigaste aktörerna och bedömer för- och nackdelar med var och en av dem.

Linux vs. Windows

Tusenårsskiftet var en guldålder för kriget mellan Microsoft och Linux, med självgoda Linuxanvändare som var säkra på att deras valda operativsystem var överlägset på ideologiska såväl som tekniska grunder, och Microsoft som svarade lika passionerat. Många av de mest högljudda Linuxförespråkarna hävdade att den dag då Linux skulle bli det dominerande operativsystemet för skrivbordsmaskiner stod för dörren. Detta hände uppenbarligen aldrig. Som ett kommersiellt operativsystem för slutanvändare spred sig Linux aldrig längre än till en liten nisch, och den typen av strider är i stort sett förbi (även om det fortfarande finns folk som är villiga att ta upp kampen).

Men när det gäller Linux-servrar är det en annan historia. Linux ses allmänt som en viktig aktör på servermarknaden på samma nivå som Microsoft och andra leverantörer. Och på den mest lukrativa teknikmarknaden som vuxit fram under det här århundradet har Linux på sätt och vis fullständigt krossat Redmond. Mobiloperativsystemet Android är i grunden ett derivat av Linux, och Android är den främsta aktören på mobilmarknaden där Microsoft, trots upprepade försök, inte har lyckats få fotfäste.

Vad används Linux till?

På grund av sin flexibilitet har Linux hittat sin väg in i ett antal nischer, från inbyggda produkter till servrar för superdatorer. Under det senaste decenniet har det skett en explosion av antalet Linuxbaserade produkter som har haft en stor inverkan på IT-området, bland annat:

  • Kubernetes: Container cluster manager från Google
  • OpenStack: Programvaruplattform för molnplattform för infrastruktur som tjänst
  • Open Daylight: Linux Foundations java-baserade projekt för att påskynda införandet av SDN och Network Functions Virtualization (NFV)
  • Docker: Programvara för behållare
  • Open vSwitch (OVS): Distribuerad virtuell flerskiktsomkopplare för att tillhandahålla en omkopplingsstack inom virtualiseringsmiljöer. OVS är särskilt intressant eftersom det erbjuder en rikare uppsättning nätverksfunktioner än de grundläggande funktionerna i Linuxkärnan. Om OVS är ens måttligt framgångsrik kan det vara en utmärkt föregångare till vad som kommer att hända inom nätverksområdet.

Nätverksområdet har varit långsamt att ta till sig Linux, men ju mer nätverksberoende företagen blir, desto mer knuffas nätverks- och serverdomänerna samman. När nätverksingenjörer har tillgång till Linuxskalet kan de använda verktyg och programvara som tidigare endast fanns tillgängliga för servrar. Detta gör det mycket lättare att samordna nätverkstjänster med ändringar av servrar och program.

Varför är Linux så framgångsrikt i företag?

I sin tillbakablick på Linux inför dess 25-årsjubileum reflekterade InfoWorlds Paul Venezia över varför detta nya operativsystem, som utformades av hippies och idealister snarare än affärsmän, blev så framgångsrikt i företagsvärlden. Hans åsikt är att Linux hade två fördelar:

För det första är Linux anpassningsbart, med olika distributioner som anpassar det till nästan vilken datorplattform som helst.

För det andra är Linux billigt. Det var inte den kostnadsfria typen av Linux som företagen var intresserade av – de litade uppriktigt sagt inte på det kostnadsfria – men en billig kommersiell Linux med tillgänglig support var svår att tacka nej till. Och kanske ännu viktigare är att Linux kunde köras på vanlig hårdvara – de billiga x86-pc-boxar som de flesta företag redan hade i överflöd – i en tid då andra Unix-leverantörer som Sun använde sitt operativsystem för att kombinera det med sin avancerade hårdvara.

Dessa faktorer kommer att göra att Linux kommer att finnas kvar på företagen i många år framöver. Så oavsett om du är sysadmin eller nätverksadministratör kommer du att vilja bekanta dig med Linux.