Гид по технологиям

Как изменить права файлов и папок на Mac

• 9 min read • macOS • Обновлено 18 Nov 2025
Изменение прав доступа к файлам на Mac
Изменение прав доступа к файлам на Mac

Зачем понимать права файлов в macOS

Файловая система контролирует, кто и как может читать, изменять или запускать файлы и папки на вашем компьютере. В macOS (APFS и ранее HFS+) используются стандартные Unix-права и дополнительно — списки управления доступом (ACL). Понимание прав помогает:

  • Защитить системные файлы и личные данные.
  • Устранить проблемы с доступом приложений.
  • Настроить совместную работу нескольких пользователей на одном Mac.

Краткое определение терминов: Unix-права — базовый набор разрешений (чтение, запись, выполнение). ACL — расширенные записи доступа, которые позволяют задавать более точные правила для отдельных пользователей.

change file permissions on mac

Альтернативный текст: вид окна Finder с опциями смены прав доступа к файлу

Основы прав доступа: что означают Read, Write, Execute

macOS наследует модель Unix: каждая запись (файл или папка) содержит классические три разрешения:

  • Read (r): разрешает читать содержимое файла. Для папок — видеть список имён внутри папки.
  • Write (w): разрешает изменять файл. Для папок — создавать, переименовывать и удалять элементы внутри папки.
  • Execute (x): разрешает запускать файл как программу. Для папок — разрешает «вход» в папку и доступ к её содержимому при условии наличия чтения.

Эти разрешения задаются для трёх классов субъектов:

  • user (владелец файла)
  • group (группа пользователей)
  • others (все остальные пользователи)

Права отображаются в виде строки из 10 символов, например: -rw-r--r-- или drwxr-xr-x. Первый символ показывает тип записи (- = файл, d = каталог). Последний символ может указывать на расширенные атрибуты (@).

Как менять права через Finder (GUI)

Finder — самый простой способ для большинства пользователей. Подходит, если вы предпочитаете графический интерфейс и не хотите запоминать команды.

Когда использовать Finder:

  • Изменять права для отдельных файлов и папок.
  • Добавлять локальных пользователей с базовым набором прав.
  • Быстро проверить, кто имеет доступ.

Пошагово:

  1. Откройте Finder и перейдите к файлу или папке.
  2. Правый клик → «Свойства» или выберите элемент и нажмите Command+I.
  3. В окне «Сведения» найдите раздел «Доступ и права» (Sharing & Permissions).

changing file permissions on mac using finder

Альтернативный текст: окно «Сведения» в Finder с разделом доступа и прав

  1. Нажмите значок замка внизу справа и введите пароль администратора.
  2. В столбце «Имя» выберите нужного пользователя или группу. Если пользователя нет — нажмите «+» и добавьте новый аккаунт.
  3. В столбце «Права» выберите одну из опций: «Чтение и запись», «Только чтение», «Только запись (Drop Box)», «Нет доступа».

change file permissions on mac using finder

Альтернативный текст: изменение типа привилегии пользователя в окне Finder

  1. По завершении снова нажмите замок, чтобы зафиксировать права, и закройте окно «Сведения».

Советы и примечания:

  • Опция «Только запись (Drop Box)» доступна для публичных папок и позволяет добавлять файлы в папку, но не просматривать её содержимое.
  • Если вы заметили ошибочные изменения, используйте меню действия (три точки) → «Отменить изменения».

Как менять права через Terminal (CLI)

Terminal даёт более гибкий, быстрый и автоматизируемый способ управления правами. Полезен для администраторов и при работе с большим количеством файлов.

Когда использовать Terminal:

  • Нужна массовая или рекурсивная правка прав.
  • Требуется скриптизация изменений (bash/zsh скрипты, Ansible и т. п.).
  • Нужно работать с удалёнными системами или при восстановлении прав.

Основные команды и концепции

Просмотреть файлы с правами:

ls -al file_name_or_directory

Пример вывода:

-rw-r--r--  1 alice  staff  1024  1 Jan 12:00 file.txt
drwxr-xr-x  5 bob    staff   160  2 Feb 15:30 folder

Изменение прав: команда chmod (change mode). Есть два подхода — символьный и октальный (числовой).

Символьный синтаксис (пример):

chmod ugo+rwxrw-r-- file_name

Это синтаксическое представление обычно записывают короче, через операторы +, -, =:

  • chmod a+rw file — всем добавить право чтения и записи (a = all = u,g,o).
  • chmod ug-x file — убрать право выполнения у владельца и группы.
  • chmod u=rwx,g=rw,o=r file — явно задать права для каждого класса.

Октальное (числовое) представление:

Каждой тройке прав соответствует цифра от 0 до 7:

  • 4 = r (read)
  • 2 = w (write)
  • 1 = x (execute)

Суммируете для каждого класса: chmod 764 file означает:

  • 7 (4+2+1) для владельца — rwx
  • 6 (4+2) для группы — rw-
  • 4 (4) для остальных — r–

Примеры команд:

