Назад | Перейти на главную страницу

Что означает знак «@» в выводе ls -l?

У меня есть такой вывод на MacOSX:

$ ls -l
total 40
-rwxr-xr-x@ 1 levente  staff   52 30 Sep 15:38 pl
-rwxr-xr-x  1 levente  staff  675 14 Feb 17:07 plplay
-rwxr-xr-x@ 1 levente  staff  662 26 Jan 14:13 plstart
-rwxr-xr-x@ 1 levente  staff  296  1 Dec 11:50 plstop
-rwxr-xr-x@ 1 levente  staff  268 29 Dec 18:44 plweb

Что означает "@" рядом с разрешениями?

Это означает, что эти файлы имеют расширенные атрибуты файловой системы, которые не являются обычными разрешениями Unix. Попробуйте выполнить xattr plstart и посмотрите, какие настройки установлены.

Кашани имеет право с использованием xattr для отображения лишних битов. В частности, в OSX это, скорее всего, так называемая вилка ресурсов. Базовая файловая система HFS +, которую использует OSX, имеет дополнительные сегменты данных, которые могут хранить всевозможную информацию. Кстати, то же самое можно увидеть при монтировании SMB, NTFS и т. Д. В виде файлов ._FILENAME.

Чтобы получить полную информацию о вилках ресурсов, см. статья в Википедии или Разработчик Apple сайт.