注文から半年近くも待たされた「Raspberry Pi」が12月になってようやく到着したのは昨年末の与太記事として書きました。

ようやく Raspberry Pi 到着

↓こんな可愛い箱に入ってきてやってきた「Raspberry Pi」。

RaspberryPi_02


ですが、中身は

RaspberryPi_03


こんな基板剥きだしの、でもパソコン。手のひらサイズで、送料込み $40 強で買える代物ですが、HDMI出力、ビデオ出力、USBコネクタ×2、有線LAN、オーディオ出力がある立派なパソコンです。

到着した時の記事で「久しぶりに愉しいオモチャを楽しむ年末年始にしたい」と書いた割には、すぐに忘却の彼方へ行ってしまい、正月三が日の最後になって思い出しましたので、慌ててセットアップだけ行いました。

Raspberry Pi に関しては昨夏から多くの先人たちが記したメモがネット上に数多くありますので、今さら私が書くことでもないのですが、自分がまた改めてセットアップする時のためにインストールから基本のセットアップまでの自分用メモを残しておこうと思います。

ブートイメージの準備とリモート作業は MacOS X を使っています。SDHCカードは最低 2GB、推奨 4GB となっていますが、使っていない Sandisk Extreme III 8GB があったので、それを利用しています。

ランダムも含めた実質的な読み書き速度が速いカードが良いのは間違いないですし、信頼性も必要でしょうから Extreme III ならちょうど良いかな、と。



【1】SDHCカードに Raspberry Pi ブートイメージを書き込む


Raspberry Pi 用のブートイメージファイルは以下のページにあります。

Downloads | Raspberry Pi

幾つかイメージが用意されていますし、公式サイト以外でも提供されている実験的なモノもありますが、「Raspbian “wheezy”」が一番無難で推奨されているので、最初はこれで。

  1. Raspbian “wheezy” のイメージ圧縮ファイルをダウンロードします
    (記事執筆時点では 2012-12-16-wheezy-raspbian.zip)

  2. ターミナルを起動してダウンロードしたファイルの SHA-1 のハッシュを取って、ダウンロードページのモノと比較して問題なくダウンロードできたことを確認する
    shasum 2012-12-16-wheezy-raspbian.zip

  3. 問題なければダウンロードした zip ファイルをダブルクリックないし unzip で解凍する
    RaspberryPi_08
    (記事執筆時点のイメージは 2012-12-16-wheezy-raspbian.img)

  4. Mac 内蔵ないし接続した SDカードリーダーライターに、Raspberry Pi で使用する SDHC カードを挿す

  5. ターミナル 上で diskutil list として SDHC カードのデバイスノードを確認する
     (以下の例なら /dev/disk2)
    diskutil list
    /dev/disk0
       #:                       TYPE NAME                    SIZE       IDENTIFIER
       0:      GUID_partition_scheme                        *1.0 TB     disk0
       1:                        EFI                         209.7 MB   disk0s1
       2:                  Apple_HFS Macintosh HD            999.3 GB   disk0s2
       3:                 Apple_Boot Recovery HD             650.0 MB   disk0s3
    /dev/disk1
       #:                       TYPE NAME                    SIZE       IDENTIFIER
       0:     FDisk_partition_scheme                        *1.0 TB     disk1
       1:                  Apple_HFS BU13_TM1T               1.0 TB     disk1s1
    /dev/disk2
       #:                       TYPE NAME                    SIZE       IDENTIFIER
       0:     FDisk_partition_scheme                        *8.2 GB     disk2
       1:                 DOS_FAT_32 NO NAME                 8.2 GB     disk2s1

  6. SDHC カードをアンマウントする
    diskutil unmount /dev/disk2s1

  7. dd コマンドでイメージファイルを SDHC カードに書き込む
    dd if=2012-12-16-wheezy-raspbian.img of=/dev/disk2 bs=1m

  8. 数分〜十分程度待ってコマンドプロンプトが戻ってきたら、SDHCカードへのブートイメージ書き込みが終了


