井上繁樹の最新通信機器事情

Raspberry Pi Foundation「Raspberry Pi」

~Linuxが動く手のひらサイズのファンレスボードPC

Raspberry Pi model B(512MBモデル)
発売中

価格:2,500円/25.92英ポンド

 「Raspberry Pi」は、名刺サイズながらPCとして使うのに必要な端子類を一通り揃えたARMベースのボードPCだ。価格が手頃ということもあって興味を持った人も多いのではないだろうか。本記事では教材用として作られたRaspberry Piの趣旨からは外れるのだが、実際どれだけ使えるものなのか「Raspberry Pi model B(512MBモデル)」をNASとして使って検証してみた。

概要

 Raspberry Piは若年層向けに生まれた安価なボードPCだ。Raspberry Pi誕生の経緯については公式サイトの「About us」ページで詳しく語られているが、要約すると英ケンブリッジ大のEben Upton氏らが、コンピュータサイエンス科の学生数の減少と学力の低下の原因として、若年層が手軽にプログラミングできる環境が失われていることに着目したことから始まっている。

 余談になるが個人的に興味深かったのが、その失われた環境がAmigaやBBC Micro、ZX Spectrum、Commodore64によって担われていた旨を示す一文があること。どれも日本ではメジャーになることはなかったが、1980~90年代のパソコンブームを経験している人間にとっては言わば同期のコンピュータに当たるわけで、同じ時代を過ごしてきた人間として感慨深いものがある。

 プログラミングが当たり前だった時代の良さを取り戻そうとする動きは、日本ではPlayStation 2用の「BASIC STUDIO」(2001年、アートディンク)や、最近では任天堂DSシリーズ用の「プチコン」(2011年、スマイルブーム)など、ゲーム機でBASICとゲーム制作環境を使えるようにしたものや、HTML5とJava ScriptによるWebベースの開発環境を提供する「9leap」のようなサービスがある。

 Raspberry Piは日本のソフトウェアベースのものと比べると、ハードウェアもOSも気軽に手を入れられる状態になっているのが利点だ。推奨しているOSはDebianベースのLinuxで、推奨している言語はPythonという具合に、おそらく今の10代の学生が、大学卒業後も学んだ知識とコードがそのまま使えるであろう実用的で安心感のある選択になっている点も高く評価できる。

 端子類はHDMIとアナログビデオ、ステレオのアナログミニピンジャック、Ethernet、電源用のMicro USB、USB 2.0×2、SDカードスロットの7種類。コンパクトながら、ディスプレイ、マウス、キーボードをつなげばデスクトップパソコン気分で使える。

本体表。ロゴの下側にはHDMI、右側には100Mbpsの有線LANとUSB 2.0。HDMI出力には音声も含まれる
ロゴの上側にはアナログのステレオミニジャックとビデオ、左側には電源用のMicro USB。アナログの音声出力にはノイズが乗るので、問題であればHDMIやUSB経由の音声出力を活用することになる。剣山のようなピンは低レベルペリフェラル
本体裏。右側にSDカードスロットがある
同梱物一覧。専用のケース、本体、クイックスタートガイド×2枚。本体は静電気防止の袋に入れられ、さらに専用のケースに入った状態で送られてきた
専用ケースはSDカードを挿した状態でRaspberry Piを固定して収納できる
SDカードを装着すると2.5インチのHDDに近い大きさになる
インストールしたRaspbianのバージョン、インストール後のSDカードの空き領域、CPU情報など

 無線LAN機能は搭載しないが、USB接続の無線LAN子機が利用可能だ。推奨OSイメージ「Raspbian “wheezy”」(「Raspbian」がRaspberry Pi専用のディストリビューション名で「wheezy」が推奨OSイメージ名)のデスクトップには、無線LANの設定画面を開くショートカットが貼られており、将来は無線LAN機能を搭載したモデルが登場するのかもしれない。

NAS環境の構築

 Raspberry Piを使うにあたっての最初の難関は、OSをインストールするのに使うSDカードの選定だろう。専用のWikiページを見るとうまくいかなかったSDカードの情報が掲載されているので確認しておくべきだ。ただし、情報はしっかり検証されたものとは限らないし、型番や製品名などが日本と異なるものもあるので、相性が悪いものを完全に避けるのは難しい。不安であればRaspberry Pi購入時にOSインストール済みのSDカードを一緒に購入するのがお勧めだ。

