Raspberry Pi 3 Model A+リリース!

本日、Raspberry Pi財団からRaspberry Pi 3 Model A+(以下3A+)のリリースが発表されました。価格は25ドルです。

New product: Raspberry Pi 3 Model A+ on sale now at $25

3A+は3B+をベースとして作られた小型モデルであり、SoC等の基本的なスペックは3B+と同一ながら、いくつかの機能が削減されています。

  • SoCにBCM2837B0 1.4GHz 64ビット4コア ARM Cortex-A53 CPUを搭載
  • RAMは512MBを搭載
  • デュアルバンド802.11acの無線LAN・Bluetooth4.2に対応
  • Proant AB社の技術による無線アンテナを採用
  • 有線LANポートなし(LAN7515 USB+LANチップの省略によるもの)
  • PoEピンの省略(有線LANの省略に伴うもの)
  • USBポートは1つ(LAN7515 USB+LANチップの省略によるもの)

Model Aシリーズは2014年秋に1A+がリリースされて以来4年ぶりのアップデートとなり、PiZeroとスペックの差がない状況を脱して大幅な性能向上を果たしました。

リリース時点で認証を取得済みの国は、EU、アメリカ、カナダ、ニュージーランド、インドです。日本のいわゆる技適を含め、他の国も認証が完了次第購入できるようになるようです。製品の認証の状況は公式サイトから確認できます。

https://www.raspberrypi.org/documentation/hardware/raspberrypi/conformity.md

Pimoroniでは早速Pibowケースの3A+対応版も発売されています。

Pibow 3 A+ Coupé (for Raspberry Pi 3 A+)

新旧のModel A+比較写真を掲載します。左が1A+、右が3A+です。

(追記) Raspberry Pi財団オフィシャルのA+ケースも12月にリリースされるようですよ。


Raspberry Pi TV HAT発売(日本では使えません…)

Raspberry Piでテレビを視聴することができるアドオンボード「Raspberry Pi TV HAT」がRaspberry Pi財団から発表されました。価格は21.5ドルです。

Introducing the Raspberry Pi TV HAT

Raspberry Pi TV HATはSONYのCXD2880チューナーを使用したボードです。欧米で広く普及している地上デジタルテレビ放送の規格であるDVB-TとDVB-T2に対応していますが、日本は地上デジタルテレビ放送はISDB-Tのため、残念ながら日本ではRaspberry Pi TV HATは使用できません。本体の付属品はネジ・スペーサー、コネクター変換(これも日本とは規格が違うようです)となります。

なお、日本への発送に対応していて購入可能なショップは、発表時点ではModMyPiがあります。

https://www.modmypi.com/raspberry-pi/audio-dacampdigi/video-tv-dvb-t/tv-uhat

あわせて、Raspberry Pi Zeroサイズ相当のアドオンボードの規格としてuHATが発表されました。

PiZero登場当初からPimoroniのpHATシリーズをはじめ各社から様々なPiZeroサイズのアドオンボード製品が発売されてきましたが、Raspberry Pi財団がPi ZeroサイズのボードをリリースするのはRaspberry Pi TV HATが初めてとなります。

