Naarmate de technologie elke dag vordert, vermindert het onze afhankelijkheid van handmatige, analoge systemen. Maar naarmate we geleidelijk overgaan naar een volledig geautomatiseerde, op AI gerichte wereld waar elke tijd met een druk op de knop voor ons beschikbaar is, moeten bedrijven die deze systemen bouwen ervoor zorgen dat deze systemen gracieus en robuust kunnen schalen.
Dit is waar Linux in beeld komt. Voor de gemiddelde gebruiker lijkt het erop dat computergebruik wordt gedomineerd door Windows of macOS of Android en iOS. Toch kunnen we gerust stellen dat de meeste "niet-Microsoft"-producten en -diensten (en een deel van hun eigen infrastructuur) zwaar afhankelijk zijn van en gebouwd zijn op de industriële kracht van Linux.
Aangezien de meeste van onze momenteel gebruikte services zo sterk afhankelijk zijn van Linux, is het alleen maar logisch dat u, als tech-enthousiasteling, praktische kennis hebt van het besturingssysteem en de belangrijkste componenten ervan. De reden hiervoor is dat als er een probleem moet worden opgelost, u op uw spiergeheugen vertrouwt in plaats van te proberen het uit te zoeken. Je raakt gefrustreerd op het moment dat het probleem zich voordoet (en geloof me, er zal in ieder geval de eerste paar dagen behoorlijk wat frustratie bij komen kijken).
Nu ben ik er vrij zeker van dat als je naar dit artikel bent gekomen, je een aardig beetje begrip hebt van wat Linux is en waar zijn wortels liggen. Zo niet, dan kun je onze berichten lezen Inleiding tot het Linux-besturingssysteem en Inleiding tot de Linux-kernel, wat u een kort idee van Linux zou moeten geven.
Deze serie wordt volledig hands-on en u moet uw machine volgen. We hebben het bericht zo gestructureerd dat het uitgebreid gedetailleerd is en niet te overweldigend wordt voor beginners. Beschouw deze serie als het equivalent van "Linux voor Dummies", met het verschil dat in plaats van alle kennis in één keer te gooien. We verdelen het in kleinere, betekenisvolle stukken. In tegenstelling tot de meeste posts die we doen, raad ik je aan om je klaar te maken voor wat werk (de beste manier om Linux te leren is tenslotte om je handen vuil te maken met zijn nuances). Voordat we daar zelfs maar aan beginnen, wil ik je een korte inleiding geven over Linux en enkele misvattingen uit de weg ruimen over hoe Linux compleet anders is dan Unix. Het zal niet te lang duren, dat beloof ik.
Linux Fundamentals: wat is het verschil met Unix?
1. begin
- UNIX: Unix werd in 1969 gebouwd bij Bell Labs. Een van de meest erkende stichtende leden was Dennis Ritchie. Het is geschreven in C en is ontworpen als een draagbaar besturingssysteem dat in staat is tot multitasking.
- Linux: Linux is gebouwd door Linux Torvalds en is sterk geïnspireerd door MINIX (een Unix-achtige distributie). Het ontleent veel dingen aan Unix, maar is zowel van binnen als van buiten een compleet ander systeem. De originele kernel werd uitgebracht in 1991 en na toevoeging van zaken als stuurprogramma's en een GUI en wat broodnodige glans, werd het volwaardige besturingssysteem in 1992 uitgebracht.
2. Ontwikkeling
- UNIX: Unix is niet per se een volledig open source project. Delen ervan zijn dat wel, maar in zijn ethos is het een eigen systeem. Er zijn verschillende versies van Unix, zoals BSD, macOS, enz. De initiële ontwikkeling wordt gedaan door AT&T en een aantal andere commerciële leveranciers.
- Linux: In tegenstelling tot Unix gedijt Linux in een open-source ecosysteem. Het hele project wordt actief gefinancierd en gecontroleerd door de Linux Foundation. De ontwikkeling wordt nog steeds begeleid door Linus, die de laatste hand legt aan een nieuwe aanwinst. Maar in wezen kan iedereen met een programmeerachtergrond de broncode vrij downloaden en wijzigingen aanbrengen.
3. architectuur
- UNIX: Unix is ontworpen om te worden gebruikt op RISC-systemen en Iranium-machines, maar volgens de behoeften werd het later geport om ook op x86- en x64-architecturen te werken.
- Linux: Linux is in de eerste plaats gebouwd voor Intel's x86-architectuur, maar vanaf vandaag ondersteunt het bijna alle belangrijke platforms, waaronder ARM, ARM64, enz., dankzij de actieve ontwikkelingsgemeenschap.
4. Opdrachtregelinterface
- UNIX: Begonnen met ondersteuning voor de Bourne schelp. Ondersteunt nu ook Korn en C Shell.
- Linux: Linux gebruikte voornamelijk BASH (Bourne Again Shell).
5. Prijs
- UNIX: Sommige distributies zijn gratis met betaalde ondersteuning (zoals Solaris); anderen worden volledig betaald.
- Linux: Voor het grootste deel gratis (exclusief de enterprise-versies met prioriteitsondersteuning, enz.).
Oké, nu we de basis hebben gelegd voor wat Linux is en hoe het verschilt van Unix. Laten we onze handen vuil maken, zullen we?
De omgeving instellen: hoe installeer ik Linux op een virtuele machine?
Aangezien we ons met dit bericht op een breed publiek proberen te richten, en er geen voorafgaande ervaring met Linux vereist is om hier aan de slag te gaan, ga ik het zo gemakkelijk mogelijk maken, zodat u snel aan boord kunt gaan. Naarmate we verder komen in de serie, zullen we de complexiteit van de post steeds hoger maken, zodat je voelt dat je elke week iets nieuws leert. Tegelijkertijd werd de beslissing genomen om er een wekelijkse serie van te maken in plaats van iets dat in één keer werd uitgebracht. Je krijgt dus genoeg tijd om te spelen en dingen op je uit te proberen zonder toezicht. De beste manier om iets te leren is door het zelf af te breken en weer op te bouwen.
Om Linux te leren gebruiken, moet je eerst Linux op je systeem laten draaien. Er zijn verschillende manieren waarop u dit kunt doen, sommigen van hen zouden een Live USB gebruiken en erop opstarten, het fysiek op uw computer installeren, een multi-bootsysteem maken met twee besturingssystemen, het installeren op een VM (virtuele Machine), en het huren van een Linux-server en SSHing erin. Ik weet zeker dat de experts deze lijst zouden uitbreiden met een heleboel meer opties, maar laten we kortheidshalve verder gaan met het bovenstaande. Hoewel het eindresultaat van het gebruik van alle bovenstaande instellingen zou zijn om toegang te krijgen tot een console om Linux-commando's uit te geven, variëren de stappen om daar te komen in aantal en moeilijkheidsgraad.
Aangezien dit een pilotpost is, gaan we voor waarschijnlijk de gemakkelijkste die er is, die uw machine of het huidige besturingssysteem op geen enkele manier zal breken en een die geen ervaring vereist met geavanceerde bewerkingen zoals het partitioneren van een harde schijf of het configureren van een server op afstand. Akkoord, ze zijn cool, maar ik beloof dat we dat zullen bespreken als je eenmaal bekend bent met de basis.
Mijn enige veronderstelling die hier verder gaat, zou de volgende zijn.
- Je hebt een degelijke computer (4 – 8 GB RAM, een relatief recente processor als Intel Core i3 minimaal, minimaal 30 GB vrije ruimte op de SSD/HDD).
- Je bent verbonden met een fatsoenlijke internetverbinding (die heb je nodig om een aantal dingen te downloaden).
- Je kent de basiszaken zoals het installeren van een applicatieprogramma op Windows of macOS (afhankelijk van wat je gebruikt).
Als je al het bovenstaande kunt aanvinken, zit je zeker in de competitie. Oké, om te beginnen hebben we een aantal dingen nodig (vrij letterlijk).
- Een Linux-distributie (we gebruiken hier Ubuntu).
- Een hypervisor (de applicatie waarmee we een secundair besturingssysteem bovenop ons hoofdbesturingssysteem kunnen installeren), zullen we gebruiken Virtual Box.
Uitstekend nu alle formaliteiten achter de rug zijn, laten we aan de slag gaan met de leuke dingen!
Stap 1: Ga nu naar de Ubuntu-website en download Ubuntu 16.04.x LTS (we gebruiken dit alleen om stabiliteitsredenen, zodat u onderweg geen onnodige fouten krijgt).