WikiサイトのSDカードの情報ページ。検証されているわけではないので信頼はできないが手がかりにはなる情報だ
公式サイトの「Download」ページ。RaspbianやArch Linux ARMなどSDカードに書き込んで使えるOSイメージが並んでいる。FreeBSDやFedoraについてはこのページには置かれていない
ダウンロードしたOSイメージはSDカードにイメージ書き込みできるソフトを使ってインストールする。画面は公式サイトで紹介されている「Win32 Disk Imager」。SDカードを自動認識して指定したOSイメージを書き込んでくれる
Windows側からsshクライアントを使ってログインした様子。sshクライアントはWindowsでは「Tera Term」や「PuTTY」などがある(画面はmintty)
「Raspi-config」をウィンドウシステム上のターミナルで起動したところ。overclock(CPUのクロックアップ)の項目が最初からある。メニュー移動は上下カーソルとタブキーで、選択はリターン(エンター)キー
「configure_keyboard」でキー配列を設定しているところ。日本語キーボードも問題なく使える
「change-locales」での言語設定。画面は「ja_JP.UTF-8」を選択(スペースキーを押して項目の頭に「*」が付いた状態にする)している様子
「change-timezone」での設定。日本の場合はアジアのリストを開いて選択する。時刻についてはインターネットにつながっていればNTPサーバーにアクセスして自動設定してくれる
sambaの設定ファイル「/etc/samba/smb.conf」をnanoで開いたところ。ちなみにvsFTPdの設定ファイルは「/etc/vsftpd.conf」だ

 Raspberry PiでのOSの標準的なインストール方法はOSイメージをSDカードに書き込むことで行なう。よって、Rapberry Pi本体だけでなく別途コンピュータが1台必要だ。

 OSイメージは公式サイトのDownloadsページにリストアップされているRaspbianやArch Linux、RISC OS以外に、つい先日FreeBSDが加わった。ほかにもFedora LinuxがベースになったFedora Remixがある。本記事作成にはRaspbianを使用した。

 Raspbianはsshサーバーがインストール済みで初回起動時から利用できるので、初期設定と環境構築に最低限必要な機材は、インターネットにつながったLANとLANケーブル、電源につながったMicro USBケーブル、そしてsshクライアントをインストールしたコンピュータだ。sshを使わない場合はさらにHDMI入力のあるディスプレイとキーボードが必要になる。ウィンドウシステムを使う場合はマウスなどポインティングデバイスも必要だ。

 Raspbianの初期設定は「raspi-config」でできる。最低限設定変更が必要な項目は「change-locale(言語設定)」「change-timezone(時刻設定)」の2つ。書き込まれた直後のOSイメージはSDカードの全領域を使っていない状態なので、「expand-rootfs」で空き領域を有効活用できるようにするのも忘れないようにしたい。

 キーボードをつないで使う場合はさらに「configure-keyboard」でキー配列を選択する必要がある。なお、raspi-configは初回起動時のみ自動起動する設定になっているが、以降も「sudo raspi-config」などのコマンド操作で呼び出すことができる。

 NASとしての環境構築には「samba」を使用した。また、速度比較のために「vsFTPd」もインストールした。sambaやvsFTPdの設定ファイルの編集は初期状態でインストールされている「nano」で行なえるが、「vim」や「emacs」など定番のエディタをインストールして使うこともできる。以上のアプリはDebianベースのシステムではおなじみの「sudo apt-get install」コマンドでインストールできる。

ベンチマーク結果

 ベンチマークの測定には「CrystalDiskMark 3.0.2」を使用した。測定方法はRaspberry Pi上に作成した共有フォルダをWindows 7 PCのネットワークドライブとして登録してその速度を測定するもの。参考データのFTPのベンチマークはWindows 7 PC上でFTPコマンドを実行してRaspberry Pi側とファイルを送受信することで測定した。

WindowsのエクスプローラーでRaspberry Pi(RASPBERRYPI)の共有フォルダを見える状態にしたところ。左ペインの「share」フォルダが共有フォルダ
FTPの速度はWindowsのFTPコマンドで測定した。画面はWindows Powershell上でのFTPコマンドの使用例

 測定に使用したPCはWindows 7 Home Premium(Core i5-3210M、SSD)で、PCと有線LANのHubは1Gbpsで接続した。ただし、Raspberry Piの有線LANポートの接続速度は100Mbpsなので、Windows 7 PCとの接続速度も100Mbpsということになる。有線LAN環境でのベンチマーク結果は以下の表の通り。

