Проблемы с разрешениями на macOS и сброс этих разрешений

Вопрос или проблема

У меня есть проблемы с правами на macOS Ventura. В одной и той же папке я могу открыть некоторые файлы, например, с помощью SKIM для PDF файлов.

Но не могу открыть другие, хотя у всех одинаковые права rw-r--r--@.

Я подозреваю, что это произошло после какого-то сбоя, и те файлы, которые я не могу открыть, являются новыми загруженными!

Я пробовал:

sudo diskutil resetUserPermissions / 'id -u'

И тогда я получил:

Ошибка: -69841: Сброс прав в домашнем каталоге пользователя не удался

Так что я сделал:

chflags -R nouchg *

Это прошло, хотя были некоторые ошибки “доступ запрещен” на Google Дисках:

chflags: Library/CloudStorage/[email protected]/.tmp: Доступ запрещен
 также на
chflags: Library/Containers/com.apple.mail/Data/DataVaults: Операция не разрешена

(Я всё равно не использую apple.mail!)

Так что я подумал, что это не проблема. Я выполнил снова:

sudo diskutil resetUserPermissions / 'id -u'

Я получаю ту же ошибку.

И тогда:

Ошибка: -69841: Сброс прав в домашнем каталоге пользователя не удался

Вот полный результат проверки:

Запуск первой помощи на "Контейнер диска1"

Проверка загрузочного тома приведет к зависанию этого компьютера.

