Mac

2013-06-10, mac

OS起動時にプログラムを自動実行する

launchdという仕掛けを使うと、OS起動の後に続けて起動するプログラムを指定することができます。起動の設定は少し面倒なのですが、XMLで記述します。以下の例は、VirtualBoxのCent0S6という仮想マシンを起動するためのものです(VBoxManageというコマンドとその引数を指定しています)。

~/Library/LaunchAgents/jp.co.lumber-mill.centos.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>jp.co.lumber-mill.centos.plist</string>
  <key>ProgramArguments</key>
  <array>
  <string>/usr/bin/VBoxManage</string>
  <key>startvm</key>
  <key>CentOS6</key>
  </array>
  <key>RunAtLoad</key>
  <true/>
</dict>
</plist>

このファイルを規定の位置(Library/LaunchAgents)に置いてから、以下のコマンドで登録します。

$ launchctl load Library/LaunchAgents/jp.co.lumber-mill.centos.plist

あとは、以下のコマンドで一覧を確認したり、登録を外したりできる…はずなのですが、まだここまでは調査出来ていません。

$ launchctl list
$ launchctl unload Library/LaunchAgents/jp.co.lumber-mill.centos.plist

Automaterあたりに、もっとお手軽に登録できたりしないものなのでしょうか?

参考URL

この記事は役に立ちましたか?