Pourquoi je ne reçois pas le signal SIGKILL sur kill -9 en bash?

Dans le script bash, je traite différents signaux comme suit:

#!/bin/bash sighdl () { echo "signal caught" #do something exit 0 } trap sighdl SIGKILL SIGINT SIGTERM 

Le code ci-dessus gère le signal correctement pour l’activité suivante:

  1. Ctrl + C
  2. kill pid
  3. pkill scriptname

Pour kill -9 pid il n’appelle pas sighdl . Selon ce que je comprends (si je ne me trompe pas), kill -9 envoie le signal SIGKILL.

Une idée?

Tu ne peux pas faire ça. Oui 9 est SIGKILL et le système Unix par conception ne permet à aucun script / programme de piéger SIGKILL pour des raisons de sécurité. Sinon, tout script peut piéger et ignorer SIGKILL, ce qui rendra impossible de terminer ce script par le système d’exploitation.