Como obter uma lista de programas em execução com nohup

votos
43

Eu estou acessando um servidor executando CentOS (distribuição Linux) com uma conexão SSH. Como não posso ficar sempre conectado, eu uso nohup [comando] & para executar meus programas.

Eu não poderia encontrar como obter uma lista de todos os programas que comecei a usar nohup. empregos só funciona para fora antes de eu sair. Depois disso, se eu fizer logon novamente, o comando trabalhos me mostra nada, mas eu posso ver nos meus arquivos de log que meus programas ainda estão em execução.

Existe uma maneira de obter uma lista de todos os programas que eu comecei a usar nohup?

Publicado 29/05/2013 em 07:37
usuário
Em outras línguas...                            


5 respostas

votos
17

Em vez de nohup, você deve usar screen. Ele obtém o mesmo resultado - os comandos estão sendo executados "isolada". No entanto, você pode retomar as sessões de tela e voltar para o seu terminal "escondido" e ver o progresso recente dentro daquele terminal.

screentem um monte de opções. Na maioria das vezes eu uso estes:

Para iniciar a primeira sessão de tela ou para assumir de mais recente destacado um:

screen -Rd 

Para separar sessão atual: Ctrl+ACtrl+D

Você também pode iniciar várias telas - leia os docs.

Respondeu 29/05/2013 em 07:48
fonte usuário

votos
4

Você não pode exatamente obter uma lista de comandos começou com nohupmas você pode vê-los junto com seus outros processos usando o comando ps x. Comandos começou com nohupterá um ponto de interrogação na coluna TTY.

Respondeu 29/05/2013 em 07:50
fonte usuário

votos
6

Se você tem redirecionar a saída do standart para "nohup.out" basta ver que usam este ficheiro

lsof | grep nohup.out
Respondeu 29/05/2013 em 08:21
fonte usuário

votos
58

Quando eu comecei com $ nohup storm dev-zookeper,

METHOD1: usando jobs,

[email protected]:/home/vmfest# jobs -l
[1]+ 11129 Running                 nohup ~/bin/storm/bin/storm dev-zookeeper &

Method2: usando pscomandos.

$ ps xw
PID  TTY      STAT   TIME COMMAND
1031 tty1     Ss+    0:00 /sbin/getty -8 38400 tty1
10582 ?        S      0:01 [kworker/0:0]
10826 ?        Sl     0:18 java -server -Dstorm.options= -Dstorm.home=/root/bin/storm -Djava.library.path=/usr/local/lib:/opt/local/lib:/usr/lib -Dsto
10853 ?        Ss     0:00 sshd: vmfest [priv] 

Coluna TTY com ?=> nohupprogramas em execução.

Descrição

  • coluna TTY = o terminal associado com o processo de
  • STAT coluna = estado de um processo de
    • S = sono interruptível (à espera de um evento para completar)
    • L = é multi-threaded (usando CLONE_THREAD, como pthreads NPTL fazer)

Referência

$ man ps #, Em seguida, procurar /PROCESS STATE CODES

Respondeu 25/06/2014 em 17:08
fonte usuário

votos
1

Você também pode simplesmente usar o comando superior e seu ID do usuário indicará os trabalhos em execução e os seus tempos.

$ top

(Isto irá mostrar todos os trabalhos em execução)

$ top -U [user ID]

(Isto irá mostrar os trabalhos que são específicos para o ID do usuário)

Respondeu 24/09/2014 em 06:30
fonte usuário

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more