A tela liga automaticamente (xset dpms force off)


14

Estou usando xset dpms force offpara desligar manualmente minha tela para economizar energia. No entanto, ele liga novamente após algum tempo (20 - 40 segundos).

Distro: Ubuntu-Lucid

Placa gráfica: Intel 4500 MHD

A tentativa de etapas desta solução (desativar o protetor de tela ou a conexão sem fio) não funcionou. Pode ser devido a outros motivos, como dispositivos de rede (pacote mágico) ou USB?

Resultado de xset -p:

Keyboard Control:
  auto repeat:  on    key click percent:  0    LED mask:  00000000
  XKB indicators:
    00: Caps Lock:   off    01: Num Lock:    off    02: Scroll Lock: off
    03: Compose:     off    04: Kana:        off    05: Sleep:       off
    06: Suspend:     off    07: Mute:        off    08: Misc:        off
    09: Mail:        off    10: Charging:    off    11: Shift Lock:  off
    12: Group 2:     off    13: Mouse Keys:  off
  auto repeat delay:  500    repeat rate:  30
  auto repeating keys:  00ffffffdffffbbf
                        fadfffefffedffff
                        9fffffffffffffff
                        fff7ffffffffffff
  bell percent:  50    bell pitch:  400    bell duration:  100
Pointer Control:
  acceleration:  2/1    threshold:  4
Screen Saver:
  prefer blanking:  yes    allow exposures:  yes
  timeout:  0    cycle:  0
Colors:
  default colormap:  0x20    BlackPixel:  0    WhitePixel:  16777215
Font Path:
  /usr/share/fonts/X11/misc,/usr/share/fonts/X11/100dpi/:unscaled,/usr/share/fonts/X11/75dpi/:unscaled,/usr/share/fonts/X11/Type1,/usr/share/fonts/X11/100dpi,/usr/share/fonts/X11/75dpi,/var/lib/defoma/x-ttcidfont-conf.d/dirs/TrueType,built-ins
DPMS (Energy Star):
  Standby: 0    Suspend: 0    Off: 0
  DPMS is Enabled
  Monitor is On

1
Você o está usando manualmente na linha de comando ou xsetestá vinculado a algum atalho do teclado? No meu laptop irmão, esse comando foi vinculado a algumas teclas e, depois que o monitor foi desligado e ligado novamente, porque quando ele estava liberando a chave, o próximo evento foi emitido. Desligando-o após o problema de sono rápido resolvido: perl -e 'select(undef,undef,undef,.1)' && xset dpms force off- essa expressão perl dorme por 0,1 s.
Pbm

Eu costumava ter o problema da tecla de atalho também e é por isso que criou um ícone. Seu perl -e 'select(undef,undef,undef,.1)' && xset dpms force offcomando quando digitado no terminal fez o trabalho. Agora tente isso com o ícone de atalho.
Crdjer

O comando não funciona com o ícone de atalho.
Crdjer

Talvez aumente o sono (também usaria o comando "sleep n" para dormir n segundos); pode ser que você clique no ícone e mova o mouse (deslizando os dedos sobre o touchpad) envie eventos posteriores.
kasterma

não, não consigo executar dois comandos diretamente a partir de um atalho, vou tentar criar um script.
Crdjer

Respostas:


8

Parece ser um bug conhecido e você pode ler mais detalhes na barra de lançamento e nos fóruns do ubuntu . A questão é que, de alguma maneira, gnome-power-manageros xsetcomandos conflitam entre si.

A solução é executar xset dpms force offem um loop, um script python funciona para a maioria de nós.

Experimente e veja como vai.


4

Tente adicionar um sleep:

$ sleep 1; xset dpms force off

1
As respostas de uma linha geralmente não são as mais úteis, pois oferecem poucas explicações. Considere expandir sua resposta para explicar por que sua solução funciona ou com a documentação que suporta sua sugestão.
precisa saber é o seguinte

3

Teve este problema no laptop AMD / HP. Também executando 10.04.3 / 32, mesmo problema. Obtenha esta solução em outro fórum:

#!/bin/sh  
perl -e 'select(undef,undef,undef,.1)' && xset dpms force off

Coloquei isso em um arquivo sh, defini-o como executável e vinculei-o ao atalho do painel. Funcionou como um encanto, o monitor permanece desligado. Eu não tenho idéia do que diabos esse script perl estranho faz.


2
selectatperldoc.perl.org revela que é uma maneira de dormir 100ms . Dependendo do seu /bin/sleep, sleep 0.1pode conseguir o mesmo. (Não que eu entendo por que este sono é lá em tudo.)
sr_

1

Eu já tive esse problema antes, basicamente meu mouse estava causando isso, vire o lado quando você não estiver usando.


1
@oneofone ... Este não pode ser o problema no mycase. Eu tenho um laptop, portanto, sem mouse.
crodjer

1
+1 para neutralizar o voto negativo. Embora essa resposta não se aplique ao meu problema, ainda não é necessário votar negativamente.
Crdjer 12/11/14

1

Suponho que o loop tenha um sono, caso contrário eu não o usaria. Eu usei o cron com esse conjunto para executar a cada 5 minutos (digite crontab -ena linha de comando como seu usuário logado no X11):

*/5 * * * * /usr/bin/env DISPLAY=:0.0 xset -dpms

1

Se nenhuma das opções acima funcionou para você. Eu tive o mesmo problema em uma máquina hortelã linux de 64 bits. A única coisa que funcionou para mim foi esse script python:

import sys, select, subprocess
while True:
    p = subprocess.Popen(['xset', 'dpms', 'force', 'off'], 
        stdout=subprocess.PIPE, stderr=subprocess.PIPE)
    if sys.stdin in select.select([sys.stdin], [], [], 0)[0]:
        break

1

Para mim, eu estava reproduzindo um vídeo em segundo plano, fazendo com que a tela sempre fosse reativada após 5 segundos ... Eu adicionei o sleep antes do comando e parei o vídeo e ele funcionou.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.