Een introductie tot de Commandoregel
De Linux commandoregel (in kort vaak CLI genoemd, naar het Engelse CommandLine-Interface) is enorm krachtig en het is vaak efficiënter en sneller dan de Grafische Interface (GUI van Graphical User Interface).
Om onze nieuwe Linux gebruikers te helpen met het leren werken met deze CLI (zoals we deze in het vervolg gaan noemen) hebben we besloten om een wekelijkse rubriek getiteld "CLI Tool van de Week" te beginnen, zoals de naam al doet vermoeden gaat het hier om een wekelijks artikel dat een bepaald gereedschap van de CLI uitlegt.
Gebruikte conventies op deze site
Zoals in de meeste technische handboeken voor computergebruikers gebruiken we op deze site enkele conventies die duidelijk maken wat je moet intypen en wat er op het scherm kan verschijnen:
Output die op het scherm weergegeven kan worden en de inhoud van bijv. een script
Een "codeblock" bevat gegevens die je bijv. een een bestand of script moet toevoegen of aanpassen
Programma namen en commando's worden zo weergegeven. Als er een $ of # voor staat is het een commando 1 (bijv.) het programma firefox of het commando: $ firefox https://www.linuxgebruikers.nl
Bestanden en Directory's worden zo weergegeven. (bijv. /usr/bin/bash).
Opmerking | |
---|---|
Belangrijke opmerkingen worden als volgt weergegeven:
Opmerking | |
---|---|
Waarschuwing | |
---|---|
Let op! | |
---|---|
Tip | |
---|---|
Soms kan er ook een voorbeeld zijn
/etc/apt/sources.list
deb http://deb.debian.org/debian/ stretch main
deb-src http://deb.debian.org/debian/ stretch main
deb http://security.debian.org/debian-security stretch/updates main
deb-src http://security.debian.org/debian-security stretch/updates main
#stretch-updates, previously known as 'volatile'
deb http://deb.debian.org/debian/ stretch-updates main
deb-src http://deb.debian.org/debian/ stretch-updates main
Laten we nu het verschil tussen $ en # eens nader bekijken, en de werking van sudo tonen.
Commando's en hun uitvoer op het beeldscherm:
# apt update
Ign:1 http://deb.debian.org/debian stretch InRelease
Hit:2 http://deb.debian.org/debian stretch-updates InRelease
Hit:3 http://deb.debian.org/debian stretch Release
Hit:4 http://security.debian.org/debian-security stretch/updates InRelease
Reading package lists... Done
Building dependency tree
Reading state information... Done
All packages are up to date.
In de box hierboven zien we dat we als "root" gebruiker # het commando "apt update" kunnen uitvoeren, en het commando sudo (afkorting van Super User DO) niet moeten gebruiken.
Als we dit als "gewone" gebruiker willen doen krijgen we een foutmelding:
$ apt update
Reading package lists... Done
W: chmod 0700 of directory /var/lib/apt/lists/partial failed - SetupAPTPartialDirectory (1: Operation not permitted)
E: Could not open lock file /var/lib/apt/lists/lock - open (13: Permission denied)
E: Unable to lock directory /var/lib/apt/lists/
W: Problem unlinking the file /var/cache/apt/pkgcache.bin - RemoveCaches (13: Permission denied)
W: Problem unlinking the file /var/cache/apt/srcpkgcache.bin - RemoveCaches (13: Permission denied)
Let dus bij het gebruiken van commando's in de CLI op met welke gebruiker je de commando's moet uitvoeren. De ideale werkwijze is om het root account en het gebruik van sudo te beperken. Als je met sudo of als "root" het verkeerde commando ingeeft is het heel gemakkelijk om het systeem dusdanig te beschadigen dat een her-installatie nodig is.
- Virtual Consoles (te bekomen door CTRL+ALT+Fn (F1 t.e.m. F7) ook tty0 t.e.m. tty7 (tty7 is meestal de GUI waarin Linux opstart)
- Terminal Emulators (afhangelijk van de DE die je gebruikt, maar als je in het menu zoek op Terminal kom je er wel een of meer tegen).