Как и в большинстве других UNIX-подобных операционных систем, Macintosh позволяет вам контролировать доступ к файлу с разрешениями POSIX. Однако, начиная с Mac OS/X 10.4 (Tiger), файл и операционная система Macintosh позволяют (опционально) настраивать список контроля доступа. Списки контроля доступа дают администратору гораздо больше контроля, чем обычные разрешения POSIX (ACL чаще всего используются в рабочих средах).
Как примечание, Windows поддерживает ACL начиная с Windows NT; и некоторые версии Linux делают то же самое. Кроме того, есть отличная статья о списках контроля доступа в Macintosh на Ars Technica.
Во всяком случае, в соответствии с Mac OS X Server v10.6 - руководство пользователя управления (см 28), если есть один или несколько правил ACL , установленные для файла , и один из этих правил ACL применяется к вам, то правила ACL имеют приоритет поверх обычных разрешений POSIX.
В вашем случае ваш файл принадлежит "корневому" пользователю ("суперпользователь") и принадлежит к группе "администратор" (к этой группе относятся только пользователи, помеченные как "Администраторы" на панели "Учетные записи" в Системных настройках). Разрешения POSIX для вашего файла настроены так, чтобы root мог читать, записывать и выполнять файл; запрещает любой доступ для группы "администратор" и позволяет другим пользователям читать, записывать и выполнять ее. Как вы продемонстрировали, вам следует разрешить делать с этим файлом все, что вы хотите! Не волнуйтесь, хотя; вы не сходите с ума (что всегда обнадеживает, узнав ^ _ ^) ... похоже, что правило ACL мешает и переопределяет разрешения файла POSIX.
Вот почему Марк спросил:
Что показывает ls -e?
... ls -e
показывает правила списка контроля доступа для этого файла. Очевидно, если у вас установлен Macintosh Server, есть хорошая панель, которая позволяет вам управлять всеми правилами. (В обычном диалоговом окне "Получить информацию" в Finder также есть ограниченный файл ... найдите файл в Finder и нажмите «Command +i», чтобы "получить информацию" для него ... разверните панель "Общий доступ и разрешения" внизу). окна покажет вам некоторые правила ACL ... вам придется разблокировать эту панель, чтобы изменить права доступа).
Если способ Finder не работает, вам придется попробовать ls -e
. Надеемся, что распечатанные правила ACL не будут слишком сложными. Однако в документе «Обзор безопасности» в Центре разработки Macintosh есть удобная ссылка ACL . Не стесняйтесь ответить на этот пост, если вам нужна дополнительная помощь.
В вашем случае, даже если вы знаете правила ACL, вы не сможете ничего с этим поделать ... только владелец (или суперпользователь, который в вашем случае также является владельцем) может изменить его; и только люди, которые входят в группу "администратор" (к которой вы говорите, что не принадлежите) могут действовать от имени суперпользователя. Однако, если вы хотите попробовать, вы (или кто-то, кто является администратором) можете перейти в каталог, содержащий файл, и выполнить одну или несколько из следующих команд:
sudo chmod +a "liuxiang allow read" sa
# для включения чтения
sudo chmod +a "liuxiang allow write" sa
# для включения записи
sudo chmod +a "liuxiang allow execute" sa
#, чтобы включить его выполнение
... (или что-то подобное), чтобы исправить это (вам будет предложено ввести пароль человека, который запускает команду).
Надеюсь, это поможет!