$ <b>ls -l /dev/fd0 /dev/null</b>
brw-rw---- 1 root floppy 2, 0 Nov 22 19:48 /dev/fd0
crw-rw-rw- 1 root root 1, 3 Nov 22 19:48 /dev/null
$ <b>stat -c '%n: %F, major %t minor %T' /dev/fd0 /dev/null</b>
/dev/fd0: block special file, major 2 minor 0
/dev/null: character special file, major 1 minor 3
Большинство номеров устройств являются фиксированными (т.е. /dev/null
всегда будет символьным устройством 1:3
), но в Linux некоторые выделяются динамически.
$ <b>cat /proc/devices</b>
Character devices:
...
10 misc
...
Block devices:
...
253 mdp
254 device-mapper
$ <b>cat /proc/misc</b>
...
57 device-mapper
...
Например, в этой системе просто так получается, что /dev/mapper/control
будет c:10:57
, а остальные /dev/mapper/*
будут b:254:*
, и это может отличаться от одного цикла загрузки к другому - или даже как модули загружаются / выгружаются, а устройства добавляются / удаляются.
Вы можете изучить регистрацию этих устройств далее в /sys
.
$ <b>readlink /sys/dev/block/2:0</b>
../../devices/platform/floppy.0/block/fd0
$ <b>cat /sys/devices/platform/floppy.0/block/fd0/dev</b>
2:0
$ <b>readlink /sys/dev/char/1:3</b>
../../devices/virtual/mem/null
$ <b>cat /sys/devices/virtual/mem/null/dev</b>
1:3