lsblk-commando: opbouw van schijven en partities en UUID controleren
Het commando lsblk toont de schijven en partities die op een server zijn aangesloten en hun koppelpunten als boomstructuur, en laat in één keer de schijfgrootte, het type bestandssysteem en zelfs de UUID zien. Toen we lsblk op een AlmaLinux 9-server uitvoerden, verschenen de loop-apparaten die door snap-pakketten waren aangemaakt vóór de schijf, dus filterden we ze weg met -e 7. Daarna controleerden we met -f het xfs-bestandssysteem en de UUID van de rootpartitie.
De schijfgroottes en UUID's in de uitvoer hieronder zijn voorbeeldwaarden.
1️⃣ De standaarduitvoer van het commando lsblk lezen
Op een server waar programma's met snap zijn geïnstalleerd, toont lsblk zonder opties vóór de schijf een rij loop-apparaten die per pakketversie zijn gekoppeld. Geef daarom met -e het apparaatnummer van loop-apparaten op, 7, om ze weg te laten.
lsblk -e 7NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
nvme0n1 259:0 0 80G 0 disk
├─nvme0n1p1 259:1 0 1M 0 part
├─nvme0n1p2 259:2 0 200M 0 part /boot/efi
├─nvme0n1p3 259:3 0 1G 0 part /boot
└─nvme0n1p4 259:4 0 78.8G 0 part /nvme0n1 in de kolom NAME is de schijf. nvme0n1p1 tot en met nvme0n1p4, daaronder verbonden met [├─] en [└─], zijn de partities waarin deze schijf is verdeeld. Het is net als het verdiepingenbord bij de ingang van een gebouw, waarop onder de naam van het gebouw staat wat er op elke verdieping zit.
In de kolom TYPE verschijnen schijven als [disk] en partities als [part], en de kolom MOUNTPOINTS toont de map waarin elke partitie is gekoppeld. Op de server die we controleerden, was de rootpartitie nvme0n1p4 gekoppeld aan / en nvme0n1p3 aan /boot. nvme0n1p1 van 1M is een BIOS-bootpartitie die wordt gebruikt om op te starten vanaf een GPT-schijf, dus er is geen koppelpunt.
MAJ:MIN zijn het major- en minornummer die de kernel aan een apparaat toekent; loop-apparaten hebben 7 en de NVMe-schijf die we controleerden had 259. RM geeft met 1 of 0 aan of een apparaat verwisselbaar is, en RO of het alleen-lezen is.
SIZE lees je gemakkelijk als vrije ruimte, maar SIZE is de totale grootte van de schijf of partitie. De vrije ruimte van een bestandssysteem controleer je in de kolom FSAVAIL, die verschijnt als je -f toevoegt.
In het diagram hieronder kun je stap voor stap vergelijken hoe de regels en kolommen in de uitvoer per optie veranderen.
2️⃣ lsblk -f: bestandssystemen en UUID's controleren
De standaarduitvoer toont geen type bestandssysteem, dus controleer je met -f hoe een partitie is geformatteerd. -f toont acht kolommen: NAME, FSTYPE, FSVER, LABEL, UUID, FSAVAIL, FSUSE% en MOUNTPOINTS.
lsblk -f -e 7NAME FSTYPE FSVER LABEL UUID FSAVAIL FSUSE% MOUNTPOINTS
nvme0n1
├─nvme0n1p1
├─nvme0n1p2 vfat FAT16 5A1E-3B7C 192.1M 4% /boot/efi
├─nvme0n1p3 xfs 6d2f0c4e-8b1a-4f3d-a7e2-9c5b1d0e4f28 691.4M 28% /boot
└─nvme0n1p4 xfs 2b9e7f41-c3d6-4a85-b0f1-7e4a2c9d6b13 68.5G 13% /Bij het uitvoeren bleken de root- en /boot-partitie xfs te zijn, en /boot/efi vfat in de FAT16-versie. De schijf nvme0n1 en nvme0n1p1 hebben geen bestandssysteem en bleven daarom leeg. De UUID is een uniek nummer dat elk bestandssysteem krijgt; in /etc/fstab geef je daarmee de te koppelen partitie op via de UUID in plaats van via de apparaatnaam.
Bestandssysteeminformatie controleer je het nauwkeurigst met het blkid-commando.
FSAVAIL en FSUSE% zijn de vrije ruimte en het gebruikspercentage van een gekoppeld bestandssysteem. Bij partities die niet gekoppeld zijn, verschijnen geen waarden. Het df-commando toont alleen de grootte en het gebruik van gekoppelde bestandssystemen. lsblk toont daarnaast de opbouw van schijven en partities, of ze nu gekoppeld zijn of niet.
3️⃣ lsblk -o om kolommen te kiezen en -b voor bytes
Schrijf je na -o kolomnamen, gescheiden door komma's, dan verschijnen alleen die kolommen in die volgorde. De beschikbare kolomnamen staan in de lijst aan het eind van [lsblk --help].
lsblk -o NAME,SIZE,FSTYPE,MOUNTPOINT -e 7NAME SIZE FSTYPE MOUNTPOINT
nvme0n1 80G
├─nvme0n1p1 1M
├─nvme0n1p2 200M vfat /boot/efi
├─nvme0n1p3 1G xfs /boot
└─nvme0n1p4 78.8G xfs /MOUNTPOINT toont maar één koppelpunt, terwijl MOUNTPOINTS ze allemaal toont als hetzelfde bestandssysteem op meerdere plaatsen is gekoppeld. Om na de standaardkolommen er maar één toe te voegen, zet je + voor de kolomnaam, zoals in [-o +UUID].
-b toont groottes als gehele getallen in bytes. Om met het oog te vergelijken zijn de standaardeenheden makkelijker te lezen, dus -b past bij scripts die groottes berekenen of vergelijken.
lsblk -b -o NAME,SIZE -e 7NAME SIZE
nvme0n1 85899345920
├─nvme0n1p1 1048576
├─nvme0n1p2 209715200
├─nvme0n1p3 1073741824
└─nvme0n1p4 84613774848G en M in de standaarduitvoer zijn eenheden van 1.024, dus de schijf van 80G verschijnt als 85.899.345.920 bytes.
4️⃣ lsblk -d voor een schijvenlijst en -p voor volledige paden
Op een server met meerdere schijven lopen de partitieregels door elkaar en is de schijvenlijst lastig te lezen, dus laat je met -d de partities weg en toon je alleen de schijfregels.
lsblk -d -e 7NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
nvme0n1 259:0 0 80G 0 disk In de uitvoer bleef alleen de ene regel van de schijf nvme0n1 over, en de vier partitieregels eronder verschenen niet.
Met -p komt /dev/ voor de apparaatnamen en verschijnen ze als volledige paden. Deze paden kun je direct doorgeven aan andere commando's zoals mount.
lsblk -p -e 7NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
/dev/nvme0n1 259:0 0 80G 0 disk
├─/dev/nvme0n1p1 259:1 0 1M 0 part
├─/dev/nvme0n1p2 259:2 0 200M 0 part /boot/efi
├─/dev/nvme0n1p3 259:3 0 1G 0 part /boot
└─/dev/nvme0n1p4 259:4 0 78.8G 0 part /Alleen de kolom NAME verandert in volledige paden, van /dev/nvme0n1 tot /dev/nvme0n1p4; de overige kolommen zijn gelijk aan de standaarduitvoer.
Geef je een apparaatpad als argument, dan worden alleen dat apparaat en de partities eronder getoond; geef je een partitiepad, dan verschijnt alleen de regel van die partitie.
lsblk /dev/nvme0n1p4NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
nvme0n1p4 259:4 0 78.8G 0 part /In de uitvoer verschijnt alleen de ene regel van nvme0n1p4, zonder schijfregel of vertakkingstekens. Met een apparaatpad dat niet bestaat, verscheen de fout [not a block device] en was de afsluitcode 32.
5️⃣ Uitvoer en opties van het commando lsblk voor scripts
Het is verleidelijk om de standaarduitvoer in scripts op te knippen, maar de kolomindeling van de standaarduitvoer en van -f kan in de toekomst veranderen. Geef in scripts daarom zelf de kolommen op met -o.
-n laat de kopregel weg en toont alleen de waarden. Dat past als je maar één waarde nodig hebt, zoals het type bestandssysteem van één partitie.
lsblk -no FSTYPE /dev/nvme0n1p4xfsZonder kopregel verschijnt maar één woord, xfs, het type bestandssysteem van de rootpartitie. Je kunt het dus direct in een shellvariabele opslaan.
-P toont elke kolom op één regel in de vorm [naam=”waarde”]. In util-linux 2.37 op AlmaLinux 9 worden de namen al met alleen -P zo aangepast dat ze makkelijk als shellvariabelen te lezen zijn, zoals MAJ:MIN naar MAJ_MIN en FSUSE% naar FSUSE_PCT.
lsblk -P -o NAME,FSTYPE,MOUNTPOINT /dev/nvme0n1p4NAME="nvme0n1p4" FSTYPE="xfs" MOUNTPOINT="/"De drie opgegeven kolommen verschijnen op één regel in de volgorde NAME, FSTYPE, MOUNTPOINT. Alle waarden staan tussen dubbele aanhalingstekens.
-J toont de uitvoer in JSON. Zonder -d komen de partities in de array children onder de schijf. Samen met -b wordt alleen size een getal, en andere groottekolommen zoals FSAVAIL blijven tekenreeksen.
lsblk -J -d -o NAME,SIZE,TYPE -e 7{
"blockdevices": [
{
"name": "nvme0n1",
"size": "80G",
"type": "disk"
}
]
}Met -d bevat de array blockdevices alleen de schijf, en de array children verschijnt niet.
🔲 Opties van het commando lsblk
| Optie | Kopiëren | Uitleg |
|---|---|---|
| -e, --exclude | Sluit apparaten met het opgegeven majornummer uit. Met 7 vallen loop-apparaten weg. | |
| -f, --fs | Toont het type bestandssysteem, de UUID, de vrije ruimte en het gebruikspercentage. | |
| -o, --output | Toont alleen de met komma's opgegeven kolommen, in volgorde. | |
| -b, --bytes | Toont de kolom SIZE als gehele getallen in bytes. | |
| -d, --nodeps | Laat partitieregels weg en toont alleen schijfregels. | |
| -p, --paths | Toont apparaatnamen als volledige paden die met /dev/ beginnen. | |
| -n, --noheadings | Laat de kopregel weg en toont alleen de waarden. | |
| -P, --pairs | Toont kolomnamen en waarden in paren op één regel. | |
| -J, --json | Toont de uitvoer in JSON-formaat. | |
| -a, --all | Toont ook lege apparaten met grootte 0. |
| Optie | Kopiëren | Uitleg |
|---|---|---|
| -I, --include | Toont alleen apparaten met het opgegeven majornummer. | |
| -l, --list | Toont de uitvoer als lijst in plaats van als boom. | |
| -r, --raw | Toont de uitvoer in raw-formaat, zonder de kolommen uit te lijnen. | |
| -i, --ascii | Toont de boomlijnen met ASCII-tekens. | |
| -s, --inverse | Draait de afhankelijkheden om en toont schijven onder de partities. | |
| -S, --scsi | Toont alleen informatie over SCSI-apparaten. | |
| -t, --topology | Toont topologie-informatie zoals sectorgrootte en I/O-scheduler. | |
| -m, --perms | Toont de eigenaar, groep en rechten van apparaten. | |
| -x, --sort | Sorteert op de opgegeven kolom en toont de uitvoer als lijst. | |
| -O, --output-all | Toont alle beschikbare kolommen. |
🔲 Simulator voor het commando lsblk
In de simulator hieronder typ je de commando's van tot nu toe zelf in en zie je hoe de uitvoer per optie verandert.
🔢 FAQ & aanbevolen content
Linux · Swap
Swapgeheugen (Swap Memory) instellen
Zo maak je met de commando's mkswap en swapon swapgeheugen aan als partitie of als bestand.
Linux · Schijf
Linux-commando dd
Basisgebruik, opties en voorbeelden van het commando dd, waarmee je schijven en partities kloont of imagebestanden maakt.
Schijf · Begrip
Wat is een schijfsector?
Legt de basisopbouw van een harde schijf uit en wat een schijfsector is: de indeling van het opslagmedium in eenheden van een vaste grootte.
ℹ️ Affiliatemelding
De content van deze site bevat affiliatelinks. Koopt een bezoeker via een van deze links een product of dienst, dan ontvangt deze site een commissie van de verkoper. Het bedrag dat de koper betaalt (bij acties gaat het omlaag ↓) wordt daardoor niet hoger. De vermelde prijzen, kortingen en voorraad gelden op het moment van schrijven en kunnen afwijken; controleer ze daarom vóór je aankoop bij de verkoper. Producten worden gekozen en beoordeeld volgens onze eigen criteria, en commissies hebben geen invloed op de volgorde of de inhoud van de beoordelingen.