Имеется файл устройства с именем /dev/console
, (major,minor)
которого (5,1)
.
Когда я загружаюсь с последовательной консолью, он подключается к моему порту UART как /dev/ttyS0
.
Но когда я загружаюсь с отключенной последовательной консолью, /dev/console
, похоже, подключается в другом месте, где /dev/ttyS0
всегда подключается к одному физическому устройству, а именно UART0
.
Есть ли какое-либо указание (например, что-то в /proc
или /sys
), показывающее такую информацию? Я пробовал там, но ничего не нашел.
Я начинаю отслеживать источник ядра Linux, чтобы прояснить их отношения.
Может ли кто-нибудь дать мне несколько советов? Когда, где, как и что определять физическое устройство, к которому подключается /dev/console
?
EDIT: последнее открытие:
-
/dev/console
настраивается параметрами ядраconsole=
, который, в свою очередь, используетсяgetty
для открытияstdin/stdout/stderr
. Если не указаноconsole=
,/dev/null
открывается какstdin/stdout/stderr
. Но я не уверен, что они точно совпадают с/dev/console
, что подразумевает, что/dev/console
может подключаться к различным физическим устройствам. -
/dev/console
можно прочитать, если USB HID-клавиатура подключена, аconsole=
не настроен как UART. Поэтому/dev/console
==/dev/null
кажется мало смысла. Необходимо больше исследований.