Raspberry PiにNode.js実行環境を構築

nodeのバージョン管理するためのnodebrewをインストール

$ curl -L git.io/nodebrew | perl - setup
出力された"export PATH~"の行をコピーする。

ログインしたときにパスに追加されるようにする。
$ vi ~/.bashrc
先ほどコピーした行を最終行に張り付ける。

設定を反映
$ source ~/.bashrc

確認
$ nodebrew help

Node.jsとnpmをインストール

Node.jsのstableをインストール
$ nodebrew install-binary stable

デフォルトを設定
$ nodebrew alias default v6.6.0
ここで指定するバージョンは前の手順でインストールされたstableのバージョン。

デフォルトを使用する宣言
$ nodebrew use default

確認
$ node -v
v6.6.0

$ npm -v
3.10.3

sudoでつかえるようにする。

$ sudo node -v を実行したらcommand not foundになったので、rootユーザのPATH(ここでは/usr/bin)にリンクを張ってあげる。

(ならなかったらやらなくてもいいんじゃないかな。)

$ which node
/home/pi/.nodebrew/current/bin/node

$ sudo ln -s /home/pi/.nodebrew/current/bin/node /usr/bin
$ sudo ln -s /home/pi/.nodebrew/current/bin/npm /usr/bin

$ sudo node -v
$ sudo npm -v
使えることを確認する。

Raspberry Piの初期セットアップ(コマンドライン)

前提

  • 使用機器:Raspberry Pi3 Model B
  • 使用OS:2016-05-27-raspbian-jessie-lite.img

使用するもの

  • Raspberry Pi本体
  • microSDカード32GB(B01GDPS5Z2)
  • microUSBケーブル
  • USB充電ACアダプタ
  • HDMIケーブル
  • HDMI対応モニタ

OSをダウンロード

http://www.raspberrypi.org/downloads/

今回、GUIは必要なかったので以下のLite版を落としました。

2016-05-27-raspbian-jessie-lite.img

OSイメージをSDカードに書き込む(Mac

SDカードをMacに挿し、コンソールから以下実行。

$ diskutil list
/dev/disk0 (internal, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *251.0 GB   disk0
   1:                        EFI EFI                     209.7 MB   disk0s1
   2:                  Apple_HFS Macintosh HD            250.1 GB   disk0s2
   3:                 Apple_Boot Recovery HD             650.0 MB   disk0s3
/dev/disk1 (internal, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:     FDisk_partition_scheme                        *31.0 GB    disk1
   1:             Windows_FAT_32 NO NAME                 31.0 GB    disk1s1

SDカードは/dev/disk1にマウントされていることがわかる。

$ sudo diskutil unmountDisk /dev/disk1
Unmount of all volumes on disk1 was successful

$ sudo dd bs=1m if=Documents/2016-05-27-raspbian-jessie-lite.img of=/dev/disk1
〜大体10分くらい〜
1323+0 records in
1323+0 records out
1387266048 bytes transferred in 644.146291 secs (2153651 bytes/sec)

書き込み終わるとFinderにbootというディスクが表示されるので、取り出しマークを押してMacから抜く。

Raspberry Pi起動

  1. OSを書き込んだmicroSDカードをraspi本体にセットする。
  2. HDMIケーブルでraspiとモニタを接続する。
  3. USBポートにキーボードを接続する。
  4. USB電源をコンセントに挿して、USBを挿す。
  5. raspi本体にmicroUSBを挿す。
  6. 電源が入る。

初期設定

ユーザ名: pi
パスワード: raspberry

GUIチックに本体の基本的な設定ができるコマンド。
$ sudo raspi-config

LocaleをJPに変更すると文字化けするのでen_GB.UTF-8のままにします。

  1. Timezoneを変更
    1. 5 Internationalisation OptionsにカーソルをあわせてEnter
    2. I2 Change TimezoneにカーソルをあわせてEnter
    3. AsiaTokyo
  2. キーボードレイアウトを変更
    1. 5 Internationalisation Options
    2. I3 Change Keyboard Layout
    3. Generic 105-key(Intel) PC
    4. Other
    5. Japanese
    6. Japanese - Japanese(OADG 109A)
    7. The default for the keyboard layout
    8. No compose key
  3. Wi-fiロケール設定
    1. 5 Internationalisation Options
    2. I4 Change Wi-fi Country
    3. JP Japan
    4. OK

Finishすると再起動するか聞かれるので<Yes>

ネットワーク設定

無線でAPに接続する。 Redhat系と設定方法が全く違うので注意! DHCPIPアドレスが取得できる前提です。

raspiではテキストエディタはnanoコマンドを使います。
viでもできないことはないですが、きちんと動作しません。
ctrl + O→Enterで上書き保存。
ctrl + Xで終了。
他にもあるので調べてみてください。

$ sudo sh -c "wpa_passphrase \"<SSID名>\" <パスワード> >> /etc/wpa_supplicant/wpa_supplicant.conf"

$ sudo nano /etc/wpa_supplicant/wpa_supplicant.conf

平文でパスワードが書いてある行を消す。

$ sudo ifdown wlan0 && sudo ifup wlan0

$ ping 8.8.8.8
pingが応答することを確認。

$ ifconfig wlan0
リリースされたIPアドレスを確認

あとはSSH接続できるのでリモート操作しましょう。