Raspberry Piが届いた!

話題の名刺サイズPC、Raspberry Piがようやく届いた!





Raspberry Pi

Raspberry Piは名刺サイズのシングルボードPC。
CPUはARM 700MHz、メモリは最近のmodel Bだと512MBで、ディスクはなくてSDカードを使用する。その他、USBポートが2つにLANポート、HDMIでディスプレイに繋ぐようになっている。電源もUSBから給電。普通にLinuxが動いて、それでいてお値段35ドルとリーズナブルだったりする。大人気すぎて注文してもなかなか届かないとか。



というわけで、うちにもようやく届いたので早速立ち上げてみたよ。
起動SDカード準備の部分はMacでの作業記録。

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

Raspberry Piのダウンロードページからお好みのものを選んで、ddコマンドとかWin32DiskImagerでSDカードに書き込む。


ArchはVMでちょろっとしか触ったことなくてそれほど詳しくないので、無難にDebianベースのRaspbianにする。
Oracle JVMを使用する場合はSoft-float版を使わないとだめらしいんだけど、OpenJDKの場合はどうなんですか?わかりません!
まぁ色々試してみようってことで普通の方を選択してみた。torrentでOSダンロードなーう。


Macの場合、SDカードをカードリーダーに挿すと自動的にマウントされると思うので、すかさずアンマウントする。
カードの名前を変えとくとわかりやすい。どうせ消えるけど。

$ df -h
Filesystem       Size   Used  Avail Capacity  iused    ifree %iused  Mounted on
/dev/disk0s2    238Gi  140Gi   97Gi    60% 36833943 25470927   59%   /
devfs           185Ki  185Ki    0Bi   100%      641        0  100%   /dev
map -hosts        0Bi    0Bi    0Bi   100%        0        0  100%   /net
map auto_home     0Bi    0Bi    0Bi   100%        0        0  100%   /home
/dev/disk2s1    7.5Gi  2.2Mi  7.5Gi     1%        0        0  100%   /Volumes/RASPBIAN  ←こいつだー!

$ diskutil unmount /dev/disk2s1

バイスは環境によって異なるので各自で確認しよう。ここでは/dev/disk2だった。


んで、rawデバイスのほうが速いらしいのでrawデバイスで指定する*1。頭に"r"をつければいい。
ちなみにここでデバイスを間違えると大変なことになるので不安ならdiskutil infoで確認しておくといい。

$ diskutil info /dev/rdisk2
   Device Identifier:        disk2
   Device Node:              /dev/disk2
   Part of Whole:            disk2
   Device / Media Name:      APPLE SD Card Reader Media
                         :
                         :

んむ、SD Card Reader Mediaなので大丈夫そう。
では落としてきたzipを展開して出てきたimgを書き込む。

sudo dd bs=1m if=2012-12-16-wheezy-raspbian.img of=/dev/rdisk2

しばし時間がかかる。LinuxならSIGUSR1、MacBSDならSIGINFO(Ctrl+T)で進捗状況が確認できる。
MacなのでCtrl+Tを押すとこんな感じで現在の状況が表示される。

load: 0.33  cmd: dd 11655 uninterruptible 0.00u 0.28s
230+0 records in
229+0 records out
240123904 bytes transferred in 15.685685 secs (15308474 bytes/sec)

しばらく待ってると書き込みが完了する。うちの環境では2分ぐらいだった。

1850+0 records in
1850+0 records out
1939865600 bytes transferred in 122.027198 secs (15896994 bytes/sec)

Raspberry Piの起動と初期設定

出来上がったSDカードをRaspberry Piに挿して、各種ケーブルを繋いで起動。
スイッチとかないので電源用USBケーブルをつなぐと起動する。

起動したー!ラズベリーのマークがかわいい。


無事に起動すると初期設定画面が表示される。この画面は後からraspi-configを実行することで呼び出せる。
操作はカーソルキーの上下で項目移動、Enterで決定、ボタンとかのフォーカスの移動はTabといった感じ。


とりあえずupdateをするといいんじゃないでしょうか。自分はやり忘れたw

expand_rootfs

