11 votos

¿Cómo se puede comprobar lo que está bloqueando un archivo?

He notado que a veces Mail.app bloquea los archivos. El bloqueo en sí mismo permite que los archivos se muevan a la Papelera, pero no permite que se vacíe la Papelera. (Tal vez la Papelera debería ser renombrada como Thrash en este caso)

¿Hay alguna forma (a través de un comando de terminal o una aplicación) de ver qué aplicación bloquea el archivo y/o desbloquea el archivo sin salir de la aplicación?

14voto

Jax Puntos 23

Como dice Rabarberski, lsof puede ser usado para encontrar cualquier proceso que tenga el archivo abierto. Tenga en cuenta que necesita ejecutar el programa como Root, es decir, usando sudo y que puedes dar la ruta al archivo que te interesa como argumento, así que no hay necesidad de la grep invocación en la pista a la que apunta Rabarberski. Además, si un proceso tiene un bloqueo en el archivo, se supone que puedes verlo desde la columna FD en el lsof salida. Vea la página del manual para los detalles. (Cuando ejecuto sudo lsof en mi máquina, no veo ningún archivo bloqueado, así que no garantizo que esto funcione bien en la Mac. sudo es después de todo un programa unix genérico, y posiblemente algunas características no funcionan en OSX).

No puedes desbloquear un archivo sin matar el proceso que mantiene el bloqueo. Pero puedes quitarlo con rm desde la línea de mando.

6voto

berberich Puntos 255

Como otros señalaron, lsof hace el truco. Para hacer la tarea aún más simple, sugiero la aplicación (gratuita) "What's keeping me" (URL: http://www.hamsoftengineering.com/products/wkm/wkm.html ) que es básicamente una fachada para lsof y tiene algunas opciones para ahorrar tiempo.

2voto

TheoJones Puntos 269

Aparentemente el lsof ("lista de archivos abiertos") se puede usar el comando de la terminal para hacer eso: http://hints.macworld.com/article.php?story=20040121001144687

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