以上で Mac 上での Raspberry Pi 起動用 SDHC カードの作成は終了です。

RaspberryPi_09



【2】Raspberry Pi 起動と初期設定


起動用 SDHC カードの用意が終わったら、その SDHCカードを Raspberry Pi 裏面の SDHCカードスロットに挿します(スロットと言うほどのものでもないけれど)。

RaspberryPi_10


次に HDMI ないしビデオ端子とディスプレイを接続し、USB 端子に最低限キーボードを接続します(X を使うならマウスも必要)。有線LAN は動作チェックだけなら不要ですが、通常は挿しておいた方が良いでしょう。

あとは、SDHCカードスロット横にある microUSB 端子に電源供給のための USBケーブルを接続します。USB 規格の 500mA では足りず、700mA 必要と言うことなので、スマートフォン/タブレット用の AC-USB 給電器や Mac のような規格以上の電流に対応したパソコンの USB 端子に接続します。

(モバイルバッテリーでも動作するのを確認していますが、バッテリーがなくなったら終わりなのであまり意味はないですね ^^;)

電源スイッチはないので、microUSB 端子へ USB 給電が始まるとともに Raspberry Pi は起動します。

RaspberryPi_11


給電して起動すると赤ランプが一つ点灯し、さらにブートが成功すると ACT ランプが点滅したり、有線LAN も認識していくと別のランプも点いて、幾つかのランプが明滅します。

ところがブートイメージの作成に失敗していて電源は入るもののブートできない場合は、電源の赤ランプ1つが点灯するだけで、他のランプが全く反応しません。この場合はブートイメージが正常に SDHC カードに書き込まれていないので、改めて作成し直して下さい。

(実は私も最初にミスった ^^; )

電源の赤ランプも点灯しない場合は Raspberry Pi そのものが故障している可能性があります。

正常にブートできる場合には、Linux のブートメッセージとログが流れていくお馴染みの画面がしばらく続いた後、自動的にデフォルトユーザー pi でログインされて簡易セットアップ画面になります。

RaspberryPi_12


ここでまず最初にやっておくことは、以下の5つ。

  1. change_pass を選択してデフォルトユーザー pi のパスワード設定
    (初期状態では pi ユーザーにパスワードは設定されていない)

  2. change_timezone を選択してタイムゾーンを ASIA / Tokyo にセット
    (最初に ASIA を選んで、次のメニューで Tokyo を選ぶ)

  3. ssh を選択して、ssh サーバーを起動するようにする

  4. update を選択して、このセットアップツールを最新版に更新しておく

  5. expand_rootfs を選択して SDHC カード全体に root partition を広げる


RaspberryPi_13


利用するブートイメージでは初期状態で SDHC カードのうち 2GB しか利用しない状態になっていますので、expand_rootfs で SDHC カード全体を利用するようにします。

この expand_rootfs を行った後、メインメニューの Finish を選ぶと「リブートするか?」と聞かれますので、そのままリブートすると再起動途中でパーティションの拡張が行われます(少し時間がかかる)。

Raspberry Pi を再起動するとログインプロンプトが表示されますので、ユーザー名 pi、先ほど設定したパスワードでログインします。SDHC カード全体が利用可能になっていて、root partition が拡張されたことは df で確認できるはずです。

また、ssh サーバーが起動されているので、リモートログインも可能になっていますので、ここからはディスプレイやキーボードなしでも利用できるでしょう。

RaspberryPi_14


あとは

sudo apt-get update
sudo apt-get upgrade

でパッケージの更新をやって最低限の初期設定は終わりでしょうか。

なお、Raspberry Pi 最初の起動時に表示された簡易セットアップツールは

sudo raspi-config

で起動できます。

また、電源オフは給電用 microUSB 端子を抜くしかありませんが、その前に

sudo halt

は忘れずに。



【3】固定IPアドレス化、日本語表示、VNC


(1) リモートアクセスのための固定IPアドレス化

ルーターないし DHCPサーバーで DHCP の固定アドレス割り当て機能を使うか、Raspberry Pi のネットワーク設定を以下のように変更する。

sudo vi /etc/network/interfaces

auto lo
iface lo inet loopback

auto eth0:1
iface eth0:1 inet static
  address 192.168.xx.7
  network 192.168.xx.0
  broadcast 192.168.xx.255
  gateway   192.168.xx.1
  dns-nameservers 192.168.xx.1



(2) 日本語表示

ロケールの追加、デフォルトロケールの変更、フォントのインストールを行う。

  1. sudo dpkg-reconfigure locales
     (ja_JP.EUC-JP と ja_JP.UTF-8 を追加し、デフォルトを ja_JP.UTF-8 に)

  2. sudo apt-get install ttf-kochi-gothic xfonts-intl-japanese xfonts-intl-japanese-big xfonts-kaname



(3) VNC によるリモートアクセス

  1. sudo apt-get install tightvncserver

  2. vncserver :1 -geometry 1024x600 -depth 16 -pixelformat rgb565
    (ここで入力するパスワードが VNC アクセス時のパスワードになる)


これだけで LAN内の他のパソコン、タブレットなどから VNC アクセス可能になります。MacOS X の場合は Finder のメニューの移動を選んで出てくるダイアログの URL 欄に

vnc://raspberry piのIPアドレス:5901/

と入れればアクセス可能です。

また、Raspberry Pi で最初から入っているブラウザは日本語表示できませんので、Chromium(Chrome のオープンソース版)を入れておくと Raspberry Pi でも日本語でネットブラウズ可能です。

sudo apt-get install chromium

RaspberryPi_15


実際に VNC でアクセスして作業するのはややレスポンスが鈍いので実用的とは言えませんが、ローカルで X を動かしてウェブブラウズするくらいは(キビキビとはいかないものの)使えなくもないレベルです。

基板剥き出しとはいえ、たった5千円弱で買える、手のひらサイズで USB給電という省電力パソコンが意外と実用的なのを見て、ホント良い時代になったものだなぁ…と思います。

使い方次第でセキュリティ的に ssh の認証鍵を作って云々とか VNC の暗号化云々とかもあるでしょうが、私はあるテスト用としての利用目的ですので、今後はその必要に応じて手を入れていくことになると思います。

今回使ったブートイメージは Linux の debian ディストリビューションそのものなので、ネットまたは紙書籍の debian 参考資料が役に立つと思います。個人的には最近仕事がらみもあって RHL や CentOS ばかりですが、以前プライベートでは debian を愛用していたのでむしろ心地よいですね。

なお、Linux/UNIX の経験があればブート用 SDHCカードの準備ができていればここまで1時間もかからないと思います。ブートイメージのダウンロード開始からも2時間くらいで終わる感じですね。

RaspberryPi_16


あとは、実際に使っていくにあたってケースのことを忘れていたので(^_^;)、とりあえず eBay で Raspberry Pi 用ケースを発注しました。

ケース本体が£2 だけど送料が£3 という…おまけにすっかり忘れていたために年末よりかなり円安になって高くついてしまいました。とはいえ、800円くらいで買えるので気長に到着を待ちたいと思います。

ともあれ、楽しく実用的に使って行けそうな “オモチャ” ということが判ったので、ケースが来て実際に使っていくのが楽しみです :)

私は何ヶ月も待たされましたが今はさほど待ち時間がないようなので、Linux/UNIX 使いなら安価で実用的なオモチャとして遊べると思います。仮想環境で色々できる時代だからこそ、敢えて遊びで実機を弄る愉しさがあるかもしれません。


Arduinoをはじめようキット
Arduinoをはじめようキット

(パソコンではなく組込みマイコンを弄ってみたい人はコレ)