Antworten:
/dev/null
ist nicht wirklich eine Datei. Es ist ein Zeichengerät !
$ ls -l /dev/null
crw-rw-rw- 1 root root 1, 3 Apr 10 09:53 /dev/null
Der erste Buchstabe c
der Berechtigungszeichenfolge ( crw-rw-rw-
) gibt dies an. Für reguläre Dateien wäre es eine -
.
Also in einfachen Worten: /dev/null
Ist keine Datei, sondern ein virtuelles Gerät, das diesem Pfad im Dateisystem zugeordnet ist. Dies hat den einzigen Zweck, Daten zu verschlucken und zu löschen - wie ein Schwarzes Loch.
Es kann aber auch als Eingabe verwendet werden, verhält sich dann wie eine leere Datei (Größe 0) und gibt sofort ein EOF (End Of File) zurück.
Daher kann man nicht wirklich sagen, dass /dev/null
das eine bestimmte Dateigröße hat, da es sich nicht um eine reguläre Datei auf irgendeinem Speichermedium handelt.
/dev/null
ist eine spezielle Art von Datei, die " Gerätedatei " genannt wird.
Gerätedateien dienen als Schnittstelle zu einigen Kernelfunktionen. Sie belegen nur den Platz, der für einen Verzeichniseintrag (" inode ") benötigt wird, haben aber keinen wirklichen Inhalt und keine tatsächliche Dateigröße.
Andere Gerätedateien sind z. B. /dev/sda
(im Allgemeinen eine Festplatte oder eine SSD), /dev/zero
(eine Datei, die beim Lesen Nullen erzeugt) oder /dev/random
(eine Datei, die beim Lesen Zufallsdaten erzeugt). Tatsächlich handelt es sich bei allen Dateien in /dev/
entweder um Gerätedateien oder um Links, die auf Gerätedateien verweisen.
mknod
Gerätedateien erstellen, wo immer Sie möchten). Bei virtuellen Dateisystemen wie /dev/
dem Inode belegt der Inode nicht den Festplattenspeicher, sondern etwas Speicher.
ls
und du
Melden der Größe eines speziellen Zeichengeräts wie /dev/null
oder /dev/random
ergibt 0 .