Linux Tips

USB接続のメモリカードリーダ/ライタを使うには

北浦訓行
2004/7/1

 LinuxでUSB接続のメモリカードリーダ/ライタを使用する場合、デフォルトでインストールされているドライバを利用するため、特にドライバなどを用意する必要はない。ただし、複数のスロットを持つ(同時に2種類以上のメモリカードを挿入可能な)メモリカードリーダ/ライタの場合は、カーネルの再構築が必要になる場合がある(Fedora CoreやVine Linuxなど)。ここでは、バッファローの5スロットタイプメモリカードリーダ/ライタ「MCR-8U/U2」を例に、使用方法を説明する。

 MCR-8U/U2をUSBポートに接続すると、以下のように認識される。

# dmesg
(省略)
 Initializing USB Mass Storage driver...
scsi0 : SCSI emulation for USB Mass Storage devices
  Vendor: MELCO     Model: CF CARD Reader    Rev: 3.02
  Type:   Direct-Access                      ANSI SCSI revision: 02
  Vendor: MELCO     Model: xD/SM   Reader    Rev: 3.02
  Type:   Direct-Access                      ANSI SCSI revision: 02
  Vendor: MELCO     Model: MS CARD Reader    Rev: 3.02
  Type:   Direct-Access                      ANSI SCSI revision: 02
  Vendor: MELCO     Model: SD CARD Reader    Rev: 3.02
  Type:   Direct-Access                      ANSI SCSI revision: 02
(省略)

 もし、上記のようなメッセージが表示されず、

scsi0 : SCSI emulation for USB Mass Storage devices
  Vendor: MELCO     Model: CF CARD Reader    Rev: 3.02
  Type:   Direct-Access                      ANSI SCSI revision: 02

のような内容だけが表示される場合は、カーネルを再構築しなければならない。

 カーネルの再構築時に設定しなければならないパラメータは、「CONFIG_SCSI_MULTI_LUN」だ。Fedora CoreやVine Linuxのデフォルトカーネルの設定は「n」になっているので、「y」に変更する必要がある。具体的には、カーネルのパラメータを以下のように設定する(Fedora Core 2のカーネル再構築についてはFedora Core 2でカーネルを再構築するにはを参照)。

  • カーネル2.4
    [SCSI support]→[Probe all LUNs on each SCSI device]をオン(built-in)

  • カーネル2.6
    [Device Drivers]→[SCSI device support]→[Probe all LUNs on each SCSI device]をオン(built-in)
    ただし、make xconfigやmake gconfigの場合は、
    [Device Drivers]→[SCSI device support]→[SCSI device support]→[Probe all LUNs on each SCSI device]

 MCR-8U/U2にはスロットが5つあり、デバイス名は/dev/sda1、/dev/sdb1、/dev/sdc1、/dev/sdd1、/dev/sde1になる。各デバイスの対応メモリカードは以下のとおりだ。

 
デバイス名
メモリカード
/dev/sda1 コンパクトフラッシュ、マイクロドライブ
/dev/sdb1 スマートメディア
/dev/sdc1 メモリースティック
/dev/sdd1 SDメモリーカード、マルチメディアカード
/dev/sde1 xDピクチャーカード

 スマートメディアとメモリースティックを挿入した場合は、以下のようにマウントする。

# mount /dev/sdb1 /mnt/sm ←スマートメディアをマウント
# ls /mnt/sm/dcim/100olymp/
p1010069.jpg  p5020084.jpg  p5030092.jpg  p6120101.jpg  p6120109.jpg
p5010071.jpg  p5020085.jpg  p5030093.jpg  p6120102.jpg  p6120110.jpg
(省略)
# mount /dev/sdc1 /mnt/ms ←メモリースティックをマウント
# cd /mnt/dcim/100msdcf/
# ls
dsc00001.jpg  dsc00004.jpg  dsc00007.jpg  dsc00010.jpg  dsc00013.jpg
dsc00002.jpg  dsc00005.jpg  dsc00008.jpg  dsc00011.jpg  dsc00014.jpg
(省略)
/mnt/smはスマートメディア用、/mnt/msはメモリースティック用のマウントポイント

Linux Tips Index



 Linux Squareフォーラム Linux Tipsカテゴリ別インデックス
インストール/RPM ブート/ブートローダ
ファイル操作 環境設定
ユーザー管理 コンソール/ターミナル
X Window System セキュリティ
トラブルシューティング 他OS関係
ネットワーク ハードウェア
Webサーバ Samba
GNOME KDE
OpenOffice.org エミュレータ
ソフトウェア そのほか/FAQ
全Tips公開順インデックス Linux Tips月間ランキング
Linux Squareフォーラム全記事インデックス

MONOist組み込み開発フォーラムの中から、Linux関連記事を紹介します


Linux & OSS フォーラム 新着記事
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

注目のテーマ

Linux & OSS 記事ランキング

本日 月間