質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

89.13%

Raspberry piのmicroSDカードの製品名をコマンドで調べる方法

受付中

回答 1

投稿

  • 評価
  • クリップ 0
  • VIEW 871

gaihei

score 4

前提・実現したいこと

...現在設置しているラスベリーパイと同様のシステムを設計するうえで、そのシステムに用いているSDカードの製品名をSSHで確認したい(長期間の運用で耐久性があると信頼できるため)です。
...一般的なLinuxでHDDやSSDを調べる方法では見つけられない or Raspbianに応用する方法がわからなかったので、質問を投稿します。

試したこと

(結果は手で打ち直しています。細かい写し間違えがあると思われます。)

・lshw
$lshw


→diskが表示されない。

・smartctl
$sudo apt install smartctl
Package 'smartctl' has no installation candidate


(パッケージがない)

・/proc/scsi/scsi

→まず存在/proc/scsiがしない。

・/proc/ide/hda/model

→まず/proc/ideが存在しない。

・fdisk
$fdisk -l
...
Disk /dev/mmcblk0: 14.9 GiB, 15987638272 bytes, 31225856 sectors
Units: sectors of 1 * 512 = 512bytes
Sector size(logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x1b2fb478
...


(一応ディスク名が判明)

・hdparm
$hdparm -I /dev/mmcblk0
/dev/mmcblk0:
HDIO_DRIVE_CMD(identify) failed : Invalid aegument
$hdparm -I /dev/mmcblk0p1
/dev/mmcblk0p1:
HDIO_DRIVE_CMD(identify) failed : Invalid aegument


(引数がおかしい)

・lsusb

→マウス・キーボード・ハブのみ表示

補足情報

モデル:Raspberry pi 3 model B+
OS:Ruspbian buster lite(2019/11/18 update,upgrade実行)

  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 過去に投稿した質問と同じ内容の質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

回答 1

+3

gaiheiさん、

SDカードには、その内部レジスターに、CID(Card identification number、サイズ128ビット)とかCSD(Card Specific Data、サイズ128ビット)と呼ばれるものがあり、
CIDに以下のような情報が含まれますので、これをチェックすればよいかと思います。(ちょっとググると、レジスタの詳細でてくるので、しらべてみてください)

Manufacturer ID (8bit)
OEM/Application ID (16bit)
Product name (40bit)
Product revision (8bit)
Product serial number (32bit)
reserved (4bit)
Manufacturing date (12bit)
CRC7 checksum (7bit)
not used, alays 1 (1bit)

で、ラズパイで、そのレジスタを見る方法ですが、cat /sys/block/mmcblk0/device/cid すると、HEXになったものが見れます。

  • 実行例
pi@raspberrypi:~ $ cat /sys/block/mmcblk0/device/cid
0353445345313647804946a6a301039f
pi@raspberrypi:~ $ 

上のビット数で分けていくと、03-5344-5345313647-80-4946a6a3-0-103-9fという感じなので、

Manufacturer ID: 0x03 => SanDisk らしいです。
OEM/Application ID 0x53 0x44 = 'SD'
Product name 0x53 0x45 0x31 0x36 0x47 = 'SE16G'
Product revision 0x80
Product serial number 0x49 0x46 0xa6 0xa3 
Manufacturing date: 0x103 => 0x10(2016年、0=2000年なので) と 0x3(3月)製造?

これで足りなければ、ほかのレジスタもいくつか、同じディレクトリにあるので、確認してみてください。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2019/11/22 04:41 編集

    gaiheiさん、

    私の手持ちのSDカードはそれほどないので、くわしく比較はできませんが、
    SDカードのほかの内部レジスタ、
    - CSD(Card Specific Data) カードの容量・アクセススピードなど
    - SCR(SD CARD Configuration Register) CSDの追加情報(SD spec Ver3以降の対応状況)
    - OCR(Operation Conditions Register) 動作電圧など
    も確認してみるのはどうでしょうか。
    同一製品は同様の値になっているのではないでしょうか。

    --CSDは、Ver 1と2(SDHC以降?)があるので、見るとこを注意。

    ところで、Product revision(PRV) は、BCD表記かつ、"n.m" と解釈するとのことで、"0x10" は、"1.0" のようです。

    キャンセル

  • 2019/11/27 00:39 編集

    mt08さん、またも返信ありがとうございます。

     mt08さんから今回頂いた方法なんですが、今回調べたかったSDカードメーカーには容量や速度は同じだが違うシリーズがありそれに当てはまること、同メーカーの品が手元なかったことからあたりをつけたり、CSDなどを見比べることができないことからわかりませんでした。

     そして、何度も親身に教えていただいて申し訳ないのですが、昔の担当者に連絡が付き、microSDの中身が分かりました。パナソニックの一番高い奴でした。ちなみに昔の担当者曰く、これにする前はたびたびSDカードがダメになっていたそうです。おそらく書き換え可能回数の問題とも。
     お付き合いいただき、ありがとうございました。

    キャンセル

  • 2019/11/27 06:24

    SDカードは、しばらく使っていると、ちゃんとアクセスできなくなったりしますね。(書き込みが激しいと特に.)
    バックアップをきちんととるようにしとかないといけないですね。

    キャンセル

15分調べてもわからないことは、teratailで質問しよう!

  • ただいまの回答率 89.13%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる