Como posso executar o “apt-get install” em segundo plano?

15

Quando tento instalar um pacote, por exemplo nsnake , com o comando sudo apt-get install nsnake & , o processo pára imediatamente. Eu posso trazê-lo para o primeiro plano e inserir minha senha sudo, pausar (com Ctrl - Z ), e enviá-lo de volta ao fundo novamente. Mas, em seguida, o shell interromperá imediatamente o processo, por exemplo,

katriel@caseylaptop:~$ bg     
[2]+ sudo apt-get install nsnake &   
[2]+  Stopped                 sudo apt-get install nsnake

É possível instalar pacotes em segundo plano? Eu posso querer fazer isso enquanto instalo pacotes grandes em um computador em que estou entrando.

    
por katriel 16.02.2014 / 21:48

4 respostas

28

Sim, claro.

Execute seu comando apt-get com coisas interessantes ao seu redor

sudo bash -c 'apt-get -y install guake >/dev/null 2>&1 & disown'

Explicação das partes:

  • A parte sudo bash -c gera um novo processo bash e executa apt-get -y install guake >/dev/null 2>&1 & disown dentro desse novo shell.

  • Estes comandos são então executados dentro do novo subnível:

    • apt-get -y install guake : O principal comando do apt-get que você deseja executar.

      • >/dev/null 2>&1 canaliza stdout e stderr para / dev / null.
    • & disown rejeita o trabalho anterior e sai da sub-rede.
por kiri 16.02.2014 / 21:54
17

Sempre gosto de usar a tela para executar programas em segundo plano.

    
por jeukku 16.02.2014 / 22:00
9

Adicione o e comercial & para executar qualquer programa e retorne ao prompt enquanto o programa é executado, como

sudo apt-get -y install nsnake &

Você pode obter certos eventos e notificações aparecendo periodicamente no shell, no entanto. Para ocultar esses eventos, canalize-os para STDOUT

sudo apt-get -y install nsnake >/dev/null &
    
por MDMoore313 17.02.2014 / 01:17
-1

É uma solução alternativa, mas primeiro execute qualquer coisa com o sudo, por exemplo, %código%. Sua autorização do sudo será lembrada por um tempo. Então você pode simplesmente executar sudo ls e não será solicitada uma senha pela segunda vez (a menos que algum tempo tenha passado e a autorização tenha expirado).

    
por user31389 16.02.2014 / 21:56

Tags