Я недавно начал использовать свои собственные ядра в Ubuntu, и они работают без проблем, за исключением того, что у меня нет текстовой консоли, когда я нажимаю любое из сочетаний клавиш Ctrl+Alt+Fn. Я только вижу экран-заставку Ubuntu. Я думал, что это имеет некоторое отношение к графическим настройкам в конфигурации ядра в соответствии с Драйверами устройств-> Графическая поддержка, особенно настройки Кадрового буфера. Мне активировали все, которое активно в ядре, обеспеченном Ubuntu, за исключением fb драйверов для определенных чипсетов кроме nvidiafb
, так как у меня есть карта Nvidia. Вот включенные настройки:
CONFIG_FB=y
CONFIG_FB_CMDLINE=y
CONFIG_FB_NOTIFY=y
CONFIG_FB_DDC=m
CONFIG_FB_BOOT_VESA_SUPPORT=y
CONFIG_FB_CFB_FILLRECT=y
CONFIG_FB_CFB_COPYAREA=y
CONFIG_FB_CFB_IMAGEBLIT=y
CONFIG_FB_SYS_FILLRECT=m
CONFIG_FB_SYS_COPYAREA=m
CONFIG_FB_SYS_IMAGEBLIT=m
CONFIG_FB_SYS_FOPS=m
CONFIG_FB_DEFERRED_IO=y
CONFIG_FB_BACKLIGHT=y
CONFIG_FB_MODE_HELPERS=y
CONFIG_FB_TILEBLITTING=y
CONFIG_FB_VESA=y
CONFIG_FB_EFI=y
CONFIG_FB_NVIDIA=m
CONFIG_FB_NVIDIA_I2C=y
CONFIG_FB_NVIDIA_BACKLIGHT=y
Интересно, какая установка ядра ответственна за текстовую консоль. Моя политика конфигурирования моего собственного ядра состояла в том, чтобы отключить все, что я предположил, что мне не нужно, особенно все загружаемые модули ядра для определенных устройств, которые включены в ядро дома. Конечно, я оставил много опций без изменений, поскольку у меня не было подсказки, о чем они были.
Для моих пользовательских ядер я всегда использовал последний источник ядра, зависевший от linux-source
пакет, который в настоящее время находится в версии 4.15.0-45.48
с 29 января. Я использую Ubuntu 18.04 LTS.
Обновление: Я скомпилировал новое ядро с опцией CONFIG_FRAMEBUFFER_CONSOLE=y
. С этим ядром у меня действительно есть текстовая консоль, однако, собственный драйвер Nvidia, который я использовал, не загружается. Что я должен сделать, чтобы иметь тот драйвер для моего нового ядра?
Работает! Я должен был включать опцию ядра
CONFIG_FRAMEBUFFER_CONSOLE=y
После начальной загрузки нового ядра, однако, не присутствовал собственный драйвер Nvidia. Я должен был сделать a
dpkg-reconfigure nvidia-dkms-390
для создания того драйвера для моего ядра. Это также создает модуль nvidia.ko
для универсального ядра, которое удивляет меня, поскольку то ядро действительно уже использовало драйвер nvidia
. Теперь я задаюсь вопросом, где тот модуль ядра был расположен, если не был в /lib/modules/4.15.0-45-generic/updates/dkms/nvidia.ko
?