Hoe Je Schijfruimte Controleert In Linux - Commands Voor Schijfruimte Gebruik

Gepubliceerd 23 januari 2026

Bij het beheren van schijfruimte op Linux-systemen zijn er verschillende handige commandoregeltools die je kunnen helpen om opslaggebruik te analyseren en verbeterpunten te vinden. In dit artikel bekijken we hoe je deze commando's gebruikt om je schijfruimte op Linux te begrijpen en te beheren.

Belangrijkste Punten

  • Het 'df' commando toont de totale en beschikbare opslagruimte op elke schijf die aan het systeem is gekoppeld
  • 'df -H' geeft output weer in een leesbaar format (MB, GB, TB)
  • Pas de 'df' output aan met de '--output' vlag gevolgd door veldnamen (bijv. source, size, used, avail)
  • Het 'du' commando toont de grootte van mappen en bestanden
  • Combineer 'du' met 'sort' en 'head' om de grootste mappen te vinden (bijv. 'du -a . | sort -n -r | head -n 10')

df Commando

Overzicht van het 'df' commando

Het 'df' commando, wat staat voor "disk filesystem", is een tool om schijfruimtegebruik op Linux-systemen te controleren. Het toont informatie over de totale en beschikbare opslagruimte op elke schijf die aan het systeem is gekoppeld, inclusief lokale schijven en netwerkbestandssystemen. Dit commando wordt door Linux-gebruikers gebruikt om schijfruimtegebruik te analyseren sinds de begindagen van het besturingssysteem in de jaren '90.

Basisgebruik van 'df'

Om 'df' te gebruiken, voer je het commando uit met de '-H' vlag, zoals: df -H. Dit toont de output in een leesbaar format, waarbij schijfruimte wordt weergegeven in megabytes, gigabytes of terabytes. De output bevat verschillende kolommen met informatie voor elk bestandssysteem:

Kolom Beschrijving
Filesystem De naam van het bestandssysteem of apparaatpad
Size De totale grootte van het bestandssysteem
Used De hoeveelheid gebruikte ruimte op het bestandssysteem
Available De resterende vrije ruimte op het bestandssysteem
Use% Het percentage van het bestandssysteem dat bezet is
Mounted on Het aankoppelpunt waar het bestandssysteem is gekoppeld

Om bijvoorbeeld te controleren hoeveel ruimte er nog beschikbaar is op je hoofdsysteemschijf, die meestal op '/' is aangekoppeld, voer je uit:

df -H /

Dit kan iets als dit weergeven:

Filesystem      Size  Used Avail Use% Mounted on
/dev/sda1       100G   65G   35G  65% /

Om informatie over een specifieke schijf of partitie te bekijken, voeg je het apparaatpad toe als argument aan 'df'. Bijvoorbeeld, df -H /dev/sda1 toont het ruimtegebruik voor de eerste partitie op de primaire SATA-schijf.

De 'df' output aanpassen

Standaard bevat 'df' een vaste set kolommen in de output. Je kunt dit aanpassen met de '--output' vlag gevolgd door een kommagescheiden lijst met veldnamen. Enkele nuttige velden zijn:

  • source: het bronapparaat van het bestandssysteem
  • size: totale grootte van het bestandssysteem
  • used: hoeveelheid gebruikte ruimte
  • avail: hoeveelheid beschikbare ruimte
  • pcent: percentage gebruikte ruimte

Om bijvoorbeeld een rapport te maken dat het apparaat, totale grootte, gebruikte ruimte en beschikbare ruimte toont, voer je uit:

df -H --output=source,size,used,avail

Dit geeft een tabel met de geselecteerde kolommen:

Filesystem      Size  Used Avail
/dev/sda1       100G   65G   35G
/dev/sda2       500G  100G  400G

du Commando

Wat is het 'du' commando?

Het du commando, kort voor "disk usage", is een Linux-tool die de grootte van mappen en bestanden weergeeft. In tegenstelling tot het df commando dat een algemeen overzicht geeft van schijfgebruik per bestandssysteem, laat du je de ruimte zien die specifieke mappen en bestanden gebruiken. Dit maakt het nuttig om te ontdekken welke submappen en bestanden het meeste schijfruimte op je Linux-systeem gebruiken.