Als je klaar bent met downloaden, zou je een . Iso bestand op uw systeem. Dit is hoe het eruit zou zien.

Stap 2: Ga nu naar de VirtualBox-downloadpagina en download de VirtualBox 5.x platformpakket op basis van het besturingssysteem dat u momenteel gebruikt. Als je bijvoorbeeld Windows gebruikt, pak dan de eerste, die zegt: Windows-hosts.

Stap 3: Nu je beide vereiste bestanden hebt, ga je gang en installeer je VirtualBox. Dubbeltik gewoon op de .exe or .dmg bestand dat is gedownload en volg de instructies op het scherm. Zorg ervoor dat u daar niets op maat doet, gewoon accepteer de standaardinstellingen en voltooi de installatie.
Als je klaar bent, ga je gang en start je VirtualBox. Je scherm zou er bijna hetzelfde uit moeten zien als het mijne, zoals hieronder weergegeven, minus de lijst met VM's die ik heb (aangezien ik Virtual Box al gebruik, heb ik een aantal VM's ingesteld, maar uw lijst zou echter leeg zijn).

Stap 4: We gaan nu door en beginnen met het installeren van Ubuntu via VirtualBox. Klik Nieuwe linksboven in het VirtualBox-venster. U krijgt een dialoogvenster waarin u wordt gevraagd het besturingssysteem een naam te geven. Typ Ubuntu in de te noemen, kiezen Type as Linux en Versie as Ubuntu (64-bits) en druk op voortzetten (nieuwere versies van Virtual Box vullen automatisch het veld Type en Versie op basis van wat u in het veld Naam hebt getypt).

