Articles

Hoe je vrije schijfruimte en schijfgebruik kunt bekijken vanaf de Linux Terminal

  • Dave McKay

    @TheGurkha

  • April 2, 2019, 8:00am EDT
Fatmawati Achmad Zaenuri/.com

De df en du commando’s rapporteren over schijfruimtegebruik vanuit de Bash-shell die wordt gebruikt op Linux, macOS en veel andere Unix-achtige besturingssystemen. Met deze opdrachten kunt u eenvoudig vaststellen wat de opslagruimte van uw systeem in beslag neemt.

De totale, beschikbare en gebruikte schijfruimte bekijken

Bash bevat twee handige opdrachten met betrekking tot schijfruimte. Om de beschikbare en gebruikte schijfruimte te bekijken, gebruikt u df (disk filesystems, soms ook disk free genoemd). Om te ontdekken wat de gebruikte schijfruimte in beslag neemt, gebruikt u du (schijfgebruik).

Type df en druk op enter in een Bash terminal venster om aan de slag te gaan. U zult een heleboel uitvoer zien die lijkt op de schermafbeelding hieronder. Door df zonder opties te gebruiken, krijgt u de beschikbare en gebruikte ruimte te zien voor alle gemounte bestandssystemen. Op het eerste gezicht ziet het er misschien ondoorgrondelijk uit, maar het is vrij eenvoudig te begrijpen.

df

Advertentie

Elke regel van de weergave bestaat uit zes kolommen.

  • Bestandssysteem: De naam van dit bestandssysteem.
  • 1K-Blocks: Het aantal 1K-blokken dat beschikbaar is op dit bestandssysteem.
  • Gebruikt: Het aantal 1K-blokken dat op dit bestandssysteem is gebruikt.
  • Beschikbaar: Het aantal 1K-blokken dat ongebruikt is op dit bestandssysteem.
  • Use%: De hoeveelheid gebruikte ruimte in dit bestandssysteem, gegeven als percentage.
  • Bestand: De naam van het bestandssysteem, indien opgegeven op de opdrachtregel.
  • Gemount op: Het koppelpunt van het bestandssysteem.

U kunt de 1K bloktellingen vervangen door meer bruikbare uitvoer door de -B (blokgrootte) optie te gebruiken. Om deze optie te gebruiken, typ df, een spatie, en dan -B en een letter uit de lijst van K, M, G, T, P, E, Z of Y. Deze letters staan voor de kilo, mega, giga, tera, peta, exa, zeta, en yotta waarden van de veelvoud van 1024 schaal.

Voorbeeld, om de schijfgebruik cijfers in megabytes te zien, zou u het volgende commando gebruiken. Merk op dat er geen spatie staat tussen de B en de M.

df -BM

De -h (menselijk leesbare) optie instrueert df om de meest toepasselijke eenheid te gebruiken voor de grootte van elk bestandssysteem. Merk in de volgende uitvoer op dat er bestandssystemen zijn met gigabyte-, megabyte- en zelfs kilobyte-groottes.

df -h
Advertentie

Als u de informatie weergegeven wilt zien in aantallen inodes, gebruik dan de -i (inodes) optie. Een inode is een gegevensstructuur die door Linux-bestandssystemen wordt gebruikt om bestanden te beschrijven en metagegevens over ze op te slaan. In Linux bevatten inodes gegevens zoals de naam, datum van wijziging, positie op de harde schijf, enzovoort voor elk bestand en elke map. Dit zal voor de meeste mensen niet nuttig zijn, maar systeembeheerders moeten soms naar dit soort informatie verwijzen.

df -i

Niet verteld om dit niet te doen, zal df informatie geven over alle gemounte bestandssystemen. Dit kan leiden tot een onoverzichtelijke weergave met veel uitvoer. Bijvoorbeeld, de /dev/loop items in de lijsten zijn pseudo bestandssystemen die toelaten een bestand te mounten alsof het een partitie is. Als u de nieuwe Ubuntu snap methode gebruikt om toepassingen te installeren, kunt u er een heleboel van krijgen. De beschikbare ruimte op deze bestanden zal altijd 0 zijn, omdat ze niet echt een bestandssysteem zijn, dus we hoeven ze niet te zien.

