Uso strace
!
Ejemplo: enumerar todos los archivos abiertos por Firefox durante una sesión:
strace -f firefox 2>&1 | grep 'open('
Resulta en algo como esto si abre una segunda instancia de FireFox: http://pastebin.com/iRqxgiWN (La opción '-f' simplemente hace que las horquillas sigan el proceso.)
Ejemplo 2: enumere todos los procesos ejecutados por FireFox:
strace -f firefox 2>&1 | grep -P 'exec[vlpe]*\('
Resultados en algo como esto al visitar YouTube:
[pid 25020] execve("/usr/lib/firefox/plugin-container", ["/usr/lib/firefox/plugin-containe"..., "/usr/lib/adobe-flashplugin/libfl"..., "-greomni", "/usr/lib/firefox/omni.ja", "-appomni", "/usr/lib/firefox/browser/omni.ja", "-appdir", "/usr/lib/firefox/browser", "15198", "false", "plugin"], [/* 57 vars */]) = 0
[pid 25024] execve("/bin/sh", ["sh", "-c", "ps x | grep netscape"], [/* 57 vars */]) = 0
[pid 25025] execve("/bin/ps", ["ps", "x"], [/* 57 vars */] <unfinished ...>
[pid 25026] execve("/bin/grep", ["grep", "netscape"], [/* 57 vars */]) = 0
También puede hacer esto con muchas otras llamadas al sistema ...
Al hacer coincidir los parámetros de open()
en su grep
búsqueda, también puede averiguar en qué modo se ha abierto el archivo:
Simplemente agregue | grep -P 'O_RDONLY|O_RDWR'
(¡el carácter de tubería inicial es importante!) Para filtrar el acceso de lectura o el acceso | grep -P 'O_WRONLY|O_RDWR'
de escritura a su comando ...
EDITAR :
Como se mencionó en los comentarios, también puede usar strace -fe open firefox
para enumerar todos los archivos abiertos por FireFox. También puede usar strace -fe trace=file firefox
para enumerar todas las operaciones de archivo realizadas por FireFox que tienen una ruta de archivo como argumento (open, stat, lstat, chmod, access, ...).
¡Muchos más están disponibles! Consulte la página del manual de strace (1) .
strace -e open
mostrar solo llamadas aopen()
, por ejemplo.En realidad, hay un modo denominado modo detallado, pero no estoy seguro de que Firefox tenga esa opción. Algunos suelen tener eso. Pero no hay problema, cada aplicación constará de su registro. Para que pueda verificar la actividad de la aplicación, verifique sus datos de registro.
Si desea habilitar el registro para firefox, entonces puede verificar esto
http://bertrandbenoit.blogspot.in/2011/09/activate-logging-for-mozilla.html
cada actividad de la aplicación en Ubuntu se puede verificar con sus registros específicos. Todas las aplicaciones se registrarán en el
/var/log
directorio.fuente