Ho un file launchctl .plist in / Library / LaunchDaemons come segue:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>david.ports.slocate.home.updatedb</string>
<key>ProgramArguments</key>
<array>
<string>/opt/local/bin/slocate</string>
<string>-U</string>
<string>/Users/david</string>
<string>-o</string>
<string>/Users/david/slocate_david.db</string>
</array>
<key>Umask</key>
<string>077</string>
<key>StartCalendarInterval</key>
<dict>
<key>Hour</key>
<integer>5</integer>
<key>Minute</key>
<integer>45</integer>
</dict>
</dict>
</plist>
Per coloro che si stanno chiedendo, io uso la porta slocate di MacPorts invece del database di localizzazione nativo fornito con OS X. Questo processo .plist aggiorna il database slocate specifico alla mia home directory alle 5:45 del mattino. L'impostazione Umask di 077 rende il file di output leggibile solo da me. Tuttavia, il file viene creato con la proprietà di root; non quello che voglio.
Esiste un modo per specificare la proprietà del file di output anziché il valore predefinito di root? Mi rendo conto che posso lanciarlo come LaunchAgent sotto ~ / Library / LaunchAgents, ma preferisco che il lavoro venga eseguito indipendentemente dal fatto che io sia connesso o meno, quindi lo installo come LaunchDaemon.
Utilizzo OS X 10.10.3 Yosemite.