thumb Как найти, удалить и предотвратить создание .DS_Store файлов и .AppleDouble директорий на сетевых дисках.

.DS_Store (сокращение от Desktop Services Store) - это скрытый файл проприетарного формата, создаваемый OS X для хранения пользовательских атрибутов каталога, например положение иконок или выбор фонового изображения. По умолчанию, Finder создаёт .DS_Store файлы в каждом каталоге к которому он обращается, даже на удаленных системах (например, каталоги используемые совместно через соединение SMB или AFP). У Microsoft эквивалент этого файла desktop.ini.

.AppleDouble каталоги содержат метаданные, относящиеся к файлам. Это позволяет системе работать с форматами дисков (например удаленными NFS, SMB, WebDAV каталогами или локальным томом UFS) которые изначально не поддерживают ветви ресурсов. Небольшие двоичные файлы внутри .AppleDouble каталогов имеют то же имя как исходный файл и содержат метаданные о файле, такие как индексирование информации, которые не могут быть сохранены в исходном файле.

.DS_Store и .AppleDouble невидимы для обычного пользователя, но если вы делитесь с Windows / UNIX PC или включена видимость скрытых файлов в Finder, то вы увидите их в каждом каталоге.

Удаление всех .DS_Store и .AppleDouble

Описанный ниже метод поможет найти и удалить все .DS_Store файлы и .AppleDouble каталоги. Это может помочь избежать беспорядка на сетевых дисках.

1. Откройте Терминал.

2. Перейдите в необходимую директорию, например:

cd your_folder

3. Выполните эту команду:

find ./ -depth -name "`.DS_Store`" -exec rm {} \;

4. А теперь выполните эту команду:

find ./ -depth -name "`.AppleDouble`" -exec rm -Rf {} \;

Эти команды производят поиск в каждом подкаталоге, начиная с текущего каталога.

Например, если у вас есть такая структура каталогов:

-- Photos
         `-- 2013-10-31 Halloween Photos
         |                              `-- `.AppleDouble`
         |-- 2013-10-32 Halloween Photos
         |                              `-- `.AppleDouble`
         |-- 2013-10-33 Halloween Photos
         |                              `-- `.AppleDouble`
         `-- 2013-10-34 Halloween Photos
                                        `-- `.AppleDouble`

Тогда выполните это:

cd Photos
find ./ -depth -name "`.AppleDouble`" -exec rm -Rf {} \;

Примечание: Эти шаги можно выполнить на любой UNIX системе (Mac, Linux и т.д.).

Примечание: Эти шаги не предотвратят создание Finder’ом .DS_Store файлов на сетевых дисках.

Предотвращение создания .DS_Store и .AppleDouble

Вы можете пойти дальше и предотвратить создание в OS X .DS_Store файлов на сетевых дисках. Для этого мы настроим учетную запись пользователя OS X с использованием команды defaults write.

1. Откройте приложение Terminal.

2. Выполните эту команду:

defaults write com.apple.desktopservices DSDontWriteNetworkStores true

3. Теперь перезагрузите компьютер или перезалогиньтесь в учетную запись пользователя.

Если вы хотите предотвратить создание .DS_Store файлов и для других пользователей, то вам необходимо выполнить описанные выше действия для каждой учетной записи на каждом компьютере Mac.

Примечание: Это повлияет на взаимодействие пользователя с серверами SMB/CIFS, AFP, NFS и WebDAV.

Примечание: Эти шаги не предотвратят создание Finder’ом .DS_Store файлов на локальном томе и не предотвратят копирование на удаленный файловый сервер ранее существующих .DS_Store файлов.

Для того, чтобы остановить создание .AppleDouble каталогов, необходимо отредактировать конфигурацию вашей AFP службы (на сетевом диске). Как правило это “No AppleDouble” или “Enable AppleDouble” параметр конфигурации, которому необходимо задать значение true (для параметра NO) или значение false (для параметра Включить).


Arthur Gareginyan

Arthur Gareginyan

Arthur is a designer and full stack software engineer. He is the founder of MyCyberUniverse.com. His personal website can be found at arthurgareginyan.com. Check out his free WordPress plugins at wordpress.org.

Follow Arthur: