como eu uso o upstart, em vez do cron, para iniciar uma única instância de um job que deve sempre reaparecer?

0

Como faço o script do seguinte comando cpuminer do bitcoin / dogecoin / etc:

/home/digger/cpuminer/minerd -o stratum+tcp://doge.pool.webxass.de:3333 -O <user>.<worker>:<worker_password>

para executar em cron , de forma que if, e somente se, minerd não for não sendo executado?

Meu script cron atual

* * * * * digger /home/digger/webxass

resulta em caminho muitos minerd processos:

top - 12:32:00 up  4:55,  3 users,  load average: 17.45, 13.71, 7.98
Tasks: 141 total,   2 running, 139 sleeping,   0 stopped,   0 zombie
%Cpu(s):  0.1 us,  0.1 sy, 72.7 ni, 27.1 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
KiB Mem:    502268 total,   463344 used,    38924 free,    25200 buffers
KiB Swap:        0 total,        0 used,        0 free,   325140 cached

  PID USER      PR  NI  VIRT  RES  SHR S  %CPU %MEM    TIME+  COMMAND                
14335 digger    20   0  374m 3540 2452 S  10.3  0.7   3:29.42 minerd                  
14344 digger    20   0  374m 3544 2452 S  10.3  0.7   2:29.48 minerd                  
14352 digger    20   0  374m 3540 2452 S  10.3  0.7   1:59.50 minerd                  
14527 digger    20   0  374m 3540 2452 S  10.3  0.7   0:39.83 minerd                  
14362 digger    20   0  374m 3540 2452 S   5.2  0.7   1:39.50 minerd                  
14373 digger    20   0  374m 3540 2452 S   5.2  0.7   1:24.51 minerd                  
14491 digger    20   0  374m 3540 2452 S   5.2  0.7   1:12.55 minerd                  
14500 digger    20   0  374m 3540 2452 S   5.2  0.7   1:02.55 minerd                  
14511 digger    20   0  374m 3540 2452 S   5.2  0.7   0:53.98 minerd                  
14519 digger    20   0  374m 3540 2452 S   5.2  0.7   0:46.49 minerd                  
14535 digger    20   0  374m 3540 2452 S   5.2  0.7   0:33.82 minerd                  
14544 digger    20   0  374m 3540 2452 S   5.2  0.7   0:28.38 minerd                  
14552 digger    20   0  374m 3536 2452 S   5.2  0.7   0:23.39 minerd                  
14560 digger    20   0  374m 3536 2452 S   5.2  0.7   0:18.78 minerd                  
14568 digger    20   0  374m 3536 2452 S   5.2  0.7   0:14.51 minerd                  
14576 digger    20   0  374m 3540 2452 S   5.2  0.7   0:10.51 minerd                  
14584 digger    20   0  374m 3540 2452 S   5.2  0.7   0:06.77 minerd                  
14592 digger    20   0  374m 3540 2452 S   5.2  0.7   0:03.25 minerd                  
    1 root      20   0 26952 2644 1340 S   0.0  0.5   0:01.11 init                    
    2 root      20   0     0    0    0 S   0.0  0.0   0:00.00 kthreadd                
    3 root      20   0     0    0    0 S   0.0  0.0   0:00.00 ksoftirqd/0            
    5 root       0 -20     0    0    0 S   0.0  0.0   0:00.00 kworker/0:0H            
    7 root      rt   0     0    0    0 S   0.0  0.0   0:00.00 migration/0            
root@doge:~# killall minerd
root@doge:~# cd

Talvez seja tão eficiente executar centenas de pequenos processos minerd , não sei, mas prefiro apenas um ou dois. Dois provavelmente faz mais sentido.

veja também

link

    
por Thufir 21.12.2013 / 18:55

2 respostas

1

cron não é a ferramenta certa para a tarefa. O Ubuntu agora usa o Upstart para serviços e tarefas. Você pode criar um serviço de auto-reaproveitamento com a respawn stanza .

    
por David Foerster 21.12.2013 / 19:34
0

A partir do livro de receitas , parece a ideia certa:

dig_coins stop/waiting
dig_coins start/running, process 9474

Só que não sei exatamente onde definir dig_coins .

    
por Thufir 21.12.2013 / 19:29