Проблемы с разрешениями Packagemaker в OS X Lion - PullRequest
1 голос
/ 23 июля 2011

Я создал OS x pkg, используя пакетную программу, которая устанавливает пользовательский плагин SDK и XCode, разрешения полезной нагрузки установлены как root: admin и chmod 775, как рекомендовано.

Это прекрасно работает в OS X 10.6 (Snow Leopard) с пакетами, созданными с помощью Xcode 3.2 и Xcode 4.0, но в OS X 10.7 (Lion) с Xcode 4.1 права доступа к файлам изменяются на root: wheel

Если я создаю пакет 10.7 в 10.6, разрешения устанавливаются правильно. Любые идеи, если было какое-то изменение в 10.7 или Xcode 4.1 относительно разрешений пакета?

Ответы [ 2 ]

1 голос
/ 28 июня 2012

PackageMaker, или, скорее, / usr / sbin / installer, имеет тенденцию игнорировать владельца и разрешения, указанные при сборке пакета. Вы должны установить владельца и разрешения полезных данных перед их добавлением в PackageMaker.

Если вы собираете с помощью packagemaker в командной строке, убедитесь, что вы указали --no-Recommended, в противном случае он будет применять «рекомендуемые» разрешения вашей системы к пакету.

0 голосов
/ 09 октября 2015

Я не уверен, что это именно то, что вам нужно, но посмотрите документы здесь: https://developer.apple.com/library/mac/documentation/Darwin/Reference/ManPages/man1/pkgbuild.1.html

конкретно эту часть:

- владение (рекомендуется | сохранить |preserve-other) По умолчанию, когда полезные данные архивируются в пакет, рекомендуемые UID и GID будут применяться ко всем файлам.(Как правило, это будет root: wheel, который гарантирует, что файлы, установленные в системном домене, принадлежат пользователю root, а файлы, установленные в домашнем каталоге пользователя, будут принадлежать этому пользователю.) Если у вас есть особые требования к владельцам, вам следует использоватьchmod (1) для настройки владельца исходных файлов и использования --ownership preserve, чтобы pkgbuild архивировал точное владение файлами на диске.В качестве альтернативы, если у вас есть только несколько файлов для настройки, --ownership preserve-other будет применять рекомендованные рекомендованные UID и GID к тем файлам, которые принадлежат пользователю, выполняющему pkgbuild, но оставляют другие файлы без изменений.Обратите внимание, что pkgbuild никогда не меняет владельца фактических файлов на диске, а только владельца, который заархивирован в пакет.

...