chmod 764 file_name
chmod a+rw file_name        # или chmod 666 file_name
chmod ug-x file_name        # или chmod 766 file_name если нужно убрать x у g и o
chmod a+rw *.txt            # поменять права для всех .txt файлов в папке

Примечание: chmod 766 обычно задаёт права rwx для владельца, rw for group and others—будьте внимательны при использовании чисел.

Управление владельцем и группой: chown и chgrp

Иногда проблема — в владельце файла, а не в правах. Используйте chown:

sudo chown alice file_name         # изменить владельца
sudo chown alice:staff file_name   # изменить владельца и группу
sudo chgrp staff file_name         # изменить группу

ACL и расширенные атрибуты

macOS поддерживает ACL. Проверить наличие ACL можно командой ls -le.

Пример добавления ACL:

sudo chmod +a "alice allow read,write" file_name

Удаление ACL-записи:

sudo chmod -a "alice allow read,write" file_name
# или удаление по индексу
sudo chmod -a# 0 file_name

Проверка расширенных атрибутов (xattr):

xattr -l file_name   # показать список расширенных атрибутов
xattr -d com.apple.quarantine file_name   # удалить атрибут quarantine

Примеры рабочих сценариев

  • Дать полные права владельцу, группе — чтение/запись, остальным — только чтение:
chmod 764 file_name
  • Установить чтение/запись для всех (опасно для общих папок):
chmod 666 file_name
  • Удалить право выполнения у группы и остальных:
chmod go-x file_name
  • Рекурсивно применить права для папки и всех её содержимых:
chmod -R 750 /path/to/folder
chown -R alice:staff /path/to/folder

Расшифровка вывода и отладка проблем доступа

Шаги при проблемах доступа:

  1. Проверьте владельца и права: ls -al /path/to/item.
  2. Убедитесь, что промежуточные папки имеют права x для доступа.
  3. Проверьте ACL: ls -le /path/to/item.
  4. Проверьте расширенные атрибуты: xattr -l /path/to/item.
  5. Если нужен системный сброс прав для домашней директории — используйте восстановление через режим восстановления или Apple Support Tools.

Обратите внимание: если файл имеет бит setuid/setgid или флаги файловой системы, поведение может отличаться. Для таких случаев используйте ls -lO и stat.

Политика безопасности и лучшие практики

  • Минимизируйте количество пользователей с правами администратора.
  • Не давайте папкам и файлам права 777 (чтение/запись/выполнение для всех) без крайней необходимости.
  • Для совместного доступа используйте группы и ACL, а не общедоступные права.
  • Регулярно проверяйте системные логи при проблемах доступа.
  • Делайте резервные копии перед массовыми изменениями прав.

Сценарии, когда Finder не подходит (примеры неудач)

  • Нужно массово изменить права в тысячи файлов — GUI будет медленным.
  • Понадобилось применить рекурсивные правила с исключениями — Terminal гибче.
  • Надо выполнить операцию из скрипта на удалённой машине — только CLI.

Альтернативные подходы

  • Использовать MDM/MDX решения для централизованного управления правами на корпоративных машинах.
  • Для сетевых шар использовать NFS/SMB политики прав на стороне сервера.
  • Конфигурировать контекст безопасности через SIP (System Integrity Protection) и TCC (Transparency Consent and Control) для контроля доступа к чувствительным ресурсам.

Шаблоны и шпаргалки для часто используемых задач

Чек-лист перед массовым изменением прав:

  • Сделать резервную копию важных данных.
  • [ ] Проверить владельца: ls -al target.
  • [ ] Проверить ACL: ls -le target.
  • Прогнать команду на тестовой директории.
  • [ ] Применить изменения рекурсивно с осторожностью: chmod -R.
  • Проверить результат.

Быстрый набор команд (cheat sheet):

# посмотреть детали
ls -al
ls -le     # показать ACL
# изменить права (числа)
chmod 644 file.txt
# изменить права (символы)
chmod u+rwx,g=rw,o=r file.txt
# изменить владельца
sudo chown user:group file.txt
# рекурсивно для папки
sudo chown -R user:group /path/to/folder
sudo chmod -R 750 /path/to/folder
# удалить расширенный атрибут
xattr -d com.apple.quarantine file.zip
# показать расширенные атрибуты
xattr -l file

Модель принятия решений — какой метод выбрать

flowchart TD
    A[Нужно изменить права?] --> B{Массовая или единичная операция}
    B -->|Единичная| C[Finder — простой и безопасный]
    B -->|Массовая| D[Terminal — автоматизация и рекурсия]
    D --> E{Нужны ACL или xattr?}
    E -->|Да| F[Использовать chmod +a и xattr]
    E -->|Нет| G[Использовать chmod и chown]
    C --> H[Не забудьте нажать замок]
    F --> I[Тест на копии]
    G --> I
    H --> I

Критерии приёмки (проверка успешного изменения)

  • Права отображаются ожидаемым образом в ls -al.
  • Владелец и группа соответствуют целевым значениям.
  • При необходимости ACL содержит нужные записи (ls -le).
  • Приложения/пользователи, которым вы давали доступ, фактически получают его; те, кому доступ закрыт, не могут выполнить операцию.

