У меня nomodeset при загрузке ядра, так как я хочу переключаться между проприетарными драйверами nouveau и nvidia в течение сеанса.
Однако nouveau не загружается, жалуясь, что kms не включен (выдержка из xorg.log):
(II) NOUVEAU driver Date: Tue Mar 16 13:08:37 2010 +1000
(II) NOUVEAU driver for NVIDIA chipset families :
RIVA TNT (NV04)
RIVA TNT2 (NV05)
GeForce 256 (NV10)
GeForce 2 (NV11, NV15)
GeForce 4MX (NV17, NV18)
GeForce 3 (NV20)
GeForce 4Ti (NV25, NV28)
GeForce FX (NV3x)
GeForce 6 (NV4x)
GeForce 7 (G7x)
GeForce 8 (G8x)
(II) Primary Device is: PCI 01@00:00:0
drmOpenDevice: node name is /dev/dri/card0
drmOpenDevice: open result is 7, (OK)
drmOpenByBusid: Searching for BusID pci:0000:01:00.0
drmOpenDevice: node name is /dev/dri/card0
drmOpenDevice: open result is 7, (OK)
drmOpenByBusid: drmOpenMinor returns 7
drmOpenByBusid: drmGetBusid reports pci:0000:01:00.0
(II) [drm] nouveau interface version: 0.0.15
(EE) [drm] KMS not enabled
(EE) No devices detected.
Вот lsmod:
$ lsmod | grep nouv
nouveau 353208 0
ttm 40978 1 nouveau
drm_kms_helper 20369 1 nouveau
drm 143329 3 nouveau,ttm,drm_kms_helper
i2c_algo_bit 4225 1 nouveau
i2c_core 15819 5 nouveau,drm_kms_helper,drm,i2c_i801,i2c_algo_bit
button 4650 1 nouveau
Я что-то упустил или невозможно иметь nouveau без KMS? Я немного поискал, и все, что я нашел, указывает мне на включение kms в ядре.
Linux zen 2.6.32-5-xen-amd64 #1 SMP Tue Jun 14 12:46:30 UTC 2011 x86_64 GNU/Linux
решение1
https://wiki.archlinux.org/index.php/Nouveau#KMS
Kernel Mode-Setting (KMS) требуется драйвером Nouveau. Дополнительную информацию см. на странице KernelModeSetting.
Это из Arch wiki, но это справедливо для всех систем. Вы не можете использовать nouveau без KMS.
решение2
Для работы драйвера nouveau требуется KMS, поэтому его невозможно использовать, если в строке загрузки ядра в grub установлен параметр nomodeset.
Правильный способ удаления драйвера после загрузки — отключить фреймбуфер от драйвера, как описано здесь: