Я недавно обновился до снежного барса. Я заметил, что некоторые файлы, написанные MacPorts, установлены с неверным разрешением - они написаны с umask 0077. Я думаю, что я сузил проблему:
- Команда
portвызывается черезsudo. - В моем файле
.bashrcуказан umask 0077. - В более старых версиях OS X (10.5 и ниже) sudo использовал umask пользователя root (0022); однако теперь он использует мой umask 0077.
Есть ли способ заставить sudo использовать старое поведение? Сейчас это немного раздражает, потому что я должен использовать sudo для запуска простых команд, таких как port installed port outdated и т.д.
(Проблема описана более подробно в этом билете MacPorts.)
редактировать
Я обнаружил параметр umask для sudo, и в /etc/sudoers я добавил следующую строку:
Defaults umask=0022
Однако это не сработало должным образом, потому что настоящий umask, используемый sudo - это объединение пользовательской маски с этой маской по умолчанию. Чтобы переопределить поведение umask sudo и напрямую использовать значение по умолчанию (т.е. не объединение пользователя и маску sudo по умолчанию), можно добавить следующее:
Defaults umask_override
