Como restaurar o arquivo "/dev/null"
Dica publicada em Linux / Miscelânea
Como restaurar o arquivo "/dev/null"
Os arquivos "/dev/null" e "/dev/zero" são arquivos especiais do sistema. Em linhas genéricas, tudo que for redirecionado para eles é descartado.
Exemplo:
echo "teste" > /dev/null
Este recurso é muito usado em shell scripts, quando não queremos que uma saída de erro seja mostrada na tela.
Exemplo:
rmdir pasta_vazia pasta_cheia 2>/dev/null
Neste caso, o comando rmdir emitirá um erro quando tentar apagar o diretório "pasta_cheia", mas a mensagem de erro será redirecionada ao arquivo "/dev/null". Ou seja, o usuário não verá a mensagem de erro na tela.
Tentando seguir esta linha de raciocínio, tentei mover um arquivo comum para "/dev/null" para ver qual seria o resultado:
# mv teste.txt /dev/null
O resultado foi que o arquivo "/dev/null" foi sobrescrito e deixou de ser "especial". E isso pode fazer com que algumas aplicações tenham comportamentos estranhos.
Para recriar o arquivo "/dev/null", ou "/dev/zero", da forma correta:
# mknod -m 666 /dev/null c 1 3
# mknod -m 666 /dev/zero c 1 5
Para mais informações, consulte:
man null
Exemplo:
echo "teste" > /dev/null
Este recurso é muito usado em shell scripts, quando não queremos que uma saída de erro seja mostrada na tela.
Exemplo:
rmdir pasta_vazia pasta_cheia 2>/dev/null
Neste caso, o comando rmdir emitirá um erro quando tentar apagar o diretório "pasta_cheia", mas a mensagem de erro será redirecionada ao arquivo "/dev/null". Ou seja, o usuário não verá a mensagem de erro na tela.
Tentando seguir esta linha de raciocínio, tentei mover um arquivo comum para "/dev/null" para ver qual seria o resultado:
# mv teste.txt /dev/null
O resultado foi que o arquivo "/dev/null" foi sobrescrito e deixou de ser "especial". E isso pode fazer com que algumas aplicações tenham comportamentos estranhos.
Para recriar o arquivo "/dev/null", ou "/dev/zero", da forma correta:
# mknod -m 666 /dev/null c 1 3
# mknod -m 666 /dev/zero c 1 5
Para mais informações, consulte:
man null
Abs.