[Dnsmasq-discuss] macport installation not starting
Perette Barella
perette at barella.org
Fri Sep 4 15:19:57 BST 2009
On 2009年09月04日, at 7:10, B. Kamer wrote:
> Perhaps things are different on your system or it seems you didn't
> quite got my explanation of the problem.
Sorry about that, I missed a level of indirection. You are right, the
dnsmasq.wrapper does try to call the missing script on Leopard too.
The MacPort people probably know more about this... the whole plist
invokes daemondo which runs dnsmasq.wrapper which runs dnsmasq.sh
which finally invokes dnsmasq seems bizarrely complex. On my server,
I don't use the MacPorts dnsmasq and rolled my own plist file:
<?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>uk.org.thekelleys.dnsmasq</string>
<key>ProgramArguments</key>
<array>
<string>/opt/local/sbin/dnsmasq</string>
<string>-k</string>
</array>
<key>RunAtLoad</key><false/>
<key>AbandonProcessGroup</key><false/>
<key>KeepAlive</key>
<dict>
<key>NetworkState</key><true/>
</dict>
</dict>
</plist>
Give that a try. If you have bound to a particular interface, though,
this won't work reliably because there's a race condition between
dnsmasq starting and the interfaces being up. A workaround is to
replace the <array> in the above:
<array>
<string>/bin/bash</string>
<string>-c</string>
<string>sleep 10 && exec /usr/local/sbin/dnsmasq -k</string>
</array>
Perette
More information about the Dnsmasq-discuss
mailing list