Linux – Praktische handleiding
Deze pagina is bedoeld als compacte maar bruikbare Linux-referentie.
Alle voorbeelden zijn generiek en toepasbaar op de meeste Linux-distributies
(Debian/Ubuntu, RHEL/Fedora, Arch, Alpine), tenzij anders vermeld.
1. Bestandsstructuur en navigatie
Linux werkt met één centrale boomstructuur (/), niet met stationsletters zoals bij Windows.
Belangrijke mappen:
/– root van het systeem/home– persoonlijke gebruikersmappen/etc– configuratiebestanden/var– variabele data (logs, mail, cache)/usr– programma’s en libraries/tmp– tijdelijke bestanden/srv– data voor services (web, applicaties)
Navigatie gebeurt volledig via de terminal. Je werkt altijd vanuit een “huidige map”.
Het huidige pad bekijken:
pwd
Bestanden en mappen in de huidige map tonen:
ls
ls -lah
Opties:
-ltoont een lijstweergave-atoont ook verborgen bestanden-hmaakt groottes leesbaar
Verplaatsen door de mappenstructuur:
cd /path/to/folder
cd ..
cd ~
2. Bestanden en mappen beheren
Bestanden en mappen worden volledig via commando’s aangemaakt, verplaatst en verwijderd.
Een map aanmaken:
mkdir folder
mkdir -p a/b/c
-p zorgt ervoor dat ook ontbrekende tussenmappen worden aangemaakt.
Een leeg bestand maken of de timestamp bijwerken:
touch file.txt
Bestanden of mappen kopiëren:
cp source dest
cp -a source dest
-a (archive) behoudt rechten, eigenaarschap en symlinks en is vrijwel altijd aan te raden.
Bestanden of mappen verplaatsen of hernoemen:
mv old new
Bestanden en mappen verwijderen:
rm file
rm -r folder
rm -rf folder
-r= recursief-f= geforceerd, zonder bevestiging
Gebruik rm -rf alleen als je zeker weet wat je doet.
Een symbolische link maken:
ln -s target link
3. Bestanden bekijken en lezen
Voor het bekijken van bestanden zijn verschillende hulpmiddelen beschikbaar, afhankelijk van grootte en gebruik.
De volledige inhoud tonen:
cat file
Geschikt voor kleine bestanden.
Interactief bekijken (scrollen en zoeken):
less file
De eerste of laatste regels bekijken:
head -n 20 file
tail -n 20 file
Een bestand live volgen (bijvoorbeeld logs):
tail -f /var/log/syslog
4. Zoeken en filteren van tekst
Linux biedt krachtige tools om tekst te zoeken en te filteren, vooral in logs en configuratiebestanden.
Zoeken naar tekst:
grep "text" file
grep -R "text" folder
grep -Rni "tekst" folder
Opties:
-R= recursief-n= regelnummer-i= hoofdletterongevoelig
Bestanden zoeken op naam:
find . -name "*.log"
Bestanden zoeken op wijzigingsdatum:
find . -type f -mtime -7
Kolommen of velden uit tekst halen:
awk '{print $1}' file
cut -d: -f1 file
5. Rechten en eigenaarschap
Linux werkt met gebruikers, groepen en permissies per bestand.
Rechten bekijken:
ls -l
Rechten aanpassen:
chmod 644 file
chmod 755 script.sh
Betekenis:
644= lezen/schrijven voor eigenaar, lezen voor anderen755= uitvoerbaar voor iedereen
Eigenaar en groep aanpassen:
chown user:group file
Huidige gebruiker en groepen bekijken:
id
groups
6. Processen en systeemstatus
Linux geeft uitgebreide inzichten in actieve processen en systeemgebruik.
Alle processen tonen:
ps aux
Live overzicht van CPU en geheugen:
top
htop
Geheugengebruik bekijken:
free -h
Schijfruimte per filesystem:
df -h
Grootte van een map:
du -sh folder
Een proces beëindigen:
kill PID
kill -9 PID
-9 forceert afsluiten en moet alleen als laatste redmiddel worden gebruikt.
7. Netwerk en connectiviteit
Netwerkstatus en connectiviteit zijn essentieel voor servers en applicaties.
Netwerkinterfaces en routes:
ip a
ip r
Luisterende poorten en processen:
ss -tulpn
Netwerkverbinding testen:
ping domain.tld
HTTP-verzoeken uitvoeren:
curl https://site.tld
curl -I https://site.tld
DNS-informatie opvragen:
dig domain.tld
Controleren of een poort bereikbaar is:
nc -vz host 443
8. Services en logs (systemd)
De meeste moderne Linux-systemen gebruiken systemd voor servicebeheer.
Status en beheer van services:
systemctl status service
systemctl start service
systemctl stop service
systemctl restart service
systemctl reload service
Services automatisch starten bij boot:
systemctl enable service
systemctl disable service
Logs bekijken:
journalctl -u service
journalctl -u service -f
journalctl -p err
9. Package managers
Software wordt geïnstalleerd via de package manager van de distributie.
Debian / Ubuntu (apt)
apt update
apt install package
apt remove package
apt purge package
apt autoremove
RHEL / Fedora (dnf)
dnf install package
dnf remove package
dnf search package
Arch (pacman)
pacman -S package
pacman -Rns package
pacman -Syu
Alpine (apk)
apk add package
apk del package
10. Git – versiebeheer
Git wordt gebruikt voor versiebeheer van code en configuratie.
Basiscommando’s:
git init
git clone url
git status
git add .
git commit -m "description"
Synchroniseren met een remote:
git pull --rebase
git push
Inzicht in wijzigingen:
git log --oneline --graph
git diff
11. Docker – containers
Docker maakt het mogelijk applicaties geïsoleerd te draaien.
Images en containers beheren:
docker pull image
docker images
docker ps
docker ps -a
Een container starten en beheren:
docker run -d -p 8080:80 image
docker logs container
docker exec -it container sh
Docker Compose:
docker compose up -d
docker compose down
12. Basis beveiliging
Een minimale beveiligingsbasis is essentieel, vooral op servers.
Firewall (Ubuntu):
ufw status
ufw allow 22
ufw enable
Nftables (lage-niveau firewall):
nft list ruleset
Bescherming tegen brute-force aanvallen:
fail2ban-client status
Automatische beveiligingsupdates:
apt install unattended-upgrades
13. Veelgebruikte hulpprogramma’s
curl,wget– HTTP requestsjq– JSON verwerkenrsync– efficiënte bestandssynchronisatietmux– meerdere shells in één sessiencdu– schijfruimte analyserenlsof– open bestanden en poortentcpdump– netwerkverkeer inspecteren
