和菜鸟一起学android4.0.3源码之SD卡U盘等自动挂载配置

        一直以为android sd卡的自动挂载是在vold中实现的,而其配置文件在网上也很容易找到是哪个system/etc/vold.fstab,中,其配置文件就是mount,一般都是如下所示:

dev_mount sdcard /mnt/sdcard 3 /devices/platform/sc65-sdhci.0/mmc_host/mmc0/mmc0:0001/block/mmcblk0 nonremovable,encryptable


 

        而对于android4.0.3的来说,其自动挂载貌似不一样了,只要找到节点,就是那个mmcblk0,或者u盘的sda就可以了,其简化了不少了。只要把上面的配置改为下面的就可以自动挂在了。

dev_mount sdcard /mnt/sdcard auto /block/mmcblk0 nonremovable,encryptable

dev_mount sdcard /nt/sdcard /mnt/sdcard auto /block/sda /block/sda/sda1


 

        在此说明下,android4.0.3源码中,只支持FAT格式的移动盘和SD卡,在system/vold目录下就可以知道有个Fat.cpp。其中就有一句

rc=mount(faPath, mountPoint, “vfat”, flags, mountData);


    其实网上有修改源码支持其他格式的挂载,就是先读取超级块,然后再根据其格式的特性对应不同的格式,然后mount上去就好了。

原文地址:https://www.cnblogs.com/wuyida/p/6300076.html