uHATボードの最低要件( https://www.raspberrypi.org/app/uploads/2018/10/Raspberry-Pi-TV-HAT_Mechanical.png )は以下のようなものです。別途記載の部分に関してはリンク先の画像を参照してください。また、サイズと形状以外のHATの最低要件(EEPROMなど)も満たす必要があります。

  • 65mm X 30mm であること
  • 角の半径が3mmであること
  • コーナーに3つのマウント用の穴を設けること
  • (別途記載の)マウント穴のルールに沿うこと
  • 40ピンのGPIOコネクターを搭載すること

「3つのマウント用の穴」が4つでないのは、ボードのGPIOポートを上にしたとき、左下が欠けている必要があるためです。PiZeroを除くRaspberry Pi (1A+/1B+/2B/3B/3B+)に装着したとき、DSIポートが隠れてしまうのを防ぐため、このような形状になっているようです。

最低要件を満たしていないボードの製品名にHAT(uHAT)をつけることができないとされているため、アドオンボードを開発される方は注意が必要です。なお、HATボードの要件はGitHubで参照できます(投稿時点でuHATの情報はこちらにはまだないようですが……)。

https://github.com/raspberrypi/hats


Raspberry Pi 3 B+をシールドボックスでベンチマーク

3.14159265..なπの日の夜、スイッチサイエンスさんにいきなり電話をしまして、電波法に抵触しない適法上でのテストを行うためにシールドボックスをお借りしてベンチマークを実施しました。外に対してはUSBのポートがでていて、このポートと内部にあるUSBがブリッジのような形になっており、このUSBからRaspberry Pi 3B+と接続ができるようになっております。

で実際のテストはといえば中に閉じ込めて行わねばいけなくて、外部のインターネットと直接接続できる何かがでているわけでもないため、テストはおなじみのUnixbenchぐらいがやっとなのが事実です。なので、いつもながらおなじみで申し訳ないのですが、Unixbenchをとってみました。



   #    #  #    #  #  #    #          #####   ######  #    #   ####   #    #
   #    #  ##   #  #   #  #           #    #  #       ##   #  #    #  #    #
   #    #  # #  #  #    ##            #####   #####   # #  #  #       ######
   #    #  #  # #  #    ##            #    #  #       #  # #  #       #    #
   #    #  #   ##  #   #  #           #    #  #       #   ##  #    #  #    #
    ####   #    #  #  #    #          #####   ######  #    #   ####   #    #

   Version 5.1.3                      Based on the Byte Magazine Unix Benchmark

   Multi-CPU version                  Version 5 revisions by Ian Smith,
                                      Sunnyvale, CA, USA
   January 13, 2011                   johantheghost at yahoo period com

------------------------------------------------------------------------------
   Use directories for:
      * File I/O tests (named fs***) = /home/pi/byte-unixbench/UnixBench/tmp
      * Results                      = /home/pi/byte-unixbench/UnixBench/results
------------------------------------------------------------------------------


1 x Dhrystone 2 using register variables  1

1 x Double-Precision Whetstone  1

1 x Execl Throughput  1

1 x File Copy 1024 bufsize 2000 maxblocks  1

1 x File Copy 256 bufsize 500 maxblocks  1

1 x File Copy 4096 bufsize 8000 maxblocks  1

1 x Pipe Throughput  1

1 x Pipe-based Context Switching  1

1 x Process Creation  1

1 x System Call Overhead  1

1 x Shell Scripts (1 concurrent)  1

1 x Shell Scripts (8 concurrent)  1

4 x Dhrystone 2 using register variables  1

4 x Double-Precision Whetstone  1

4 x Execl Throughput  1

4 x File Copy 1024 bufsize 2000 maxblocks  1

4 x File Copy 256 bufsize 500 maxblocks  1

4 x File Copy 4096 bufsize 8000 maxblocks  1

4 x Pipe Throughput  1

4 x Pipe-based Context Switching  1

4 x Process Creation  1

4 x System Call Overhead  1

4 x Shell Scripts (1 concurrent)  1

4 x Shell Scripts (8 concurrent)  1

========================================================================
   BYTE UNIX Benchmarks (Version 5.1.3)

   System: raspberrypi: GNU/Linux
   OS: GNU/Linux -- 4.9.80-v7+ -- #1098 SMP Fri Mar 9 19:11:42 GMT 2018
   Machine: armv7l (unknown)
   Language: en_US.utf8 (charmap="UTF-8", collate="UTF-8")
   CPU 0: ARMv7 Processor rev 4 (v7l) (0.0 bogomips)
          
   CPU 1: ARMv7 Processor rev 4 (v7l) (0.0 bogomips)
          
   CPU 2: ARMv7 Processor rev 4 (v7l) (0.0 bogomips)
          
   CPU 3: ARMv7 Processor rev 4 (v7l) (0.0 bogomips)
          
   12:20:45 up 2 min,  3 users,  load average: 0.09, 0.08, 0.03; runlevel 2018-03-14

------------------------------------------------------------------------
Benchmark Run: Wed Mar 14 2018 12:20:45 - 12:27:30
4 CPUs in system; running 1 parallel copy of tests

Dhrystone 2 using register variables        5064713.2 lps   (10.0 s, 1 samples)
Double-Precision Whetstone                     1224.3 MWIPS (9.9 s, 1 samples)
Execl Throughput                                507.1 lps   (29.9 s, 1 samples)
File Copy 1024 bufsize 2000 maxblocks        159405.0 KBps  (30.0 s, 1 samples)
File Copy 256 bufsize 500 maxblocks           47023.0 KBps  (30.0 s, 1 samples)
File Copy 4096 bufsize 8000 maxblocks        403956.0 KBps  (30.0 s, 1 samples)
Pipe Throughput                              353550.8 lps   (10.0 s, 1 samples)
Pipe-based Context Switching                  63697.5 lps   (10.0 s, 1 samples)
Process Creation                               2420.9 lps   (30.0 s, 1 samples)
Shell Scripts (1 concurrent)                   2202.1 lpm   (60.0 s, 1 samples)
Shell Scripts (8 concurrent)                    668.7 lpm   (60.0 s, 1 samples)
System Call Overhead                         687831.7 lps   (10.0 s, 1 samples)

System Benchmarks Index Values               BASELINE       RESULT    INDEX
Dhrystone 2 using register variables         116700.0    5064713.2    434.0
Double-Precision Whetstone                       55.0       1224.3    222.6
Execl Throughput                                 43.0        507.1    117.9
File Copy 1024 bufsize 2000 maxblocks          3960.0     159405.0    402.5
File Copy 256 bufsize 500 maxblocks            1655.0      47023.0    284.1
File Copy 4096 bufsize 8000 maxblocks          5800.0     403956.0    696.5
Pipe Throughput                               12440.0     353550.8    284.2
Pipe-based Context Switching                   4000.0      63697.5    159.2
Process Creation                                126.0       2420.9    192.1
Shell Scripts (1 concurrent)                     42.4       2202.1    519.4
Shell Scripts (8 concurrent)                      6.0        668.7   1114.5
System Call Overhead                          15000.0     687831.7    458.6
                                                                   ========
System Benchmarks Index Score                                         336.3

------------------------------------------------------------------------
Benchmark Run: Wed Mar 14 2018 12:27:30 - 12:34:21
4 CPUs in system; running 4 parallel copies of tests

Dhrystone 2 using register variables       20174506.0 lps   (10.0 s, 1 samples)
Double-Precision Whetstone                     4936.7 MWIPS (9.9 s, 1 samples)
Execl Throughput                               2474.9 lps   (29.9 s, 1 samples)
File Copy 1024 bufsize 2000 maxblocks        263690.0 KBps  (30.0 s, 1 samples)
File Copy 256 bufsize 500 maxblocks           70797.0 KBps  (30.0 s, 1 samples)
File Copy 4096 bufsize 8000 maxblocks        647637.0 KBps  (30.0 s, 1 samples)
Pipe Throughput                             1431414.8 lps   (10.0 s, 1 samples)
Pipe-based Context Switching                 221854.5 lps   (10.0 s, 1 samples)
Process Creation                               5696.9 lps   (30.0 s, 1 samples)
Shell Scripts (1 concurrent)                   4949.5 lpm   (60.0 s, 1 samples)
Shell Scripts (8 concurrent)                    644.5 lpm   (60.2 s, 1 samples)
System Call Overhead                        2640381.9 lps   (10.0 s, 1 samples)

System Benchmarks Index Values               BASELINE       RESULT    INDEX
Dhrystone 2 using register variables         116700.0   20174506.0   1728.7
Double-Precision Whetstone                       55.0       4936.7    897.6
Execl Throughput                                 43.0       2474.9    575.6
File Copy 1024 bufsize 2000 maxblocks          3960.0     263690.0    665.9
File Copy 256 bufsize 500 maxblocks            1655.0      70797.0    427.8
File Copy 4096 bufsize 8000 maxblocks          5800.0     647637.0   1116.6
Pipe Throughput                               12440.0    1431414.8   1150.7
Pipe-based Context Switching                   4000.0     221854.5    554.6
Process Creation                                126.0       5696.9    452.1
Shell Scripts (1 concurrent)                     42.4       4949.5   1167.3
Shell Scripts (8 concurrent)                      6.0        644.5   1074.2
System Call Overhead                          15000.0    2640381.9   1760.3
                                                                   ========
System Benchmarks Index Score                                         867.2

ほんと、技適の問題でおおっぴらに電源をいれられないのは口惜しい限りですが、ご参考ください。また深夜だというのに押しかけでシールドボックスをお貸しいただきましたスイッチサイエンス様に御礼申し上げます。


Raspberry Pi 3 B+ リリース!

今日は3月14日、Pi(π、円周率) Dayというわけで、Raspberry Pi 3 B+(以下3B+)がリリースされました!

https://www.raspberrypi.org/blog/raspberry-pi-3-model-bplus-sale-now-35/

Raspberry Pi 3 B(以下3B)からの変更点は以下の通りです。

  • BCM2837B0の採用。1.4GHz 64ビット4コア ARM Cortex-A53 CPUに強化(3Bは1.2GHz)
  • デュアルバンド802.11acの無線LAN・Bluetooth4.2に対応
  • 有線LANの強化。以前より3倍の高速化
  • PoE(Power over Ethernet)に対応
  • PXEブートとUSBマスストレージブートの改善
  • 温度管理の改善

逆に、変更がない点は以下のとおりです。

  • メモリは1GB LPDDR2 SDRAMから変更なし
  • GPUはVideoCore IVから変更なし
  • 価格は35ドルから変更なし

無線LAN+Bluetoothは、Cypress CYW43455(旧BCM43455)コンボチップによるものです。新たにデュアルバンド802.11acがサポートされたことによって、5GHz帯のWi-Fiに接続できるようになりました。

アンテナ部分はPiZero Wでも採用されたProant AB社のものが引き続き採用されています。

また、有線LANは初代より続いたLAN9512/9514 USB+LANチップからLAN7515 USB+LANチップに置き換わりました。以前はLAN9514の100Mbpsが制約になっていましたが、LAN7515は1Gbイーサネットに対応しているため、BCM2837B0のUSB2.0の性能である300Mbps前後までLANの性能を引き出すことが可能になりました(USB2.0-GbEアダプターのようなイメージですね)。チップメーカーのmicrochipのページで比較ができます。(17:50追記:表現を改善しました)

http://www.microchip.com/wwwproducts/ProductCompare/LAN7515/LAN9514

PoE対応にあわせて、GPIOとUSBポートの近くに新たに4つのピンヘッダが追加されています。今後発売予定のPoE HATと組み合わせて使用することで、PoEによる電源供給が可能になるとのことです。

PXE・USBマスストレージブートは、Raspberry Pi 3で実装された後に見つかった不具合の修正がBCM2837B0のブートROMに加えられています。また、3B+からはデフォルトでPXE・USBマスストレージブートが有効になるようです。

日本での発売は未定のようですが、イギリスではすでにPimoroni、ModMyPiなどで販売が始まっています。本モデルも、3B、PiZeroWと同様に技術基準適合証明・技術基準適合認定の取得が現時点で確認できていないため、日本国内で動作を確認するには電波暗室の利用が必要になるでしょう。日本で使えるようになる日が楽しみですね。

以下は3Bと3B+の比較写真です。表面。チップの番号の刻印が一部省力されたり、チップ部品自体が減ったような印象です。

裏面。FCC IDなどの認証情報はこちらに刻印されています。


Raspberry Pi Zero WおよびPiZero用公式ケースが発表

Raspberry Pi財団より、Raspberry Pi発売5周年を記念して、Raspberry Pi Zeroシリーズの最新版となる「Raspberry Pi Zero W(以下PiZero W)」が発表されました。

New product! Raspberry Pi Zero W joins the family

PiZero WではRaspberry Pi 3 Model Bにも内蔵されたCypress CYW43438 (旧Broadcom BCM43438) Wi-Fi・Bluetoothチップが新たに搭載されました。Wi-Fi・Bluetoothの内蔵によって、これまで必要だったUSBドングルが省略することができるため、PiZeroを使った作品のさらなる小型化に貢献できます。

SoCやメモリはこれまでと同様BCM2835、512MBが搭載されます。PiZero V1.3で追加されたカメラポートも引き続き搭載されています。

価格は10ドルと、今までのPiZeroに比べて倍になる一方、これまでのPiZero V1.3も引き続き販売されるため、用途に応じてWi-Fiありなしどちらのモデルも選べます。

歴代のPiZero比較写真、上からPiZero V1.2、PiZero V1.3、そしてPiZero W V1.1です。

裏面です(反射してしまい見えにくいですがご容赦を…)。

また、PiZero Wの発売に合わせて、かねてより要望の多かったRaspberry Pi財団公式のPiZeroケースが発表されました。公式ケースは、PiZero V1.2、PiZero V1.3、PiZero Wのいずれにも対応しています。

PiZero V1.3をケースに収めた様子。

用途に合わせて3種類のふたが用意されており、コンピュート用途に最適な完全に閉じたもの、工作用途に最適なGPIO部分が開いたもの、そしてカメラモジュールと組み合わせた小型カメラづくりに最適なものがあります。

PiZero Wの技術基準適合証明(技適)について

PiZero Wにはボード裏面に技適マークが刻印されていることから、日本でも利用できる見込みです。詳細が確認ができ次第、追記にておしらせします。

国内での販売について

PiZero Wの国内での販売は、スイッチサイエンスで販売される見込みです。3月下旬販売を目指しつつ、技適の確認が正式に取れ次第販売を開始するようです。

スイッチサイエンスにRaspberry Pi Zero Wがやってきた!

(追記)KSYも同じくPiZero Wの販売を予定しています。こちらは3月中旬の販売を目指していますが、スイッチサイエンスと同じく技適の確認が正式に取れ次第販売を開始としています。

https://raspberry-pi.ksyic.com/news/page/nwp.id/48


Raspberry Pi Compute Module 3リリース

Raspberry Pi Compute Module 3がリリースされました。

Compute Module 3 Launch!

Compute Modueは、産業用・組み込み用に特化したバージョンのRaspberry Piです。ボードはDDR2 SODIMMと同じフォームファクターが採用されており、開発ボードなどを通じて開発したのち、機器に組み込んで使用することができます。

Compute Module 3は、Raspberry Pi 3で採用されたBCM2837および1GBのRAMを搭載されます。モデルは2種類用意され、ストレージとして4GBのeMMCを搭載した通常モデル(CM3)と、eMMCストレージが省略される代わりにSDカードインターフェイスのピンがモジュールに配線されたCompute Module 3 Lite(CM3L)が販売されます。CM3は30ドル、CM3Lは25ドルになります。

Compute Module 3のリリースに合わせて、開発用ボードである「Compute Module IO Board V3 (CMIO3)」もリリースされています。

Compute Module 3はElement14やRSコンポーネンツより購入可能となっています。

(日本のRSオンライン) http://jp.rs-online.com/web/p/processor-microcontroller-development-kits/1232011/?sra=pmpn

なお、Compute Module 3は、以前紹介したNECのサイネージシステムでも取り上げられています。

NEC Display Solutions EuropeがRaspberry Piとのコラボレーションを発表


日本製Raspberry Pi 3リリース

アールエスコンポーネンツ株式会社より、Raspberry Pi 3 Model Bの国内生産モデルを販売開始することが11月10日に発表されました。

「Raspberry Pi」の国内生産モデルを販売開始 | 半導体・電子部品の通販 RSオンライン

産業機器などへの組込みなどのニーズが増すなか、日本国内の厳しい製造管理要求に対応するため、日本国内にある実績豊富な製造業社で製造管理を行うことで、各種管理要求に柔軟に対応できるようになり、ユーザ製品への組込み販売を容易に行えるとしています。

日本製Raspberry Pi 3は、これまでのRaspberry Pi 3と同様に(技適マーク)が付いています。

RSオンラインでは150個セットでの販売が開始されています。

http://jp.rs-online.com/web/p/products/1239470/

なお、個人向けの1個単位での販売はKSYで予定されているようです開始されました

https://raspberry-pi.ksyic.com/news/page/nwp.id/42

また、今回のリリースに合わせて、5.1V/2.5A出力に対応した新たな電源ケーブルも発売されています。こちらはRSオンラインにて、1個から購入可能です。

http://jp.rs-online.com/web/p/plug-in-power-supply/1215944/


Raspberry Pi 3とPi DriveでUSB HDDブートをしてみよう

Raspberry Pi 3向けに、SDカード以外のブート方法を提供するための機能が追加されています。現在はベータ版の扱いなので、不具合があるかもしれませんが、試す手順なども掲載されています。

現在はUSBブート、PXEブートの2種類が紹介されています。

https://www.raspberrypi.org/blog/pi-3-booting-part-i-usb-mass-storage-boot/

https://www.raspberrypi.org/blog/pi-3-booting-part-ii-ethernet-all-the-awesome/

PXEブートに関しては私の個人ブログでも紹介していますので、興味がありましたらこちらも見てみてください。

さて、本記事ではPi Driveを使用してUSBブートをしてみたいと思います。

Pi Drive

Pi Driveとは?

Pi Driveは、Western DigialがRaspberry Pi向けにリリースした2.5インチハードディスクです。容量はPi==πにかけて314GBになっています(フォーマットすると……314GBではなくなります)。特徴的なのはインターフェイスで、SATAではなくUSBポートが搭載されています。なので、USBケーブル1本でRaspberry Piと接続できるわけです。

http://store.wdc.com/promo/97047600

正規の購入経路としてはWestern Digitalの通販サイトがあるものの、日本への輸入には対応していないようです。しかし、おおたさんがなぜか入手されたのをお借りしたので、ぺろぺろなめまわしています(なめまわしていません)。

その他謎の入手経路としては、dx.com(中国のガジェット系通販サイト)がありました。ぶっちゃけ容量単価的にはおいしくないですけども。

http://www.dx.com/p/2-5-314gb-usb-hard-drive-for-raspberry-pi-3b-2b-b-silver-black-437594

パッケージはこのような感じです。

IMG_4921

側面には円周率も……!

IMG_4922

Pi Driveはberrybootを使用したHDDブートモードが用意されています。ただ、berrybootがMicroSDカードから起動するようなので完全にSDカードレスにできるわけではないようです。また、Raspberry Pi3リリース前にリリースされたパッケージでしたので、そもそもRaspberry Pi 3には対応していないようでした。

IMG_4923

USBブートをしてみよう

USBブートをするためには以下の手順が必要になります。

Raspberry Pi側の準備

  • MicroSDカードでブートする
  • rpi-updateで最新のファームウェアにアップデート
  • USBブートを有効にする設定を記述して再起動
  • USBブートが有効になったことを確認してシャットダウン

HDDの用意

  • パーティションを切る
  • 切ったパーティションをそれぞれフォーマット
  • Raspberry PiのOSイメージからファイルコピー
  • SDカードからbootcode.binとstart.elfをコピー

作業は以下のページを参考に進めました。

https://www.raspberrypi.org/documentation/hardware/raspberrypi/bootmodes/msd.md

Raspberry Pi側の準備

USBブートを有効にするには、最新のファームウェアにアップデートした環境で特定のオプションを有効にした状態でブートする必要があります。この作業は1度実行すれば、以降は不要のようです。

MicroSDカードに最新のRaspbianを用意して起動した後、以下のコマンドを実行します。

sudo BRANCH=next rpi-update

/boot/config.txtをエディターで開き、以下の一文を追記します。

program_usb_boot_mode=1

Raspbianを再起動したら以下のコマンドを実行して、出力が「17:3020000a」であることを確認します。

$ vcgencmd otp_dump | grep 17:
17:3020000a

HDDの用意

Raspberry PiにPi Driveを接続します。まずはpartedコマンドでパーティションを作成します。

$ sudo parted /dev/sda

(parted) mktable msdos
Warning: The existing disk label on /dev/sda will be destroyed and all data on this disk will be lost. Do you want to continue?
Yes/No? Yes
(parted) mkpart primary fat32 0% 100M
(parted) mkpart primary ext4 100M 100%
(parted) print
Model: WD My Passport 07BA (scsi)
Disk /dev/sda: 314GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Disk Flags:

Number Start End Size Type File system Flags
1 1049kB 99.6MB 98.6MB primary fat32 lba
2 99.6MB 314GB 314GB primary ext4 lba
(parted) quit

パーティションをそれぞれmkfsコマンドでフォーマットします。

sudo mkfs.vfat -n BOOT -F 32 /dev/sda1
sudo mkfs.ext4 /dev/sda2

フォーマットしたパーティションをそれぞれ以下のようにマウントします。

sudo mount /dev/sda2 /mnt
sudo mkdir /mnt/boot
sudo mount /dev/sda1 /mnt/boot/

SDカードの中のRaspbianを、rsyncコマンドでHDDにコピーします。rsyncコマンドは別途インストールする必要があります。

sudo apt-get install rsync
sudo rsync -ax / /boot /mnt

コピーしたあとは、HDD内のいくつかのファイルでブート用のパラメータをHDD用に書き換えます。SDカードのデバイス名はmmcblk0ですが、HDDの場合はデバイス名がsdaになるためです。参考ページのようにコマンドで実行すると、一括で置き換えてくれます。

$ sudo sed -i "s,root=/dev/mmcblk0p2,root=/dev/sda2," /mnt/boot/cmdline.txt
$ sudo sed -i "s,/dev/mmcblk0p,/dev/sda," /mnt/etc/fstab

最後にSSHホスト鍵を再生成します。こちらも基本的には参考ページの通り実行します。

cd /mnt
sudo mount --bind /dev dev
sudo mount --bind /sys sys
sudo mount --bind /proc proc
sudo chroot /mnt
rm /etc/ssh/ssh_host*
dpkg-reconfigure openssh-server
exit
sudo umount dev
sudo umount sys
sudo umount proc

最後にRaspberry Piをシャットダウンします。

$ sudo poweroff

HDDブート!

Raspberry Piの電源ケーブルを抜いたら、MicroSDカードを抜き取り、HDDは接続したまま電源を再投入します。少しするとHDDがスピンアップして、(一度スピンダウンしながら)Raspberry Piが起動します。

HDDから起動していることを確認するには以下のようなコマンドを実行してみると良いでしょう。


pi@raspberrypi:~ $ cat /proc/partitions
major minor #blocks name

(中略)
8 0 306677760 sda
8 1 96256 sda1
8 2 306580480 sda2
pi@raspberrypi:~ $ df -h
Filesystem Size Used Avail Use% Mounted on
/dev/root 288G 1.2G 272G 1% /
devtmpfs 459M 0 459M 0% /dev
tmpfs 463M 0 463M 0% /dev/shm
tmpfs 463M 6.2M 457M 2% /run
tmpfs 5.0M 4.0K 5.0M 1% /run/lock
tmpfs 463M 0 463M 0% /sys/fs/cgroup
/dev/sda1 93M 20M 73M 22% /boot
pi@raspberrypi:~ $ mount | grep sda
/dev/sda2 on / type ext4 (rw,noatime,data=ordered)
/dev/sda1 on /boot type vfat (rw,relatime,fmask=0022,dmask=0022,codepage=437,iocharset=ascii,shortname=mixed,errors=remount-ro)

まとめ

Pi Driveを使用して、Raspberry Pi 3でUSB-HDDブートする方法を紹介しました。MicroSDカードが不要になるので、書き換え寿命を気にする必要がなくなるのは便利かもしれません。

あと、Pi Driveについて、一つ気なるところをあげるとすると、アクセスランプの白色LEDがまぶしすぎる点でしょうか……。目に跡が残るくらい明るいんですよね……w