ytooyamaのブログ

サーバ構築とか、仕事で発見したこととか、趣味のこととかを書いています。

山の奥microSDを買ったのでRaspberry Pi 3で使ってみた

microSDが欲しかったのでAmazonを徘徊していたら、山の奥 32GB microSDカードが引っかかりました。ちょっと前に見たときより評価が下がっているのが気になりますが、感激的な格安価格だったので2枚買うことにしました。

商品は中国の山の奥から届くため、2週間ほどかかりそうでした。 注文してから2週間、楽しみで楽しみでたまらなかったです。

届いたので、1枚使ってRaspbianを書き込んで起動してみることにしました。 イメージはbalenaEtcherを使ってまずは書き込みました。これはRaspberry Pi Foundation公式ドキュメントでオススメされているソフトウェアです。

balenaEtcherは使いやすいツールなので、イメージ書き込みはあっという間に作成できます。書き込んだmicroSDを使う前に touch /Volumes/boot/ssh とかコマンドを実行してsshでログインできるようにしてからRaspberry Pi 3に差し込み、電源を入れました。

いつもだとRaspbianの初回起動時はパーティションの拡張が行われるため、2分くらい待てばログインできるはずです。ところがいっこうにログインできる様子がありません。そこでキーボードとHDMIケーブルでテレビと接続して、コンソールからログインしてみることにしました。

Raspbianの初期ユーザーは pi 、パスワードは raspberry です。HDMIケーブルを接続したらログインプロンプトが出ている状態だったので、 pi と入力してEnterキーを押しました。ところが、パスワードの入力をなかなか求められませんでした。

1分くらいしてようやくパスワードの入力に移りました。 raspberry を入力してEnterキーを押します。パスワードが正しいとログインが実行されてコマンド入力待ちの状態に移行するはずですが、処理がログインに移りません。1分くらいしてようやくログインできました。何か重い処理が行われているのかなと思い、 top コマンドを実行してみました。当然、topコマンドの結果はなかなか表示されません。諦めてCTRL + Cを押しました。当然ながらなかなか中断できません。1分くらい待ったら中断できました。

top コマンドの実行は諦め、 w コマンドを実行してみました。1文字打つだけでUptime、Load average、ログインしているユーザーを表示できるコマンドです。このコマンドの結果はすぐ出ましたが、Load averageの値を見てびっくり。6とか7とか出ていました。なかなかの負荷です。これは何らかの理由でイメージ作成が失敗した可能性が高いですね。

もしかして不良品?

microSDが不良品か否か判定するため、一旦SD Card Formatterを使ってフォーマットし、macOSでデータの読み書きをしてみました。何の問題もありません。そこで次に従来のように dd コマンドを使ってイメージを書き込むことにしました。

以下、 /dev/disk2 がmicroSDである場合の例です。macOSで実行したのでbsは4mを指定してイメージを書き込みました。

diskutil list
diskutil unmountDisk /dev/disk2
sudo dd bs=4m of=/dev/rdisk2 conv=sync if=2019-04-08-raspbian-stretch-lite.img
touch /Volumes/boot/ssh && diskutil unmountDisk /dev/disk2

イメージ書き込み後、microSDをRaspberry Pi 3に差し込み、電源を入れました。 さてどうか?

問題なく起動しました。ログインも普通に行えます。山の奥microSDをRaspberry Pi 3で使うことができました。Raspbianも正常起動しましたし、何度再起動しても平気です。

というわけで、balenaEtcherでイメージ書き込みして、なんかうまくいかない場合はすぐに不良品だのラズパイが壊れただのと思わずに、まずは別のイメージ書き込みツールを使うか、ddコマンドを使ってイメージ書き込みしてみるのをおすすめします。

ただまあ、32GBのmicroSDもだいぶ安くなりましたし、サンディスクのこれとか、東芝のバルク品とかの方がいい気がします。まあ、山の奥microSDの利点はmicroSDに「山の奥」という文字が印字されていることに意義があるので、別に後悔はしていません。逆に満足しています。

このブログサイトはJavaScriptを使っていますが、読み込んでいるJavaScriptは全てはてなが提供しているものであり、筆者が設置しているものではありません。