2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【闇】Raspberry Piがうまくブートしないと思ったらSDが偽物だった話

2
Last updated at Posted at 2026-04-23

Raspberry Pi用のイメージを焼いて、起動してみたところ、なぜかうまくいきません。
おかしいなと思ってHDMIに繋げてみると、「Unable to read partition as FAT」との文字が。

image.png

他のSDカードにしたらうまくいったので、これはSD側の問題だと思い、徹底的に検証してみることに。Linux環境で検証した記録を技術記事としてまとめました。

1. 物理的な洗礼

まず、届いたSDカードをPCのスロットに挿入した瞬間に違和感がありました。

  • 爪が硬い: ロック機構なのか成形不良なのか、異様に手応えが硬い。
  • 出てこない: 指の腹では全く抜けず、最終的にペンチで引き抜く羽目になりました。
  • 代償: 強引に引き抜いた際、PC側のスロット周辺の塗装が少し剥がれてしまいました。

DSC_3218~2.JPG

思えばブランドの名前の名前もありません。
64GBと書いてありますが、これも後に嘘だとわかります。

2. カーネルログ(dmesg)で見る「公称値との乖離」

物理的な格闘を終え、なんとか認識させた状態でシステムログを確認します。
パッケージには堂々と「64GB」と記載されていましたが、Linuxカーネル(dmesg)の反応は非情でした。

mmc0: new high speed SDHC card at address 0001
mmcblk0: mmc0:0001 3380A 3.94 GiB

この時点で、64GBあるはずの容量が約4GB(3.94 GiB)として認識されています。 16倍もの逆サバ読みです。

しかも64GBではありえないSDHCです。
64GBならSDXCでないといけません。

正常な64GBのSDカードならこのように読まれます。

mmc0: new UHS-I speed SDR104 SDXC card at address 0001
mmcblk0: mmc0:0001 SD64G 58.3 GiB
mmcblk0: p1 p2

3. f3probeによる検証

さらに詳細を調査するため、偽装フラッシュメモリ検出ツール f3 (Fight Flash Fraud) を使用して検証を行いました。

検証コマンド

sudo f3probe /dev/mmcblk0

検証結果

F3 probe 8.0
...
Bad news: The device '/dev/mmcblk0' is damaged

Device geometry:
	         *Usable* size: 0.00 Byte (0 blocks)
	        Announced size: 3.94 GB (8257536 blocks)
	                Module: 4.00 GB (2^32 Bytes)
	Approximate cache size: 0.00 Byte (0 blocks), need-reset=no
	   Physical block size: 512.00 Byte (2^9 Bytes)

結果は無残にも 「Usable size: 0.00 Byte」
4GBのチップを積んでいることすら怪しく、もはや「ストレージ」として機能していない、あるいは書き込みテストにすら耐えられない「破損デバイス」という判定が下されました。

4. メーカーを突き止めようとしたが

このmicroSDカードを作ったのは誰だぁ! 」と言わんばかりにメーカーコードを出してみることに。
結局これは怪しさを深めるだけの結果となりました。

cat /sys/block/mmcblk0/device/cid
00000033333830410000000000000101
cat /sys/block/mmcblk0/device/csd
400e00325b5900001f7f7f800a400001 

これは、SDカードの内部に書き込まれている**「CID(Card Identification)」**という固有の識別情報(128ビットのデータ)を表示したものです。

CIDには、製造元ID、製品名、シリアル番号、製造日などが含まれています。一般的なフォーマットに従って先頭から解析すると、興味深いことがわかります。

1. 製造元(MID)と製品名(PNM)

  • MID (先頭1バイト): 00
    • 通常、PanasonicやSanDiskなどの大手メーカーには固有のIDが割り当てられますが、00 は未定義または安価な汎用コントローラーでよく見られる値です。
  • PNM (製品名): 3333383041
    • これをASCIIコードに変換すると "3380A" になります。
    • 先ほどの dmesg のログにあった mmcblk0: mmc0:0001 3380A 3.94 GiB という表記と一致しますね。

2. 容量偽装の証拠

このCID情報は、SDカードのコントローラーチップがOSに対して「私はこういう者です」と自己紹介している内容です。

  • カードの表面には 「64GB」 と印刷されている。
  • しかし、チップ内部(CID)には 「3380A」 という名前の 「4GB(3.94 GiB)」 モデルであるという情報が書き込まれている。

つまり、外装と中身が最初から一致していない**「ガワだけ着せ替えた粗悪品」**であることを、カード自身が白状してしまっている状態です。

このCID情報は、そのカードが「どこの誰が作ったかも怪しい、4GBのチップを積んだ(しかも壊れかけの)偽装品」であることを証明する決定的な証拠と言えます。

4. まとめ

「安物買いの銭失い」という言葉がありますが、今回はそれでかなり時間を食うことになってしまいました。
これはどこで買ったのかというとかの海外系格安ECサイト「T○mu」です。
相場の3割ほどだったので、あまり痛い買い物ではないと思ったのと、怪しい通販で正しいものが届くか試す目的もありましたが、結果は見てのとおりです。

結果として暇つぶしにはなったのと、物理層に少し詳しくなったのでそれはそれで嬉しい報酬です。
おもちゃとしてはとても楽しめました。

教訓:SDカードは使う前にF3通しておく

2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?