1. who - como outro usuário não pode enviar sinais para seus processos, é mais provável que ele seja o usuário proprietário do processo (o usuário root ainda pode, mas eu não sei como descobrir se o root mata o seu processo).
2. por que - talvez algo assim:
echo "Why did you interrupted the process?" && read why && echo $why > log
(não tenho certeza do que você quer dizer sob o porquê).
3. como - como BASH recebe o mesmo sinal se o usuário pressiona Ctrl + C
ou se ele envia uma interrupção via kill
, AFAIK é impossível descobrir exatamente como aconteceu a interrupção.
4. when - é fácil, use o comando date
:
date > log
EDITAR: se você quisesse determinar o tipo de sinal em "por que" e "como", consulte isso Q & A no StackOverflow.