/dev/random
e /dev/urandom
não são arquivos comuns ... eles são dispositivos especiais de caractere. No Linux, dispositivos especiais de bloco e dispositivos especiais de caractere são interfaces do sistema de arquivos para um driver de dispositivo do sistema operacional. Se você executar o comando ls -l /dev
, verá as listagens que têm um "b" [para bloco] ou um "c" [para caractere] na primeira coluna. Por convenção, eles são colocados na árvore de diretórios / dev, mas um dispositivo especial pode ser criado em qualquer lugar no sistema de arquivos.
Dispositivos especiais de bloco e caractere não são criados copiando ou movendo ... eles são criados usando o comando mknod
.
Normalmente, /dev/random
e /dev/urandom
são criados quando o sistema operacional é inicializado. Os dispositivos são criados dinamicamente quando o gerador de números aleatórios está em execução. Se você reinicializar seu sistema Linux e eles não estiverem sendo criados automaticamente, será necessário verificar se algo foi alterado na configuração do kernel para desativá-lo.
Se os arquivos estiverem desaparecendo ou forem excluídos acidentalmente, eles poderão ser recriados da seguinte forma (como root):
/bin/mknod -m 0666 /dev/random c 1 8
/bin/mknod -m 0666 /dev/urandom c 1 9
/bin/chown root:root /dev/random /dev/urandom