« Android tCalendar v1.02 リリース | メイン | Android MarketのAdd Languageに日本が加わったので試してみた »

Android SDカードをFAT32に変更

DevPhoneに標準で付いてくる1GのSDカードは、FAT16でフォーマットされています。
SDカードをFAT32でフォーマットをしようと思ったのだが色々と苦労をしたので、そのメモです。

Android上でフォーマットしてみる

Settings -> SD card & phone strage を開く。

setting sd card

Unmount SD cardを押すとSDカードがアンマウントされ、フォーマットボタンが押せるようになる。
Format SD cardボタンを押すと確認画面が出てフォーマットができる。

format sd card

無事フォーマット終了、どこかでフォーマットの種類を選べるかと淡い期待をしていたのだが、FAT16でフォーマットされる。(想定内)

MicroSD用アダプタを探す

DevPhoneから、SDを抜いて直接PCに刺してフォーマットをしようと思ったのだが、アダプタが見つからない。仕方がないので別の方法を試みる。(家に帰ればあるんだが...)

Windows Vistaでフォーマットを試みる

Dev PhoneをUSB接続し、マスドライブとしてマウント、プロパティを見る

sdcard_fat16.png

しかし、ファイルマネージャーの右クリックで、フォーマットを選んでも、「ディスクを入れてください」と言われフォーマットできない、ディスクマネージャーは認識されない。
きっとドライバが悪いのだと思いさっさとあきらめる。

Macでフォーマットを試みる

DevPhoneをMacに接続し、ディスクユーティリティを起動、きちんと認識する。フォーマットをしようと思ったが、FAT32が選択できない。
きっと方法はあるのだろうけど、Macは初心者なのでさっさとあきらめる。

Androidのコマンドラインでフォーマットを試みる

Androidのコマンドラインは、引数が使えなかったり、コマンド自体ない事が多いので不便なのだが、mkdosfsコマンドが、/system/binにあったので試してみる。

結果としてFAT32にフォーマットできたので以下手順です。

SDカードをアンマウント


#sdutil umount /sdacrd

mkdosfsでフォーマット


# mkdosfs -F 32 /dev/block/mmcblk0p1
mkdosfs -F 32 /dev/block/mmcblk0p1
opening /dev/block/mmcblk0p1
/dev/block/mmcblk0p1: 1979968 sectors in 247496 FAT32 clusters (4096 bytes/cluster)
MBR type: 11
bps=512 spc=8 res=32 nft=2 mid=0xf0 spt=1983871 hds=0 hid=0 bsec=1983871 bspf=1934 rdcl=2 infs=1 bkb
s=2

sdutilで再マウントするがエラーとなる。


# sdutil mount /sdcard
sdutil mount /sdcard
failed to mount /sdcard

rebootをする


#reboot

リブート後自動的にマウントされているのを確認


# mount
mount
rootfs / rootfs ro 0 0
tmpfs /dev tmpfs rw,mode=755 0 0
devpts /dev/pts devpts rw,mode=600 0 0
proc /proc proc rw 0 0
sysfs /sys sysfs rw 0 0
tmpfs /sqlite_stmt_journals tmpfs rw,size=4096k 0 0
/dev/block/mtdblock3 /system yaffs2 ro 0 0
/dev/block/mtdblock5 /data yaffs2 rw,nosuid,nodev 0 0
/dev/block/mtdblock4 /cache yaffs2 rw,nosuid,nodev 0 0
/dev/block//vold/179:1 /sdcard vfat rw,dirsync,nosuid,nodev,noexec,uid=1000,gid=1000,fmask=0711,
dmask=0700,allow_utime=0022,codepage=cp437,iocharset=iso8859-1,shortname=mixed,utf8 0 0

PCに接続してみてみると無事FAT32として認識された。

sdcard_fat32.png

まとめ

SDカードをFAT32にフォーマットしたかっただけなのに、無駄に時間を費やしたというか、変な方向に進んでしまった。普通にWindowsやMacでフォーマットする方がいいと思います。

付録

今回使用したコマンドのまとめも作成しましたので、別記事でアップします。

ブログ内の関連する記事

トラックバック

このエントリーのトラックバックURL:
http://www.taosoftware.co.jp/mt/mt-tb.cgi/231

コメント

はじめまして。

DevPhoneでは、SIMとSDカードが共用になっているのですか?
(単なる誤記でしたらすみません)

また、2GBまでのSDカードはFAT16で、4GBのSDHCカードからがFAT32なのがSDの標準仕様かと思います。
この記事は試しにやってみよう、という試みでしょうか?

こんにちは

SIMとSDカードの指摘ありがとうございました。誤記でしたので修正しました。

FAT32化の話は、DevPhoneにイメージの書き込み等をすると出てきます。普通に使用する範囲では、することはないと思います。

ありがとうございます。

ファイルシステムの調査をやっている途中で見つけた記事だったので、質問してみたのです。
DevPhone関係を見てみます。

コメントを投稿

(いままで、ここでコメントしたことがないときは、コメントを表示する前にこのブログのオーナーの承認が必要になることがあります。承認されるまではコメントは表示されません。そのときはしばらく待ってください。)