Respostas:
-9é o número do sinal (neste caso SIGKILL), então kill -9envia um SIGKILLpara o processo em questão.
Este sinal faz com que o processo seja encerrado imediatamente (a menos que esteja aguardando em uma função do kernel). O sinal não pode ser ignorado e o processo de recebimento não pode executar nenhuma ação de limpeza após receber o sinal (ou seja, um manipulador de sinal SIGKILLnão é chamado). Veja também o artigo da Wikipedia sobre SIGKILL .
Na página de manual do meu killcomando (Linux):
The default signal for kill is TERM. Use -l or -L to list available
signals. Particularly useful signals include HUP, INT, KILL, STOP,
CONT, and 0. Alternate signals may be specified in three ways: -9
-SIGKILL -KILL.
EDIT :
kill -l(o bashcomando embutido) lista os seguintes nomes de sinal e valores numéricos no meu sistema:
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
kill -llista os valores numéricos. Qual é o seu sistema operacional?
man killlistam valores numéricos para alguns dos sinais.
killestá dentro procps, que é a versão 1:3.2.8-9do Debian squeeze. E sim, o Ubuntu é basicamente o Debian. Então, eu me pergunto por kill -lque não retorna a mesma coisa.
zsh's incorporado killcomando, não /bin/kill(que na verdade lista os valores numéricos como você diz)
killbuilt-in. Permite que o killcomando aceite números ou nomes de trabalhos (por exemplo kill %1). E permite killser usado mesmo que algum limite de contagem de processos tenha sido atingido.
man signal
Irá mostrar o mapeamento entre números e nomes de sinais.
-9é uma instância de-sigspec, é equivalente a-s 9ou-n 9ou-s KILLou-KILL.