Файлы Mac могут быть защищены четырьмя тремя различными способами, которые я знаю:
- Стандартные права собственности и разрешения Unix, такие как r / w / x для пользователя / группы / других пользователей, которые вы видите
ls -l
и исправляете с помощью chown(1)
и chmod(1)
.
- Файловые флаги, такие как
uchg
и schg
которые вы видите, ls -lO
и исправить с помощью chflags(1)
.
Старые метаданные Finder «Бит блокировки», которые вы видите GetFileInfo filename
. Вы также можете увидеть наличие метаданных Finder, но не их значение, с ls -l@
. Вы можете это исправить с помощью SetFile(1)
. Не берите в голову, это uchg
теперь сопоставлено с флагом.
- Списки контроля доступа (ACL), которые вы видите
ls -le
и исправляете с помощью связанных с ACL аргументов chmod(1)
.
Итак, давайте посмотрим, что случилось с вашим файлом, объединив все эти флаги в ls
:
ls -lO@e main.m
Похоже, вы уже знаете, как бороться с № 1 и № 2.
Если вы видите ACL (# 4), вы можете исправить это с помощью связанных с ACL аргументов chmod(1)
.
Если вы все еще озадачены, обновите свой ответ выводом этой комбинированной ls
команды, которую я предложил выше, чтобы мы могли видеть, что происходит.