En OSX 10.10 creé un archivo plist en / Library / LaunchDaemons / para comenzar al iniciar una conexión OpenVPN. Sin embargo, encontré problemas de DNS al pasar de una interfaz de Internet a otra (como WiFi a la red LAN) y pensé que necesitaba reiniciar mi demonio OpenVPN con launchctl para solucionarlo.
Pero con este método necesito ir a una consola, escribir un comando monstruoso de launchctl con sudo y, por supuesto, escribir mi contraseña de administrador.
¿Se puede automatizar este proceso de escritura?
Editar
Gracias por la respuesta general de @bmike que abrirá nuevos horizontes y @Graham Miln, aunque no me gusta AppleScript, pero como @Mark solicitó, aquí está mi archivo .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>KeepAlive</key>
<true/>
<key>Label</key>
<string>net.openvpnd</string>
<key>ProgramArguments</key>
<array>
<string>/usr/sbin/openvpn</string>
<string>/a/path/to/file.ext</string>
</array>
<key>RunAtLoad</key>
<true/>
<key>SuccessfullExit</key>
<true/>
<key>StandardErrorPath</key>
<string>/Library/Logs/ovpnerr.log</string>
<key>StandardOutPath</key>
<string>/Library/Logs/ovpn.log</string>
<key>EnvironmentVariables</key>
<dict>
<key>PATH</key>
<string>/usr/sbin:/another/path</string>
</dict>
</dict>
</plist>