Respostas:
/dev/null
não é realmente um arquivo. É um dispositivo de personagem !
$ ls -l /dev/null
crw-rw-rw- 1 root root 1, 3 Apr 10 09:53 /dev/null
A primeira letra c
da string de permissões ( crw-rw-rw-
) indica isso. Para arquivos regulares, seria um -
substituto.
Então, em palavras fáceis: /dev/null
não é um arquivo, mas um dispositivo virtual mapeado para esse caminho no sistema de arquivos, que tem o único objetivo de engolir e desaparecer dados - como um buraco negro.
No entanto, ele também pode ser usado como entrada, e age como um arquivo vazio (tamanho 0) e retorna imediatamente um EOF (Fim do arquivo).
Portanto, você não pode realmente dizer que /dev/null
possui um tamanho de arquivo específico, pois não é um arquivo comum em qualquer mídia de armazenamento.
/dev/null
é um tipo especial de arquivo chamado " arquivo de dispositivo ".
Os arquivos do dispositivo funcionam como uma interface para algumas funções do kernel. Eles apenas ocupam o espaço necessário para uma entrada de diretório (" inode "), mas não têm nenhum conteúdo real e não têm um tamanho de arquivo real.
Outros arquivos de dispositivos são, por exemplo /dev/sda
(geralmente um HDD ou SSD), /dev/zero
(um arquivo que gera zeros quando lidos) ou /dev/random
(um arquivo que gera dados aleatórios quando lidos). Na verdade, todos os arquivos /dev/
incluídos são arquivos de dispositivo ou links que apontam para arquivos de dispositivo.
mknod
para criar arquivos de dispositivo onde quiser). Para sistemas de arquivos virtuais como /dev/
o inode, não ocupa espaço em disco, mas um pouco de memória.
ls
e du
relatar o tamanho de um dispositivo especial de caractere como /dev/null
ou /dev/random
produz 0 .