Восстановление прав и откат изменений

Если ошибка произошла после массового применения прав:

  1. Немедленно остановите дальнейшие изменения.
  2. Восстановите из резервной копии, если она есть.
  3. Если резервной копии нет, попробуйте откатить изменения из истории конфигурации или скрипта, который вы использовали (если вы сохраняете логи команд).
  4. В крайних случаях загрузитесь в режим восстановления (Recovery), используйте Disk Utility или обратитесь в службу поддержки Apple.

Безопасность и приватность (GDPR и локальные риски)

  • Права доступа — важная часть защиты персональных данных. Откройте доступ к личной информации только тем, кто действительно в нём нуждается.
  • Для корпоративных и клиентских данных внедрите принцип наименьших привилегий.
  • При хранении персональных данных в облаке синхронизируйте права на стороне сервиса и контролируйте совместный доступ.

Совместимость и миграция

  • APFS сохраняет совместимость с Unix-правами. При клонировании или переносе с HFS+ учитывайте возможные различия в реализации расширенных атрибутов.
  • При копировании файлов через SMB/AFP права могут меняться в зависимости от настроек сервера.

Ролевые чек-листы

Для системного администратора:

  • Создать резервную копию.
  • Выполнить ls -al и ls -le до изменений.
  • Применить изменения на тестовой ветке.
  • Внедрить изменения через скрипт/контроль версий.
  • Проверить логи доступа после применения.

Для обычного пользователя:

  • Использовать Finder для единичных изменений.
  • Не менять права системных директорий.
  • При сомнениях — обратиться к администратору.

Тест-кейсы и приёмка

Пример теста: дать группе developers чтение/запись к папке проекта, но запретить выполнение сторонним пользователям.

Критерии приёмки:

  • Команда ls -al /projects/alpha показывает drwxrwxr-x и владельца alice:developers.
  • Пользователь из developers может создать файл.
  • Посторонний пользователь не может выполнить файл, если это не разрешено.

Часто задаваемые вопросы

Как посмотреть текущие права файла?

В Terminal выполните ls -al /path/to/file.

Как вернуть стандартные права домашней папки?

Для восстановления прав домашней папки используйте режим восстановления или следуйте инструкциям Apple Support; прямого универсального chmod для этого нет, так как права зависят от контекста.

Что означает символ @ в выводе ls -al?

Символ @ указывает на наличие расширенных атрибутов (xattr). Просмотреть их можно командой xattr -l file.

Чем ACL отличается от стандартных прав?

ACL позволяет задавать дополнительные правила доступа для отдельных пользователей или групп, сверх базовой триады user/group/others.

Факто-бокс: ключевые команды

  • Просмотр: ls -al, ls -le
  • chmod (права): chmod 644 file, chmod -R 750 folder
  • chown (владелец): sudo chown user:group file
  • ACL: sudo chmod +a "user allow read,write" file
  • xattr: xattr -l file, xattr -d name file

Краткое резюме

Это руководство даёт практический набор навыков для проверки и изменения прав в macOS: вы можете использовать Finder для простых задач и Terminal для гибкого и массового управления. Не забудьте тестировать изменения, сохранять резервные копии и не устанавливать слишком широкие права на чувствительные данные.

Короткое объявление для команды: обновлённое руководство по правам доступа на Mac готово — в нём инструкции для Finder и Terminal, чек-листы и примеры для безопасной настройки.

macos terminal commands

Альтернативный текст: окно Terminal с примерами команд chmod и ls

change file permissions on mac using terminal

Альтернативный текст: пример вывода ls -al с правами, владельцем и датой

Короткий список для соцсетей (100–200 слов)

Вам нужно быстро настроить доступ к файлам на Mac? Наше полное руководство объясняет, как менять права через Finder и Terminal. Вы узнаете, что означают r/w/x, как переводить символьные права в числовые (chmod), как работать с ACL и расширенными атрибутами (xattr), и получите чек-листы для безопасных массовых изменений. Подходит как для домашних пользователей, так и для администраторов. Сохраняйте резервные копии, тестируйте на копиях и не давайте права 777 без необходимости.


FAQ

  • Как проверить права? — ls -al.
  • Как дать всем чтение и запись? — chmod a+rw file.
  • Как убрать расширенные атрибуты? — xattr -d file.
Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

Несколько аккаунтов Skype: Multi Skype Launcher
Программное обеспечение

Несколько аккаунтов Skype: Multi Skype Launcher

Журнал для работы: повысить продуктивность
Productivity

Журнал для работы: повысить продуктивность

Персональные звуки уведомлений на Android
Android.

Персональные звуки уведомлений на Android

Скачивание шоу Hulu для офлайн‑просмотра
Стриминг

Скачивание шоу Hulu для офлайн‑просмотра

Microsoft Start: персонализированная новостная лента
Новости

Microsoft Start: персонализированная новостная лента

Как изменить имя в Epic Games быстро
Гайды

Как изменить имя в Epic Games быстро