We kunnen df vertellen om bestandssystemen van een specifiek type uit te sluiten. Om dit te doen, moeten we weten welk type bestandssysteem we willen uitsluiten. De -T (print-type) optie zal ons die informatie geven. Het instrueert df om het type bestandssysteem in de uitvoer op te nemen.

df -T

De /dev/loop items zijn allemaal squashfs bestandssystemen. We kunnen ze uitsluiten met het volgende commando:

df -x squashfs
Advertentie

Dat geeft ons een meer beheersbare uitvoer. Om een totaal te krijgen, kunnen we de --total optie toevoegen.

df -x squashfs --total

We kunnen df vragen om alleen bestandssystemen van een bepaald type op te nemen, door de -t (type) optie te gebruiken.

df -t ext4

Als we de afmetingen voor een set bestandssystemen willen zien, kunnen we ze op naam opgeven. Schijfnamen in Linux zijn alfabetisch. De eerste schijf heet /dev/sda , de tweede schijf is /dev/sdb, enzovoort. Partities zijn genummerd. Dus /dev/sda1 is de eerste partitie op schijf /dev/sda . We vertellen df om informatie over een bepaald bestandssysteem terug te geven door de naam van het bestandssysteem als een commando parameter mee te geven. Laten we eens kijken naar de eerste partitie van de eerste harde schijf.

df /dev/sda1

Merk op dat u jokertekens kunt gebruiken in de naam van het bestandssysteem, waarbij * staat voor elke reeks tekens en ? voor elk enkel teken. Dus om naar alle partities op de eerste schijf te kijken, zouden we kunnen gebruiken:

df /dev/sda*

Advertentie We kunnendfvragen om te rapporteren over een set van benoemde bestandssystemen. Hij we vragen om de grootte van de/deven/runbestandssystemen, en we willen een totaal.

df -h --total /dev /run

Om de weergave verder aan te passen, kunnen we df vertellen welke kolommen moeten worden opgenomen. Gebruik hiervoor de optie --output en geef een door komma’s gescheiden lijst op van de gewenste kolomnamen. Zorg ervoor dat er geen spaties in de door komma’s gescheiden lijst staan.

  • source: De naam van het bestandssysteem.
  • fstype: Het type van het bestandssysteem.
  • itotal: De grootte van het bestandssysteem in inodes.
  • iused: De gebruikte ruimte op het bestandssysteem in inodes.
  • iavail: De beschikbare ruimte op het bestandssysteem in inodes.
  • ipcent: Het percentage van de gebruikte ruimte op het bestandssysteem in inodes, in procenten.
  • size: De grootte van het bestandssysteem, standaard in 1K blokken.
  • used: De gebruikte ruimte op het bestandssysteem, standaard in 1K blokken.
  • avail: De beschikbare ruimte op het bestandssysteem, standaard in 1K blokken.
  • pcent: Het percentage van de gebruikte ruimte op het bestandssysteem in inodes, standaard in 1K blokken.
  • bestand: De naam van het bestandssysteem indien opgegeven op de opdrachtregel.
  • doel: Het mount punt voor het bestandssysteem.

Laten we df vragen om te rapporteren over de eerste partitie op de eerste schijf, met menselijk leesbare getallen, en met de kolommen source, fstype, size, used, avail, en pcent:

df -h /dev/sda1 --output=source,fstype,size,used,avail,pcent

Lange commando’s zijn perfecte kandidaten om te worden omgezet in een alias. We kunnen een alias maken dfc (voor df custom ) door het volgende te typen en op Enter te drukken:

alias dfc="df -h /dev/sda1 --output=source,fstype,size,used,avail,pcent"

Advertentie