Stap 5: Nu wordt u gevraagd om de hoeveelheid RAM op te geven die dit gast-besturingssysteem (Ubuntu) zal gebruiken; de standaard is 1 GB, wat goed genoeg is, dus laat het daar blijven en klik op voortzetten.

Stap 6: Hier moet u de harde schijf specificeren die door het besturingssysteem zal worden gebruikt. Vaak uploaden mensen vooraf geconfigureerde installaties van hun virtuele box-instanties in de vorm van iets dat bekend staat als huishoudelijke apparaten. Apparaten werken op een plug-and-play manier.
U kunt de apparaten dus downloaden, aansluiten op de virtual box-instantie en u heeft een volledig functionerend besturingssysteem zonder enige installatie. (Zie het als het hebben van twee harde schijven met twee besturingssystemen en ze gewoon uitschakelen zonder het gedoe om je pc hiervoor los te schroeven).
Selecteer gewoon Maak nu een virtuele harde schijf en ga verder.

Stap 7: Geef hier het type op als VDI, wat de standaardoptie zou moeten zijn en klik op voortzetten.

Stap 8: Selecteer nu de maat. Het is aan te raden om een dynamisch toegewezen drive omdat het schaalt volgens uw behoeften in vergelijking met de optie met een vaste grootte, die het volledige bedrag in één keer toewijst, ongeacht of u het nodig zou hebben of niet.

Selecteer nu de grootte van de harde schijf; dit zorgt ervoor dat de harde schijf nooit het opgegeven aantal overschrijdt. De standaardwaarde is acht, maar zorg ervoor dat u 9 GB selecteert voor de zekerheid.


Nu we de installatie hebben gedaan, laten we onze machine opstarten. Selecteer Ubuntu uit de lijst aan de linkerkant en klik op Start op de menubalk van het VirtualBox-venster. Er verschijnt onmiddellijk een dialoogvenster waarin u wordt gevraagd de afbeelding in te voegen om Ubuntu van op te starten. Dit is waar de Ubuntu-afbeelding nodig is die we eerder hebben gedownload. Klik op de map knop (getoond in de afbeelding hieronder) in het dialoogvenster en navigeer en selecteer de Ubuntu-afbeelding en klik op Openen. Zodra dat de afbeelding is die in de vervolgkeuzelijst wordt weergegeven, klikt u op Start.

Binnen een paar seconden zou je worden begroet met de Ubuntu-installatie-opties, zoals hieronder weergegeven. We kunnen doorgaan en “Probeer Ubuntu” zonder het te installeren of te installeren. Laten we dat laatste doen en klikken op Installeer Ubuntu.