Hoe gebruik je 'du'

Om du te gebruiken, geef je de map die je wilt analyseren als argument:

du /home/user/Documents

Dit geeft een lijst van alle submappen in /home/user/Documents, samen met de schijfruimte die elk gebruikt. Standaard worden de groottes weergegeven in kilobytes.

Om de output gemakkelijker leesbaar te maken, gebruik je de -h vlag om groottes in leesbaar format weer te geven (KB, MB of GB), en de -s vlag om alleen een samenvatting voor de map te tonen:

du -sh /home/user/Documents

Dit kan iets als dit weergeven:

25G     /home/user/Documents

Dit toont dat de /home/user/Documents map en de inhoud in totaal 25 gigabyte aan schijfruimte gebruiken.

Je kunt du ook op afzonderlijke bestanden gebruiken om hun schijfgebruik te bekijken:

du -h /home/user/Documents/large-file.zip

Als je bijvoorbeeld een groot videobestand in je Documents-map hebt, kun je uitvoeren:

du -h /home/user/Documents/vacation-video.mp4

En output krijgen zoals:

2.3G    /home/user/Documents/vacation-video.mp4

Dit toont dat het videobestand 2,3 gigabyte ruimte inneemt.

De grootste mappen vinden met 'du'

Een veelvoorkomend gebruik voor du is het vinden van mappen die de meeste schijfruimte gebruiken. Hoewel je de output handmatig kunt controleren om de grootste submappen te vinden, is het gemakkelijker om du te combineren met andere commando's om de resultaten te sorteren.

Om de top 10 submappen in de huidige map op grootte weer te geven, voer je uit:

du -a . | sort -n -r | head -n 10

Dit is wat elk deel van het commando doet:

  • du -a .: Berekent het schijfgebruik van alle bestanden en submappen in de huidige map (.). De -a vlag bevat bestanden én mappen.
  • sort -n -r: Sorteert de du output numeriek (-n) in omgekeerde volgorde (-r), zodat de grootste getallen eerst komen.
  • head -n 10: Neemt de eerste 10 regels van de gesorteerde output.

Het volledige commando geeft je een lijst van de 10 grootste submappen en bestanden, die je vervolgens verder kunt bekijken om te zien of er ruimte kan worden vrijgemaakt.

Je kunt ook een andere map opgeven om vanaf te beginnen:

du -a /home/user/Documents | sort -n -r | head -n 10 

Dit vindt de top 10 ruimtegebruikers binnen de /home/user/Documents map en de submappen.

Als je /home/user/Documents map bijvoorbeeld deze submappen bevat:

/home/user/Documents/work
/home/user/Documents/personal
/home/user/Documents/photos
/home/user/Documents/music

Dan kan het uitvoeren van het bovenstaande commando iets als dit weergeven:

45G     /home/user/Documents/photos
30G     /home/user/Documents/music  
10G     /home/user/Documents/work
5G      /home/user/Documents/personal

Dit toont dat de photos en music submappen de meeste ruimte gebruiken.

stat Commando

Het stat commando geeft informatie weer over een bestand, map of bestandssysteem, inclusief de grootte, blokgrootte en schijfgebruik.

Om stat te gebruiken, geef je het pad op naar het bestand, de map of het apparaat dat je wilt analyseren. Bijvoorbeeld:

stat /home/user/Documents/file1.txt

Dit geeft informatie over file1.txt:

  File: /home/user/Documents/file1.txt
  Size: 4096            Blocks: 8          IO Block: 4096   regular file
Device: 10301h/66049d   Inode: 1234567     Links: 1
Access: (0644/-rw-r--r--)  Uid: ( 1000/    user)   Gid: ( 1000/    user)
Access: 2023-04-20 10:30:00.000000000 +0200
Modify: 2023-04-20 10:30:00.000000000 +0200
Change: 2023-04-20 10:30:00.000000000 +0200
 Birth: -

In deze output zie je de bestandsgrootte (4096 bytes), het aantal blokken dat het op de schijf bezet (8), en andere metadata zoals rechten, eigendom en tijdstempels.

