När tekniken utvecklas varje dag, minskar det vårt beroende av manuella, analoga system. Men när vi gradvis övergår till en helt automatiserad, AI-centrerad värld där varje tid är tillgänglig för oss med en knapptryckning, måste företag som bygger dessa system se till att dessa system skalas elegant och är robusta.
Det är här Linux kommer in i bilden. För den genomsnittliga användaren ser det verkligen ut som att datorer domineras av Windows eller macOS eller Android och iOS. Ändå är det säkert att säga att de flesta "icke-Microsoft"-produkter och tjänster (och en del av deras egen infrastruktur) är starkt beroende av och bygger på den industriella styrkan hos Linux.
Eftersom de flesta av våra för närvarande använda tjänster förlitar sig så mycket på Linux, är det bara logiskt att du som teknikentusiast har en praktisk kunskap om operativsystemet och dess nyckelkomponenter. Anledningen är, om ett behov av felsökning skulle uppstå, litar du på ditt muskelminne istället för att försöka lista ut det. Du blir frustrerad vid tidpunkten för problemet (och tro mig, det kommer att vara en hel del frustration åtminstone under de första dagarna).
Nu är jag ganska säker på att om du har kommit till den här artikeln har du en hel del förståelse för vad Linux är och var dess rötter finns. Om inte kan du dock läsa våra inlägg Introduktion till operativsystemet Linux och Introduktion till Linux Kernel, vilket borde ge dig en kort uppfattning om Linux.
Den här serien kommer att bli helt praktisk och du kommer att behöva följa med på din maskin. Vi har strukturerat inlägget på ett sådant sätt att det är utförligt detaljerat samtidigt som det inte blir för överväldigande för nybörjare. Anse att den här serien är som motsvarigheten till "Linux for Dummies", med skillnaden att istället för att kasta in all kunskap på en gång. Vi kommer att dela upp i mindre meningsfulla bitar. Till skillnad från de flesta av de inlägg vi gör, skulle jag föreslå att du gör dig redo för att göra lite arbete (det bästa sättet att lära sig Linux skulle trots allt vara att smutsa ner händerna med dess nyanser). Innan vi ens börjar allt detta, låt mig ge dig en snabb liten primer om Linux och rensa ut några av missuppfattningarna om hur Linux är helt annorlunda än Unix. Det kommer inte att dröja för länge, jag lovar.
Linux Fundamentals: Hur skiljer det sig från Unix?
1. inception
- UNIX: Unix byggdes 1969 på Bell Labs. En av de mest erkända grundarna var Dennis Ritchie. Det skrevs i C och designades som ett bärbart operativsystem som är kapabelt till multi-tasking.
- Linux: Linux byggdes av Linux Torvalds och är starkt inspirerad av Minix (en Unix-liknande distribution). Det härstammar mycket från Unix men är ett helt annat system både inifrån och ut. Den ursprungliga kärnan släpptes 1991 och efter att ha lagt till saker som drivrutiner och ett GUI och lite välbehövlig polering, släpptes det fullfjädrade operativsystemet 1992.
2. Utveckling
- UNIX: Unix är inte nödvändigtvis ett helt öppen källkodsprojekt. Delar av det är det, men i dess etos är det ett proprietärt system. Det finns flera versioner av Unix, som BSD, macOS, etc. Den initiala utvecklingen görs av AT&T och ett par andra kommersiella leverantörer.
- Linux: Till skillnad från Unix trivs Linux i ett ekosystem med öppen källkod. Hela projektet finansieras och övervakas aktivt av Linux Foundation. Utvecklingen leds fortfarande av Linus som gör den sista uppmaningen om ett nytillskott. Men i princip alla med programmeringsbakgrund kan ladda ner källkoden fritt och göra ändringar.
3. arkitektur
- UNIX: Unix designades för att användas på RISC-system och Iranium-maskiner, men efter behov portades den senare för att fungera på x86- och x64-arkitekturer också.
- Linux: Linux byggdes i första hand för Intels x86-arkitektur, men från och med idag stöder den nästan alla större plattformar, som inkluderar ARM, ARM64, etc., tack vare dess aktiva utvecklingsgemenskap.
4. Kommandoradsgränssnitt
- UNIX: Började med stöd för Bourne skal. Stöder nu även Korn och C Shell.
- Linux: Linux använde främst BASH (Bourne Again Shell).
5. Pris
- UNIX: Vissa distributioner är gratis med betald support (som Solaris); andra är helt betalda.
- Linux: För det mesta gratis (inte redovisa företagsversioner med prioriterat stöd, etc.).
Okej, nu när vi har satt grunden för vad Linux är och hur det skiljer sig från Unix. Låt oss smutsa ner händerna, eller hur?
Konfigurera miljön: Hur man installerar Linux på en virtuell maskin?
Eftersom vi försöker rikta oss till en bred publik med det här inlägget, och det inte finns något krav på någon tidigare erfarenhet av Linux för att komma igång här, kommer jag att göra saker så enkelt som möjligt så att du snabbt kan komma ombord. När vi går vidare genom serien kommer vi att öka komplexiteten i inlägget stegvis så att du känner att du får lära dig något nytt för varje vecka som går. Samtidigt togs beslutet att göra detta till en veckoserie istället för något släppt på en gång. Så du får tillräckligt med tid att leka och prova saker på din utan övervakning. Det bästa sättet att lära sig något är att bryta det själv och bygga upp det igen.
För att lära dig hur man använder Linux måste du först köra Linux på ditt system. Det finns flera sätt på vilka du kan göra det, några av dem skulle vara att använda en Live USB och starta upp i den, installera den fysiskt på din maskin, skapa ett multiboot-system med två operativsystem, installera det på en virtuell dator (Virtual). Machine), och hyra en Linux-server och SSHing in i den. Jag är säker på att experterna skulle utöka den här listan med en massa fler alternativ, men för korthetens skull, låt oss gå med ovanstående. Medan slutresultatet av att använda alla ovanstående inställningar skulle vara att få tillgång till en konsol för att utfärda Linux-kommandon, varierar stegen för att komma dit med var och en i antal och svårighetsgrad.
Eftersom detta är ett pilotinlägg, kommer vi att gå med det förmodligen enklaste som inte kommer att skada din maskin eller nuvarande operativsystem på något sätt och ett som inte kräver erfarenhet av avancerade operationer som att partitionera en hårddisk eller konfigurera en Fjärrserver. Håller med, de är coola, men jag lovar att vi täcker det när du är bekant med grunderna.
Mitt enda antagande att gå vidare här skulle vara följande.
- Du äger en anständig dator (4 – 8 GB RAM, en relativt ny processor som Intel Core i3 åtminstone, minst 30 GB ledigt utrymme på SSD/HDD).
- Du är ansluten till en anständig internetanslutning (du skulle behöva det för att ladda ner ett par saker).
- Du kan de grundläggande sakerna som att installera ett applikationsprogram på Windows eller macOS (beroende på vad du använder).
Om du kan kryssa för allt ovan är du definitivt i ligan. Okej, för att komma igång behöver vi ett par saker (bokstavligen).
- En Linux-distribution (vi använder Ubuntu här).
- En Hypervisor (applikationen som låter oss installera ett sekundärt operativsystem ovanpå vårt huvudoperativsystem) kommer vi att använda Virtual Box.
Utmärkt nu när alla formaliteter är över, låt oss börja med det roliga!
Steg 1: Chef över till Ubuntu-webbplats och ladda ner Ubuntu 16.04.x LTS (vi använder detta bara av stabilitetsskäl, så att du inte får några onödiga fel på vägen).

