MacOSX
launchd

"Bad file descriptor" in Launchd

More than 3 years have passed since last update.

OS X 10.9でLanuchdに自分で作ったサービスを登録して起動しようとしたときに、以下のようにエラーが出て起動しませんでした。

$ launchctl start com.docker.boot2docker
launchctl start error: Bad file descriptor
$ launchctl list|grep docker
-   2   com.docker.boot2docker

StandardOutPathやStandardErrorPathで指定しているログファイルにも何も出力されず困りました。

plistファイルをよく確認したところ、

    <key>ProgramArguments</key>
    <array>
        <string>/usr/local/bin/boot2docker up</string>
    </array>

となっていた部分を以下のように変更したら正常に起動しました。

    <key>ProgramArguments</key>
    <array>
        <string>/usr/local/bin/boot2docker</string>
        <string>up</string>
    </array>

よく考えたら当たり前な気がします。

というわけでboot2dockerを自動起動するための設定ファイルを作りました。

https://gist.github.com/orangain/5f74bf388f66778f0e47