井上繁樹の最新通信機器事情
Raspberry Pi Foundation「Raspberry Pi」
~Linuxが動く手のひらサイズのファンレスボードPC
(2013/1/28 00:00)
「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種類。コンパクトながら、ディスプレイ、マウス、キーボードをつなげばデスクトップパソコン気分で使える。
無線LAN機能は搭載しないが、USB接続の無線LAN子機が利用可能だ。推奨OSイメージ「Raspbian “wheezy”」(「Raspbian」がRaspberry Pi専用のディストリビューション名で「wheezy」が推奨OSイメージ名)のデスクトップには、無線LANの設定画面を開くショートカットが貼られており、将来は無線LAN機能を搭載したモデルが登場するのかもしれない。
NAS環境の構築
Raspberry Piを使うにあたっての最初の難関は、OSをインストールするのに使うSDカードの選定だろう。専用のWikiページを見るとうまくいかなかったSDカードの情報が掲載されているので確認しておくべきだ。ただし、情報はしっかり検証されたものとは限らないし、型番や製品名などが日本と異なるものもあるので、相性が悪いものを完全に避けるのは難しい。不安であればRaspberry Pi購入時にOSインストール済みのSDカードを一緒に購入するのがお勧めだ。
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側とファイルを送受信することで測定した。
測定に使用したPCはWindows 7 Home Premium(Core i5-3210M、SSD)で、PCと有線LANのHubは1Gbpsで接続した。ただし、Raspberry Piの有線LANポートの接続速度は100Mbpsなので、Windows 7 PCとの接続速度も100Mbpsということになる。有線LAN環境でのベンチマーク結果は以下の表の通り。
read | write | |||
samba | ftp | samba | ftp | |
Class 10 SD | 26.8 | 31.6 | 15.9 | 17.8 |
USB 2.0 HDD | 26.1 | 32.1 | 22.6 | 25.6 |
また、Raspberry Pi側にUSBの無線LAN子機(バッファロー「WLI-UC-G301N」)を付けて無線LANを使用した場合のベンチマークも測定した。無線LAN子機と無線LANルーター間は2.4GHz帯のIEEE 802.11nで接続し、接続速度は135Mbpsだった。無線LAN環境でのベンチマーク結果は以下の表の通り。
read | write | |||
samba | ftp | samba | ftp | |
Class 10 SD | 26.8 | 31.6 | 15.9 | 17.8 |
USB 2.0 HDD | 26.1 | 32.1 | 22.6 | 25.6 |
ベンチマーク結果を見ると有線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として使うのは難しいのかもしれない。
さて、今回はNASとして使ってみたのだが、せっかくなのでLinuxマシンとして使ってみた感想も述べておきたい。パフォーマンスを見てみると、ウィンドウシステム上では初期インストールされているPython開発環境などはともかく、ブラウザは現代の「重い」サイトのブラウジングには向かないレベルだった。
安価なので壊してしまっても金銭的負担は少ないし、OSが起動しなくなったりソフトが動かなくなってもSDカードにOSイメージを書き戻すだけでいいので復帰も楽だ。Raspberry PiのポジションはPCの代用となる安価なPCではなく、ハードウェアやOS、ソフトをいじって、最悪の場合は復帰不能になっても困らない、遊び場としてのコンピュータなのだろう。