När du är klar med nedladdningen bör du ha en . Iso fil på ditt system. Så här skulle det se ut.

Steg 2: Gå nu över till VirtualBox nedladdningssida och ladda ner VirtualBox 5.x plattformspaket baserat på vilket operativsystem du använder för närvarande. Om du använder Windows, till exempel, skaffa den första, som säger Windows-värdar.

Steg 3: Nu när du har båda de nödvändiga filerna är det bara att gå vidare och installera VirtualBox. Dubbelklicka bara på .exe or DMG filen som laddades ner och följ instruktionerna på skärmen. Se till att inte göra något anpassat där, bara acceptera standardinställningarna och slutför installationen.
När du är klar, gå vidare och starta VirtualBox. Din skärm bör nästan se ut som min som visas nedan minus listan över virtuella datorer som jag har (eftersom jag redan har använt Virtual Box har jag ett par virtuella datorer inställda, men din lista skulle vara tom).

Steg 4: Vi kommer nu att gå vidare och börja installera Ubuntu via VirtualBox. Klick Ny uppe till vänster i VirtualBox-fönstret. Du skulle få en dialogruta som ber dig att namnge operativsystemet. Skriv in Ubuntu i name, välj Typ as Linux och version as Ubuntu (64-bitars) och slå Fortsätta (Nyere versioner av Virtual Box kommer automatiskt att fylla i fältet Typ och Version baserat på vad du skrev i fältet Namn).

