當 apt-get 仍在運行時關閉系統的正確方法是什麼?當我剛剛關閉電腦時,apt-get 抱怨關閉不乾淨。
答案1
作為 Piskvor 建議(「不要」)的詳細說明,您可以在 shell 提示字元下發出此命令:
sleep 10m ; shutdown -h now
上面假設您以超級用戶身份運行。
這個想法是讓 apt-get 在關閉之前完成,而不必坐在那裡等待它結束。您可以編寫一個更優雅的腳本,例如,使用 ps 和 grep 來檢測 apt-get 是否已完成,但我在工作中無法存取 Linux 機器來測試此類腳本。
答案2
先關閉 apt-get 嗎?也許使用中斷訊號(^C 如果在前台,否則kill
)
更新:
您可以使用以下命令來取得訊號列表kill -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
在嘗試 9 (SIGKILL)(核選項)之前,您可以嘗試更溫和的訊號,例如 HUP、INT、QUIT,或 USR1、USR2 或 ABRT。實際上 apt-get 的程式文件應該說明它是否以不同的方式處理這些訊號。因為事實並非如此,所以我不抱太大希望。一些錯誤報告提到 INT 應該可以工作。