Je kunt stat ook gebruiken op een map of bestandssysteem. Bijvoorbeeld:

stat /home/user/Documents

Dit toont de grootte en het schijfgebruik van de /home/user/Documents map, met andere informatie.

Situaties waarin stat handig kan zijn:

  • Het analyseren van het schijfgebruik van een specifiek bestand of map om inefficiënties in de opslag te vinden
  • Het controleren van bestandsrechten en eigendom om toegangsproblemen op te lossen
  • Het bekijken van tijdstempels van bestanden om te bepalen wanneer een bestand voor het laatst is gewijzigd of geopend

Voorbeeld: Bestandsrechten en Eigendom Controleren

Om de rechten en het eigendom van een bestand te controleren, kun je stat gebruiken:

stat /home/user/Documents/important_file.txt

De output bevat de rechten en het eigendom van het bestand:

Access: (0640/-rw-r-----)  Uid: ( 1000/    user)   Gid: ( 1000/    user)

In dit geval heeft het bestand lees- en schrijfrechten voor de eigenaar (user), leesrechten voor de groep (user), en geen rechten voor anderen. De eigenaar en groep zijn beide "user" met UID 1000 en GID 1000.

Als de rechten of het eigendom niet correct zijn, kun je chmod en chown gebruiken om ze aan te passen:

chmod 0644 /home/user/Documents/important_file.txt
chown user:group /home/user/Documents/important_file.txt

Dit stelt de rechten in op -rw-r--r-- (lezen en schrijven voor eigenaar, lezen voor groep en anderen) en wijzigt de eigenaar naar "user" en de groep naar "group".

fdisk -l Commando

Het fdisk -l commando wordt gebruikt om informatie weer te geven over schijfpartities en hun groottes. Het toont de partitietabellen voor alle opslagapparaten die aan het systeem zijn gekoppeld en geeft de schijfindeling weer.

Het uitvoeren van fdisk -l als root (of met sudo) geeft informatie over elke schijf en de partities:

Disk /dev/sda: 50 GiB, 53687091200 bytes, 104857600 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: A1B2C3D4-E5F6-G7H8-I9J0-K1L2M3N4O5P6

Device       Start      End  Sectors Size Type
/dev/sda1     2048   206847   204800 100M EFI System
/dev/sda2   206848  2303999  2097152   1G Linux filesystem
/dev/sda3  2304000 31457279 29153280  14G Linux filesystem

Deze output toont dat /dev/sda een totale grootte heeft van 50 GiB en drie partities bevat: een 100 MB EFI System-partitie, een 1 GB Linux filesystem-partitie en een 14 GB Linux filesystem-partitie.

Het fdisk -l commando is nuttig om de structuur van je opslagapparaten en de grootte van de partities te begrijpen. Het kan helpen bij taken zoals:

  • Het identificeren van de totale grootte en vrije ruimte op elk opslagapparaat
  • Het bepalen van de partitie-indeling en groottes bij het plannen van een nieuwe installatie of herpartitionering
  • Het verifiëren dat partities correct zijn ingesteld en zijn uitgelijnd met het opslagapparaat

Voorbeeld: Totale Schijfgrootte en Vrije Ruimte Identificeren

Om snel de totale grootte en vrije ruimte van een schijf te controleren, kun je fdisk -l combineren met grep en awk:

sudo fdisk -l /dev/sda | grep -e "Disk /dev/sda" -e "^$" | awk '{print $3 " " $4}'

Dit commando haalt de relevante regels uit de fdisk -l output en geeft de totale schijfgrootte en eenheid weer:

50 GiB

Om de vrije ruimte te berekenen, trek je de gebruikte ruimte (som van partitiegrootten) af van de totale schijfgrootte. Je kunt dit automatiseren met een script:

#!/bin/bash

disk="/dev/sda"
total_size=$(sudo fdisk -l $disk | grep "Disk $disk" | awk '{print $3}')
used_space=$(sudo fdisk -l $disk | awk '/^\/dev/ {sum += $5} END {print sum}')