Steg 5: Nu kommer du att bli ombedd att ange mängden RAM som detta gäst-OS (Ubuntu) kommer att använda; standarden är 1 GB, vilket är tillräckligt bra, så låt det vara kvar och klicka på Fortsätta.

Steg 6: Här måste du ange vilken hårddisk som ska användas av operativsystemet. Ofta laddar folk upp förkonfigurerade installationer av sina virtuella box-instanser i form av något som kallas apparater. Apparater fungerar på ett plug and play-sätt.
Så du kan ladda ner apparaterna, koppla in den i den virtuella box-instansen, och du kommer att ha ett fullt fungerande operativsystem utan någon installation. (Tänk på det som att ha två hårddiskar med två operativsystem och bara byta ut dem minus besväret med att skruva loss din PC för detta).
Välj bara Skapa en virtuell hårddisk nu och fortsätt.

Steg 7: Här anger du typen som VDI, som ska vara standardalternativet och klicka Fortsätta.

Steg 8: Välj nu storlek. Det rekommenderas att ha en dynamiskt allokerad kör eftersom den skalas efter dina behov jämfört med alternativet med fast storlek, som kommer att tilldela hela beloppet på en gång oavsett om du skulle behöva det eller inte.

Välj nu storleken på hårddisken; detta kommer att se till att hårddisken aldrig överstiger den angivna mängden. Standard är åtta, men se till att du väljer 9 GB för att vara på den säkra sidan.


Nu när vi har gjort installationen, låt oss slå på vår maskin. Välj Ubuntu från listan till vänster och klicka på Start på menyraden i VirtualBox-fönstret. En dialogruta dyker genast upp som ber dig att infoga bilden för att starta Ubuntu från. Det är här Ubuntu-bilden som vi laddade ner tidigare kommer att behövas. Klicka på mappknapp (visas på bilden nedan) i dialogrutan och navigera och välj Ubuntu-bilden och klicka på Öppna. När det är bilden som visas i rullgardinsmenyn klickar du på Start.

Inom ett par sekunder kommer du att hälsas med installationsalternativen för Ubuntu, som visas nedan. Vi kan gå vidare och "Testa Ubuntu" utan att installera eller installera det. Låt oss göra det senare och klicka vidare Installera Ubuntu.


Återigen accepterar vi standardinställningarna och fortsätter. Avmarkera nedladdningsuppdateringarna medan du installerar alternativ och alternativen Installera programvara från tredje part och klicka på Fortsätt. Kontrollera sedan Radera disken och installera Ubuntu alternativ och klicka installera nu.
En dialogruta kommer att visas och ber dig bekräfta raderingsprocessen, klicka på Fortsätta.


Välj din plats i det här steget och klicka Fortsätt. Välj sedan din tangentbordslayout. Och som vanligt, klicka på Fortsätt. Nästa upp, ange ditt namn, användarnamn och gilla-markeringar i fälten.

Och nu väntar du. Ta dig en kaffe. Det kommer att dröja ett tag innan detta är klart.

När installationen är klar kommer du att bli ombedd att göra det Omstart, fortsätt och gör det, och när det är gjort kommer du att mötas av en inloggningsskärm för Ubuntu. Ange bara lösenordet och där har du konfigurerat din Ubuntu-installation.

Klappa dig själv på axeln. Nu när vi är redo med en Linux-distribution installerad, kommer vi att gå igenom några av de grundläggande Linux-kommandona.
Grundläggande Linux-kommandon
Starta terminalen på Ubuntu enligt följande:


När den väl har lanserats ska den se ut så här.

Okej, vi är redo att börja, bara så att du vet, de pågående skärmdumparna kommer inte att se ut som Ubuntu-terminalen, för för ökad synlighet kommer jag att använda en Linux-terminal på min server. Oroa dig inte för det; fokusera bara på kommandona och se om du får samma resultat som jag gör i skärmdumparna.
Eftersom det här är det allra första inlägget i vår praktiska serie, kommer vi att begränsa oss till grunderna för Linux-kommandon så att du inte blir överväldigad, samtidigt som du ser till att ditt intresse inte faller och du slutar. Kommandona vi kommer att täcka i det här inlägget kommer att delas in i fem olika kategorier; de är följande.
- Datum och tid
- Navigerar i filsystemet
- Skapa kataloger/mappar och ta bort dem
- Skapa och ta bort filer
- Hitta hjälp
Men innan vi går igenom det, låt oss göra ett ceremoniellt "Hello World"-test för vår terminal, eller hur? Okej, skriv sedan in följande kommando i terminalen.
echo "Hello World"
När du trycker på enter-tangenten visar din terminal Hej Världen hälsning. Detta startar inte bara vår lista med kommandon utan är också ett bra test för att kontrollera om allt fungerar som förväntat. De missar kommando kommer att visa en textrad som anges efter kommandona. Citattecken är valfria, men en konvention är att använda det med citattecken.

