2013年1月8日火曜日

Android のファイルシステム設定ファイル

SDカードのマウント先について色々調べたところ、/system/etc/vold.fstab に書かれていることがわかった。

fstab は、OS起動時にファイルシステムをマウントするなど、デバイスファイルとマウントポイントなどを設定します。

android の vold.fstab は形式も違うがやってることは同じ…はず…
vold.fstab の形式は以下のようになっています。
----------------------------------------------------------------------
※ GALAXY Tab 7.0 Plus SC-02D のコメントより抜粋
dev_mount [label] [root_mount_point] [part] [subsystem] [sysfs_path1...]

label:Label for the volume
root_mount_point:In case of 'tree' style mount, we have to point root mount point to generate 'tree' dynamicaly
mount_point:Where the volume will be mounted, full mount_point path is 'root_mount_point/label'
part:Partition # (1 based), or 'auto' for first usable partition.
subsystem:Hardware level. E.g. "sd"/"usb"...
sysfs_path:List of sysfs paths to source devices
----------------------------------------------------------------------

この /system/etc/vold.fstab はエミュレータ上で確認したところ Android2.2 (API 8) から導入されているようです。
Android2.1 (API 7) 以下は /system/etc/vold.conf で形式も違います。
(もうAndroid2.1以下は切り捨てていいですよね…)

HTC JISW13HT では以下のように設定されています。

dev_mount sdcard /mnt/sdcard emmc /devices/platform/msm_sdcc.1/mmc_host
dev_mount sdcard2 /mnt/sdcard/ext_sd auto /devices/platform/msm_sdcc.3/mmc_host

半角スペース区切りで3番目に設定されているパスがマウント先になります。

ここで GALAXY Tab 7.0 Plus SC-02D を見てみると…
dev_mount SdCard /mnt/sdcard/extStorages /mnt/sdcard/extStorages/SdCard auto sd /devices/platform/s3c-sdhci.2/mmc_host/mmc1
dev_mount sda /mnt/sdcard/extStorages /mnt/sdcard/extStorages/UsbDriveA auto usb /devices/platform/s5p-ehci
dev_mount sdb /mnt/sdcard/extStorages /mnt/sdcard/extStorages/UsbDriveB auto usb /devices/platform/s5p-ehci
dev_mount sdc /mnt/sdcard/extStorages /mnt/sdcard/extStorages/UsbDriveC auto usb /devices/platform/s5p-ehci
dev_mount sdd /mnt/sdcard/extStorages /mnt/sdcard/extStorages/UsbDriveD auto usb /devices/platform/s5p-ehci
dev_mount sde /mnt/sdcard/extStorages /mnt/sdcard/extStorages/UsbDriveE auto usb /devices/platform/s5p-ehci
dev_mount sdf /mnt/sdcard/extStorages /mnt/sdcard/extStorages/UsbDriveF auto usb /devices/platform/s5p-ehci
dev_mount sdg /mnt/sdcard/extStorages /mnt/sdcard/extStorages/UsbDriveG auto usb /devices/platform/s5p-ehci
dev_mount sdh /mnt/sdcard/extStorages /mnt/sdcard/extStorages/UsbDriveH auto usb /devices/platform/s5p-ehci
dev_mount sdi /mnt/sdcard/extStorages /mnt/sdcard/extStorages/UsbDriveI auto usb /devices/platform/s5p-ehci
dev_mount sdj /mnt/sdcard/extStorages /mnt/sdcard/extStorages/UsbDriveJ auto usb /devices/platform/s5p-ehci
dev_mount sdk /mnt/sdcard/extStorages /mnt/sdcard/extStorages/UsbDriveK auto usb /devices/platform/s5p-ehci
dev_mount sdl /mnt/sdcard/extStorages /mnt/sdcard/extStorages/UsbDriveL auto usb /devices/platform/s5p-ehci
dev_mount sdm /mnt/sdcard/extStorages /mnt/sdcard/extStorages/UsbDriveM auto usb /devices/platform/s5p-ehci
dev_mount sdn /mnt/sdcard/extStorages /mnt/sdcard/extStorages/UsbDriveN auto usb /devices/platform/s5p-ehci
dev_mount sdo /mnt/sdcard/extStorages /mnt/sdcard/extStorages/UsbDriveO auto usb /devices/platform/s5p-ehci
dev_mount sdp /mnt/sdcard/extStorages /mnt/sdcard/extStorages/UsbDriveP auto usb /devices/platform/s5p-ehci
dev_mount sdq /mnt/sdcard/extStorages /mnt/sdcard/extStorages/UsbDriveQ auto usb /devices/platform/s5p-ehci
dev_mount sdr /mnt/sdcard/extStorages /mnt/sdcard/extStorages/UsbDriveR auto usb /devices/platform/s5p-ehci
dev_mount sds /mnt/sdcard/extStorages /mnt/sdcard/extStorages/UsbDriveS auto usb /devices/platform/s5p-ehci
dev_mount sdt /mnt/sdcard/extStorages /mnt/sdcard/extStorages/UsbDriveT auto usb /devices/platform/s5p-ehci
dev_mount sdu /mnt/sdcard/extStorages /mnt/sdcard/extStorages/UsbDriveU auto usb /devices/platform/s5p-ehci
dev_mount sdv /mnt/sdcard/extStorages /mnt/sdcard/extStorages/UsbDriveV auto usb /devices/platform/s5p-ehci
dev_mount sdw /mnt/sdcard/extStorages /mnt/sdcard/extStorages/UsbDriveW auto usb /devices/platform/s5p-ehci
dev_mount sdx /mnt/sdcard/extStorages /mnt/sdcard/extStorages/UsbDriveX auto usb /devices/platform/s5p-ehci
dev_mount sdy /mnt/sdcard/extStorages /mnt/sdcard/extStorages/UsbDriveY auto usb /devices/platform/s5p-ehci
dev_mount sdz /mnt/sdcard/extStorages /mnt/sdcard/extStorages/UsbDriveZ auto usb /devices/platform/s5p-ehci

USBストレージらしきモノが設定されているが、3番目のパスはすべて一緒。

0 件のコメント:

コメントを投稿