archlinux 上 /dev/null 是如何创建的

archlinux 上 /dev/null 是如何创建的

只是想知道在我的 archlinux 机器上是如何创建 /dev/null 的。

我调查了乌德夫规则/usr/lib/udev/rules.d,但没有与名称相关的规则null

> ag null /usr/lib/udev/rules.d/*

并且/etc/udev/rules.d是空的。所以我跑:

> udevadm test /class/mem/null
...rules ignored.
11859 strings (99853 bytes), 9914 de-duplicated (79634 bytes), 1946 trie nodes used
handling device node '/dev/null', devnum=c1:3, mode=0666, uid=0, gid=0
preserve permissions /dev/null, 020666, uid=0, gid=0
preserve already existing symlink '/dev/char/1:3' to '../null'
ACTION=add
DEVMODE=0666
DEVNAME=/dev/null
DEVPATH=/devices/virtual/mem/null
MAJOR=1
MINOR=3
SUBSYSTEM=mem
USEC_INITIALIZED=3266478398

好像有一个规则匹配null

而有了systemd,有一种东西叫做systemd-tmpfiles-setup-dev.service。但我仍然不知道它是否创建/dev/null以及如何创建?

> systemctl list-units | grep tmpfiles-setup-dev
systemd-tmpfiles-setup-dev.service                                                          loaded active exited    Create Static Device Nodes in /dev

答案1

/dev/null由内核在引导时创建,因为内核需要它。这并不udev具体。

相关内容