Pregunta

Vamos a decir que tengo 15 procesos / demonios ejecutándose en segundo plano. Digamos que uno de los procesos se ha deshecho el núcleo.

¿Cómo podría identificar qué proceso ha vertido el núcleo.

Estoy utilizando hpux!

¿Fue útil?

Solución

1) Si los procesos tienen el mismo nombre entonces yo creo que hay que ejecutarlos desde diferentes carpetas. Si un proceso vuelca un núcleo obtendrá en su carpeta. No sé cómo empezar a ellos. Si utiliza & para iniciar un proceso entonces se puede utilizar para obtener $! PID del último proceso de demonio comenzado y así ahorrar el PID del proceso en su carpeta. O bien, puede echar un vistazo al registro de su demonio en esta carpeta y obtener PID del proceso en esta carpeta desde allí.

2) Si ejecuta diferentes aplicaciones que se pueden utilizar file ./core para averiguar el nombre de la aplicación.

Actualizado: 3) Acabo de leer acerca de esto:

Ejecutar primera coreadm -p core.%p.%f.%t.%n o poner este comando en su perfil. Y luego, si una aplicación coredumps verá un archivo con el nombre núcleo core.<PID>.<Application-Name>.<Timestamp>.<Server>. Por ejemplo: core.29305.main.1278939422:531259.srv2-rx8

Otros consejos

Se puede escribir el pid como parte del nombre de archivo. No sé qué o cómo se inicia el 15 procesos, pero es común para almacenar el pid. Demonios suelen crear su propio archivo pid con algo que identifica la instancia.

Se debe estar en el archivo de índice generado durante el volcado. HP-UX 10.26 (muy viejo) mantuvo a los vertederos en:

 /var/adm/crash

Se va a necesitar q4 o una herramienta similar para investigar el vertedero. Para establecer el patrón que sugiere epronk, tendrá coreadm . Consulte las páginas del manual:

  man coreadm
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top