1 votos

OS X: ¿Puedo seguir el rastro de los archivos a los que se accede en un disco?

Tengo varios discos duros externos. Son discos de consumo que se "duermen" (se apagan) automáticamente cuando no se utilizan; no puedo (ni quiero) hacerlos funcionar las 24 horas del día. Los utilizo estrictamente para hacer copias de seguridad y almacenamiento a largo plazo.

Muy a menudo, utilizo alguna función irrelevante de un programa (como "Deshacer" en Microsoft Word en un documento que está en la unidad principal) - la aplicación se congelará, y oiré un disco duro externo girar. (O cada unidad girar, uno a la vez). Entonces el programa se descongela. El programa no parece molestarse si desmonto las unidades; simplemente deja de hacerlo.

Y me pregunto: ¿Qué es lo que busca? Así que puedo averiguar cómo detener esta molestia. Por ejemplo, si está tocando las fuentes que encontró en el disco externo, puedo asegurarme de que sean inaccesibles dentro de los archivos ZIP.

Mi pregunta es: ¿Cómo puedo tener un Registro de los accesos a los archivos por parte de las aplicaciones? He probado a utilizar lsof | grep /Volumes/ pero sólo es una instantánea de actualmente archivos abiertos; parece que siempre se pierde el momento en que esa aplicación tiene ese archivo abierto.


Probé el enfoque fs_usage, y obtuve ráfagas de este mensaje: fs-usage: buffer overrun, events generated too quickly: 123456 Pero finalmente esto salió a la luz:

23:32:47  getattrlist       /Volumes/Teeny/RSreorg                                                         0.000006   Microsoft Ex
23:32:47  getattrlist       /Volumes/Teeny/RSreorg                                                         0.000002   Microsoft Ex
23:32:59  getattrlist       /Volumes/Teeny/RSreorg                                                         0.000005   Microsoft Ex
23:32:59  getattrlist       /Volumes/Teeny/RSreorg                                                         0.000002   Microsoft Ex
23:32:59  getattrlist       /Volumes/Teeny/RSreorg                                                         0.000003   Microsoft Ex
23:32:59  getattrlist       /Volumes/Teeny/RSreorg                                                         0.000002   Microsoft Ex

Esto sucedió mientras cerraba una hoja de cálculo de Excel. Es un disco de borrado, y ese directorio fue eliminado hace años. La hoja de cálculo era un archivo nuevo que no tenía nada que ver con esa ubicación.

Búsqueda de la cadena de texto en la unidad RSreorg reveló sólo 2 archivos, ambos ~/Library/Preferences/com.microsoft.office.plist Uno con un galimatías al final (¿archivo temporal?)... La búsqueda en la web revela que Microsoft almacena mis claves de licencia allí, pero el análisis de texto revela cientos de otros directorios inútiles y erróneos. ¿Qué diablos está haciendo Microsoft?

Y aparentemente esta respuesta avala el borrado del archivo en su totalidad .

4voto

Puede utilizar fs_usage para ver todas las llamadas del sistema relacionadas con las actividades del sistema de archivos. La salida es bastante grande, por lo que probablemente necesite redirigirla a un archivo

  1. Ejecutar sudo fs_usage > fs.out en la Terminal
  2. Inicie Word y espere a que el disco externo gire
  3. Cambie a Terminal, pulse Ctrl-C y mirar a través de fs.out

También puede limitar la salida a determinados procesos, consulte la página de manual para obtener más detalles al respecto.

3voto

Farinha Puntos 5518

Solía haber una bonita aplicación gráfica gratuita llamada fseventer para hacer esto, pero no funcionaba realmente en 10.9 o más tarde, y no parece estar disponible en general ya.

Puedes probar opensnoop una utilidad de línea de comandos que muestra los archivos a los que se accede en tiempo real. Su invocación más sencilla es:

$ sudo opensnoop

que le dará una lista actualizada en vivo de todos los archivos a los que se accede en el sistema. Si sospecha de una aplicación en particular, puede filtrar su salida para mostrar sólo lo que esa aplicación está haciendo:

$ sudo opensnoop -n Word

(Recuerdo que hace una coincidencia de nombres parcial pero que distingue entre mayúsculas y minúsculas, por lo que "Word" coincidirá con "Word", "MS Word", "Microsoft Word", etc. pero no con "word").

O puedes usarlo para ver qué está accediendo a un archivo en particular (sólo un ejemplo, no tengo idea de si este es un archivo de preferencias real de MS Word):

$ sudo opensnoop -f /Library/Preferences/com.microsoft.msword

Para otras opciones, consulte la página de manual.

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X