テキストコンソールで画面の空白を無効にする


75

ほとんどがSLES10でLinuxクラスターを実行しています。サーバーの大部分はブレードであり、リモートコンソールからアクセスします。サーバールームに実際のコンソールがありますが、オフになっています。

目的を果たさず、迷惑なので、画面の消去を無効にしたいと思います。接続されているかどうかを確認するにはキーを押す必要がありますが、これは苦痛です。ランレベル3で実行しているため、コンソールはテキストモードであり、X11は含まれていません。


SLES10はSysV initを使用します。多くのディストリビューションはsystemdを使用していますが、これはArchの可能な解決策ですDebian 6および7システムはデフォルトでkbdを使用しますここをクリックしてください
基本

Debianについては、unix.stackexchange.com / questions / 238846を参照してください。
JdeBP

回答:


85

次の方法で、カーネルが仮想コンソールのブランキングに使用するタイムアウトを確認できます。

$ cat /sys/module/kernel/parameters/consoleblank
600

このファイルは読み取り専用で、タイムアウトは秒単位で指定されます。現在のデフォルトは10分です。

仮想コンソールで次のコマンドを入力すると、その値を変更できます(xterm内にいる場合は、たとえばCtrl+ Alt+を押して仮想コンソールに変更する必要がありますF1)。

$ setterm -blank VALUE

新しいVALUEは分単位で指定されます。値0はブランキングを無効にします:

$ cat /sys/module/kernel/parameters/consoleblank
600
$ setterm -blank 0
$ cat /sys/module/kernel/parameters/consoleblank
0

settermには他の節電関連オプションがあり、最も便利な組み合わせは次のようです。

$ setterm -blank 0 -powersave off

したがって、起動時に仮想コンソールのブランキングを永続的/自動的に無効にするには、次のいずれかを実行できます。

  1. consoleblank=0カーネルパラメータに追加します(grub設定を編集します)
  2. または同等の起動スクリプトにsetterm -blank 0コマンドを追加しrc-localます
  3. すべての仮想コンソールに出力されるため、setterm出力を追加します。/etc/issue/etc/issue

    # setterm -blank 0 >> /etc/issue

上記から1つを選択してください。


2
PS: Ubuntu 11.10システム(Thinkpad X200)で、カーネルによるコンソールブランキングが実行中のX11セッションを妨げるバグに気付きました。つまり、最後のキーがX11ディスプレイの空白を押してからちょうど10分後に、仮想コンソールに切り替えてX11画面を戻す必要があります(ビデオの再生中など非常に迷惑です)。これは、X11でのDPMS /スクリーンセーバー関連の設定とは無関係です(考えてみてくださいxset)。したがって、上記のような仮想コンソールのブランキングを無効にすることは、影響を受けるシステムの迅速な回避策です。
maxschlepzig

うーん。何らかの理由で/sys/module/kernel/parameters/consoleblank、CentOS 5.xサーバーに表示されません。別の名前で設定できますか?
マイクB

1
RHEL 5および6では、配置すること/bin/setterm -blank 0 -powerdown 0 -powersave off/etc/rc.localうまくいくことがわかりました。ただし、RHEL 7では失敗します。consoleblank=0カーネルパラメータへの追加は、そのプラットフォームで機能します。
デビッドC.

7
実際にsetterm仮想コンソールで実行する必要はないことに注意してください。リダイレクトすることもできます:setterm -blank 0 > /dev/tty1正常に動作します。またはsetterm -blank < /dev/tty1、tty1から現在の値を照会するかsetterm -blank force < /dev/tty1、強制的にブランキングするために使用できます。
アレクサンダーアメルキン

@AlexanderAmelkin-/ dev / tty1への/からのリダイレクトはRHEL 7では機能しません。それを行うためにどのディストリビューションを使用していましたか?/ dev / tty1は確かにローカルコンソールですが、それも/ dev / consoleも何もしないようです。
ポール

15

これを使ってみてください:

setterm -blank