ルートパーティションを拡張する。
先ほど書き込んだRaspbianは2GBのイメージなのでこのままだと2GBの容量しか使えないが、2GBよりも大きいSDカードを使用している場合は、これで容量全体を使用するように設定できる。迷わず実行。設定は次回起動時に反映される。

再起動した時にサイズの変更処理が行われるが、かなーり時間がかかるので焦らないように。
"Performing an on-line resize of 〜"みたいな表示の部分で小人さんが頑張っています。

overscan

画面の端を少し空ける設定をする。画面の周囲が切れるような場合に設定するのかな?不要なのでスルー。

configure_keyboard

キーボードの配列を設定する。
自分は"Generic 105-key (Intl) PC" → "Other" → "Japanese" → "Japanese (ODAG 109A)"と選択していった。
その後のAltGrキーとかComposeキーはなんのことかわからないので、defaultとかnoとかを選んでおいた。
どうせ設定が終わったらsshで繋ぐんだからキーボードなんてどうでもいいw
Xサーバ落とすやつもNoでいいかな。

change_pass

piユーザ(初期ユーザ)のパスワードを変更する。変えておこう。
ちなみに初期アカウントはイメージのダウンロードページに書いてあったね。

change_locale

ロケールの設定。"ja_JP.UTF-8"にしたいところだけど、日本語フォントが入ってないので、今やると文字化けして大変なことになるのでぐっと我慢して後回しにしよう。

change_timezone

タイムゾーンの設定。"Asia" → "Tokyo"としておく。

memory_split

CPUとGPUへのメモリ配分を設定する。ここで設定した分がGPUに割り当てられ、残りがCPUに割り当てられる。
512MB版はデフォルト値が64MBとなっている。とりあえずデフォルトのままにしておいた。

overclock

オーバークロックの設定。さわらないでおく。

ssh

sshを有効にするかどうか。もちろん有効にする。

boot_behaviour

直接GUIで起動するかどうか。まだまだコンソールで作業したいのでNoにしておく。
ちなみにNoの場合はコンソールでstartxを実行すればデスクトップが起動する。

update

この設定ツール(raspi-config)の最新版があれば更新する。
とりあえずやってみたけど、最初にやればよかったw



一通り設定してFinishを選択すると再起動。expand_rootfsをやった人はだいぶ待たされる。
ちなみにここで設定した内容は/root/config.txtに保存される模様。

アップデートとか

無事にサイズ拡張も終わってプロンプトが表示されたら、piユーザでログインしてあとは普通に使うだけ。
なのでとりあえずアップデートしておく。

sudo apt-get update
sudo apt-get upgrade

日本語化とか

初回設定の時にぐっとこらえた日本語化を。


まずはフォント。apt-cache search font japaneseとかするとわらわら出てくるのでお好みでインストール。

sudo apt-get install fonts-ipafont ttf-vlgothic xfonts-intl-japanese xfonts-intl-japanese-big

次に日本語入力。mozc使いたいけど調べる気力がないのでAnthyで。

sudo apt-get install ibus-anthy

そして最後にロケール変更。
さっきのraspi-configでもいいけど。

sudo dpkg-reconfigure locales

デフォルトだとen_GB.UTF-8が有効になっている。とりあえずen_US.UTF-8とja_JP.UTF-8を追加した。
システムのロケールはとりあえずen_US.UTF-8にしておいた。


で、.profileで$LANGに設定することにする。

echo "export LANG=ja_JP.UTF-8" >>~/.profile

そしてデスクトップへ

ここらで一旦再起動して、

sudo reboot

ログインしたら、いよいよstartx!

startx




デスクトップきたー!
中央に鎮座するラズベリー(壁紙)。右は噂のPi Store。

ユーザ追加

いつまでもpiユーザというのもあれなので、自分用ユーザを追加する。

sudo adduser pasela

piユーザが入ってたのと同じグループに入れておく。
なんか色々入ってないとXがうまく動かない。

sudo vigr

# piが入ってるのと同じグループにひたすら自分を足していく。

sudo vigr -s

# さっきと同じ。

piユーザからログアウトして入り直す。
piユーザみたいにデスクトップにアイコンが配置されてなくて、さみしい…。まぁいいか。

*1:diskがblock deviceでrdiskがcharacter deviceらしい。