Eu faria da maneira OS X e usaria launchd ao invés de cron. Você faz isso escrevendo um LaunchAgent. Isso é basicamente um .plist em / Library / LaunchAgents ou ~ / Library / LaunchAgents que informam qual script deve ser executado e qual deve ser o gatilho para a execução do script.
O launchd permite controlar se o script deve ser executado pelo usuário conectado ou pelo usuário root.
OLingon.app é uma boa maneira de começar e gerenciar o LaunchAgents.
A página do manual Apple Developer Connection também pode ajudar.