1
@markus_b:このコマンドをinitスクリプトに追加します(/etc/init/markus-console.confUpstartを使用する場合や、SysVinitに/etc/init.d/markus-console.shシンボリックリンクを追加する場合/etc/rd?.d、実際のSuSEの場所はわかりません)。
ジル

2
@mattdm、真実ではない- systemd通常rc-local互換性サービスが付属しています-または、カスタムサービスを簡単に追加できます
...-maxschlepzig

3
@mattdmそのコマンドを実行するユニットを書くことができないのはなぜですか?
キリアス

1
ヒント:最初にtmuxを終了するか、これは機能しません。
コーディヘス14


14

によると:https : //wiki.archlinux.org/index.php/Display_Power_Management_Signaling#DPMS_Interaction_in_a_console_with_setterm

画面がオフになるのを防ぎます(コンソールで)

$ setterm -blank 0 -powerdown 0

または、次のコマンドを使用して、コンソールのブランキングを永続的に無効にすることができます。

# echo -ne "\033[9;0]" >> /etc/issue


3
2番目のソリューションは、Marvell ARM Debianの魅力のように機能します。他のすべてのソリューションは何もしません。
アレクセイスビリドフ

13

私は次の構成を実装してテストしましたが、これは今のところ私の主力であるsles10で正常に動作します。

/etc/init.d/boot.local

追加

setterm -blank

それだけで十分なようです。Uku LoskitとGillesが正しい方向に押してくれてありがとう。


1
私はあなたの回答を容赦なく編集しましたので、気に入らない場合は遠慮なくロールバックしてください。また、実際の解決策であるため、回答を受け入れてください。実際により良い回答がある場合、それが実際の回答につながったことに感謝しているという理由だけで、回答を受け入れるべきではありません。
シェパン

申し訳ありませんが、元のバージョンの方が好きです。
markus_b

トップボードの回答を追加する必要がありました-システムボードのipmiがこの両方の部分を持っていなかった場合、愚かになったので省電力してください。使用する間設定を保持しないので十分であり、これらの機能がウィンドウをキックするとフォアグラウンドにポップし、ウィンドウを約4種類のサイズで1秒ごとまたは2つずつ循環させ始め、ウィンドウをキャッチして手動でサイズ変更することはほぼ不可能になります/パワーセーブから用語をキックアウト:(
ケンドリック

13

唯一の永続的な解決策はconsoleblank=0、カーネルコマンドラインに追加することです。次の場所で値(デフォルトは600秒)を表示できます。

/sys/module/kernel/parameters/consoleblank

(ファイルは読み取り専用であることに注意してください)。consoleblankの値を変更する唯一の方法は、新しいカーネルコマンドラインオプションで再起動することです。


3
最後の文は間違っています-の値を変更するために再起動する必要はありませんconsoleblank。私の答えをご覧ください。
maxschlepzig

確実に動作するためにsetterm -blankが見つかりません。ログアウトしたり、他の仮想端末に切り替えた後にリセットされることがあります。
-amcnabb

この永続的な設定をgrubで追加するには、/ boot / grub / grub.confを編集し、「kernel / boot / vmlinuz ...」で始まる行にconsoleblank = 0を追加します。次に再起動します。
ホイレン14

1
ここで「のみ」は文字列の単語のように見えます
...-notlesh

5

ユーザーのログイン後に画面が空白にならないようにしたい場合は、それぞれのユーザーに追加setterm -powersave off -blank 0するだけ$HOME/.bash_profileです。


5

私はこの問題に本当に困惑しました。settermと/ dev / tty0からのリダイレクトを使用した上記のすべてのトリックは、私のsshからは機能しませんでした。

それから私はそれを無効にする方法を実現しました:

TERM=linux setterm -blank 0 -powerdown 0  -powersave off >/dev/tty0 </dev/tty0

TERM = linuxはデフォルトのTERM(私のマシンではxterm-256color)を置き換え、settermがtty0から適切なパラメーターを照会するのに役立ちます。

結果を確認するには

cat /sys/module/kernel/parameters/consoleblank

0でなければなりません。600であれば、トリックはうまくいきませんでした。


3

/usr/bin/setterm -powerdown 0 また助けるかもしれない

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.