Проверка системы хранения
Используя режим в реальном времени.
Выполнение fsck_apfs -n -x -l /dev/disk0s2
Проверка суперблока контейнера.
Проверка записи EFI.
Проверка менеджера пространства.
Проверка очередей свободного пространства менеджера.
Проверка карты объектов.
Проверка структур ключей шифрования.
ошибка: объект (oid 0xb39c64d7a6841da9): o_cksum (0x136a758e9b9e011d) недействителен для объекта
ошибка: объект (oid 0xb39c64d7a6841da9): o_type недействителен, o_type 0x51080fd4 должен быть 0x72656373
ошибка: объект (oid 0xb39c64d7a6841da9): o_subtype недействителен, o_subtype 0x1e30fc98 должен быть 0x0
предупреждение: ключевой мешок тома (44693556+1): диапазон блоков не является действительным ключевым мешком, пропускаем проверки
Проверка тома /dev/rdisk1s1.
Проверка суперблока APFS тома.
Проверка карты объектов.
Проверка дерева метаданных снимков.
Проверка метаданных снимков.
Проверка снимка 1 из 1 (com.apple.TimeMachine.2024-12-04-100040.local)
предупреждение: inode (id 331086936): недостающее xattr ресурсного форка для сжатого файла
предупреждение: повреждения в ключах fsroot / документа не исправлены; они исчезнут, когда снимок будет удален
предупреждение: inode (id 334511517): недостающее xattr ресурсного форка для сжатого файла
предупреждение: inode (id 334519897): недостающее xattr ресурсного форка для сжатого файла
предупреждение: inode (id 334532660): недостающее xattr ресурсного форка для сжатого файла
предупреждение: inode (id 334535849): недостающее xattr ресурсного форка для сжатого файла
предупреждение: inode (id 334536221): недостающее xattr ресурсного форка для сжатого файла
предупреждение: inode (id 334541822): недостающее xattr ресурсного форка для сжатого файла
предупреждение: inode (id 334542255): недостающее xattr ресурсного форка для сжатого файла
предупреждение: inode (id 334542473): недостающее xattr ресурсного форка для сжатого файла
предупреждение: inode (id 334546170): недостающее xattr ресурсного форка для сжатого файла
предупреждение: inode (id 334546437): недостающее xattr ресурсного форка для сжатого файла
предупреждение: inode (id 334572374): недостающее xattr ресурсного форка для сжатого файла
предупреждение: inode (id 334574902): недостающее xattr ресурсного форка для сжатого файла
предупреждение: inode (id 334576375): недостающее xattr ресурсного форка для сжатого файла
предупреждение: inode (id 334578306): недостающее xattr ресурсного форка для сжатого файла
предупреждение: inode (id 334578629): недостающее xattr ресурсного форка для сжатого файла
предупреждение: inode (id 334579177): недостающее xattr ресурсного форка для сжатого файла
предупреждение: inode (id 334585561): недостающее xattr ресурсного форка для сжатого файла
предупреждение: inode (id 334606267): недостающее xattr ресурсного форка для сжатого файла
предупреждение: inode (id 334606369): недостающее xattr ресурсного форка для сжатого файла
предупреждение: inode (id 334607641): недостающее xattr ресурсного форка для сжатого файла
предупреждение: inode (id 334609862): недостающее xattr ресурсного форка для сжатого файла
предупреждение: inode (id 334707016): недостающее xattr ресурсного форка для сжатого файла
предупреждение: inode (id 334708514): недостающее xattr ресурсного форка для сжатого файла
предупреждение: inode (id 334709944): недостающее xattr ресурсного форка для сжатого файла
предупреждение: inode (id 334714110): недостающее xattr ресурсного форка для сжатого файла
предупреждение: inode (id 334746304): недостающее xattr ресурсного форка для сжатого файла
предупреждение: inode (id 334746987): недостающее xattr ресурсного форка для сжатого файла
предупреждение: inode (id 334764204): недостающее xattr ресурсного форка для сжатого файла
предупреждение: inode (id 334766417): недостающее xattr ресурсного форка для сжатого файла
предупреждение: inode (id 334772054): недостающее xattr ресурсного форка для сжатого файла
предупреждение: inode (id 334772806): недостающее xattr ресурсного форка для сжатого файла
предупреждение: inode (id 334774172): недостающее xattr ресурсного форка для сжатого файла
предупреждение: inode (id 334774684): недостающее xattr ресурсного форка для сжатого файла
предупреждение: inode (id 334775101): недостающее xattr ресурсного форка для сжатого файла
предупреждение: inode (id 334777236): недостающее xattr ресурсного форка для сжатого файла
предупреждение: inode (id 334777571): недостающее xattr ресурсного форка для сжатого файла
предупреждение: inode (id 334781153): недостающее xattr ресурсного форка для сжатого файла
предупреждение: inode (id 334838464): недостающее xattr ресурсного форка для сжатого файла
предупреждение: inode (id 334862808): недостающее xattr ресурсного форка для сжатого файла
предупреждение: inode (id 334863005): недостающее xattr ресурсного форка для сжатого файла
предупреждение: inode (id 334863320): недостающее xattr ресурсного форка для сжатого файла
предупреждение: inode (id 334863609): недостающее xattr ресурсного форка для сжатого файла
предупреждение: inode (id 334866869): недостающее xattr ресурсного форка для сжатого файла
предупреждение: inode (id 334868988): недостающее xattr ресурсного форка для сжатого файла
предупреждение: inode (id 334869518): недостающее xattr ресурсного форка для сжатого файла
предупреждение: inode (id 334869742): недостающее xattr ресурсного форка для сжатого файла
предупреждение: inode (id 334874378): недостающее xattr ресурсного форка для сжатого файла
предупреждение: inode (id 334874958): недостающее xattr ресурсного форка для сжатого файла
предупреждение: inode (id 334875136): недостающее xattr ресурсного форка для сжатого файла
Сгенерировано слишком много предупреждений такого типа; подавление последующих.
Проверка дерева идентификаторов документов.
Проверка дерева fsroot.
Проверка дерева ссылок на диапазоны.
Проверка пространства карты объектов тома.
Том /dev/rdisk1s1 оказался поврежденным и нуждается в ремонте.
Проверка тома /dev/rdisk1s2.
Проверка суперблока APFS тома.
Проверка карты объектов.
Проверка дерева метаданных снимков.
Проверка метаданных снимков.
Проверка дерева fsroot.
Проверка дерева ссылок на диапазоны.
Проверка пространства карты объектов тома.
Том /dev/rdisk1s2 выглядит нормально.
Проверка тома /dev/rdisk1s3.
Проверка суперблока APFS тома.
Проверка карты объектов.
Проверка дерева метаданных снимков.
Проверка метаданных снимков.
Проверка дерева fsroot.
Проверка дерева ссылок на диапазоны.
Проверка пространства карты объектов тома.
Том /dev/rdisk1s3 выглядит нормально.
Проверка тома /dev/rdisk1s4.
Проверка суперблока APFS тома.
Проверка карты объектов.
Проверка дерева метаданных снимков.
Проверка метаданных снимков.
Проверка дерева fsroot.
Проверка дерева ссылок на диапазоны.
Проверка пространства карты объектов тома.
Том /dev/rdisk1s4 выглядит нормально.
Проверка тома /dev/rdisk1s5.
Проверка суперблока APFS тома.
Проверка карты объектов.
Проверка дерева метаданных снимков.
Проверка метаданных снимков.
Проверка снимка 1 из 1 (com.apple.os.update-F06D7F99AEB01CD2BD3B8D9913FAABC40F1408DCAB6C2457B2220D28CED04850)
Проверка дерева fsroot.
Проверка дерева диапазонов файлов.
Проверка дерева ссылок на диапазоны.
Проверка пространства карты объектов тома.
Том /dev/rdisk1s5 выглядит нормально.
Проверка тома /dev/rdisk1s6.
Проверка суперблока APFS тома.
Проверка карты объектов.
Проверка дерева метаданных снимков.
Проверка метаданных снимков.
Проверка дерева fsroot.
Проверка дерева ссылок на диапазоны.
Проверка пространства карты объектов тома.
Том /dev/rdisk1s6 выглядит нормально.
Проверка выделенного пространства.
предупреждение: ключевой мешок контейнера (211137419+1): UUID 6D9308FC-4F82-4B2B-B34B-BA4DB900F942 записи 0 (тег 3) не ссылается на какой-либо том
Выполнение отложенных ремонтов.
предупреждение: необходимо очистить флаги bsd (0x20) в inode (object-id 331086936)
Всего пропущено 60/60 ремонтов этого типа.
предупреждение: найден сиротский/недействительный xattr (id 331086936, имя com.apple.decmpfs)
Всего пропущено 60/60 ремонтов этого типа.
Контейнер /dev/disk0s2 выглядит нормально.
Код завершения проверки системы хранения равен 0.

