Как исправить серые файлы в Finder?

Есть ли способ заставить Finder обновлять свою используемую информацию для серых (недоступных) файлов?

Подробности:

Я перемещаю нечасто используемые файлы с моего Mac (OS X 10.6) на файловый сервер Windows Server 2008. Недавно я нашел большое количество файлов, которые Finder OS X показывает как серый (например, если бы файл находился в процессе копирования). Все файлы, о которых идет речь, являются действительными и полными: нет коррупции или отсутствующих данных; на самом деле, я могу без проблем получить доступ к файлам с терминала или с компьютера под управлением Windows, но Finder по-прежнему считает, что их следует считать недоступными.

Я могу «исправить» проблему, скопировав исходный файл на новое имя, удалив исходный файл, ожидая минут или около того, а затем переименуя новый файл в исходное имя (если я не буду ждать достаточно долго , новый файл станет серым, когда он будет переименован в исходное имя).

В принципе, похоже, что Finder не смог очистить флаг «in-use» или «неполный» [гипотеза].

Итак, вернемся к исходному вопросу: как это можно исправить? В идеале я хотел бы иметь возможность сканировать сетевые диски и находить и исправлять все серые файлы с помощью терминальной или рекурсивной операции , поэтому я могу исправить их все, не тратя много времени.

13 голосов | спросил Robert Altman 6 MaramSun, 06 Mar 2011 06:12:59 +03002011-03-06T06:12:59+03:0006 2011, 06:12:59

6 ответов


0

Эврика! Я понял, что вызывает проблему.

Файлы копируются в общий сетевой ресурс Windows Server 2008 с репликацией DFS (на другой сервер). Так или иначе, Finder кэширует «занятый» статус файла; и это иногда происходит во время репликации файла.

Обход - использовать терминал для дублирования файла, удалить оригинал, WAIT !!!, а затем переименовать дубликат в исходное имя. (Если вы не ждете, дубликат меня станет серым, когда он будет переименован.)

Это «что»; Я все еще надеюсь, что кто-то сможет объяснить, где хранится информация.

Если кто-то может выяснить, где кэшируется информация и как определить, какие файлы затронуты в скрипте, я приму их ответ; в противном случае я помечаю это как этот ответ и напишу проблему на OS /X & Сверхчувствительность взаимодействия Windows.

ответил Robert Altman 13 AMpWed, 13 Apr 2011 00:57:55 +040057Wednesday 2011, 00:57:55
7

Это решило это для меня! http://macadmins.psu.edu/news/2011/06/grayed_out_finder_folder

  

Итак, что случилось? Похоже, что дата создания папки была установлена   к случайной дате в 1943 году. Хотя мы не уверены в том, как это произошло, мы   выяснил, как это исправить.

     

Мы использовали несколько двоичных файлов, которые поставлялись с инструментами разработчика, GetFileInfo   и SetFile. GetFileInfo показал нам дату создания папки. Мы   сначала упустил это из виду, но при ближайшем рассмотрении это привлекло наше внимание.

     

$ GetFileInfo Test /directory: атрибуты «/Users /user /Desktop /Test»:   avbstclinmedz создано: 06/13/1943 06:13:00 изменено: 13.06.2011   15:07:33

     

Затем мы можем изменить дату создания с помощью инструмента SetFile.

     

$ SetFile -d 06/13/2011 Test /

     

После установки даты в разумное время, мы видим, что она   действительно изменилось.

     

$ GetFileInfo Test /directory: "/Users /userid /Desktop /Test"   атрибуты: avbstclinmedz создано: 06/13/2011 06:13:00 изменено:   13.06.2011 15:07:33

     

Затем папка правильно показывалась в Finder и снова использовалась. Мы   также обнаружил, что если вы создали псевдоним папки, вы могли видеть   данные и переместить их. Как только он был перенесен в другую папку,   старая папка может быть удалена.

ответил nickganga 16 PM00000090000003431 2011, 21:02:34
3

Используйте ls -la, чтобы проверить, имеет ли файл расширенные свойства. Это будет выглядеть так:

[email protected] 1 user1 staff 439734882 Aug 16 21:34 myfile.zip

Посмотрите на @ в конце. Это означает расширенные свойства.

Чтобы просмотреть расширенные свойства, вам необходимо использовать команду xattr -l filename.

Во многих случаях greyed out имеют атрибут com.apple.FinderInfo, который выглядит так:

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

Чтобы удалить этот атрибут, запустите xattr -d com.apple.FinderInfo filename, и файл вернется к нормальной работе.

Если вам нужно удалить этот атрибут из всех файлов рекурсивно, вы можете запустить:

xattr -dr com.apple.FinderInfo .

Не пропустите точку . в конце, что означает текущий каталог.

Оригинальное сообщение: https: //tangentlin.wordpress.com/2013/10/18/greyed-out-files-in-mac-osx/

ответил camikiller 22 +03002016-10-22T08:08:06+03:00312016bEurope/MoscowSat, 22 Oct 2016 08:08:06 +0300 2016, 08:08:06
2

Я решил это, используя команду duplicate в папке с серым цветом. Новая папка будет доступна и файлы могут быть перемещены в другую папку. После перемещения файлов удалите обе папки (серые и копии), теперь оба пустые

ответил Adrian Trif 22 +04002012-10-22T23:28:58+04:00312012bEurope/MoscowMon, 22 Oct 2012 23:28:58 +0400 2012, 23:28:58
1

Попробуйте удалить кеши (~ /Library /Caches) и перезагрузите компьютер. Мой опыт в том, что это обычно устраняет проблемы, связанные с нечетным значком.

ответил Harv 12 AMpTue, 12 Apr 2011 00:35:55 +040035Tuesday 2011, 00:35:55
1

Вы можете попробовать снова выполнить rsync файлы, используя инструмент rsync:

$ rsync -aut /source/* /destination

или (если файлов слишком много):

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

Вот аргументы для 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

Если вы используете GNU rsync, подумайте о добавлении:

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

Примечание. Вы можете установить GNU rsync на brew install rsync.

Если это не поможет, попробуйте без -u.

ответил kenorb 23 FebruaryEurope/MoscowbMon, 23 Feb 2015 16:57:20 +0300000000pmMon, 23 Feb 2015 16:57:20 +030015 2015, 16:57:20

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132