warum werden in Linux nicht Die Dateisysteme angezeigt mit "df -h"?
Da steht Dateisystem aber es werden keine Dateisysteme angezeigt sondern Paritionen
was ich zum Beispiel nicht verstehe ist das zum Beispiel /dev/sdb1 und /dev/sdb2 keine Dateisysteme sind sondern Datenträger. Die werden jedoch unter Dateisysteme aufgelistet und das bringt mich durcheinader
4 Antworten
df - report file system space usage
df hat im Kern die Aufgabe den freien Platz von Dateisystemen zu zeigen, wobei es zur Identifikation den mountpoint und das Gerät auf dem es liegt angibt.
Wenn Du andere Informationen willst, dann empfiehlt sich zum einen die man page zu lesen und vor allem das für die Aufgabe nützliche Werkzeug zu nutzen, von lsblk (zeigt Blockgeräte und deren Relation zueinander an), blkid (zeigt alle möglichen UUIDs und LABELs an), mount (zeigt detailierte Informationen zu den Mountpoints inklusive Mountoptionen).
Dazu bieten viele Werkzeuge Optionen, um ggf. weitere Informationen anzuzeigen.
Es gibt eben zu viele Dinge, die angezeigt werden könnten. Das ist dann so viel, dass es unübersichtlich wird.
Um sich die Dateisystem anzeigen zu lassen, hast du z.b. die Befehle
mount oder fdisk -l oder blkid
Wenn du selbst programmieren kannst, z.b. mit tkl, dann bastele dir ein Tool und stelle einen Report zusammen.
Doch, die werden da aufgelistet. Das sind deine Dateisysteme.
- tmpfs ist ein Dateisystem, das im RAM läuft
- /dev/sr0 ist eine CD/DVD
- /cow ist ebenefalls im RAM, weil du anscheinend ein Live-System nutzt.
- /dev/sdb1 und /dev/sdb2 sind zwei Datenträger, z. Bsp. USB-Sticks.
Dateisysteme sind sowas wie ext4, xfs, btrfs. Die zeigt "df -h" nicht an, sondern "nur" Größe, belegter und benutzer Speicher sowie wo es gemountet ist.
Siehe auch https://wiki.ubuntuusers.de/Dateisystem/
Probiere sonst "df -T" wie KainaMora vorschlägt.
Daneben ist unter Linux "alles" eine Datei bzw. ein Verzeichnis. Sogar der Bildschirm. Die Unterscheidung zwischen externen Datenträger und internen ist eigentlich überflüssig. Das ist nur für uns Menschen hilfreich, damit wir wissen, was wir wo hin schreiben bzw. wieder vom PC abstecken können.
unser Lehrer meinte : ermittelt der aktuelle Zustand des Dateisystems ---> also sowie ich es verstanden habe zeigt si belegter und benutzer Speicher sowie wo es gemountet ist. ?
Das ist ein Aspekt des Zustands eines Dateisystems.
Man kann natürlich noch weiter schauen und bspw. prüfen, ob das Dateisystem Fehler hat oder welche Dateitypen am meisten vertreten sind.
Die Frage ist sehr offen gestellt so ohne weiteres Wissen darüber, was ihr im Unterricht behandelt habt.
/dev/sdb1 , /dev/sdb2 ... oder auch /dev/sdf1 ... sind nur Dateien mit nur einigen Byte.
Für Linux ist der Type der Datei, eine sogenannte Majornummer und eine Minornummer wichtig. Daran erkennt Linux (also der Kernel) ob es bei dieser Datei wirklich im eine Datei, einen File, ein Verzeichnis, ... oder um eine Beschreibungsdatei für Partitionen handelt.
Führe den Befehl ls -l /dev/sdb1 aus und du wirst etwa so etwas wie
brw-rw---- 1 root disk 8, 17 4. Jan 16:12 /dev/sdb1
erhalten.
Das b am Anfang sagt, es ist ein Blockdevice oder eben eine Partition auf der Daten in Blöcken gespeichert werden können. Aus den Zahlen 8, 17, das sind die Major- und die Minor-Nummer erkennt der Kernel, wie mit diesem, damit beschriebenen Gerät umzugehen ist. Für dich als Benutzer ist sdb1 die Information 2. Festplatte (oder auch Stick) und 1. Partition.
Eine Filesystem-Kennung , also die Art der Formatierung taucht hier überhaupt nicht auf, das gehört nicht zur Geräte-Datei /dev/sdb1.
Die zugehörige Partition kannst du beliebig formatieren, ein Filesystem dort einrichten. Das kann fat, ntfs, vfat, reiserfs, ext3, ext4, btrfs, xfs ... sein.
Diese Informationen, wie auch die Größe einer Partition sind in der Partitionstabelle eines Datenträgers (Festplatte, SSD, USB-Memory-Stick, SD-Karte) zu finden.
Linux hangelt sich also Stück für Stück von einer Informationsquelle zur andern durch.
Genau so machen es die Basisbefehle wie
df
ls
oder auch mount ....
-------------
Ein Datenträger ist ein Gerät im Computer (Festplatte, SSD ...)
Eine Partition ist ein logisch abgetrennter Teil eines Datenträgers
(Microsoft nennt das ohne Unterscheidung Laufwerk)
Ein Filesystem ist die Art der Formatierung (z.B. wie wird von einem Sektor einer Festplatte auf den folgenden Sektor verwiesen, welche Sektoren, Abschnitte auf der Scheibe, gehören zu einem Verzeichnis einer Datei ...)
Eine Gerätedatei (/dev/sda ) beschreibt Typ und "Ort" des Datenträgers, wie auch die einzelnen Teile (Partitionen) /dev/sda1, /dev/sda2
Übrigens ist so ein Name /dev/sda1 ohne Belang. Man kann für /dev/sda1 auch den Namen /dev/meineToshibaPlattePartition1 vergeben.
Nur muss man dann auch immer wieder diesen Namen tippen.
Mache einfach mal ein ls -l /dev/disk/
Dort werden dir Verzeichnisse aufgelistet, die dann schon andere Namen haben.
by-label ist da interessant. Man kann jeder Partition einen sinnvollen Namen verpassen und muss sich nicht merken, dass /home auf /dev/sdc2 liegt.
.
mit Daten
Nun, -h steht für "human readable", bietet also nur eine bessere Lesbarkeit der Ausgabe von df.
Dateisysteme werden erst mit der Option -T "print file system type" angezeigt.
Alles weiter erfährst Du in den manpages zu df mittels
man df
danke das verstehe ich aber was ich nicht verstehe ist das zum Beispiel /dev/sdb1 und /dev/sdb2 keine Dateisysteme sind sondern Datenträger. Die werden jedoch unter Dateisysteme aufgelistet und das bringt mich durcheinader