Экранное поведение очищения консоли Linux изменения

Как я изменяю экранное поведение очищения на виртуальных терминалах Linux?

Например, если я переключусь на VT от X, вход в систему, и оставлю систему в покое в течение приблизительно 5 минут, то экран очистит как экранная заставка. Это возвращается с любым нажатием клавиши, как экранная заставка.

Главным образом я просто хочу изменить тайм-аут, но я также интересуюсь другими настройками.

Если это помогает, одна из моих систем запускает Ubuntu 10.04 с графическими драйверами запаса. fbset показывает консоль с помощью radeondrmfb устройство кадрового буфера.

38
задан 14.06.2010, 19:34

2 ответа

setterm из ответа @whitequark разумный инструмент пространства пользователя, но это не целая история.

Консольное поведение очищения по умолчанию испеклось в ядро во время компиляции. Это настраивается во время начальной загрузки с параматерью consoleblank =, или в пространстве пользователя с setterm. Из документации ядра (kernel-parameters.txt):

consoleblank=  [KNL] The console blank (screen saver) timeout in
               seconds. Defaults to 10*60 = 10mins. A value of 0
               disables the blank timer.

Вот опции, их значения по умолчанию в моей системе Ubuntu и их сферы влияния:

  • setterm -blank [0-60]; всегда отчеты 0 при запросах; эффективный при выполнении на реальном VT; влияние весь реальный TTYs; не эффективный, когда выполнено на экранных сессиях на VT.
  • setterm -powerdown [0-60]; всегда отчеты "3]" (??); кажется, не имеет эффекта. Ядра Ubuntu не включают APM_DISPLAY_BLANK, и это могло быть связано.
  • consoleblank=N; значения по умолчанию к 600 (10 минут); влияние весь реальный VTs; влияние экранирует сессии в VT; никакой способ установить при выполнении.

Так мои опции для изменения значения по умолчанию одно из следующего:

  1. Добавить setterm -blank X (X в минутах, 0 для отключения) к оболочке init файл как .bashrc.
  2. Добавить setterm -blank X к/etc/rc.local.
  3. Добавить consoleblank=Y (Y в секундах, 0 для отключения) к командной строке ядра путем добавления его к спискам параметров в/etc/default/grub, или GRUB_CMDLINE_LINUX или GRUB_CMDLINE_LINUX_DEFAULT. (Не забывайте update-grub.)
42
ответ дан 07.12.2019, 08:49

Попробовать setterm -blank $minutes (или передайте 0 для отключения); -powersave опция может также быть связана. setterm имеет много других полезных опций, также.

Если Вы хотите установить эти атрибуты на системном запуске, рассмотрите запись initscript. Это - просто сценарий, помещенный в /etc/init.d каталог. Позвольте ему быть названным setterm:

#!/bin/sh
[ "$1" == "start" ] || exit 0 # only initialize everything when called as /etc/init.d/setterm start
for term in /dev/tty[0-9]*; do # select all ttyNN, but skip ttyS*
    setterm -blank 0 >$term <$term
    setterm -powersave off >$term <$term
done

Затем сделайте это исполняемым файлом:

# chmod +x /etc/init.d/setterm

И наконец, создайте/etc/rcX.d символьные ссылки (Debian путь):

# update-rc.d setterm defaults

(Если Вы устанете от того поведения, сделать # update-rc.d -f setterm remove. Отметьте это -f должен быть первый аргумент).

9
ответ дан 07.12.2019, 08:49

Теги

Похожие вопросы