Qui, 2007-08-09 às 15:58 -0300, Gustavo Feijó escreveu: > Olá amigos, > Olá =) > estou procurando uma forma de desassociar um processo filho do seu processo > pai. > > Conheço o nohup e já ouvi falar do screen, porém em ambas as situações > tenho que prever a necessidade do logoff antes do termino do processo. > > Deixem-me citar um exemplo prático que me aconteceu outro dia, para > que possam, talvez, me ajudar. > > Na semana passada escrevi um script para levantar um relatório de > e-mails enviados e recebidos por um determinado domínio. Inicialmente > imaginei que o script não levaria mais do que 1 hora para ser > executado. Assim sendo executei ele por volta das 16h30, faltando 30 > minutos para o termino do expediente. Acontece que o script levou mais > de 4 horas sendo executado e, claro, não quis cancelar para não ter > que rodar ele novamente no dia seguinte. > > Fiquei procurando uma forma para desassociá-lo do meu tty para poder > fazer logoff para que eu pudesse ir para casa tranquilo, mas não > encontrei. > > Alguém pode me dar uma força? > Claro que podemos ;)
Bem eu pessoalmente uso o screen e deixo processos correndo no terminal a toda a hora por exemplo, o irssi. A sua utilização é extremamente simples. Inicias a tua sessão no terminal e fazes screen. O screen permite trabalhar com várias janelas de terminal virtuais. E depois podes ir navegando entre eles. Ora um exemplo, acedes por ssh ao computador remoto e digitas screen, abre o programa. Depois nessa janela podes por um programa em execução, ora como essa janela de terminal virtual já está ocupada, podes criar uma nova janela de terminal virtual pressionando Ctrl+A seguido de C. Nessa nova janela podes por outro programa em execução, ora agora queres terminar a tua sessão fazendo o logout do servidor. Bem é simples pressionas a tecla Ctrl+A seguido de D (detach), e fazes logout da sessão. Depois quando retornares a fazer login podes ver um restauro aos processos das janelas virtuais de terminal que ficaram em execução, mesmo após o teu logout, para tal em vez de iniciares o screen como normalmente fazes inicias o screen com a opção -r (de resume). screen -r E voilá aparecem as janelas de terminal virtual em funcionamento tal como as tinhas deixado. Espero que tenha esclarecido as tuas dúvidas. > Obrigado. > De nada =) Atenciosamente José Oleiro -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]