Raspberry Pi 日記
長嶋 洋一
2013年5月21日(火)
1限の「サウンドデザイン」と4-5限の「企画立案演習」の合間に、新しく届いた各社のSDカードにLinuxイメージを書き込んでのテストである。 ターミナルに入れて使うコマンドは以下である。
- diskutil list
- diskutil unmountdisk /dev/disk2
- dd if=2013-02-09-wheezy-raspbian.img of=/dev/disk2 bs=2m
まず最初は、RSコンポーネンツからRaspberry Piを勝った時に一緒に買ったSDカードとたぶん同じ、トランセンドの4GB(class 6)である。 イメージ書き込み時間は「1939865600 bytes transferred in 267.241017 secs (7258862 bytes/sec)」である。 なんと結果は以下のように駄目で、Raspberry Piにセットして電源を入れて数分たっても、ずっと止まったままであった。
そこで仕方なく、電源を抜いて、再度入れてみると、今度は以下のように無事に立ち上がった。 その後は既に行った手順で環境設定、リブート、shutdown確認と「正常」であった。 いきなり1枚目から、なんとも不穏な雲行きである。(^_^;)
次は、同じトランセンドのマイクロSDカード4GB(class 4)である。 これは「5枚セット」ということで買ったが、代表として1枚だけ実験してみることにした。 イメージ書き込み時間は「1939865600 bytes transferred in 445.198589 secs (4357304 bytes/sec)」である。 なんと、上記の同じトランセンドの2倍近く時間がかかった事になるが、Raspberry Piに入れて立ち上げてみると、無事に1発OKであった。(^_^)
次は、イメーションの4GB(class 4)である。 これまでのカードでは「diskutil list」すると、サイズが「4GB」と表示されたのに、このSDカードは何故か「3.9GB」となっている。 どこのOEMなのだろうか(^_^;)。 イメージ書き込み時間は上のカードとほぼ同じ、「1939865600 bytes transferred in 427.842439 secs (4534065 bytes/sec)」であった。 Raspberry Piに入れて立ち上げてみると、無事に全てOKだった(^_^)。
ここから国内有名ブランドのシリーズである(ブランドが消滅しないことを切に祈りたい)。 次は、TDKのマイクロSDカード8GB(class 4)である。 「diskutil list」すると、サイズは「7.7GB」と表示された。 ちょうど裏でTimeMachineの定時バックアップとカチ合ったが、イメージ書き込み時間は「1939865600 bytes transferred in 427.054722 secs (4542429 bytes/sec)」であった。 Raspberry Piに入れて立ち上げてみると、無事に全てOKだった(^_^)。
次は、TDKの8GB(class 10)である。 「diskutil list」すると、サイズは「8.0GB」と表示された。 イメージ書き込み時間はまた短くなって「1939865600 bytes transferred in 270.501290 secs (7171373 bytes/sec)」である。 ここまでの規則性としては、SDカードに対して、マイクロSDカードでは、変換アダプタが何かやっているのか、ほぼ倍の時間がかかる、という推測が成立しそうである。 Raspberry Piに入れて立ち上げてみると、無事に全てOKだった(^_^)。
次は、SONYのマイクロSDカード4GB(class 4)である。 イメージ書き込み時間は推測通りに「1939865600 bytes transferred in 484.424596 secs (4004474 bytes/sec)」と、他にさしたるバックグラウンド処理も無かったのに、これまでで最長である。 Raspberry Piに入れて立ち上げてみると、無事に全てOKであり、何故か、明らかにこれまでのどのSDカードよりもLinuxシステムの反応が高速だった。
最後は、パナソニックのマイクロSDカード4GB(class 4)である。 イメージ書き込み時間は「1939865600 bytes transferred in 394.055054 secs (4922829 bytes/sec)」であり、「マイクロSDカードだと2倍近い時間がかかる」という経験則?に対してはかなり良好であった。 Raspberry Piに入れて立ち上げてみると、無事に全てOKだった(^_^)。とりあえずこの結果はふーみんにメイルで知らせてみよう。
さて、講義の合間にちょっとだけでも進めようとしたが、例によって行き詰まった(^_^;)。 とりあえず状況を整理して、ここはふーみん師匠に質問である。 次のステップとして、「Raspberry PiにSSHサーバを走らせて、外部のパソコンからSSHする」というところである。 SSHは入口であって、本命は以下のふーみんの昔の本にある「VNC」をここで使う、というところなのだが、まずはSSHである。
Raspberry Piの環境設定でSSHサーバを走らせる、と設定していることもあり、簡単に行くかと思ったら、これが難航しているのである(^_^;)。 どの解説本にもある通り、まずはRaspberry Piが研究室のLANでDHCPサーバから与えられたIPアドレスを「ifconfig」で取得すると、今回は「172.16.65.118」であった。 そこでMacのターミナルから以下のようにSSHを仕掛けると、拒絶された(^_^;)。 ただし、pingしてみると、ちゃんとRaspberry Piは生きている。
また以下のように、Raspberry Piは研究室のLANからSUACのプロキシサーバを経由して、サーバの実態はシリコンバレーにあるという僕のドメインをアクセスしてちゃんと表示しているし、Raspberry Piのx-window内のターミナルからホストのMacにpingをかけてもちゃんとアクセス出来ている。nagasm-Mac-mini:~ nagasm$ ssh pi@172.16.65.118 ssh: connect to host 172.16.65.118 port 22: Connection refused nagasm-Mac-mini:~ nagasm$ ping 172.16.65.118 PING 172.16.65.118 (172.16.65.118): 56 data bytes 64 bytes from 172.16.65.118: icmp_seq=0 ttl=255 time=4.089 ms 64 bytes from 172.16.65.118: icmp_seq=1 ttl=255 time=4.144 ms 64 bytes from 172.16.65.118: icmp_seq=2 ttl=255 time=4.142 ms 64 bytes from 172.16.65.118: icmp_seq=3 ttl=255 time=4.142 ms 64 bytes from 172.16.65.118: icmp_seq=4 ttl=255 time=4.141 ms 64 bytes from 172.16.65.118: icmp_seq=5 ttl=255 time=4.148 ms 64 bytes from 172.16.65.118: icmp_seq=6 ttl=255 time=4.142 ms 64 bytes from 172.16.65.118: icmp_seq=7 ttl=255 time=4.163 ms 64 bytes from 172.16.65.118: icmp_seq=8 ttl=255 time=4.049 ms 64 bytes from 172.16.65.118: icmp_seq=9 ttl=255 time=4.077 ms 64 bytes from 172.16.65.118: icmp_seq=10 ttl=255 time=4.125 ms 64 bytes from 172.16.65.118: icmp_seq=11 ttl=255 time=4.172 ms 64 bytes from 172.16.65.118: icmp_seq=12 ttl=255 time=4.151 ms ^Z [1]+ Stopped ping 172.16.65.118 nagasm-Mac-mini:~ nagasm$
ここで、現象を明らかにするために、以下のようにもう1台のMac(PowerBookG4)をさらに立ち上げた。 互いを区別するために、メインのMac miniを「ホスト」と呼び、「Raspberry Pi」と「PowerBookG4」の3者で実験してみた。 まず、PowerBookG4からも、WiFi経由ならでやや時間はかかるものの、以下のようにホストにpingが通っている (ホストからPowerBookG4へのpingが通っていることも確認した)。 そしてホストの環境設定を「リモートログインを許可」とすることで、以下のようにPowerBookG4からホストには、ちゃんとSSHに成功しているが、上記と同じで、PowerBookG4からRaspberry PiへのSSHは「Connection refused」で即刻、断られた(^_^;)。
上の現象は、「リモートログイン許可」をしていないPowerBookG4に対して、ホストからSSHを求めた場合と同じ結果である。 ところで、Raspberry PiからホストへのSSHについては、「port 22: Connection Timed out」ということで、しばらく待たされてから切断される。 メッセージが異なっているのである。
ここでネットで「ssh connection refused」というキーワードでいくつかの情報を調べて、とりあえず「ssh -v -l」とかやってみたが、要するにポート22であっさりと接続拒否されている。 また、「/etc/ssh/sshd_config」の中身が問題のようだが、これをRaspberry Piの画面に表示しても膨大なので困った。 とりあえず「cat」コマンドでファイルに書き出してみたが、これはRaspberry PiのSDメモリカードのカレントに置かれていて、それをSSHで見れないから困っているのである(^_^;)。 とりあえずRaspberry Piをシャットダウンして、SDカードをMacに入れてみたが、当然ながらLinuxパーティションはMacから全く見えず、書き出した「/etc/ssh/sshd_config」の中身のファイルは、見えない。
・・・というあたりでタイムアップである。 ここまでをふーみんにメイルして、「/etc/ssh/sshd_config」の中身のどこをチェックして、どう直して(うーーむ、Unixのエディタかぁ(^_^;))、どうsshdをリブートするのか、おいおい挑戦してみよう。
「Raspberry Pi日記」トップに戻る