¿Cómo arreglar archivos grises en Finder?

13

¿Hay alguna forma de obligar al Finder a actualizar su información en uso para archivos grises (inaccesibles)?

Detalles:

Muevo archivos usados ​​con poca frecuencia desde mi Mac (OS X 10.6) a un servidor de archivos de Windows Server 2008. Recientemente encontré una gran cantidad de archivos que el Finder de OS X muestra en gris (como si el archivo estuviera en proceso de copiarse). Los archivos en cuestión son todos válidos y completos: sin corrupción ni datos faltantes; de hecho, puedo acceder a los archivos desde la Terminal o desde una computadora con Windows sin problemas, pero Finder todavía piensa que deberían considerarse inaccesibles.

Puedo "solucionar" el problema copiando el archivo original a un nuevo nombre, borrando el archivo original, esperando unos minutos y luego renombrando el nuevo archivo al nombre original (si no espero lo suficiente, el nuevo el archivo se volverá gris cuando se renombre al nombre original).

Básicamente, parece que el Finder no ha borrado alguna bandera [en conjetura] "en uso" o "incompleta".

Entonces, volviendo a la pregunta original: ¿cómo se puede solucionar esto? Idealmente, me gustaría poder escanear las unidades de red y encontrar y reparar todos los archivos grises a través de la operación Terminal o Recursiva, para poder arreglarlos todos sin perder mucho tiempo.

Robert Altman
fuente
¿Tiene que ver con los permisos? ¿Lo has comprobado?
Martin Marconcini
¿Reiniciar el Finder funciona?
Itai Ferber
Sin permisos: se puede acceder a los archivos ofensivos a través de la Terminal. Reiniciar OS / X no tiene ningún efecto.
Robert Altman

Respuestas:

8

¡Esto lo resolvió para mí! http://macadmins.psu.edu/news/2011/06/grayed_out_finder_folder

¿Entonces qué pasó? Parece que la fecha de creación de la carpeta se estableció en una fecha aleatoria en 1943. Si bien no estamos seguros de cómo sucedió, descubrimos cómo solucionarlo.

Utilizamos algunos binarios que venían con las Herramientas para desarrolladores, GetFileInfo y SetFile. GetFileInfo nos mostró la fecha de creación de la carpeta. Al principio lo pasamos por alto, pero con un examen más detallado nos llamó la atención.

$ GetFileInfo Test / directorio: "/ Users / user / Desktop / Test" atributos: avbstclinmedz creado: 13/06/1943 06:13:00 modificado: 13/06/2011 15:07:33

Entonces podríamos cambiar la fecha de creación usando la herramienta SetFile.

$ SetFile -d 13/06/2011 Prueba /

Después de establecer la fecha en un tiempo razonable, podemos ver que realmente ha cambiado.

$ GetFileInfo Test / directorio: "/ Users / userid / Desktop / Test" atributos: avbstclinmedz creado: 13/06/2011 06:13:00 modificado: 13/06/2011 15:07:33

La carpeta se mostró correctamente en el Finder y fue nuevamente utilizable. También descubrimos que si creaba un alias de la carpeta, podía ver los datos y moverlos. Una vez que se trasladó a otra carpeta, la carpeta anterior podría eliminarse.

nickganga
fuente
1
Esto tendría mucho sentido; Si no recuerdo mal, estaba viendo citas extrañas. Desafortunadamente (para probar la teoría), desde entonces he limpiado los errores y no he vuelto a ver esto en mucho tiempo. Gracias por la info!
Robert Altman
5

Use ls -lapara verificar si el archivo tiene propiedades extendidas. Eso se verá similar a:

-rwxr-xr-x@ 1 user1 staff 439734882 Aug 16 21:34 myfile.zip

Mira al @ final. Eso significa propiedades extendidas.

Para ver las propiedades extendidas, deberá usar el xattr -l filenamecomando.

En muchos casos, los archivos atenuados tienen un com.apple.FinderInfoatributo similar al siguiente:

com.apple.FinderInfo:
00000000  62 72 6F 6B 4D 41 43 53 00 00 00 00 00 00 00 00  |brokMACS........|
00000010  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  |................|
00000020

Para eliminar ese atributo, ejecute xattr -d com.apple.FinderInfo filenamey el archivo volverá a la normalidad.

Si necesita eliminar ese atributo de todos los archivos de forma recursiva, puede ejecutar:

xattr -dr com.apple.FinderInfo .

No te pierdas el punto .al final que significa el directorio actual.

Publicación original: https://tangentlin.wordpress.com/2013/10/18/greyed-out-files-in-mac-osx/

camikiller
fuente
1
Solo este me funcionó en High Sierra.
Rivera
2

Resolví esto usando el comando duplicar en la carpeta en gris. Se podrá acceder a la nueva carpeta y los archivos se pueden mover a otra carpeta. Después de mover los archivos, elimine ambas carpetas (gris y copia), ahora ambas vacías

Adrian Trif
fuente
1

Intente eliminar sus cachés (~ / Library / Caches) y reinicie. Mi experiencia ha sido que esto generalmente soluciona problemas extraños relacionados con iconos.

Harv
fuente
Lamentablemente, esto no tuvo ningún efecto.
Robert Altman
1

Puede intentar volver a sincronizar los archivos con la rsyncherramienta:

$ rsync -aut /source/* /destination

o (si hay demasiados archivos):

$ find /source/ -name \* -type f -exec rsync -at {} /destination/ ";"

Aquí están los argumentos para BSD rsync:

-a, --archive               archive mode; equals -rlptgoD (no -H,-A,-X)
-u, --update                skip files that are newer on the receiver
-t, --times                 preserve modification times

Si está utilizando GNU rsync, considere agregar:

-N, --crtimes               preserve create times (newness)

Nota: Puede instalar GNU rsyncpor brew install rsync.

Si esto no ayuda, también intente sin él -u.

kenorb
fuente
@Flimm Correcto, estaba usando GNU en realidad para probarlo, he aclarado la respuesta. Eliminado -N, pero puede agregarlo si tiene la versión GNU, de lo contrario, use la sintaxis BSD.
kenorb
Usar GNU rsync con el -Nmarcado funcionó para mí. No estoy seguro si fue por la -Nbandera.
Flimm
0

Eureka! Descubrí lo que está causando el problema.

Los archivos se copian a un recurso compartido de red de Windows Server 2008 con replicación DFS (a otro servidor). De alguna manera, Finder está almacenando en caché el estado "ocupado" del archivo; y esto a veces ocurre mientras el archivo se está replicando.

La solución consiste en usar el terminal para duplicar el archivo, eliminar el original, ¡ESPERE!, Y luego cambiar el nombre del duplicado al nombre original. (Si no espera, el duplicado se volverá gris cuando cambie el nombre).

Ese es el "qué"; Todavía espero que alguien pueda explicar dónde se almacena en caché la información.

Si alguien puede averiguar dónde se almacena en caché la información y cómo identificar qué archivos se ven afectados en un script, aceptaré su respuesta; de lo contrario, marcaré esto como esta respuesta y escribiré el problema a la rareza de interoperabilidad de OS / X y Windows.

Robert Altman
fuente