Nogmaals, we accepteren de standaardinstellingen en gaan verder. Schakel de download-updates uit tijdens het installeren van opties en de opties voor het installeren van software van derden en klik op Doorgaan. Controleer vervolgens de Wis schijf en installeer Ubuntu Optie en klik op Installeer nu.
Er verschijnt een dialoogvenster waarin u wordt gevraagd het wisproces te bevestigen, klik op voortzetten.


Selecteer uw locatie in deze stap en klik op Doorgaan. Selecteer vervolgens uw toetsenbordindeling. En klik zoals gewoonlijk op Doorgaan. Geef vervolgens uw naam, gebruikersnaam en dergelijke op in velden.

En nu wacht je. Haal een kopje koffie voor jezelf. Het duurt nog even voordat dit klaar is.

Zodra de installatie is voltooid, wordt u gevraagd om: Herstart, ga je gang en doe dat, en als dat eenmaal is gebeurd, wordt je begroet door een inlogscherm voor Ubuntu. Voer gewoon het wachtwoord in en u hebt uw Ubuntu-installatie met succes ingesteld.

Geef jezelf een schouderklopje. Nu we klaar zijn met een geïnstalleerde Linux-distributie, gaan we enkele van de basis Linux-commando's doornemen.
De basis Linux-commando's
Start de terminal op Ubuntu als volgt:


Eenmaal gelanceerd, zou het er als volgt uit moeten zien.

Oké, we zijn klaar om te beginnen, zodat je het weet, de volgende screenshots zullen er niet uitzien als de Ubuntu-terminal, omdat ik voor een betere zichtbaarheid een Linux-terminal op mijn server zal gebruiken. Maak je daar geen zorgen over; concentreer je gewoon op de opdrachten en kijk of je dezelfde resultaten krijgt als ik in de schermafbeeldingen.
Aangezien dit de allereerste post in onze hands-on serie is, zullen we ons beperken tot de basis van Linux-commando's, zodat je niet overweldigd wordt, terwijl we er toch voor zorgen dat je interesse niet wegvalt en je stopt. De opdrachten die we in dit bericht zullen behandelen, zijn onderverdeeld in vijf verschillende categorieën; zij zijn als volgt.
- Datum en tijd
- Navigeren door het bestandssysteem
- Mappen/mappen maken en verwijderen
- Bestanden maken en verwijderen
- Hulp zoeken
Maar voordat we dat doornemen, laten we een ceremoniële "Hello World"-test doen voor onze terminal, zullen we? Oké, typ dan de volgende opdracht in de terminal.
echo "Hallo wereld"
Zodra u op de enter-toets drukt, geeft uw terminal de weer Hallo Wereld groet. Dit is niet alleen het begin van onze lijst met opdrachten, maar het is ook een goede test om te controleren of alles werkt zoals verwacht. De echo command geeft een regel tekst weer die is opgegeven na de opdrachten. De aanhalingstekens zijn optioneel, maar het is een conventie om ze met aanhalingstekens te gebruiken.

1. Datum en tijd
Laten we beginnen met een heel basiscommando, namelijk het controleren van de datum en tijd via de terminal. De opdracht heeft een toepasselijke naam en geeft de datum en de huidige tijd weer in 24-uursnotatie, samen met uw tijdzone. Typ het volgende in uw terminal om het zelf te controleren.
gegevens

2. Navigeren door het bestandssysteem
Een essentieel ding dat wij, als gebruikers, op een besturingssysteem doen, is van de ene map naar de andere gaan. Laten we dus leren hoe we dat op de terminal kunnen doen met behulp van een reeks opdrachten die voor dat doel zijn bedoeld.
- pwd – Voordat we van de ene map naar de andere gaan, laten we eerst leren hoe we kunnen achterhalen in welke map we ons momenteel bevinden. U kunt dat doen met behulp van de pwd opdracht. Het staat voor Print Werken Directorie. Typ gewoon de opdracht als volgt en bekijk het resultaat.
pwd

- ls – De opdracht ls wordt in principe gebruikt om alle inhoud, dwz bestanden en mappen in een bepaalde map, weer te geven. Typ gewoon het volgende in uw terminal en het zal alles weergeven wat er in uw huidige map staat.
ls

