Gustavo Feijó escreveu: > Olá pessoal, > > há algum tempo que postei uma dúvida sobre propriedade de processos, > perguntando como dissociar um processo de um usuário. > > Aprendi que o disown (um comando builtin do bash) faz essa tarefa de > forma bem eficiente. > > A dúvida agora é inversa, ou seja, como faço para pegar de volta um > processo que dissociei? > > Por exemplo: > > Digamos que executei um wget (pid = 1234) de um arquivo com mais de 2 > GB (o que demoraria bastante) e quando já tinha 80% do arquivo na > minha máquina precisei fazer logoff. > > Para não perder os 80% do arquivo já baixado, executei: > > $ disown 1234 > > Só que agora estou de volta e quero pegar a propriedade do processo novamente. > > Alguém sabe informar qual seria o comando (ou sequencia de comandos) > "inverso" do disown?
Na vdd o disown não desassocia o processo de um usuário. A shell mantém uma tabela de jobs, e quando recebe um sinal SIGHUP, envia um sinal SIGHUP (ou SIGCONT para os jobs pausados com ctrl+z) para cada um dos jobs desta tabela. O que o disown faz é remover o processo filho da tabela de jobs, assim ele não receberá um SIGHUP. Se usado com 'disown -h', não remove da tabela, mas apenas impede o envio desses sinais aos processos. Assim, se vc rodar disown com a opção -h, pode simplesmente usar fg para retomá-lo. Se não usar '-h', não conheço uma forma de "dis-disown" o processo. $ wget bigfiles.com/10GB_file.tgz & [1] 26258 $ disown -h 26258 $ fg 1 wget bigfiles.com/10GB_file.tgz Tom Lobato www.tinecon.com.br -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

