텍스트 콘솔에서 화면 비우기 비활성화


75

나는 주로 SLES10에서 Linux 클러스터를 실행하고 있습니다. 서버는 대부분 블레이드이며 원격 콘솔을 통해 액세스합니다. 서버 룸에 실제 콘솔이 있지만 전원이 꺼져 있습니다.

목적이 없으며 성가신 화면 블랭킹을 비활성화하고 싶습니다. 연결되어 있는지 확인하려면 키를 눌러야합니다. 우리는 런레벨 3에서 실행 중이므로 콘솔은 텍스트 모드에 있으며 X11은 관여하지 않습니다.


SLES10은 SysV init를 사용합니다. 많은 배포판에서 systemd를 사용합니다. 여기 Arch 가능한 솔루션이 있습니다. 데비안 6 및 7 시스템은 기본적으로 kbd를 사용합니다 . 여기를 클릭하십시오 .
basic6

데비안의 경우 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

위의 대안 중 하나를 선택하십시오.


2
추신 : 우분투 11.10 시스템 (Thinkpad X200)에서 커널에 의한 콘솔 블랭킹이 실행중인 X11 세션을 방해하는 버그를 발견했습니다. 즉, 마지막 키를 누른 후 정확히 10 분 후에 X11 디스플레이 블랭크를 누르고 X11 화면을 다시 가져 오려면 가상 콘솔로 전환해야합니다 (예 : 비디오 재생 중 매우 성가신). 이것은 X11의 DPMS / 스크린 세이버 관련 설정 (생각 xset등) 과 무관 합니다. 따라서 위에서 설명한대로 가상 콘솔 블랭킹을 비활성화하면 영향을받는 시스템의 빠른 해결 방법입니다.
maxschlepzig

흠. 어떤 이유로 /sys/module/kernel/parameters/consoleblankCentOS 5.x 서버에 표시되지 않습니다 . 다른 이름으로 설정할 수 있습니까?
Mike B

1
RHEL 5, 6, 나는 퍼팅 발견 /bin/setterm -blank 0 -powerdown 0 -powersave off에있는 것은 /etc/rc.local잘 작동합니다. 그러나 RHEL 7에서는 실패합니다. consoleblank=0커널 매개 변수를 추가하면 해당 플랫폼에서 작동합니다.
David C.

7
실제로 setterm가상 콘솔에서 실행할 필요는 없습니다 . 당신은 그것으로 리디렉션 할 수도 있습니다 : 잘 setterm -blank 0 > /dev/tty1작동합니다. 또는 setterm -blank < /dev/tty1tty1에서 현재 값을 쿼리하거나 setterm -blank force < /dev/tty1블랭킹을 강제 하는 데 사용할 수 있습니다 .
Alexander Amelkin

@AlexanderAmelkin-RHEL 7에서는 / dev / tty1과의 리디렉션이 작동하지 않습니다. 어떤 배포판을 사용하고 있습니까? / dev / tty1은 실제로 로컬 콘솔이지만, 그 / dev / console도 아무것도하지 않는 것 같습니다.
Paul

15

이것을 사용해보십시오 :

setterm -blank

1
@markus_b :이 명령을 init 스크립트에 추가하십시오 (SyVinit 에 대해 /etc/init/markus-console.confUpstart 또는 /etc/init.d/markus-console.sh더하기 symlink 를 사용하는 경우 /etc/rd?.d실제 SuSE 위치를 알 수 없음).
Gilles

2
@mattdm, 사실이 아님- systemd보통 rc-local호환성 서비스가 제공됩니다 – 또는 쉽게 맞춤 서비스를 추가 할 수 있습니다 ...
maxschlepzig

3
@mattdm 왜 그 명령을 수행하는 유닛을 작성할 수 없습니까?
kyrias

1
힌트 : tmux를 먼저 종료 하십시오 . 그렇지 않으면 작동하지 않습니다.
코디 헤스


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
두 번째 솔루션은 Marvell ARM Debian의 매력처럼 작동합니다. 다른 모든 솔루션은 아무 것도하지 않습니다.
Alexey Sviridov

13

나는 현재 구성 요소 인 sles10에서 잘 작동하는 다음 구성을 구현하고 테스트했습니다.

에서

/etc/init.d/boot.local

더하다

setterm -blank

그것이 필요한 전부인 것 같습니다. 올바른 방향으로 추진해 주신 Uku Loskit과 Gilles에게 감사합니다.


1
무자비하게 답변을 편집 했으므로 마음에 들지 않으면 주저하지 말고 롤백하십시오. 또한 실제 솔루션이므로 답변을 수락하십시오. 실제로 더 나은 답변이있는 경우 실제 답변으로 이어지는 감사에 대한 답변을 수락해서는 안됩니다.
tshepang

죄송합니다. 원본 버전이 더 좋습니다.
markus_b

내 시스템 보드의 ipmi 가이 부분을 모두 가지고 있지 않다면 어리석은 것처럼 가장 많이 투표 된 답변을 추가해야했습니다. 슬프게도 그것은 사용 사이에 설정을 유지하지 못하고 이러한 기능이 창에서 튀어 나올 때 전경으로 튀어 나와 매 초마다 한 번씩 약 4 가지 다른 크기를 통해 창을 순환하기 시작합니다. 절전 모드에서 용어를 걷어차십시오 :(
Kendrick

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을 추가하십시오. 그런 다음 재부팅하십시오.
Hoylen

1
"only"는 여기에 문자열 단어처럼 보입니다 ...
notlesh

5

사용자 로그인 후 화면이 나타나지 않도록 setterm -powersave off -blank 0하려면 $HOME/.bash_profile각 사용자 를 추가 하면 됩니다.


5

나는이 문제에 정말로 매혹되었다. setterm을 사용하고 / dev / tty0에서 / 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.