[Armadillo:07587] microSDカードの自動マウント Re: 起動時に自動でflashliteを立ち上げるには

Takenoshita Koyo email@hidden
2011年 9月 20日 (火) 16:59:21 JST


竹之下です。

とりあえず、以下の質問にお答えします。
> 起動時にマイクロSDカードを自動マウントするにはどうすれば良いでしょうか?

microSDカードのパーティション構成やファイルシステムが毎回同じであれば、
初期化スクリプトに書いてあげれば良いです。

基本的には、以下のようになります。

1. /etc/init.d/にスクリプトを追加
    my-product/etc/init.d/mountsd 等のファイル名で

2. /etc/rc.d/ にシンボリックリンクを貼る
    my-product/Makefile に追記する
    $(ROMFSINST) -s /etc/init.d/mountsd /etc/rc.d/S90mountsd

microSDカード用のデバイスファイル(/dev/mmxblk0p1など)はudevdが作成しますので、
microSDカードをマウントするスクリプトはudevd起動後に実行しなければなりません。
Sxx の数字部分は、udevdを起動するスクリプト(S03udevd)よりも大きくなるように
してください。

また、mountsdスクリプトが実行された時に、必ずデバイスファイルがあるとも限りませんので、
作成されるまで少し待つという処理を入れた方が安全かもしれません。

while test ! -b /dev/mmcblk0p1; do
         sleep 1
done
mount /dev/mmcblk0p1 /mnt


別の方法として、udevのイベントが発生したときに、デバイスファイルをマウントするスクリプト
を実行するという方法もあります。USBメモリの自動マウントの例が、「Armadillo 実践開発ガイド 第2部」
にありますので、そちらもご参照ください。
http://manual.atmark-techno.com/armadillo-guide/armadillo-guide-2_ja-2.1.0/ch08.html#sec_image_update_using_usb_memory

-- 
Koyo Takenoshita




armadillo メーリングリストの案内