free_space=$((total_size - used_space))
echo "Totale grootte: $total_size bytes"
echo "Gebruikte ruimte: $used_space bytes"
echo "Vrije ruimte: $free_space bytes"

Dit script berekent de totale schijfgrootte, telt de partitiegrootten op om de gebruikte ruimte te krijgen, en trekt de gebruikte ruimte af van de totale grootte om de vrije ruimte te bepalen. De output ziet er als volgt uit:

Totale grootte: 53687091200 bytes
Gebruikte ruimte: 15728640000 bytes
Vrije ruimte: 37958451200 bytes

Dit helpt je om snel de vrije ruimte op een schijf te beoordelen zonder deze handmatig te moeten berekenen uit de partitiegrootten.

Commando's Combineren voor Gedetailleerde Analyse

Bestanden en Mappen Sorteren op Grootte

Je kunt het du commando combineren met sort om bestanden en mappen gesorteerd op schijfgebruik weer te geven. Dit is handig om de grootste bestanden en mappen te vinden.

Om bijvoorbeeld de inhoud van je Desktop-map op grootte te sorteren van groot naar klein, voer je uit:

du -h /home/user/Desktop | sort -rn

De -h vlag maakt de output gemakkelijk leesbaar, terwijl sort -rn de resultaten numeriek (-n) in omgekeerde volgorde (-r) sorteert.

Als je alleen de grootste of kleinste resultaten wilt zien, kun je de output naar head of tail leiden:

Commando Beschrijving
du -h /home/user/Desktop \| sort -rn \| head -n 5 Bekijk de 5 grootste bestanden/mappen op je Desktop
du -h /home/user/Desktop \| sort -rn \| tail -n 5 Bekijk de 5 kleinste bestanden/mappen op je Desktop

Dit is een voorbeeld van hoe de output eruit kan zien bij het vinden van de 5 grootste items:

4.0G    /home/user/Desktop/videos
1.5G    /home/user/Desktop/images
1.0G    /home/user/Desktop/project.zip
500M    /home/user/Desktop/music
100M    /home/user/Desktop/documents

Dit toont dat de videos map de meeste ruimte inneemt met 4,0 gigabyte, gevolgd door images met 1,5 gigabyte, enzovoort.

Resultaten Filteren op Grootte

Om bestanden te vinden die groter zijn dan een bepaalde grootte, kun je du combineren met grep. Het grep commando zoekt naar regels die overeenkomen met een patroon.

Om bestanden in je Desktop-map te vinden die groter zijn dan 1 gigabyte, voer je uit:

du -h /home/user/Desktop | grep '^\s*[0-9\.]\+G'

Dit zoekt naar regels die beginnen met (^) wat witruimte (\s*), gevolgd door één of meer (+) cijfers of punten ([0-9\.]), en eindigen met een G (voor gigabytes).

Je kunt de G veranderen naar M om bestanden groter dan een megabyte te vinden, of K voor kilobytes:

# Vind bestanden groter dan 100 megabytes
du -h /home/user/Desktop | grep '^\s*[0-9\.]\+M'

# Vind bestanden groter dan 10 kilobytes  
du -h /home/user/Desktop | grep '^\s*[0-9\.]\+K'

Als je bijvoorbeeld het commando uitvoert om bestanden groter dan 100 megabytes te vinden, zie je mogelijk output zoals dit:

200M    /home/user/Desktop/presentation.ppt
150M    /home/user/Desktop/archive.tar.gz
120M    /home/user/Desktop/video.mp4

Deze techniek is handig wanneer je grote bestanden moet vinden die mogelijk te veel schijfruimte innemen.

Bestanden Uitsluiten op Type

Bij het analyseren van schijfgebruik wil je mogelijk bepaalde bestandstypen uitsluiten van de resultaten. Het du commando heeft een --exclude vlag waarmee je bestanden die overeenkomen met een patroon kunt overslaan.

Om bijvoorbeeld het schijfgebruik van je Desktop-map te krijgen terwijl je tekstbestanden uitsluit, voer je uit:

du -h /home/user/Desktop --exclude="*.txt"

Dit berekent de groottes van alle bestanden en submappen zoals gewoonlijk, maar laat bestanden die eindigen op .txt weg.

