2010年4月26日月曜日

launchctl を登録



launchctl を使って mediatomb を登録しようといろいろ試してたけど、上手くいかないので mediatomb を実行するシェルスクリプトを書いてそれを登録するようにした


startmb.sh



#!/bin/sh
ip=192.168.0.1
add=/Users/user/Movies
config=/Users/user/.mediatomb/config.xml
port=49152
/usr/bin/mediatomb --ip $ip --add $add --config $config --port $port --daemon


startmb.sh をパスが通ってるディレクトリ(今回は $HOME/bin)に置いておいて、launchctl に読み込ませるための startmb.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>startmb</string>
<key>ProgramArguments</key>
<array>
<string>/Users/user/bin/startmb.sh</string>
</array>
<key>RunAtLoad</key>
<true/>
</dict>
</plist>



これを ~/Library/LaunchAgents/startmb.plist に置く。


で、launchctl を実行



$ launchctl load -w ~/Library/LaunchAgents/startmb.plist
$ launchctl start startmb


これで mediatomb が動いた。


同様にして自作のWebアプリも登録しといた。





0 件のコメント: