Pagina 1 di 1
kill non sempre funziona...
Inviato: gio 6 ott 2005, 17:54
da smtux
salve,
non so come mai ma non riesco a buttare giù un demone che mi sta prendendo troppe risorse...
sono loggato come utente ma apro un terminale digito "su" poi "top" guardo il PID e poi faccio
ma se rifaccio "top" il demone è sempre lì... come mai?
mi tocca riavviare il pc... uff!
Re: kill non sempre funziona...
Inviato: gio 6 ott 2005, 18:01
da glpiana
smtux ha scritto:salve,
non so come mai ma non riesco a buttare giù un demone che mi sta prendendo troppe risorse...
sono loggato come utente ma apro un terminale digito "su" poi "top" guardo il PID e poi faccio
ma se rifaccio "top" il demone è sempre lì... come mai?
mi tocca riavviare il pc... uff!
proca con kill -9
Inviato: gio 6 ott 2005, 18:22
da useless
esatto. kill di default invia SIGTERM (terminate), che alcune applicazioni intercettano e agiscono in modo diverso dalla terminazione. SIGKILL invece non può essere intercettato, e causa sempre la terminazione dell'applicazione. se non termina nemmeno con sigkill hai trovato un bug nel kernel

.
Inviato: gio 6 ott 2005, 18:55
da masalapianta
useless ha scritto:esatto. kill di default invia SIGTERM (terminate), che alcune applicazioni intercettano e agiscono in modo diverso dalla terminazione. SIGKILL invece non può essere intercettato, e causa sempre la terminazione dell'applicazione. se non termina nemmeno con sigkill hai trovato un bug nel kernel

.
questo non e' esatto, non necessariamente un processo e' killabile con SIGKILL e se non si killa non e' detto che sia un bug del kernel; un esempio puo' essere un processo in uninterruptible sleep (status D su ps), che non e' killabile in alcun modo.
Inviato: gio 6 ott 2005, 21:28
da useless
ah sì?

e come fa un processo a finire in quello stato?
Inviato: ven 7 ott 2005, 2:24
da masalapianta
useless ha scritto:ah sì?

e come fa un processo a finire in quello stato?
spesso accade durante le operazioni di i/o; ad esempio se stai facendo operazioni di lettura/scrittura su un fs montato via nfs e il server nfs non risponde piu', il processo che stava facendo quelle operazioni e' facile che vada in uninterruptible sleep e non sia killabile.
Inviato: ven 7 ott 2005, 11:22
da useless
ahhhh! ora capisco tante cose! grazie della correzione

.
comunque, x ricapitolare x i "meno tecnici": se un processo è killabile, SIGKILL lo killa sicuro.
Inviato: ven 7 ott 2005, 15:42
da syaochan
masalapianta ha scritto:se stai facendo operazioni di lettura/scrittura su un fs montato via nfs e il server nfs non risponde piu', il processo che stava facendo quelle operazioni e' facile che vada in uninterruptible sleep e non sia killabile.
e in questo caso qual e' la soluzione? a me capitava una cosa del genere quando usavo un hard disk "morente" in un box usb.
Inviato: ven 7 ott 2005, 18:52
da smtux
Supponiamo che un demone possa essere ucciso con la pressione di CTRL+C che equivale al segnale SIGINT.
Se non conosco il suo PID come faccio?
Inviato: ven 7 ott 2005, 21:12
da syaochan
smtux ha scritto:Supponiamo che un demone possa essere ucciso con la pressione di CTRL+C che equivale al segnale SIGINT.
Se non conosco il suo PID come faccio?
non bisognerebbe usare killall -int nome_demone?

Inviato: ven 7 ott 2005, 21:15
da useless
ps aux | grep nome
la seconda colonna è il pid, e poi lo killi. se vuoi killarlo x nome puoi usare pkill o killall.
Inviato: ven 7 ott 2005, 21:49
da smtux