Tenho um Debian 12
sistema que console-only
não possui interface gráfica/ambiente de trabalho.
Desliguei a tela usando setterm --blank force
o próprio dispositivo e agora não consigo ligá-la novamente pressionando uma tecla porque force
isso faz com que a entrada do teclado seja ignorada.
Tenho acesso por meio SSH
de um ambiente Debian 12 Desktop, mas quando entro setterm -blank 0
como SSH
, root
recebo a mensagem terminal xterm-256-color does not support --blank
.
Também não consigo alternar entre diferentes TTYs
no próprio dispositivo.
Mesmo quando alterno para um TTY no ambiente de trabalho Debian e uso o setterm --blank 0
, não recebo nenhuma mensagem de erro, mas nada acontece.
Com setterm --blank poke
, eu obtenho cannot force unblank
.
Existe outro comando que core utilities
eu possa usar para ativar a tela sem instalar ferramentas adicionais ?
Caso contrário, vou apenas reiniciar.
Para ligar a tela novamente após ela ter sido desligada com
setterm --blank force
, você pode usar o seguinte comando de um arquivoTTY
.Faça login
ssh
no dispositivo e execute:sudo sh -c 'TERM=linux setterm --blank poke </dev/tty1'
sudo
Concede privilégios de superusuárioNo próprio dispositivo, posso executar
setterm --blank force
para desligar a tela com um usuário regular.Por ssh quando executo
setterm --blank force
com um usuário regular,eu recebo
setterm: cannot force blank: Inappropriate ioctl for device
e comsh -c 'TERM=linux setterm --blank poke </dev/tty1'
ou
sh: 1: cannot open /dev/tty2: permission denied
eu recebo
setterm: cannot force blank: Operation not permitted
então preciso de direitos sudo/root para executar o comando via ssh.
sh -c
Executa a sequência de comando incluída em um novo shellTERM=linux
Define o tipo de terminalsetterm --blank poke
Use-o para executarsetterm
para acordar a tela compoke
</dev/tty1
Especifica que a entrada vem do primeiro terminal virtualExplicação curta:
Redirecionamento
</dev/tty1
| Isto especifica que o comando está lendo de/dev/tty1
, que é o primeiro terminal virtual. Isto é necessário porquesetterm
precisa interagir com o console diretamenteDefinir
TERM=
|TERM=linux
é importante porque define o tipo de terminal paralinux,
garantir quesetterm
você possa interpretar corretamente os recursos do terminal e executar as ações necessáriasUsando
sudo
| Requer permissões elevadas para interagir diretamente com o terminal, por issosudo
é necessárioE agora posso desligar a tela
ssh
com:sudo sh -c 'TERM=linux setterm --blank force </dev/tty1'
Editar:
Parece que não importa se eu uso
tty1
,tty4
, ou qualquer outrottyX
no comando, ele ainda funciona com</dev/tty4
etc.