2017年01月06日

ラズパイで起動時にプログラムを自動実行する

 ちょっとハマったのでメモしておく。ラズパイで起動時にプログラムを自動実行するには、コンソールモードで自動ログインするように設定した上で、.bash_profile にそのプログラムを自動実行するためのコマンドを書いておけばよい。ただ、ちょっと要注意なのは、ssh でログインした場合もこれが実行されてしまうこと。リモートログインとローカルログインを区別するにはどうすればいいのか、としばし悩んだが、tty を使えばよいと気づいた。

 例えば、るあこんを自動起動するなら、こんな感じで。

if (tty | grep '\/dev\/tty' >/dev/null); then
  if ! (ps -a | grep luacon >/dev/null); then
    cd Documents/Development/LuaCon/raspi_build/luacon
    ./luacon
  fi
fi

 内側の if 文は、luacon を二重起動しないようにするもの。

Posted at 2017年01月06日 00:55:13
email.png