LPIC-1: Como Gerenciar Jobs em Background e Foreground no Linux
Pessoal, no artigo de hoje eu vou mostrar como gerenciar jobs em background e foreground no Linux. Lembrando que isso é extremamente necessário para a prova da LPIC-1.
Qual a diferença entre foreground e background?
Como o próprio nome já diz, background é justamente o que roda por trás, ou seja, não fica aparecendo no nosso terminal. Quando abrimos o Google Chrome, por exemplo, ele cria processos em background que só vemos se executarmos algum comando que gerencia esses processos.
Já o foreground é tudo que aparece no nosso terminal, conseguimos ver o processo correndo e podemos pará-lo no método normal com CTRL+C.
Qual a diferença entre jobs e processos?
Um job poderia ser considerado a mesma coisa que um processo, podemos gerenciá-lo da mesma forma. A melhor definição seria que um conjunto de processos faz um job. E os jobs também são mais curtos, ou seja, não ficam sempre ali ociosos rodando na memória. Se rodarmos qualquer comando, como por exemplo um find, ele será um job e logo vai terminar. O job sempre é em background.
Gerenciar Jobs em Background e Foreground
Para iniciarmos um programa em foreground, basta digitar o nome do comando:
$ gedit
Ele abriu meu gedit normalmente, porém, meu terminal ficou trancado, não posso fazer nada. Se pressionar CTRL+C ele para o gedit e fecha.
Para contornar isso, podemos usar o caractere & que define que o processo irá iniciar em background e não em foreground:
Veja que ele possui o PID 13793 e é o job de número 1.
Para lista os jobs podemos rodar o comando:
$ jobs
O ID do job do gedit é 1:
Se quisermos trazer de volta este job para foreground, podemos usar o % junto com o número do job.
$ %1
Agora se pressionar CTRL+C o processo vai parar.
Vamos imaginar também uma outra situação, onde que você iniciou algo mas quer colocá-la em background:
$ gedit
Agora vamos pausar o processo com CTRL+Z:
Você vai notar que o programa não vai fechar, apenas não irá responder se você clicar. Estará totalmente congelado.
Agora para colocar em background, basta digitar:
$ bg
E o processo voltou para background.
Da mesma forma que o bg foi usado, podemos usar o fg para trazer ele de volta a foreground:
$ %1
Pressione CTRL+Z para pausá-lo novamente:
$ fg
Bom pessoal, este foi o artigo de hoje. Este conteúdo é importante para a prova da certificação LPIC-1, então pratiquem e leiam os manuais. Abraço!
Se tiver alguma dúvida ou sugestão de conteúdo, por favor, comente!