【表1】100Mbpsの有線LAN環境でのベンチマーク結果(Mbps)
readwrite
sambaftpsambaftp
Class 10 SD26.831.615.917.8
USB 2.0 HDD26.132.122.625.6
ethtoolでRaspberry Piの有線LAN環境を表示させたところ。10/100Base対応であることが分かる
100Mbpsの有線LAN環境でのベンチマーク結果(Class 10のSDカードを使用した場合)

 また、Raspberry Pi側にUSBの無線LAN子機(バッファロー「WLI-UC-G301N」)を付けて無線LANを使用した場合のベンチマークも測定した。無線LAN子機と無線LANルーター間は2.4GHz帯のIEEE 802.11nで接続し、接続速度は135Mbpsだった。無線LAN環境でのベンチマーク結果は以下の表の通り。

【表2】135Mbpsの無線LAN環境でのベンチマーク結果(Mbps)
readwrite
sambaftpsambaftp
Class 10 SD26.831.615.917.8
USB 2.0 HDD26.132.122.625.6
iwconfigでUSBポートに接続した無線LANアダプタの状態を表示させたところ。接続速度が135Mbpsであることを確認できる
135Mbpsの無線LAN環境でのベンチマーク結果(Class10のSDカードを使用した場合)

 ベンチマーク結果を見ると有線LAN環境では、Class 10のSDカードを使った場合は読み込みで70Mbps以上、書き込みで90Mbps以上出ており、100Mbps接続のNASとしてはまずまずの性能が出ている。USB HDDを使った場合や、無線LAN環境については接続に使用するハードウェアの性能も影響もあるので何とも言えないが、選択肢に制約(USB端子への供給電力や相性、デバイスドライバの対応状況)があることを考えるとあまり期待しない方がいいのかもしれない。

 ちなみに、測定ではUSB接続のHDDを使っているが、バスパワーの外付けUSB HDDは供給電力不足で動作しなかったので、セルフパワーのものを使用している。供給電力に余裕のあるハードウェアではないので、ストレージ容量を増やしたい場合はSDカードを大容量のものに交換するか、消費電力の少ないフラッシュメモリのUSBストレージを追加するのがお勧めだ。

まとめと感想

 予約していたRaspberry PiをRSコンポーネンツで注文できるようになったのが2012年6月末。その日のうちに注文して発送されたのが10月中旬、届いたのは10月下旬だったので、欲しいと思ってから半年くらいは待たされたことになる。待たされている間にRaspberry Piを64台つなげて作られたスーパーコンピュータが発表されて微妙な気分になったりもしたが、当初256MBだったメモリ容量が倍の512MBに増量されたRevision 2になって届いたこともあり、悪くない買い物だったと思っている。

 NASとして使ってみた結果だが、100Mbps有線LAN接続のNASとして悪くない数字が出ていたが、安定動作のためにストレージをSDカードかUSBメモリなどに限定にすると、高コストで容量を増やしにくい。必要なストレージ容量次第だが、NASとして使うのは難しいのかもしれない。

startxで起動するデスクトップ画面。Raspberry Piには無線LAN機能は搭載されていないが、デスクトップには無線LAN設定画面を開くためのショートカット「WiFi Config」が最初からある
VNC経由でのRaspberry Piのデスクトップ表示。ブロック感覚でプログラムできる「Scratch」などを開いている。VNCを使う場合は「/boot/config.txt」でデスクトップサイズを小さめに設定しておくと使いやすい。お勧めの設定は「hdmi_group=2 hdmi_mode=9」(800×600ドット)や「hdmi_group=2 hdmi_mode=85」(1,280×720ドット)など

 さて、今回はNASとして使ってみたのだが、せっかくなのでLinuxマシンとして使ってみた感想も述べておきたい。パフォーマンスを見てみると、ウィンドウシステム上では初期インストールされているPython開発環境などはともかく、ブラウザは現代の「重い」サイトのブラウジングには向かないレベルだった。

 安価なので壊してしまっても金銭的負担は少ないし、OSが起動しなくなったりソフトが動かなくなってもSDカードにOSイメージを書き戻すだけでいいので復帰も楽だ。Raspberry PiのポジションはPCの代用となる安価なPCではなく、ハードウェアやOS、ソフトをいじって、最悪の場合は復帰不能になっても困らない、遊び場としてのコンピュータなのだろう。

(井上 繁樹)