Risposte:
/dev/null
non è davvero un file. È un dispositivo personaggio !
$ ls -l /dev/null
crw-rw-rw- 1 root root 1, 3 Apr 10 09:53 /dev/null
La prima lettera c
della stringa di autorizzazioni ( crw-rw-rw-
) indica questo. Per i file regolari, sarebbe -
invece un .
Quindi, in parole semplici: /dev/null
non è un file ma un dispositivo virtuale mappato a questo percorso nel file system, che ha il solo scopo di ingoiare e svanire i dati - come un buco nero.
Può anche essere usato come input, quindi si comporta come un file vuoto (dimensione 0) e restituisce immediatamente un EOF (End Of File).
Pertanto non si può davvero dire che /dev/null
ha una dimensione specifica del file, in quanto non è un file normale su qualsiasi supporto di memorizzazione.
/dev/null
è un tipo speciale di file chiamato " file dispositivo ".
I file del dispositivo fungono da interfaccia per alcune funzioni del kernel. Occupano solo lo spazio necessario per una voce di directory (" inode ") ma non hanno alcun contenuto reale e non hanno una dimensione effettiva del file.
Altri file di dispositivo sono ad esempio /dev/sda
(generalmente un HDD o SSD), /dev/zero
(un file che genera zero durante la lettura) o /dev/random
(un file che genera dati casuali durante la lettura). In realtà tutti i file in /dev/
sono file di dispositivo o collegamenti che puntano a file di dispositivo.
mknod
per creare file di dispositivi ovunque si desideri). Per i file system virtuali come /dev/
l'inode non occupa spazio su disco ma un po 'di memoria.
ls
e du
riportando la dimensione di un dispositivo speciale carattere /dev/null
o come /dev/random
0 restituisce .