Existe uma maneira de suspender / dormir via bash?

6

Eu tenho que ter nove monitores LCD de 46 "(rodando Windows) para suspender / dormir às 8 da noite e acordar às 8h todas as manhãs. Tem sido uma bagunça tentando fazer com que os comandos funcionem, incluindo os privilégios. m um usuário do Ubuntu em primeiro lugar, estou querendo saber como isso seria fácil no Ubuntu / Linux.

Eu sei que o cron seria capaz de executar meu comando suspender / dormir às 20h (o que é o comando suspender / dormir mesmo assim?), mas e acordar a máquina às 8h sem usar Wake-on-Lan ou intervenção manual?

    
por bafromca 10.01.2011 / 17:22

3 respostas

4

o comando para suspender é pm-suspend pressione pm- e uma guia para ver outros comandos de gerenciamento de energia. Eu não acho que haverá uma opção para ativar os sistemas por si só como o próprio sistema operacional não está sendo executado. Você pode ter um sistema dedicado para ativar os outros sistemas em um determinado momento. Se você não quiser suspender ou hibernar, mas apenas minimizar o uso de recursos, existem maneiras de desativar o disco rígido ou desligar o monitor sozinho, etc. Há também um comando pm-powersave .

    
por balki 10.01.2011 / 18:09
1

Apenas para o monitor? Esta solução de systembash.com Trabalho para você? Crate um script BASH para usar o recurso DPMS:

#!/bin/bash
# /usr/local/bin/monitorControl.sh
#
export DISPLAY=:0.0

if [ $# -eq 0 ]; then
    echo usage: $(basename $0) "on|off|status"
    exit 1
fi

if [ $1 = "off" ]; then
    echo -en "Turning monitor off..."
    xset dpms force off
    echo -en "done.\nCheck:"
    xset -q|grep "Monitor is"
elif [ $1 = "on" ]; then
    echo -en "Turning monitor on..."
    xset dpms force on
    echo -en "done.\nCheck:"
    xset -q|grep "Monitor is"
elif [ $1 = "status" ]; then
    xset -q|sed -ne 's/^[ ]*Monitor is //p'
else
    echo usage: $(basename $0) "on|off|status"
fi

E, em seguida, use o cron entires para chamá-lo:

0 20 0 0 0 /usr/local/bin/monitorControl.sh off
0  8 0 0 0 /usr/local/bin/monitorControl.sh on

Caso contrário, se não for apenas o monitor, veja /etc/acpi/sleep.sh e /etc/acpi/hibernate.sh .

    
por user8290 10.01.2011 / 17:44
0

I don't think there will be an option to wake the systems by itself as the os itself is not running.

Por uma questão de fato, antes de suspender o sistema, você pode definir um tempo de vigília ou timer, usando o relógio de hardware interno do sistema, usando o comando "rtcwake": por exemplo, para ativar o computador amanhã às 8:00:

sudo rtcwake -t 'date -d "tomorrow 08:00:00" +%s' -m no

então você pode usar o pm-suspend para suspender o sistema.

    
por AshkanVZ 09.04.2015 / 22:59