Sommige mensen zien de terminal als een ding uit het verleden.
Tegenwoordig gaat toch alles met de muis!
Echte Linux mannen (en vrouwen) werken echter in de terminal.
De terminal is namelijk een super krachtige methode om je computer te bedienen.
Toegegeven, het is wellicht een steile leercurve, maar als je eenmaal een beetje thuis bent in de terminal wil je niet anders meer.
Tenminste, je wilt niet anders meer op je Raspberry Pi.
Deze informatie is niet specifiek voor de Raspberry Pi, maar geldt zowat voor elke Linux computer.
De terminal wordt ook wel eens de Shell genoemd.
Shell betekent hier zoiets als een schil om het operating systeem heen, waarmee je commando’s aan dat operating systeem kunt geven.
Nog een andere benaming voor de terminal die je wel eens voorbij zult zien komen is CLI, ofwel de Command Line Interface.
Linux is zeer modulair opgebouwd. In het centrum zit de kernel, ofwel de pit, net als bij een vrucht. De kernel bevat alles wat nodig is om de hardware te besturen.
Daaromheen zit een schil die het operating systeem vormt. Dat is eigenlijk een hele grote berg aan functies die ieder hun eigen taak uitvoeren. Denk daarbij aan bestandsbeheer, netwerking, beveiliging, geheugenbeheer, drivers en nog veel meer.
Daaromheen zit weer een schil waarmee de gebruiker kan ingrijpen op de taken die de computer moet uitvoeren.
Dat kan een grafische schil zijn, maar in ons geval beperken we ons tot Command Line Interface schil.
Dat zijn een heleboel programma’s, die de functies van het operating systeem aanroepen om taken uit te voeren.
Denk hier bijvoorbeeld aan tekstverwerkers, compilers, utility programma’s, communicatie programma’s, enz.
Deze schil (shell) gebruiken we om commando’s aan onze Linux computer te geven.
In Linux kun je kiezen uit verschillende Shell programma’s.
Van oudsher kon je ervan uitgaan dat de shell sh de standaard shell was.
Het mooie van Linux is dat iedereen zelf software kan toevoegen en wijzigen.
Daarom zijn er in de loop der jaren een hele hoop variaties op de standaard shell ontstaan.
En allemaal claimden zij beter te zijn dan de anderen.
Bijna elke moderne computer heeft tegenwoordig de bash shell (Bourne again shell) als standaard ingesteld staan.
Deze shell is veel krachtiger dan de oude sh shell, maar is grotendeels nog wel neerwaards compatibel.
De verschillen zijn voornamelijk te vinden bij het maken van shell scripts.
Vandaar dat sh nog steeds standaard geïnstalleerd staat op elke Linux computer, gewoon om oude scripts nog steeds te kunnen draaien.
Een shell script is een aaneenschakeling van shell commando’s, samengebracht in een tekstbestandje. Net zoiets als .BAT bestanden voor DOS, maar dan veeeeeeeeel krachtiger.
Er zijn heel veel verschillende manieren om in de terminal te komen. Ik ga er hier maar een paar van noemen, omdat niet alle manieren meer van deze tijd zijn, zoals met telnet of via een seriële interface.
Dit is de eerste manier.
Je klikt vanuit de grafische schil gewoon op het terminal icoontje en bingo, de terminal wordt geopend.
Hier kun je naar hartelust commando’s gaan intypen.
Welke commando’s dat zijn is voor een andere keer.
Een terminal sluiten doe je via het exit commando.
Of je klikt het venster gewoon dicht.
De console is gewoon je toetsenbord en je monitor. Als je computer geen grafische omgeving heeft kom je direct na het opstarten in de console terecht. Je krijgt een inlogscherm, waar je je gebruikersnaam en wachtwoord moet invullen. Daarna zit je in de terminal, de shell, of de CLI, als het beestje maar een naam heeft.
In Linux is het gebruikelijk dat het scherm niet reageert wanneer je een wachtwoord intypt.
Er komen dus niet eens puntjes of sterretjes.
Op die manier kan iemand die over je schouder meekijkt niet zien uit hoeveel letters je wachtwoord bestaat.
Gebruikersnaam pi en wachtwoord raspberry zijn de standaard gebruikersnaam en wachtwoord voor de Raspberry Pi.
Het is ten zeerste aan te bevelen om in ieder geval het wachtwoord te wijzigen, zeker wanneer je je Raspberry Pi vanaf het internet bereikbaar wilt maken.
Doorgaans heb je meerdere consoles. Linux is immers een multi-user en multi-tasking systeem. Zo kun je gemakkelijk omschakelen tussen meerdere taken. Je schakelt tussen de consoles via de Alt-Functie toetsen. Dus Alt-F1 geeft je console 1, Alt-F2 geeft je console 2, enz. Het aantal consoles is configureerbaar, maar staat normaal op 6 ingesteld.
Als je een grafische omgeving hebt geïnstalleerd op je computer kun je in de Console komen door het intypen van Ctrl-Alt-F1. Daarna schakel je met Alt-Functie toetsen gewoon weer tussen de verschillende consoles. Het indrukken van Alt-F7 brengt je doorgaans terug naar je grafische omgeving. De reden van deze afwijkende toetscombinatie om in de Console te komen is vanwege de standaard toetsbindingen die we van Windows hebben georven. Alt-F4 sluit bijvoorbeeld je huidige venster. Ctrl-Alt-F4 brengt je naar Console 4.
Uitloggen op een Console doe je door daar weer het exit commando te typen. Let wel dat je op alle consoles uitlogt. Het exit commando logt je namelijk alleen op de huidige Console uit.
SSH staat voor Secure SHell.
SSH is eigenlijk een Terminal op afstand.
Op de computer die je wilt bedienen moet de SSH server actief zijn.
Deze server staat constant te wachten totdat iemand daarop wil inloggen.
Wanneer je op een SSH server inlogt krijg je weer de vraag om je wachtwoord in te typen.
En weer krijg je niets te zien tijdens het intypen van je wachtwoord, dat is gebruikelijk bij Linux.
Als je het wachtwoord goed hebt opgegeven kom je in de terminal van de op afstand bestuurde computer terecht.
Het grote voordeel van SSH is dat je de machine vanaf de hele wereld via de terminal kunt besturen (als je alles goed hebt ingesteld).
Daarbij is de verbinding ook nog eens versleuteld, zodat niemand mee kan lezen wat je allemaal aan het doen bent.
SSH kan nog veel meer dan alleen de computer via de terminal besturen. Het versturen van bestanden en het tunnelen van internetverkeer zijn de twee meest gebruikte andere mogelijkheden. En dan raak ik nog maar net de oppervlakte van alles wat je met SSH kunt. Maar dat gaat voor nu net even iets te ver.
Ik raad daarom in ieder geval aan om de SSH server van de Raspberry Pi te activeren. Dat maakt het leven een stuk aangenamer.
Inloggen op een SSH server vanuit een Linux machine is heel gemakkelijk. Geef daarvoor het volgende commando vanaf de locale terminal op die Linux machine om de terminal van de andere machine (je Raspberry Pi bijvoorbeeld) te openen.
ssh gebruikersnaam@adresvanjeraspberrypi
Windows gebruikers zijn aangewezen op een SSH client programma. De meest populaire daarvan is Putty. Ik heb elders een pagina staan die de basis vaardigheden met Putty uitlegt.
Android en Chrome OS gebruikers kunnen terecht bij het programma Termius. Dat programma werkt overigens ook onder Windows.
O ja, en had ik al gezegd dat Linux een multi-user en multi-tasking operating systeem is? Je kunt dus meerdere terminals, Consoles en SSH verbindingen tegelijk open hebben op dezelfde machine.
Je terminal sluiten doe je ook hier weer door het exit commando in te typen. Overigens kun je ook Ctrl-D gebruiken om uit te loggen. En dat geldt ook voor alle andere manieren om op de terminal te komen.