Към съдържанието

FreeBSD – modesetting на виртуалните конзоли

Наскоро ми се наложи да използвам FreeBSD без графична среда във виртуалка.

Оказа се, че „новите“ (вече не са много нови) виртуални конзоли (vt, или Newcons), които използват, работят с KMS и съответно все още няма имплементация на VESA за тях, което означава, че не можете лесно да си сменяте режимите на екрана и оставате на 640×480, ако няма KMS драйвер за видео адаптера (познайте има ли за този на виртуалката).

Решението е да си върнете старите конзоли, като се отказвате от благинките на новите и поддръжката на KMS за сметка на лесна възможност за modesetting.

За целта, в /boot/loader.conf:

kern.vty=sc

След reboot, VESA kernel module-а си зарежда автоматично.

Гледаме какви режими се поддържат:

vidcontrol -i mode

Задаваме избрания режим, например:

vidcontrol MODE_261

За да остане и след reboot, в /etc/rc.conf:

allscreens_flags="MODE_избранрежим"

Ако все пак правите това упражнение на истинско желязо, за което има KMS драйвер, може да си ползвате новите конзоли, като кажете предварително какъв mode искате (това отново в /boot/loader.conf):

Примерно:

kern.vt.fb.default_mode="1366x768"