2015-01-11 40 views
4

我想在我的Mac上更改我的umask。在优胜美地之前,我使用了文件/etc/launchd-user.conf文件,并刚添加了命令umask 0077在OS X Yosemite中设置umask

目标是在每个GUI程序中保存文件时获得正确的文件权限,例如, Finder,笔记& Firefox。要在/etc/profile~/.profile中添加umask,则不能解决问题。

在优胜美地文件/etc/launchd.conf/etc/launchd-user.conf不再执行。 man launchctl说:

/etc/launchd.conf文件不再被咨询的子命令在早期启动时运行;出于安全考虑,此功能已被删除。

我尝试了使用LaunchAgents的不同示例。我可以设置环境变量(例如ENVIRONMENT_RC),但umask从未设置。

的/ etc /环境

#!/bin/sh 

umask 0077 

launchctl setenv ENVIRONMENT_RC "yes"  # Debugging 

/Library/LaunchAgents/environment.user.plist

<?xml version="1.0" encoding="UTF-8"?> 
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> 
<plist version="1.0"> 
<dict> 
    <key>Label</key> 
    <string>environment.user</string> 
    <key>ProgramArguments</key> 
    <array> 
      <string>/bin/sh</string> 
      <string>/etc/environment</string> 
    </array> 
    <key>KeepAlive</key> 
    <false/> 
    <key>RunAtLoad</key> 
    <true/> 
    <key>WatchPaths</key> 
    <array> 
     <string>/etc/environment</string> 
    </array> 
</dict> 
</plist> 

任何想法来设定在OS X优胜美地的umask?

感谢,
雷托

回答

7

有一个在OS X约塞米蒂10.10.3一个最终的解决方案:

,而不是在/ etc/launchctl用户。 conf使用: launchctl config user umask 002 (示例umask用于设置775权限)

而不是全系统/ etc/launchctl。CONF使用: launchctl config system umask 002 (例如的umask设置775个权限)

苹果公布了如何做的 “优胜美地的umask问题” 更新五天前(2015年4月8日)在这里:https://support.apple.com/en-us/HT201684

+0

切赫嗨,你是我今天的英雄。非常感谢你的提示!问候,雷托 – Ray

0

状态报告

遗憾的是到目前为止,这个问题没有有效的答案。但是不要紧。苹果支持也没有线索。他们说这个umask在OS X中没有设置更多的内容。真是太遗憾了!

launchctlumask子走了,但仍有以设置的.plist文件中的关键字“的umask”(例如,在/System/Library/LaunchDaemons/com.apple.configd.plist使用)的可能性:

... 
<plist version="1.0"> 
<dict> 
... 
    <key>Umask</key> 
    <integer>18</integer> 
</dict> 
</plist> 

我的计划是将此参数添加到启动用户上下文中第一个进程的LaunchAgent文件。

我及时通知您......

问候,
雷托