Como Rinzwind mencionou corretamente, /dev/null
é criado em cada inicialização , mas especificamente cada dispositivo incluindo /dev/null
é criado pelo script MAKEDEV, que é referenciado em vários scripts /etc/init
, conforme mostrado abaixo:
xieerqi:$ sudo grep -iR "makedev" /etc 2 > /dev/null
[sudo] password for xieerqi:
xieerqi:$ sudo grep -iR "makedev" /etc 2> /dev/null
[sudo] password for xieerqi:
/etc/init/mounted-dev.conf: /sbin/MAKEDEV std fd ppp tun
/etc/init/mounted-dev.conf: /sbin/MAKEDEV console
/etc/init.d/udev:create_dev_makedev() {
/etc/init.d/udev: if [ -e /sbin/MAKEDEV ]; then
/etc/init.d/udev: ln -sf /sbin/MAKEDEV /dev/MAKEDEV
/etc/init.d/udev: ln -sf /bin/true /dev/MAKEDEV
/etc/init.d/udev: create_dev_makedev
Os /sbin/MAKEDEV
e /sbin/makedev
são o mesmo script, que tem nas configurações de cabeçalho de todos os dispositivos e suas respectivas permissões. Em particular, no makedev meu sistema cria o dispositivo nulo com $public
permissões:
makedev null c 1 3 $public
No topo, o público é definido como public=" root root 0666"
Você deve poder abrir este script e modificar as permissões conforme necessário ou verificar se elas não são alteradas de forma alguma.
No entanto, se eles estiverem inalterados, é altamente recomendável relatar esse comportamento como um bug e, para sua própria conveniência, provavelmente mudar para gdm
por enquanto.