Операция успешна.
  1. Загрузитесь из режима восстановления, удерживая комбинацию клавиш Command-R при запуске.
  2. На рабочем столе восстановления выберите Утилиты >> Терминал
  3. В окне терминала введите: resetpassword и нажмите Enter. Вы не собираетесь сбрасывать пароль, мы собираемся сбросить ACL.
  4. Откроется окно сброса пароля >> выберите ваш загрузочный том.
  5. Выберите свое имя пользователя из меню, выберите учетную запись пользователя, если она еще не выбрана.
  6. Под “Сброс прав домашнего каталога и ACL” нажмите кнопку “Сбросить”.
  7. Затем выберите >> Перезагрузить из выпадающего меню.

Ответ или решение

Проблемы с правами доступа на macOS и их сброс

В macOS Ventura проблемы с правами доступа могут возникнуть по разным причинам, включая сбои системы, которые могут вызвать некорректное изменение ACL (Access Control Lists) или атрибутов файлов. В вашей ситуации, когда вы не можете открыть определенные PDF-файлы в приложении SKIM даже при наличии правильных прав доступа (rw-r--r--@), возможно, что данные файлы были повреждены или их метаданные не корректны в результате сбоя.

Причины Ошибок

  1. Системный сбой: Системные сбои могут вызвать проблемы с чтением и записью файлов, а также с обновлением метаданных и прав доступа.
  2. Использование облачных хранилищ: Путь доступа к файлам, размещённым в Google Drive или других облачных сервисах, может повлиять на права доступа, особенно если файлы синхронизируются в фоновом режиме.
  3. Удаленные файлы: Если файл был загружен из другого источника или был перемещен, система могла оставить после себя "хвост" в виде старых метаданных.

Устранение Проблем

  1. Сброс прав доступа в терминале:
    Вы уже попробовали использовать следующую команду для сброса прав пользователя, однако получили ошибку:

    sudo diskutil resetUserPermissions / 'id -u'

    Ошибка -69841: Permissions reset on user home directory failed говорит о том, что процесс сброса не может завершиться успешно из-за повреждений файловой системы или некорректных настроек прав доступа.

  2. Изменение атрибутов файлов:
    Команда chflags -R nouchg * завершилась с некоторыми предупреждениями, что указывает на недостаток прав для изменения атрибутов некоторых файлов. Это может происходить из-за того, что файлы находятся в защищенных системных папках, на которые нужно обратить внимание.

Решение Проблемы с Правами Доступа

Для устранения проблем с правами доступа вы можете выполнить следующие шаги:

  1. Перезагрузка в режиме восстановления:

    • Загрузите компьютер, удерживая комбинацию клавиш Command-R.
    • В меню восстановления выберите Utilities > Terminal.
    • Введите команду resetpassword и нажмите Enter. Это откроет окно сброса пароля.
  2. Сброс ACL и прав доступа:

    • В открывшемся окне выберите ваш загрузочный том.
    • Под выбором пользователя, нажмите на кнопку Reset Home Directory Permissions and ACLs.
    • Перезагрузите компьютер через меню .
  3. Проверка файловой системы:

    • Если после перезагрузки проблемы не исчезают, рекомендуем выполнить проверку диска с использованием Disk Utility:
      • Найдите утилиту на вашем Mac и запустите её.
      • Выберите ваш диск и нажмите First Aid.
  4. Переустановка приложений: Если проблема сохраняется только для определённых файлов или приложений, возможно, стоит удалить и переустановить их. Это может помочь восстановить необходимые настройки и исправить ошибки.

Заключение

Решение проблем с правами доступа в macOS может быть сложной задачей, особенно при наличии ошибок файловой системы. Следуя описанным выше шагам, вы сможете восстановить правильные права доступа и вернуть нормальную функциональность системы. Если же проблемы продолжают существовать, возможно, стоит обратиться в техническую поддержку Apple для более глубокой диагностики.

Оцените материал
Добавить комментарий

Капча загружается...