Standaard zal ls alleen de bestandsnamen weergeven, om details te krijgen over elk bestand dat u kunt gebruiken, de -l optie samen met ls als volgt.
ls -l

Zoals u kunt zien, heeft deze optie samen met ls een heleboel meer informatie over elk bestand afgedrukt, waaronder de bestandsmodus, het aantal links, de naam van de eigenaar, de groepsnaam, het aantal bytes in het bestand, de afgekorte maand, de dag van de maand bestand is laatst gewijzigd, uurbestand laatst gewijzigd, minuutbestand laatst gewijzigd en de padnaam. Ik weet dat het meeste nu misschien niet logisch is, maar maak je geen zorgen. Het enige dat u nu moet weten, is dat elke opdracht wordt geleverd met een aantal opties die u kunt aansluiten om de geretourneerde resultaten te verfijnen.
- cd – Nu we bekend zijn met het weergeven van bestanden en het controleren van onze huidige map, gaan we eens kijken hoe we tussen mappen kunnen schakelen. Het bevel cd staat voor Change Directory en wordt als volgt gebruikt. Als u zich in een directory bevindt en er meer directory's in staan, kunt u als volgt naar een subdirectory gaan.
cd NAME_OF_DIRECTORY
vervangen NAME_OF_DIRECTORY in de bovenstaande opdracht met de naam van de map waarin u wilt navigeren. Hieronder ziet u een voorbeeld.
Zoals je kunt zien, verandert de huidige map zodra we de submap binnengaan.

Nu we in de directory zijn, hoe gaan we naar buiten? Welnu, je kunt opnieuw een optie gebruiken samen met cd om uit de submap en in de bovenliggende map te stappen. In mijn voorbeeld ben ik in ~/iOSProjects/100DaysOfSwift om terug te gaan naar ~/iOSProjecten Ik zal het volgende commando gebruiken.
cd ..
Dit brengt mij 1 niveau hoger. Nu ben ik in de ~/iOSProjecten map, zoals hieronder te zien is.

Als ik wilde gaan van ~/iOSProjects/100DaysOfSwift helemaal tot aan de wortel dat is ~ , zou het cd-commando als volgt zijn gestructureerd.
cd ../ ..
De niveaus van het nesten van mappen bepalen het aantal ../ .. in uw opties.
3. Mappen/mappen maken en verwijderen

Een andere eenvoudige taak die we regelmatig uitvoeren, is het maken en verwijderen van mappen. Dit kan met de volgende twee commando's.
- mkdir - De opdracht mkdir staat voor Make Directory en is vrij eenvoudig te gebruiken. Typ het gewoon als volgt.
mkdir NAME_OF_DIRECTORY

Vervang de NAME_OF_DIRECTORY met de naam die u aan uw nieuwe map wilt geven. Als u klaar bent, kunt u er met succes naar navigeren, zoals hieronder wordt weergegeven.
- rmdir - De opdracht rmdir staat voor Remove Directory en wordt gebruikt om directories te verwijderen/directory's te verwijderen. Om een map te verwijderen moet u zich daarbuiten / een niveau erboven bevinden. Zodra je bent uit de map en dat map is leeg, typ de opdracht gewoon als volgt.
rmdir NAME_OF_DIRECTORY
Vervang de NAME_OF_DIRECTORY met de naam van de map die u wilt verwijderen. Onthoud dat deze opdracht alleen werkt als de te verwijderen map leeg is.

4. Bestanden maken en verwijderen
Laten we vervolgens leren over het maken van bestanden. Aangezien we ons hier uitsluitend op de terminal concentreren en geen andere toepassingen, vraagt u zich misschien af hoe u bestanden van verschillende formaten (txt, docx, enz.) Zou maken, toch? wel, hier zou ons volgende commando in beeld komen.
- – Hoewel het officiële doel van het gebruik van aanraking is om bestandstoegang en bestandswijzigingstijden te wijzigen, kan het ook worden gebruikt om een nieuw bestand te maken. Het wordt als volgt gebruikt.
tik op FILENAME.EXTENSION
Vervang de BESTANDSNAAM en UITBREIDING met degene die je wilt. Een voorbeeld van gebruik is hieronder weergegeven. Als uw terminal de opdracht uitvoert zonder een bericht, was de opdracht hoogstwaarschijnlijk succesvol en kunt u controleren of het bestand is gemaakt met behulp van de ls opdracht.

