Eh bien, je veux être capable de redémarrer les processus sur Linux et j'ai donc examiné kill
Mains pour cela. Apparemment kill -l
listerait tous les signaux que je pourrais envoyer à un processus pour faire ce dont j'ai besoin, ce qui sont:
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
16) SIGSTKFLT 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 34) SIGRTMIN 35) SIGRTMIN+1 36) SIGRTMIN+2 37) SIGRTMIN+3
38) SIGRTMIN+4 39) SIGRTMIN+5 40) SIGRTMIN+6 41) SIGRTMIN+7 42) SIGRTMIN+8
43) SIGRTMIN+9 44) SIGRTMIN+10 45) SIGRTMIN+11 46) SIGRTMIN+12 47) SIGRTMIN+13
48) SIGRTMIN+14 49) SIGRTMIN+15 50) SIGRTMAX-14 51) SIGRTMAX-13 52) SIGRTMAX-12
53) SIGRTMAX-11 54) SIGRTMAX-10 55) SIGRTMAX-9 56) SIGRTMAX-8 57) SIGRTMAX-7
58) SIGRTMAX-6 59) SIGRTMAX-5 60) SIGRTMAX-4 61) SIGRTMAX-3 62) SIGRTMAX-2
63) SIGRTMAX-1 64) SIGRTMAX
Je pensais que je recevrais l'effet désiré en utilisant SIGSTOP
signal (numéro 19), puis SIGCONT
signal (numéro 18) comme celui-ci:
kill -19 $PID_NUMBER # It stops! Nice, we are reaching just what we wanted.
kill -18 $PID_NUMBER # Ok... it continues to death... that isn't funny though.
J'ai aussi essayé avec le signal numéro 1: SIGHUP
avec à peu près les mêmes résultats, je manque quelque chose? Est-ce que quelqu'un sait ce que je dois atteindre ce que je veux?
Il n'y a pas de signal "redémarrage". Vous devez enregistrer l'environnement (environ, CWD, CMDLINE, Contexte de sécurité ...) de /proc/<pid>
et démarrer manuellement le processus à nouveau.
Sighup est proche, mais il n'est utilisé que par convention pour demander au programme de recharger ses paramètres.
Il y a un signal "recharger".
Supposez que vous avez un processus squid
avec PID 1 exécute dans le conteneur, si vous redémarrez le processus de calmars, le conteneur s'éteindra. Mais vous pouvez "recharger" cela comme ceci:
kill -HUP 1