Я использовал Дисковую утилиту OSX для проверки прав доступа к диску и обнаружил, что многие системные файлы имеют неправильные разрешения. Я бы сказал, что все они были более открытыми, позволяя другим читать или писать. Кроме того, многим была назначена неправильная группа. Как это произошло?
2 ответа
Моим первым предположением будет: в большинстве случаев это просто отсутствие заботы со стороны программиста. Либо потому, что они вообще не думают об этом, либо, если что-то не работает, они могут попытаться расширить разрешения, даже если это не поможет. Рассмотрим приложения, которые требуют ввода пароля суперпользователя. Что они могут сделать с этим, что они будут делать с этим?
Что ж, посмотрим, что мы можем найти.
Официальная позиция:
У Apple есть руководство по устранению неполадок с разрешениями, в котором говорится:
Сторонний установщик приложения неправильно устанавливает разрешения для устанавливаемых файлов или даже для всей папки «Приложения». [...] Также возможно, что программное обеспечение, установленное при входе в систему как один пользователь, будет недоступно при входе в систему как другой пользователь.
Вот еще одна причина:
На файловую систему может повлиять прерывание питания (неправильное отключение) или когда она перестает отвечать ("зависание" или "зависание"). Это может повлиять на разрешения.
Некоторые приложения могут намеренно захотеть изменить разрешения, чтобы иметь возможность "делать больше" в системе:
Большинство приложений, выполняемых пользователем, имеют доступ только к тем файлам, к которым у него есть доступ. Например, программное обеспечение для резервного копирования не может выполнять резервное копирование системных файлов Mac OS X с правами суперпользователя.
В общем, неплохо бы регулярно восстанавливать разрешения. Не повредит. Особенно, если вы испытываете внезапные проблемы без видимой причины. Или, если вы хотите обезопасить себя, вы не можете случайно изменить или удалить важные системные файлы.
Опять же, что такое "правильные разрешения" в любом случае? Только потому, что диалоговое окно "Разрешения на восстановление" говорит, что они не правы, они на самом деле что-то вредят? Существует ли повышенная угроза безопасности из-за неправильных разрешений? Вероятно, не в 95% всех случаев. Правильные разрешения определяются приложениями, которые устанавливаются с помощью "Квитанции", которые вы можете найти в разделе « Library/Receipts
или, что более недавно, в папке « /var/db/receipts
. Обратите внимание, что они проверяются только для программного обеспечения, установленного с помощью установщика Apple:
Файлы, которые не установлены как часть пакета установщика Apple, не указаны в квитанции и поэтому не проверяются. Например, если вы устанавливаете приложение с помощью приложения-установщика стороннего производителя или копируете его с образа диска, сетевого тома или другого диска вместо его установки через установщик, файл квитанции не создается.
Неофициальные должности:
Есть даже некоторые люди, которые, кажется, против ремонта, но я не верю всему, что они говорят. Есть несколько причин для неправильных разрешений, упомянутых в посте:
Еще одна причина, по которой права доступа стали проблемными, были сторонними установщиками, которые запрашивали root в OS X и изменяли разрешения для некоторых папок, которые были в пути к месту назначения. Я знаю, что [...] с тех пор обновил свои установщики, чтобы предотвратить эту странность (это были те же самые установщики, которые говорили вам, чтобы вы закрывали все приложения при установке программного обеспечения в OS X)
Таким образом, любое стороннее приложение может изменять разрешения и как-то неправильно их устанавливать.
В основном то, что я сказал: ошибки программирования. При ежедневном использовании программа может изменять права доступа к файлам. Но представьте, что установщик или программа на самом деле устанавливают неправильные разрешения, которые вызывают серьезные проблемы во всей системе - вы не думаете, что они исправят это как можно скорее?
Я не пробовал, но продолжайте, восстановите разрешения, перезагрузите Mac, затем проверьте их. Я уверен, что что-то нужно будет восстановить снова. Возможно, людям не стоит слишком беспокоиться об этом, если только у них нет особой проблемы безопасности, когда они знают, какие файлы затронуты.
Дом, который пролил свет на эту тему.
Несортированный материал для чтения:
PackageMaker от Apple имеет репутацию не применять разрешения, указанные в пользовательском интерфейсе дизайна пакета (см., Например, «Re: несоответствующие дефекты разрешений PackageMaker» и Google для получения дополнительной информации). Так что, если вы доверяете программному обеспечению Apple для работы, у вашего установщика есть все шансы ошибиться.
В более старых версиях PackageMaker предполагалось, что разработчик создаст всю иерархию каталогов, содержащую их приложение, и установщик затем применяет разрешения, имеющиеся в каталоге приложений, который создал разработчик. (Инструкции по нацеливанию на более старую версию PackageMaker, в которой упоминается именно эта проблема, см. В « Путеводителе по PackageMaker» от WhiteBox.) Это было также легко ошибиться.
Правильные разрешения для различных системных файлов также со временем менялись. Один небольшой пример см. В разделе «Re: Разрешения на Snow Leopard». Это может сделать неправильные ранее правильные установщики.