staging.inyokaproject.org

lsblk

Dieser Artikel wurde für die folgenden Ubuntu-Versionen getestet:


Du möchtest den Artikel für eine weitere Ubuntu-Version testen? Mitarbeit im Wiki ist immer willkommen! Dazu sind die Hinweise zum Testen von Artikeln zu beachten.

Zum Verständnis dieses Artikels sind folgende Seiten hilfreich:

Wiki/Icons/terminal.png lsblk 🇩🇪 steht für "list block devices" und dient dazu, verfügbare Block devices in Baumdarstellung aufzulisten und Informationen zu diesen anzuzeigen. Es liest hierzu das sysfs-Dateisystem ein.

Es ist vergleichbar mit blkid, welches aber nur für Geräte funktioniert, auf denen eine gültige Partitionstabelle existiert. lsblk hingegen listet auch Geräte auf, wenn diese über keine gültige Partitionstabelle verfügen.

Installation

lsblk ist im Paket

  • util-linux

enthalten, das auf jedem Ubuntu-System vorinstalliert ist.

Benutzung

Das Programm ist eine Kommandozeilenanwendung, die im Terminal [1] aufgerufen wird:

sudo lsblk OPTIONEN 

oder

sudo lsblk OPTIONEN GERÄT 

Obwohl lsblk auch ohne Root-Rechte [2] ausgeführt werden kann, ist es sinnvoll, es mit diesen auszuführen, da bestimmte Optionen von lsblk nicht ohne Root-Rechte funktionieren.

Optionen
Option Beschreibung
-a, --all Liste alle verfügbaren Blockgeräte auf (bezieht z.B. Geräte wie /dev/loopX mit ein, die sonst ignoriert werden).
-b, --bytes Größenangabe in Bytes.
-d, --nodeps Liefere keine Informationen über device holders oder slaves. Konkret bedeutet dies, dass beim Aufruf von "lsblk -d /dev/sdX" nur /dev/sdX beschrieben wird, aber keine Partitionen von /dev/sdX.
-D, --discard Liefere Angaben zu den discard-Fähigkeiten wie TRIM und UNMAP des Geräts (bei SSDs).
-e, --exclude Schließe Geräte nach einer kommagetrennten Liste von major device numbers aus.
-f, --fs Gib Dateisysteminformationen aus. Diese werden von blkid bereitgestellt.
-h, --help Schreibt einen Hilfetext auf die Konsole.
-i, --ascii Verwende nur ASCII-Zeichen für die Baumdarstellung.
-m, --perms Zeige Informationen über Geräteeigentümer, Gruppe und Modus.
-l, --list Ausgabe im Listenformat.
-n, --noheadings Schreibe keine Kopfzeile.
-o, --output LISTENTYP Diese Option wird mit einer kommagetrennten Liste von Attributen (LISTENTYP) aufgerufen, welche angezeigt werden sollen. Mögliche Attribute finden sich im entsprechenden Abschnitt dieses Artikels.
-p, --pairs Verwende ein attribut="WERT"-Format für die Ausgabe.
-r, --raw Ausgabe weitestgehend unformatiert.
-t, --topology Informiere über die Gerätetopologie.

Spezialfall -o, --output LISTENTYP

In der Tabelle sind einige interessante Attribute aufgeführt, ein vollständige Liste erhält man jedoch mittels lsblk --help im Terminal.

mögliche Attribute
Attribut Bedeutung Attribut Bedeutung
NAME Gerätename KNAME interner Gerätename des Kernels
MAJ:MIN major:minor Gerätenummer FSTYPE Dateisystemtyp
MOUNTPOINT Einhängepunkt LABEL LABEL des Dateisystems
UUID UUID des Dateisystems RO nur-lesbares Gerät (1 für zutreffend, ansonsten 0)
RM entfernbares Gerät/Wechselmedium (1 für zutreffend, ansonsten 0) MODEL Modellbezeichnung
SIZE Größe des Geräts STATE Zustand
OWNER Benutzername des Geräteeigentümers GROUP Gruppenname der Geräteeigentümergruppe
MODE Dateirechte der Gerätedatei ALIGNMENT Versatz des Alignments
MIN-IO minimale I/O Größe OPT-IO optimale I/O Größe
PHY-SEC physikalische Sektorgröße LOG-SEC logische Sektorgröße
ROTA rotierendes Gerät SCHED Name des I/O schedulers
RQ-SIZE Länge der Warteschlange TYPE Gerätetyp
DISC-ALN discard alignment offset DISC-GRAN discard granularity
DISC-MAX discard max bytes DISC-ZERO discard zeroes data

Beispiele

Die Ausgabe sieht z.B. so aus:

lsblk 

NAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
sda      8:0    0 232.9G  0 disk 
├─sda1   8:1    0    10G  0 part /
├─sda2   8:2    0 208.1G  0 part /home/han/daten
└─sda3   8:3    0  14.8G  0 part 
sr0     11:0    1  1024M  0 rom

Nützlich ist oft auch die Auflistung der Dateisysteme statt der Blockgeräte, z.B. hier mit der alternativen Formatierung als Liste:

lsblk --list --fs
lsblk -lf 

NAME  FSTYPE LABEL         UUID                                 FSAVAIL FSUSE% MOUNTPOINT
sda                                                                            
sda1  vfat   HP_TOOLS      6657-FFE9                                           
sda2  swap   Aussenlager   b09bd626-6c8d-4909-8978-da789ff3b13c                [SWAP]
sda3  ext4   Bionic Beaver 626b77d3-68aa-438e-8706-2570727f7aff                
sda4  ext4   home/klaus    5567a752-38f9-4b85-9876-fc7a94344436                
sda5  ext4   Datengrab     b0504735-4d80-40f5-af2e-1fc5183264ed                
sda6  ext4   Focal Fossa   ff287672-4f21-4a44-b21d-076a6acb2ee3    6,1G    56% /
sda7  ntfs   W7            454D6A00638B9E19                                    

Zeige alle für den gewöhnlichen Benutzer/Admin interessanten Attribute:

lsblk -o NAME,FSTYPE,UUID,RO,RM,SIZE,STATE,OWNER,GROUP,MODE,TYPE,MOUNTPOINT,LABEL,MODEL 
NAME,FSTYPE,UUID,RO,RM,SIZE,STATE,OWNER,GROUP,MODE,TYPE,MOUNTPOINT,LABEL,MODEL
NAME   FSTYPE  UUID                                 RO RM   SIZE STATE   OWNER GROUP MODE       TYPE MOUNTPOINT     LABEL            MODEL
sda                                                  0  0 232.9G running root  disk  brw-rw---T disk                                 SAMSUNG HM250HI 
├─sda1 ext4    fb047b9a-55b7-48fb-8c09-05d673d1e17c  0  0    10G         root  disk  brw-rw---T part /              MillenniumFalcon 
├─sda2 ext4    af90a6a2-dce4-4c33-a972-c2655aceb0f9  0  0 208.1G         root  disk  brw-rw---T part /home/han/date daten            
└─sda3 hfsplus 5053d332-3e8e-3189-865c-697c1b2dc298  0  0  14.8G         root  disk  brw-rw---T part                Hackintosh              
sr0                                                  0  1  1024M running root  cdrom brw-rw---T rom                                  DVD+-RW AD-7700H 

Ausgabe auf einem System mit komplexerem Speicher-Setup:

lsblk 
NAME                 MAJ:MIN RA   SIZE RO MOUNTPOINT
sda                    8:0    0  93.2G  0
├─sda1                 8:1    0   102M  0 /mnt/test
├─sda2                 8:2    0     1K  0
├─sda3                 8:3    0   2.3G  0 [SWAP]
├─sda4                 8:4    0  76.2G  0 /
├─sda5                 8:5    0    10G  0
│ └─kzak-home (dm-0) 253:0    0    10G  0 /home/kzak
└─sda6                 8:6    0   4.7G  0 /boot
sdc                    8:32   0   500M  0
├─sdc1                 8:33   0   250M  0
│ └─md8                9:8    0 498.9M  0
│   ├─md8p1          259:0    0   100M  0
│   ├─md8p2          259:1    0   100M  0
│   └─md8p3          259:2    0 297.9M  0
└─sdc2                 8:34   0   249M  0
  └─md8                9:8    0 498.9M  0
    ├─md8p1          259:0    0   100M  0
    ├─md8p2          259:1    0   100M  0
    └─md8p3          259:2    0 297.9M  0

In der Ausgabe erscheinen alle Blockgeräte und somit auch die per loop-Devices eingebundenen snap-Programme. Diese kann man durch Angabe der gewünschten Geräte ausfiltern und somit z.B. die Ausgabe auf alle Festplatten einschränken:

lsblk --list --fs /dev/sd?
lsblk -lf /dev/sd? 

Wenn man z.B. für die Verwendung in einem Skript nur eine einzelne Eigenschaft eines Blockgerätes benötigt, kann man diese nach diesem Muster einzeln abfragen:

lsblk -dno MODEL /dev/sda 

Hitachi_HTS727550A9E364

Diese Revision wurde am 7. Mai 2021 07:39 von frustschieber erstellt.
Die folgenden Schlagworte wurden dem Artikel zugewiesen: Hardware, Shell, System