Эти файлы ._
или точки подчеркивания создаются Mac OSX как альтернативный способ хранения расширенных атрибутов в файловой системе, которая не поддерживает их изначально.
Хотя технически и исторически что-то совершенно другое, последние версии Mac OSX рассматривают Resource Forks более / менее так, как если бы они были расширенными атрибутами, по крайней мере, с точки зрения пользователя. Посмотрите этот вопрос об обмене стеками для получения дополнительной (технической) информации о (расширенных) атрибутах файлов, ресурсах и потоках и т.д.
Вы можете узнать о наличии расширенных атрибутов в файлах, используя ls -l
в командной строке. К файлам с расширенными атрибутами добавляется символ @
. Выполнение ls -l@
также выведет список имен этих атрибутов. И, наконец, выполнение xattr -l <filename>
печатает имена атрибутов и -data указанного файла (в стиле hex-редактора). Смотрите ниже примеры.
$ > ls -la ~/Library/Fonts
total 225448
drwx------+ 536 arri staff 18224 Jun 17 04:57 .
drwx------@ 101 arri staff 3434 Aug 18 16:33 ..
-rwxr-xr-x@ 1 arri staff 45 Aug 12 2010 04b-03.suit
-rwxr-xr-x 1 arri staff 19492 Mar 25 2003 04b03.ttf
-rw-r--r--@ 1 arri staff 54544 Apr 24 2012 27344.ttf
...
$ > ls -la@ ~/Library/Fonts
total 225448
drwx------+ 536 arri staff 18224 Jun 17 04:57 .
drwx------@ 101 arri staff 3434 Aug 18 16:33 ..
com.apple.FinderInfo 32
-rwxr-xr-x@ 1 arri staff 45 Aug 12 2010 04b-03.suit
com.apple.FinderInfo 32
com.apple.ResourceFork 20314
-rwxr-xr-x 1 arri staff 19492 Mar 25 2003 04b03.ttf
-rw-r--r--@ 1 arri staff 54544 Apr 24 2012 27344.ttf
com.apple.metadata:kMDItemDownloadedDate 53
com.apple.metadata:kMDItemWhereFroms 166
$ > xattr -l ~/Library/Fonts/04b-03.suit
com.apple.FinderInfo:
00000000 46 46 49 4C 44 4D 4F 56 01 00 00 00 00 00 00 00 |FFILDMOV........|
00000010 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
00000020
com.apple.ResourceFork:
00000000 00 00 01 00 00 00 4E F2 00 00 4D F2 00 00 00 68 |......N...M....h|
00000010 C9 0B 1A C9 23 08 03 1A C9 0B 1A C9 23 02 1A C9 |....#.......#...|
...
Обратите внимание, что помимо HFS Plus, многие другие файловые системы также поддерживают расширенные атрибуты, они просто не всегда хорошо работают с Mac OSX из коробки.
Одним из примеров может быть, например, смонтированная на SMB удаленная файловая система Windows (NTFS). Обе файловые системы NTFS, как SMB-протокол (и его реализация для Mac), поддерживают расширенные атрибуты, но в этом контексте они называются именованными потоками. Эта функция часто отключена по умолчанию, но ее легко включить, как описано здесь.