Qual é a maneira correta de desligar o sistema enquanto o apt-get ainda está em execução?

Qual é a maneira correta de desligar o sistema enquanto o apt-get ainda está em execução?

Qual é a maneira correta de desligar o sistema enquanto o apt-get ainda está em execução? O apt-get reclama de desligamento incorreto quando acabei de desligar o computador.

Responder1

Como uma elaboração do conselho de Piskvor ("não"), você poderia emitir este comando no prompt do shell:

sleep 10m ; shutdown -h now

O texto acima pressupõe que você esteja executando como superusuário.

A idéia é deixar o apt-get terminar antes de desligar, sem que você tenha que ficar sentado esperando que ele termine. Você poderia escrever um script mais elegante que, por exemplo, use ps e grep para detectar se o apt-get foi concluído, mas não tenho acesso a uma máquina Linux aqui no trabalho para testar esse script.

Responder2

Fechar o apt-get primeiro? Talvez usando um sinal de interrupção (^C se estiver em primeiro plano, caso contrário kill)

Atualizar:

Você pode obter uma lista de sinais comkill -l

$ kill -l
 1) SIGHUP       2) SIGINT       3) SIGQUIT      4) SIGILL
 5) SIGTRAP      6) SIGABRT      7) SIGBUS       8) SIGFPE
 9) SIGKILL     10) SIGUSR1     11) SIGSEGV     12) SIGUSR2
13) SIGPIPE     14) SIGALRM     15) SIGTERM     17) SIGCHLD
18) SIGCONT     19) SIGSTOP     20) SIGTSTP     21) SIGTTIN
22) SIGTTOU     23) SIGURG      24) SIGXCPU     25) SIGXFSZ
26) SIGVTALRM   27) SIGPROF     28) SIGWINCH    29) SIGIO
30) SIGPWR      31) SIGSYS      32) SIGRTMIN    33) SIGRTMIN+1
34) SIGRTMIN+2  35) SIGRTMIN+3  36) SIGRTMIN+4  37) SIGRTMIN+5
38) SIGRTMIN+6  39) SIGRTMIN+7  40) SIGRTMIN+8  41) SIGRTMIN+9
42) SIGRTMIN+10 43) SIGRTMIN+11 44) SIGRTMIN+12 45) SIGRTMIN+13
46) SIGRTMIN+14 47) SIGRTMIN+15 48) SIGRTMAX-15 49) SIGRTMAX-14
50) SIGRTMAX-13 51) SIGRTMAX-12 52) SIGRTMAX-11 53) SIGRTMAX-10
54) SIGRTMAX-9  55) SIGRTMAX-8  56) SIGRTMAX-7  57) SIGRTMAX-6
58) SIGRTMAX-5  59) SIGRTMAX-4  60) SIGRTMAX-3  61) SIGRTMAX-2
62) SIGRTMAX-1  63) SIGRTMAX

Antes de tentar 9 (SIGKILL), a opção nuclear, você pode tentar sinais mais suaves como HUP, INT, QUIT ou talvez USR1, USR2 ou ABRT. Na verdade, os documentos do programa para o apt-get deveriam dizer se ele lida com algum desses sinais de maneira diferente. Como isso não acontece, não tenho muita esperança. Alguns relatórios de bugs mencionaram que o INT deveria funcionar.

informação relacionada