Como reiniciar automaticamente meu pc a cada 3 horas? [duplicado]

1

Meu pc roda um programa quando é inicializado. Às vezes, o programa pára de funcionar após algumas horas, mas funciona bem quando é reinicializado. Então, eu quero agendar meu pc para reiniciar a cada 3 horas para evitar que o programa seja interrompido. Estou usando o Ubuntu 14.04.

edit: O programa não para, ele simplesmente não funciona com a potência máxima do pc, mas eu preciso que ele funcione com potência total.

    
por Majidak 12.06.2014 / 10:04

1 resposta

4

O seguinte deve funcionar, mas não tenho certeza sobre o comando, pois não estou familiarizado com o gminer.

O script

Cole o texto abaixo em um arquivo vazio, salve-o como check_gminer.py, salve-o em algum lugar:

#!/usr/bin/python3

import subprocess
import getpass

curruser = getpass.getuser()
service = "gminer"

def createlist_runningprocs():
    processesb = subprocess.Popen(["ps", "-u", curruser], stdout=subprocess.PIPE)
    process_listb = (processesb.communicate()[0].decode("utf-8")).split("\n")
    return process_listb

def runsornot():
    runningprocs_list = createlist_runningprocs()
    if not application[:15] in str(runningprocs_list):
        subprocess.Popen(["sh", "m.sh"])
    else:
        pass

runsornot()

Editando o cronfile

Adicione a seguinte linha ao seu cronfile (digite crontab -e em um terminal):

*  *  *  *  *  python3 /path/to/script/check_gminer.py

O script parece a cada minuto se o serviço for executado e reiniciado, se não. A questão é se funciona ou não, se a sua GPU tiver problemas. Nós vamos ter que ver.

Procedimento alternativo, se o método acima não for suficiente para a sua situação

A alternativa (reinicialização) precisa de privilégios de administrador. Portanto, se você precisar executar o comando reboot por um cronjob, precisará editar /etc/crontab ( sudo nano /etc/crontab ), no qual é possível definir por qual usuário o comando deve ser executado (< > crontab -e ).

Adicione a linha:

0 */3 * * * root reboot

Para o /etc/crontab e seu computador será reiniciado a cada três horas.

    
por Jacob Vlijm 12.06.2014 / 12:04