MugbotのためのRaspberry Piの設定

Mugbotの環境設定をします。

1.オートログインの設定

(2016/3現在、Raspbianは初期設定で自動起動になっているので以下の設定は必要なくなりました。)

Raspberry Piを起動した時に、ユーザーアカウントや、パスワードを入力しなくても自動的にログインできるようにします。

nanoで/etc/inittabを編集します。
$ sudo nano /etc/inittab

1:2345:respawn:/sbin/getty 38400 tty1
の行を#でコメントアウトします。

かわりに
1:2345:respawn:/bin/login -f pi tty1 </dev/tty1>/dev/tty1 2>&1
を新たに書き込みます。 (piの部分はユーザー名が入ります。)

保存してnanoを終了させて再起動すると、Raspberry Piがオートログインします。

これ、記述を間違うと、Raspberry Piが起動しなくなります。
SDカードのコピーをとってから試されるといいと思います。

 

 

 

2.自動起動の設定
Raspberry Piを起動した時に、WebSocketサーバーが自動起動するように設定します。Rubyで作ったWebSocketサーバを自動起動してみます。

nanoで/etc/rc.localを編集します。
$sudo nano /etc/rc.local
以下の内容に変更します。
(「exit 0」の前に「ruby /home/pi/mugbot_server_v1_0_0.rb &」を追加します。)

exit 0の前に
ruby /home/pi/mubogt_server_v1_0_0.rb &
を追加します。(mubogt_server_v1_0_0.rbはWebSocketサーバのファイル名)

最初にruby、最後に&をつけます。これが大事です。
つけないとフォラグラウンドで実行されて、いつまでたっても解放されずコマンド受付状態になりません。
&をつけないと、先に行けずに止まってしまいます。
mugbot_server_v1_0_0.rbに実行権を付与します。
$chmod +x /home/pi/mugbot_server_v1_0_0.rb
自動起動が出来ているか再起動して確認します。
$ sudo reboot

また、自動起動後に
$ ps ax
を実行することで、このプロセスが走っているかどうかを確認できます。

しかし、この方法ではシステム起動時に「一度だけ」起動するので、途中で何かの原因でプロセスが止まるとそれきりになります。
止まっても何度でも起動するのであればデーモン化が必要です。

 

3.固定IPアドレスの設定

nanoで/etc/network/interfacesを編集します。
$ sudo nano /etc/dhcpcd.conf
ここでは有線LANのIPアドレスを192.168.42.1にします。
最後の行に以下の内容に書いてください。

これで固定IPが付与されます。

以上でMugbotの環境設定を終了します。