Android 4.4 U盘挂载【转】
本文转载自:https://blog.csdn.net/mill_li/article/details/50134301
在Android4.4系统下,ES文件浏览器读取不到U盘,但是在设置->存储里面是可以看到U盘的,另外一块板子是4.2系统的,一切正常,用串口看了下发现
正常的板子,U盘挂在/mnt/udisk下,不正常的那个在/mnt/media_rw/udisk下,于是乎就想要更改U盘的挂载路径.
百度了一番发现了一片好文章,让我解决了这个问题
http://blog.csdn.net/jingxia2008/article/details/25787039
因为对Android系统并不是很了解,所以没法讲的特别透彻,感兴趣的可以去看看上面那篇文章,我大概是改了三个地方
1.init.rc
系统启动的时候肯定是要从这里启动的,所以就看了看,发现果然有关于udisk的东西,飞思卡尔的imx6平台下
/project/device/fsl/imx6/etc/init.rc里面有这样一段话
- mkdir /mnt/media_rw 0751 media_rw media_rw
- mkdir /storage 0751 root sdcard_r
- mkdir /mnt/media_rw/extsd 0755 system system
- symlink /mnt/media_rw/extsd /storage/extsd
- mkdir /mnt/media_rw/udisk 0755 system system
- symlink /mnt/media_rw/udisk /storage/udisk
看来是在这里创建了挂载的目录,但是这里只是创建了目录,系统并不知道要挂载到这里,而且为什么要创建两个连接呢?百度一番后发现Android有Vold这个东西,机制上的东西我就不说了,也讲不明白,具体可以百度下,于是乎我将这里改成了
- #mkdir /mnt/media_rw 0751 media_rw media_rw
- mkdir /storage 0751 root sdcard_r
- mkdir /mnt/extsd 0755 system system
- symlink /mnt/extsd /storage/extsd
- mkdir /mnt/udisk 0755 system system
- symlink /mnt/udisk /storage/udisk
2.fstab
系统会在这里面将挂载点告诉Vold,让他可以去检测热插拔事件,如果没有在这里注册,Vold就不会去检测,这里因为我是freescale平台,所以在/project/device/fsl/sabresd_6dq/
这个目录下有fstab.freescale文件,里面有这样几句话
- /devices/platform/sdhci-esdhc-imx.2/mmc_host/mmc1 /mnt/media_rw/extsd vfat defaults voldmanaged=extsd:auto
- /devices/platform/fsl-ehci /mnt/media_rw/udisk vfat defaults voldmanaged=udisk:auto
第一个是SD卡的注册,第二个是U盘的注册
于是将这里改成了
- /devices/platform/sdhci-esdhc-imx.2/mmc_host/mmc1 /mnt/extsd vfat defaults voldmanaged=extsd:auto
- /devices/platform/fsl-ehci /mnt/udisk vfat defaults voldmanaged=udisk:auto
3.Vold
上面两个改了以后发现问题还是没有解决,于是就在/project/system/vold/目录下看,发现有Volume.cpp文件,里面这样写的
- const char *Volume::MEDIA_DIR = "/mnt/media_rw";
于是将这个目录也改了之后问题解决了。。。
最后还有一点,关于U盘的挂载信息,可以用logcat -s Vold MountService看,我就是这样发现挂载目录有问题的
Android 4.4 U盘挂载【转】的更多相关文章
- linux系统数据盘挂载教程
将数据盘挂载为/www命令:#mkdir /www & mount /dev/sdb1 /www ----------------------------------------------- ...
- zedboard U盘挂载+交叉编译helloworld
交叉编译环境见http://blog.csdn.net/xiabodan/article/details/22717175 1:编写hello.c文件 #include<stdio.h> ...
- Ubuntu 将其他盘挂载到/home的子目录下
Ubuntu 14.04 将其他盘挂载到/home的子目录下当安装完Ubuntu系统,由于当时没有注意,分配的分区空间太小.经过一段时间安装了各式各样的软件后,常常会遇到/home目录下空间不够的情况 ...
- 虚拟机U盘挂载
虚拟机中U盘挂载 一.连接U盘 虚拟机中 虚拟机→可移动设备→Syntek USB......(U盘的名称)→连接: 二.查看U盘的UUID “lsblk -f”: UUID为 35E6-9 ...
- 接上篇:将OneDrive云盘挂载到我的电脑!(1024快乐,明年我应该也可以过这个节日了!)
今天对程序猿来说是个值得纪念的日子!祝程序员小哥哥小姐姐们今天可以早早下班,回家休息,Bug走开! 接上篇,将自己申请的5T云盘挂载到我的电脑! 第一步:挂网下载Raidrive 附上链接: http ...
- CentOS系统下的数据盘挂载
此教程适用系统:Linux(CentOS,Debian,Ubuntu,Fedora) 通常新开通的Linux云服务器数据盘都未做分区和格式化.在进行数据盘挂载之前我们要先进行分区以及格式化操作.注意, ...
- Linux系列(21) - 光盘、U盘挂载
挂载光盘 mount命令.umount命令 step-1 建立挂载点 原理:相当于建立盘符,建个目录读取光盘内容 命令:[root@localhost ~]# mkdir /mnt/cdrom/ 备注 ...
- Linux c 获取U盘挂载路径
思路: 1.执行df -h 找到 带mnt的行.将结果存入一个文件中. system("df -h |grep mnt >./extendevinfo.txt"); 也可以直 ...
- Linux c 检测U盘挂载路径方法
思路: 1.使用df -h |grep mnt shell 命令查找到挂载路径信息 本代码是将结果存入文件中,再从文件中解析出路径信息.也可使用fopen直接从管道中读取信息 2.解析出信息最后的/m ...
随机推荐
- nightwatchJS ---element用法
.element() Search for an element on the page, starting from the document root. The located element w ...
- GDBus
1. https://en.wikipedia.org/wiki/D-Bus In computing, D-Bus (for "Desktop Bus"[4]), a softw ...
- weex 学习
相关资料和链接: # 官方网站https://weex.apache.org/cn/ # githubhttps://github.com/apache/incubator-weex # weex环境 ...
- YUV Player
https://github.com/Yonsm/RawPlayer RawPlayer https://github.com/latelee/YUVPlayer YUVPlayer https:// ...
- Log4Net.Config配置信息《转》
看了log4net的简单使用之一_log4net介绍 大家对log4net组件应该有了大概的了解,下面再近一步介绍其在项目中如何应用. 1.Logger 所有的记录器都必须实现 ILog 接口,该接口 ...
- shell常用操作积累
1. 拼接字符串* #!/bin/sh write_log(){ local up_name=$ local num=${#string} ]; do up_name="$up_name*& ...
- struts2中在Action中如何获取servlet的api?
1.通过ActionContext类(拿到的不是真正的servlet api,而是一个map) ActionContext context = ActionContext.getContext(); ...
- Android Studio 2.3版本 Run项目不能自动启动APP的问题 (转)
参考: http://blog.csdn.net/lucasey/article/details/61071377 Android Studio 升级到2.3版本后 运行项目后,只是安装上了,而APP ...
- 【Atheros】内核调试及网卡加载等问题小结
我做的其他很多工作就比较有针对性了,不是什么大众性的问题,比如加统计代码.实现自己的速率调整算法或者加一些自己的控制什么的,就不再单独介绍了,最后呢再罗列一些小问题,供参考. 1. 加载模块(执行wi ...
- 怎样去掉a标签的蓝框
直接上代码 *{-webkit-tap-highlight-color:rgba(255,0,0,0);} 我是直接给每一个都加了这个属性 其实没有必要 因为 只有a 标签 input 标签 和t ...