Ho un server Windows 2008R2 con NSClient ++. Per qualche ragione il servizio ha cambiato i suoi mutandoni e ha smesso di rispondere al sondaggio di Nagios.
Quando ho provato a riavviare il servizio, il gestore del servizio impiega molto tempo per provare a terminare il servizio, quindi alla fine rinuncia a un messaggio sulla falsariga di "il servizio ha impiegato troppo tempo per rispondere". Ma ... avvia anche una nuova istanza del servizio.
Se guardo in Task Manager o tasklistora posso vedere due istanze di nsclient++.exeesecuzione.
Ho provato a uccidere entrambi usando:
tasto destro del mouse e "Termina processo" in Gestione attività - finge di interrompere il processo e non segnala errori (ad esempio Accesso negato) ma il processo è ancora lì.
taskkill /PID <proc id> /F- segnalaSUCCESS: The process with PID 6672 has been terminated.ma il processo è ancora in esecuzione.scaricato SysInternals PsTools ed eseguito
pskill <PID>- rapportiProcess <PID> killed- eppure il processo è ancora lì.esegui
at hh:mm pskill <PID>perpskillfarlo come l'SYSTEMaccount ... e hai indovinato che il processo è ancora in esecuzione.
Tutto quanto sopra è stato eseguito nel prompt dei comandi dell'amministratore.
A parte un riavvio che non è proprio l'ideale (la scatola è un server di produzione abbastanza mission-critical), cos'altro posso provare?
Il server non subisce alcuna pressione delle risorse (memoria, CPU, disco, ecc.) E tutto ciò che lo sta eseguendo sta andando bene.
Come una rapida occhiata alla scheda discussioni in SysInternals Process Explorer mostra che tutte queste nsclient++.exeistanze sono bloccate durante lo scaricamento:

A parte questo, ho anche provato a uccidere tutte le connessioni TCP per questi processi zombie (?) (Con TCPView) nella speranza di poter avviare una nuova istanza e che sarebbe in grado di afferrare la porta 5666. Quindi potremmo riavviare il server quando le cose sono più tranquille, ma purtroppo non ha funzionato.
Stack, come appare lo stack per i thread bloccati?