Nu we weten hoe we bestanden moeten maken, kunnen we net zo goed leren hoe we ze kunnen verwijderen, toch? De volgende opdracht zal u daarbij helpen.
- rm – Het rm-commando staat voor Verwijderen, en het doet wat de naam doet vermoeden, het wordt gebruikt om bestanden en mappen te verwijderen. Het wordt als volgt gebruikt.
rm BESTANDSNAAM.EXTENSION
Vervang de BESTANDSNAAM en UITBREIDING met degene die je wilt.
NOTITIE: Het rm-commando is onomkeerbaar, dus zorg er altijd voor dat u de juiste bestanden verwijdert. Een veiligere manier om dit te doen zou zijn om het rm-commando samen met de . te gebruiken -i optie; Als u dit doet, zal de terminal u vragen om te bevestigen of u het bestand wilt verwijderen of niet. Het wordt als volgt gebruikt.
rm -i BESTANDSNAAM.EXTENSION

We hebben een bestand gemaakt en het ook verwijderd, maar hoe zit het met het bewerken van bestanden? Hoe gegevens toevoegen en verwijderen? Nou, hoe enthousiast je ook bent over die aspecten, geloof me als ik het zeg, het is een beetje te ingewikkeld en soepel om overweldigd te raken als je begint. We doen de minimale hier, en naarmate we verder gaan met elke week, dingen zoals het bewerken van bestanden van de terminal naar de berichten. Laten we ondertussen verder gaan.
5. Hulp zoeken
Akkoord! Dus we hebben een heleboel dingen gedaan op de terminal. Wat als u bent vergeten wat de opties zijn die met een opdracht moeten worden gebruikt of wat een opdracht doet? Natuurlijk kun je het googlen, maar er is een betere manier waarop je de terminal niet eens hoeft te verlaten.
Linux heeft een commando genaamd man, wat staat voor Manual Pages. Het wordt gebruikt om documentatie over een bepaald commando op te halen als je niet zeker bent over een commando, doe het dan als volgt.
man COMMAND_NAME
Vervang het COMMAND_NAME-veld door de naam van de eigenlijke opdracht en er wordt nuttige documentatie gepresenteerd. U kunt de spatiebalk om te scrollen en naar ophouden de man-pagina druk op q. Het voorbeeldgebruik wordt hieronder weergegeven.


Conclusie
Oké, mensen, dit is een lange tijd geweest, maar ik hoop dat je de basis redelijk goed hebt begrepen. Nu je een werkende Linux-installatie hebt en een week de tijd hebt om ervoor te zorgen dat je speelt met de commando's die ik hierboven noemde. Wees niet bang om de Linux-installatie te verknoeien, en je kunt altijd teruggaan en het opnieuw installeren als dat nodig is. Verken naar hartenlust, en ik kom volgende week terug met deel 2 van deze serie, waar we voortbouwen op de Linux-basisprincipes die we in dit bericht hebben behandeld.
George
Een kleine kanttekening. Je hebt niet per se een degelijke computer nodig om Linux te gebruiken. Er zijn lichtgewicht Linux-distributies zoals Lubuntu, die bedoeld zijn voor gebruik op low-end computers. Lubuntu slaagde er zelfs in om vlekkeloos te draaien op mijn oude Pentium 4-machine met 1 gig RAM.
Prateek Phoenix
Ik ben het ermee eens, maar ik noemde de vereisten in gedachten houdend dat dit geen native installatie is. Het zal worden geïnstalleerd op een hypervisor die op zijn beurt een aantal vereisten heeft. Hoop dat dat het duidelijk maakt :)
George
Oh ja dat is waar. VM's hebben krachtigere machines nodig om efficiënt te werken. Ik had het over native installaties. Mijn fout dat ik dat niet vermeld.
Vlaamse gaai
Ik wil deze cursus volgen om Linux beter te begrijpen. Ik gebruik echter Linux Mint 17.3 rosa en kon geen geschikte VirtualBox-download vinden. Eventuele suggesties?
Rajesh Namasé
Als je Linux Mint al gebruikt, hoef je VirtualBox niet te installeren, volg de tutorial en leer Linux-commando's :)
Vlaamse gaai
Bedankt. Ik zal doen.