Comment réparer les fichiers gris dans le Finder?

13

Existe-t-il un moyen de forcer le Finder à actualiser ses informations en cours d'utilisation pour les fichiers gris (inaccessibles)?

Détails:

Je déplace des fichiers rarement utilisés de mon Mac (OS X 10.6) vers un serveur de fichiers Windows Server 2008. J'ai récemment trouvé un grand nombre de fichiers que le Finder d'OS X affiche en gris (comme si le fichier était en train d'être copié). Les fichiers en question sont tous valides et complets: pas de corruption ou de données manquantes; en fait, je peux accéder aux fichiers depuis Terminal ou depuis un ordinateur Windows sans problème, mais Finder pense toujours qu'ils doivent être considérés comme inaccessibles.

Je peux «résoudre» le problème en copiant le fichier d'origine vers un nouveau nom, en supprimant le fichier d'origine, en attendant quelques minutes, puis en renommant le nouveau fichier en son nom d'origine (si je n'attends pas assez longtemps, le nouveau le fichier deviendra gris lorsqu'il sera renommé en son nom d'origine).

Fondamentalement, il semble que le Finder n'ait pas effacé un indicateur [conjecture] "en cours d'utilisation" ou "incomplet".

Revenons donc à la question d'origine: comment résoudre ce problème ? Idéalement, j'aimerais pouvoir analyser les lecteurs réseau et trouver et corriger tous les fichiers gris via le terminal ou l'opération récursive, afin que je puisse tous les réparer sans perdre beaucoup de temps.

Robert Altman
la source
Cela a-t-il à voir avec les autorisations? L'avez-vous vérifié?
Martin Marconcini
Le redémarrage du Finder fonctionne-t-il?
Itai Ferber
Pas d'autorisations: les fichiers incriminés sont accessibles via Terminal. Le redémarrage d'OS / X n'a ​​aucun effet.
Robert Altman

Réponses:

8

Cela l'a résolu pour moi! http://macadmins.psu.edu/news/2011/06/grayed_out_finder_folder

Alors, qu'est-ce-qu'il s'est passé? Il semble que la date de création du dossier ait été fixée à une date aléatoire en 1943. Bien que nous ne sachions pas comment cela s'est produit, nous avons trouvé comment le corriger.

Nous avons utilisé quelques binaires fournis avec les outils de développement, GetFileInfo et SetFile. GetFileInfo nous a montré la date de création du dossier. Nous l'avons ignoré au début, mais avec un examen plus approfondi, il a attiré notre attention.

$ GetFileInfo Test / répertoire: Attributs "/ Users / user / Desktop / Test": avbstclinmedz créé: 13/06/1943 06:13:00 modifié: 13/06/2011 15:07:33

Nous pourrions alors changer la date de création en utilisant l'outil SetFile.

$ SetFile -d 13/06/2011 Test /

Après avoir remis la date à une heure raisonnable, nous pouvons voir qu'elle a vraiment changé.

$ GetFileInfo Test / répertoire: Attributs "/ Users / userid / Desktop / Test": avbstclinmedz créé: 13/06/2011 06:13:00 modifié: 13/06/2011 15:07:33

Le dossier s'affichait alors correctement dans le Finder et était à nouveau utilisable. Nous avons également constaté que si vous créez un alias du dossier, vous pouvez voir les données et les déplacer. Une fois qu'il a été déplacé dans un autre dossier, l'ancien dossier peut être supprimé.

nickganga
la source
1
Cela aurait beaucoup de sens; si je me souviens bien, je voyais des dates étranges. Malheureusement (pour tester la théorie), j'ai depuis nettoyé les erreurs et je n'ai pas revu cela depuis un moment. Merci pour l'info!
Robert Altman
5

Utilisez ls -lapour vérifier si le fichier a des propriétés étendues. Cela ressemblera à:

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

Regardez à @ la fin. Cela signifie des propriétés étendues.

Pour afficher les propriétés étendues, vous devrez utiliser la xattr -l filenamecommande.

Dans de nombreux cas, les fichiers grisés ont un com.apple.FinderInfoattribut qui ressemble à:

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

Pour supprimer cet attribut, exécutez xattr -d com.apple.FinderInfo filenameet le fichier reviendra à la normale.

Si vous devez supprimer cet attribut de tous les fichiers de manière récursive, vous pouvez exécuter:

xattr -dr com.apple.FinderInfo .

Ne manquez pas le point .à la fin qui signifie le répertoire courant.

Message d'origine: https://tangentlin.wordpress.com/2013/10/18/greyed-out-files-in-mac-osx/

camikiller
la source
1
Seul celui-ci a fonctionné pour moi sur High Sierra.
Rivera
2

J'ai résolu cela en utilisant la commande duplicate sur le dossier grisé. Le nouveau dossier sera accessible et les fichiers pourront être déplacés vers un autre dossier. Après avoir déplacé les fichiers, supprimez les deux dossiers (gris et copie), maintenant tous deux vides

Adrian Trif
la source
1

Essayez de supprimer vos caches (~ / Library / Caches) et de redémarrer. D'après mon expérience, cela résout généralement les problèmes liés aux icônes étranges.

Harv
la source
Malheureusement, cela n'a eu aucun effet.
Robert Altman
1

Vous pouvez essayer de resynchroniser les fichiers à nouveau en utilisant l' rsyncoutil:

$ rsync -aut /source/* /destination

ou (s'il y a trop de fichiers):

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

Voici les arguments pour 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 vous utilisez GNU rsync, pensez à ajouter:

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

Remarque: Vous pouvez installer GNU rsyncpar brew install rsync.

Si cela ne vous aide pas, essayez également sans -u.

Kenorb
la source
@Flimm D'accord, j'utilisais GNU pour le tester, j'ai clarifié la réponse. Supprimé -N, mais vous pouvez l'ajouter si vous avez une version GNU, sinon utilisez la syntaxe BSD.
kenorb
L'utilisation de GNU rsync avec le -Ndrapeau a fonctionné pour moi. Je ne sais pas si c'était à cause du -Ndrapeau.
Flimm
0

Eureka! J'ai trouvé la cause du problème.

Les fichiers sont copiés sur un partage réseau Windows Server 2008 avec réplication DFS (sur un autre serveur). D'une manière ou d'une autre, le Finder met en cache l'état "occupé" du fichier; et cela se produit parfois pendant la réplication du fichier.

La solution consiste à utiliser le terminal pour dupliquer le fichier, supprimer l'original, ATTENDRE !!!, puis renommer le doublon en son nom d'origine. (Si vous n'attendez pas, le doublon devient gris lorsqu'il est renommé.)

C'est le "quoi"; J'espère toujours que quelqu'un pourra expliquer où les informations sont mises en cache.

Si quelqu'un peut déterminer où les informations sont mises en cache et comment identifier les fichiers affectés dans un script, j'accepterai leur réponse; sinon, je marquerai cela comme cette réponse et j'écrirai le problème dans l'étrangeté d'interopérabilité OS / X et Windows.

Robert Altman
la source