Typ dfc en druk op enter zal hetzelfde effect hebben als het intypen van het lange commando. Om deze alias permanent te maken voegt u hem toe aan uw .bashrc of .bash_aliases-bestand.

We hebben gekeken naar manieren om de uitvoer van df te verfijnen, zodat de informatie die wordt weergegeven aan uw eisen voldoet. Als u voor de tegenovergestelde benadering wilt kiezen en df alle informatie wilt laten terugzenden die het mogelijk maakt, gebruik dan de -a (alle) optie en de --output optie zoals hieronder getoond. De -a (all) optie vraagt df om elk bestandssysteem op te nemen, en het gebruik van de --output optie zonder een door komma’s gescheiden lijst van kolommen zorgt ervoor dat df elke kolom opneemt.

df -a --output
De uitvoer van df door het less commando is een handige manier om de grote hoeveelheid uitvoer die dit kan produceren te bekijken.

df -a --output | less

Uitzoeken wat de gebruikte schijfruimte in beslag neemt

Laten we wat onderzoek doen en uitvinden wat er op deze PC ruimte in beslag neemt. We beginnen met een van onze df commando’s.

df -h -t ext4
Advertentie

Er wordt 78% schijfruimte gebruikt op de eerste partitie van de eerste harde schijf. We kunnen het du commando gebruiken om te laten zien welke mappen de meeste gegevens bevatten. Het du commando zonder opties toont een lijst van alle mappen en submappen onder de map waarin het du commando werd gegeven. Als u dit doet vanuit uw thuismap zal de lijst erg lang zijn.

du

Het uitvoerformaat is erg eenvoudig. Elke regel toont de grootte en de naam van een map. Standaard wordt de grootte getoond in blokken van 1K. Om du een andere blokgrootte te laten gebruiken, gebruikt u de -B (blokgrootte) optie. Om deze optie te gebruiken typt u du, een spatie, en dan -B en een letter uit de lijst van K, M, G, T, P, E, Z, en Y, zoals we hierboven hebben gedaan voor df . Om 1M blokken te gebruiken, gebruikt u dit commando:

du -BM

Net als df, heeft du een door mensen leesbare optie, -h, die een reeks blokgroottes gebruikt, afhankelijk van de grootte van elke directory.

du -h

De -s (samenvatten) optie geeft een totaal voor elke directory zonder de sub-directories binnen elke directory weer te geven. Het volgende commando vraagt du om informatie in samenvattend formaat, in voor mensen leesbare getallen, voor alle mappen (*) onder de huidige werkdirectory.

du -h -s *
Advertentie

De map Picture bevat verreweg de meeste gegevens. We kunnen du vragen om de mappen in grootte te sorteren van grootste naar kleinste.

du -sm Pictures/* | sort -nr

Door de informatie die df en du teruggeven te verfijnen, is het eenvoudig om uit te vinden hoeveel ruimte op de harde schijf in gebruik is, en om te ontdekken wat die ruimte in beslag neemt. U kunt dan een weloverwogen beslissing nemen over het verplaatsen van bepaalde gegevens naar andere opslagplaatsen, het toevoegen van een andere harde schijf aan uw computer of het verwijderen van overbodige gegevens.

Deze commando’s hebben een groot aantal opties. We hebben de nuttigste opties hier beschreven, maar u kunt een volledige lijst van de opties voor het df commando en voor het du commando bekijken in de Linux man pages.

Dave McKay
Dave McKay gebruikte voor het eerst computers toen ponsband in zwang was, en hij programmeert al sindsdien. Na meer dan 30 jaar in de IT-industrie, is hij nu een full-time technologie journalist. Tijdens zijn loopbaan heeft hij gewerkt als freelance programmeur, manager van een internationaal software ontwikkelingsteam, een IT services project manager, en, meest recent, als een Data Protection Officer. Dave is een Linux-evangelist en voorstander van open source.Read Full Bio”

Geef een reactie

Het e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *