Повернуть консоль при запуске (Debian)

11

Я хочу повернуть консоль (не X-сервер) на 90 градусов (по часовой стрелке).

Следующее, кажется, работает для меня echo 1 > /sys/class/graphics/fbcon/rotate:; однако я предпочел бы использовать параметр ядра в Grub, а не включать вышеупомянутое в /etc/rc.localсценарий.

Документация fbcon описывает следующий вариант , который может быть передан в ядро: fbcon=rotate:<n>. К сожалению, когда я изменяю /etc/default/grubи модифицирую GRUB_CMDLINE_LINUXстроку следующим образом:

GRUB_CMDLINE_LINUX="fbcon=rotate_all:1"

... это не работает. Я тоже побежал update-grubдо перезагрузки.

Я также попробовал это:

GRUB_CMDLINE_LINUX="fbconsole=rotate_all:1"

Еще ничего. есть идеи?

BMiner
источник
Почему вы не хотите редактировать rc.local?
Эмануэль Берг

Ответы:

10

Понял это. Вы можете нужно добавить , video=efifbчтобы убедиться , что используется консоль фреймбуфера:

GRUB_CMDLINE_LINUX="video=efifb fbcon=rotate:1"

РЕДАКТИРОВАТЬ : Драйвер efifb предназначен только для прошивки EFI, особенно на компьютерах Apple на базе Intel. Тем не менее, как я выяснил, это также работает для ПК не Apple. Я использую проприетарные драйверы nVidia в моей системе Linux, и драйвер efifb работает довольно хорошо. Я предполагаю, что это работает для меня, потому что я использую драйверы nVidia, и «родной» драйвер fbdev конфликтует с ними.

Если честно, я не до конца понимаю, почему драйвер efifb заставляет вещи работать, но если кто-то другой делает это (или если вы можете заставить вещи работать с другим драйвером кадрового буфера с установленными драйверами nVidia), пожалуйста, прокомментируйте ниже. Спасибо!

BMiner
источник
2
Большое предостережение: это применимо только в том случае, если ваша машина поставляется с BIOS с поддержкой EFI.
aperezbios
Спасибо за размещение вашего решения! Если это действительно помогло вам, пожалуйста, примите это, чтобы вопрос мог быть помечен как ответ.
Тердон
@aperezbios - Ты уверен, что это так? Я почти уверен, что видел, как это работает на обычной системе BIOS.
BMiner
@BMiner +1. С опцией "video = efi fb" понятно, что это работает только на efi BIOS. Возможно, есть другая команда для не-efi BIOS.
MariusMatutiae
@MariusMatutiae - Действительно. Эта video=efifbчасть не нужна, если вы используете прошивку BIOS или загружены в режиме совместимости BIOS с прошивкой EFI, хотя, вероятно, это тоже не повредит. Технически говоря , не существует такой вещи, как «EFI BIOS», только прошивка EFI или прошивка BIOS.
BMiner
2

Существует небольшая, но важная разница между документацией и тем, что вы написали в своем конфигурационном файле:

… Следующая опция, которую можно передать ядру: fbcon = rotate : <n>

Пока вы написали

fbcon = rotate_all : 1

rotate_allне является допустимым ключевым словом. Если вы пропустите _allсуффикс, он должен работать:

GRUB_CMDLINE_LINUX="fbcon=rotate:1"

труба
источник
Ссылка на документацию по ссылкам упоминается rotate_allкак действительное имя в /sys/class/graphics/fbconкаталоге sysfs. Просто аргументы ядра не используют тот же набор слов, что и атрибуты sysfs.
Бен Фойгт