1. Datum och tid
Låt oss börja med ett mycket grundläggande kommando som är att kontrollera datum och tid via terminalen. Det passande namnet datum, kommandot visar datum och aktuell tid i 24-timmarsformat tillsammans med din tidszon. Vänligen skriv in följande i din terminal för att kontrollera det själv.
datum

2. Navigera i filsystemet
En viktig sak som vi som användare gör på ett OS är att flytta runt från en mapp till en annan. Så låt oss lära oss hur man gör det på terminalen med hjälp av en uppsättning kommandon avsedda för det ändamålet.
- pwd – Innan vi börjar hoppa runt från en mapp till en annan, låt oss lära oss hur vi tar reda på vilken mapp vi befinner oss i. Du kan göra det med hjälp av pwd kommando. Det står för Print Working Dkatalog. Skriv bara in kommandot enligt följande och kolla in resultatet.
pwd

- ls – Kommandot ls används i princip för att lista allt innehåll, dvs filer och mappar i en given katalog. Skriv bara följande i din terminal så kommer den att lista ut allt som finns där i din nuvarande katalog.
ls

Som standard listar ls bara filnamnen för att få information om varje fil du kan använda -l alternativ tillsammans med ls enligt följande.
ls-l

Som du kan se har detta alternativ tillsammans med ls skrivit ut en massa mer information om varje fil som inkluderar filläge, antal länkar, ägarens namn, gruppnamn, antal byte i filen, förkortad månad, månadsdagen filen ändrades senast, timfilen senast ändrades, minutfilen senast ändrades och sökvägen. Jag vet att det mesta kanske inte är vettigt just nu, men oroa dig inte. Allt du behöver veta just nu är att varje kommando kommer med en massa alternativ som du kan koppla in för att finjustera resultaten som returneras.
- cd – Nu när vi är bekanta med hur man listar filer och kontrollerar vår nuvarande katalog, låt oss gå igenom hur man växlar mellan kataloger. Kommandot cd står för Change Directory och används enligt följande. Om du är inne i en katalog och har fler kataloger i den, kan du gå in i en underkatalog enligt följande.
cd NAME_OF_DIRECTORY
ersätta NAME_OF_DIRECTORY i kommandot ovan med namnet på katalogen som du vill navigera till. Ett exempel visas nedan.
Som du kan se ändras den aktuella katalogen så fort vi går in i underkatalogen.

Nu när vi är i katalogen, hur går vi ut? Tja, du kan återigen använda ett alternativ tillsammans med cd för att gå ut ur underkatalogen och in i den överordnade katalogen. I mitt exempel är jag med ~/iOSProjects/100DaysOfSwift att gå tillbaka till ~/iOSProjects Jag kommer att använda följande kommando.
CD ..
Detta kommer att ta mig upp en nivå. Nu är jag i ~/iOSProjects katalog, som ses nedan.

Om jag ville gå från ~/iOSProjects/100DaysOfSwift ända upp till roten alltså ~ , skulle cd-kommandot vara strukturerat enligt följande.
CD ../..
Nivåerna för kapsling av kataloger kommer att avgöra antalet ../.. i dina alternativ.
3. Skapa och ta bort mappar/kataloger

En annan enkel uppgift som vi utför regelbundet är att skapa och ta bort mappar. Detta kan göras med följande två kommandon.
- mkdir - Kommandot mkdir står för Make Directory och det är ganska enkelt att använda. Skriv det bara enligt följande.
mkdir NAME_OF_DIRECTORY

Ersätt NAME_OF_DIRECTORY med det namn du vill ge din nya katalog. När du är klar kan du framgångsrikt navigera in i den som visas nedan.
- rmdir - Kommandot rmdir står för Remove Directory och det används för att ta bort kataloger/ta bort kataloger. För att radera en katalog måste du befinna dig utanför den / placerad en nivå ovanför den. När du väl är det ut ur katalogen och att katalogen är tom, skriv bara kommandot enligt följande.
rmdir NAME_OF_DIRECTORY
Ersätt NAME_OF_DIRECTORY med namnet på den katalog du vill radera. Kom ihåg att detta kommando bara fungerar om katalogen som ska raderas är tom.

4. Skapa och ta bort filer
Låt oss härnäst lära oss hur du skapar filer. Eftersom vi enbart fokuserar på terminalen här och inga andra applikationer, kanske du undrar hur du skulle gå tillväga för att skapa filer i olika format (txt, docx, etc) eller hur? Tja, här skulle vårt nästa kommando komma i bilden.
- Rör – Även om det officiella syftet med att använda touch är att ändra filåtkomst och filändringstider, kan den också användas för att skapa en ny fil. Den används enligt följande.
tryck på FILNAMN.EXTENTION
Ersätt FILNAMN och FÖRLÄNGNING med de du vill ha. Ett exempel på användning visas nedan. Om din terminal kör kommandot utan ett meddelande, var det troligen att kommandot lyckades och du kan kontrollera att filen skapades med ls kommando.

Nu när vi vet hur man skapar filer, kan vi lika gärna lära oss hur man tar bort dem eller hur? Nästa kommando hjälper dig att göra just det.
- rm – Kommandot rm står för Remove, och det gör vad namnet antyder, det används för att ta bort filer och kataloger. Den används enligt följande.
rm FILNAMN.EXTENSION
Ersätt FILNAMN och FÖRLÄNGNING med de du vill ha.
ANMÄRKNINGAR: Kommandot rm är oåterkalleligt, så se alltid till att du tar bort rätt filer. Ett säkrare sätt att göra det skulle vara att använda kommandot rm tillsammans med -i alternativ; Om du gör det kommer terminalen att be dig bekräfta om du vill radera filen eller inte. Den används enligt följande.
rm -i FILNAMN.EXTENSION

Vi skapade en fil, och vi tog bort den också, men hur är det med att redigera filer? Hur lägger man till och tar bort data? Tja, eftersom du är upphetsad över de aspekterna, lita på mig när jag säger det, det är lite för komplicerat och smidigt för att bli överväldigad om du börjar. Vi gör de minimala här, och allt eftersom vi går framåt med varje vecka, saker som att redigera filer från terminalen till inläggen. Under tiden, låt oss gå vidare.
5. Hitta hjälp
OK! Så vi gjorde en massa saker på terminalen. Vad händer om du har glömt vilka alternativ som ska användas med ett kommando eller vad ett kommando gör? Visst, du kan googla, men det finns ett bättre sätt där du inte ens behöver lämna terminalen.
Linux har ett kommando som heter man, som står för Manual Pages. Den används för att hämta dokumentation om ett visst kommando om du är osäker på ett kommando, hantera det på följande sätt.
man COMMAND_NAME
Ersätt fältet COMMAND_NAME med namnet på det faktiska kommandot, så kommer användbar dokumentation att presenteras. Du kan använda MELLANSLAG att bläddra och till sluta man -sidan tryck på q. Exempelanvändningen visas nedan.


Slutsats
Okej, gott folk, det här har tagit lång tid, men jag hoppas att ni förstod grunderna någorlunda väl. Nu när du har en fungerande Linux-installation och en veckas tid för att se till att du leker med kommandona jag nämnde ovan. Var inte rädd för att skruva upp Linux-installationen, och du kan alltid gå tillbaka och installera om den om det behövs. Utforska till ditt hjärta, så kommer jag tillbaka nästa vecka med del 2 av den här serien, där vi bygger vidare på Linux-grunderna som vi täckte i det här inlägget.
En liten sidoanteckning. Du behöver inte nödvändigtvis ha en anständig dator för att använda Linux. Det finns lätta Linux-distributioner som Lubuntu, som är avsedda att användas på lågprisdatorer. Lubuntu lyckades till och med köra felfritt på min gamla Pentium 4-maskin med 1 gig RAM.
Jag håller med men jag nämnde kraven med tanke på att detta inte är en inbyggd installation. Den kommer att installeras på en Hypervisor som i sin tur har vissa krav. Hoppas det klarnar det :)
Åh ja det är sant. VM:er behöver mer kraftfulla maskiner för att fungera effektivt. Jag syftade på inhemska installationer. Jag är dålig på att inte nämna det.
Jag vill ta den här kursen för att bättre förstå Linux. Men jag kör Linux Mint 17.3 rosa och kunde inte hitta en lämplig VirtualBox-nedladdning. Några förslag?
Om du redan använder Linux Mint behöver du inte installera VirtualBox, följ handledningen och lär dig Linux-kommandon :)
Tack. Jag kommer att göra.