du -h /home/user/Desktop --exclude={"*.txt","*.jpg","*.png"}

Beide commando's analyseren het schijfgebruik terwijl tekstbestanden, JPEG's en PNG's worden overgeslagen.

Het gebruik van --exclude is handig wanneer je grote bestanden probeert te vinden om op te ruimen, maar weet dat bepaalde bestandstypen er horen te zijn en niet hoeven te worden geteld. Als je bijvoorbeeld een grote fotocollectie hebt, kun je afbeeldingsbestanden uitsluiten om je te richten op andere bestandstypen die mogelijk onnodig ruimte innemen.

Praktische Toepassingen

Dit zijn enkele praktijksituaties waarin het combineren van du met andere commando's nuttig kan zijn:

  • Schijfruimte vrijmaken: Wanneer je harde schijf weinig opslagruimte heeft, kun je du -h | sort -rn | head gebruiken om de grootste mappen en bestanden te identificeren. Dit helpt je beslissen wat je moet verwijderen of naar een andere schijf moet verplaatsen om ruimte vrij te maken.

  • Voorbereiding op een systeemmigratie: Voordat je je gegevens naar een nieuwe computer of schijf migreert, is het verstandig om je huidige opslaggebruik te controleren. Commando's zoals du -h --exclude="*.bak" --exclude="*.tmp" geven je een nauwkeurig beeld van de grootte van je gegevens, terwijl tijdelijke of back-upbestanden die niet hoeven te worden overgedragen worden uitgesloten.

  • Prestatieproblemen oplossen: Als je systeem traag is of bepaalde processen lang duren, kan dit komen doordat ze zeer grote bestanden verwerken. Het gebruik van du -h | grep '^\s*[0-9\.]\+G' kan je helpen grote bestanden te vinden die prestatieproblemen kunnen veroorzaken.

ls -al Commando

Het ls -al commando toont de inhoud van een map, inclusief verborgen bestanden, en geeft hun groottes met andere informatie weer. Het is nuttig voor het analyseren van schijfgebruik van specifieke bestanden binnen een map.

Het uitvoeren van ls -al in de /home/user/Documents map kan bijvoorbeeld output zoals dit tonen:

total 24
drwxr-xr-x 2 user user 4096 Apr 20 10:30 .
drwxr-xr-x 5 user user 4096 Apr 19 09:15 ..
-rw-r--r-- 1 user user 4096 Apr 20 10:30 file1.txt
-rw-r--r-- 1 user user 8192 Apr 20 10:15 file2.txt
drwxr-xr-x 2 user user 4096 Apr 19 15:45 subdirectory

Hier geeft ls -al een lijst van de map, met bestandsrechten, eigendom, wijzigingsdatums en groottes. Dit commando helpt wanneer je het schijfgebruik van afzonderlijke bestanden binnen een map moet analyseren.

Enkele toepassingen voor ls -al zijn:

  • Grote bestanden vinden die schijfruimte innemen
  • Bestandsrechten en eigendom controleren om toegangscontrole te waarborgen
  • Wijzigingsdatums van bestanden vergelijken om te zien welke bestanden recent zijn bijgewerkt

Voorbeeld: Grote Bestanden Vinden

Om grote bestanden in een map te vinden, kun je ls -al combineren met sort en head:

ls -al /home/user/Documents | sort -k 5 -n -r | head -n 5

Dit commando toont de inhoud van /home/user/Documents, sorteert de output op de vijfde kolom (bestandsgrootte) in omgekeerde numerieke volgorde, en geeft de top 5 resultaten weer. De output toont de grootste bestanden in de map:

-rw-r--r-- 1 user user 1048576 Apr 20 11:00 large_file1.bin
-rw-r--r-- 1 user user  524288 Apr 20 10:45 large_file2.bin
-rw-r--r-- 1 user user  262144 Apr 20 10:30 large_file3.bin
-rw-r--r-- 1 user user  131072 Apr 20 10:15 large_file4.bin
-rw-r--r-- 1 user user   65536 Apr 20 10:00 large_file5.bin

Dit helpt je om snel de grootste bestanden te identificeren die mogelijk schijfruimte innemen.