Efeitos da montagem / (raiz do sistema de arquivos) com opção nodev

2

Eu estou querendo saber sobre os efeitos da configuração da opção nodev para / mount em /etc/fstab .

Pelo que entendi, nodev impede a interpretação de nós especiais, para que você possa evitar que invasores ou usuários invasores montem e usem seus próprios nós de dispositivos para destruir o sistema.

Meu primeiro pensamento foi que a montagem / com nodev tornaria /dev completamente inútil e impediria que o sistema fosse inicializado corretamente porque nenhum dispositivo (incluindo as partições montadas em /home e /usr ) poderia ser usado.

Então, imagine minha surpresa quando eu testei em uma instalação do Ubuntu e tudo apareceu para funcionar normalmente. /dev/zero e /dev/null fizeram o que deveriam. Eu não tinha outros nós de dispositivo com os quais eu pudesse fazer nada, como soquetes, mas não sei o que fazer com eles de qualquer maneira.

  1. Alguém pode explicar o que aconteceu e por que a instalação continuou a funcionar?

  2. O sistema implicitamente ignora coisas estúpidas como montar / com nodev ? Por falar nisso, o manuseio é consistente em diferentes distribuições ou núcleos?

  3. E voltando à pergunta original: há realmente (mal) efeitos que eu não consegui observar / desencadear?

por aerobot 31.03.2016 / 16:12

2 respostas

1

Se você emitir o comando mount (ou cat / etc / mtab), verá que / dev é seu próprio sistema de arquivos, separado de /:

...
udev on /dev type devtmpfs (rw,mode=0755)
...

No meu disco, parece que não tenho nenhum arquivo de dispositivo no sistema de arquivos raiz. Eu procurei por eles com:

sudo find / -xdev -type b -o -type c

Montar este sistema de arquivos com nodev, portanto, não teria nenhum efeito perceptível.

    
por 31.03.2016 / 16:59
-1

Bem, acho que você tem uma visão errada de como essas coisas funcionam juntas. A instalação continuou a funcionar, porque o significado da propriedade nodev é enviar a mensagem para não ameaçar como um dispositivo qualquer novo dispositivo criado na partição gerenciada.

O diretório / dev descobre os dispositivos com base no daemon udev . As regras de como representará os dispositivos no dev podem ser encontradas em /lib/udev/rules.d, já que cada arquivo tem um postfix com .rules.

    
por 31.03.2016 / 16:58