看sundy的视频,发现安卓系统文件结构还是有的看的,总结一下:
这是米1的根目录
acct:
CPU Accounting Controller和cgroup。前者是cpu使用情况的计数器,后者是Google开发的linux内核用来分组进程进行控制和统计的。根目录下是全局所有的数据,uid/xxx下是某个uid对应的统计数据,即某个app对应的。CGroup doc
adb_keys:
adb连接的时候会有是否永久允许调试,这个就是允许列表,根ssh RSA免登是一样的。
cache:
系统缓存,还有一些日志文件,看起来是比较底层的log,recovery和小米自用的adb。
data:
anr:anr的log,里面有app crash的log,按包名保存。
app:已经安装的app,apk可以拉出来反编译。
dalvik-cache:里面有所有的dex文件,包括了data/app, system/app和system/framework的,运行时应该使用的是这些dex。解释
data:根据包名有个个app的数据,包下面有,这里面读写是不需要权限的,因为默认是仅影响本app的,且无法读其他app的数据。
app_cache:系统做cache的数据库
cache:webview等组件的cache,和getCacheDir()的数据
databases:数据库
lib:so库
shared_prefs:getSharedPreferences()返回的文件,是一个xml,可以拉下来读
drm:
版权。
fota:
ota升级。
local:
一些本地数据,里面的tmp也有dalvik-cache,但是与之前的文件名相同,大小不同。?貌似是console连接用的,不确定?
misc:
linux的杂项设备,里面有声音,蓝牙,vpn,wifi,adb等等。
property:
一些设置文件,可读。
system:
系统设置文件,有icon、电池、输入法、网络等等。很多是用xml配置系统行为。
registered_services:注册的针对特定用途的服务,比如设置中的账户项,就是android.accounts.AccountAuthenticator.xml。
sync:同步设置。
packeages.xml:安装的所有包的信息,包括用户id等等,这里的用户是linux用户,每个app一个。
users:这是安卓的用户,跟上面的设置对应id。
tombstones:这是另一种crash的log信息,解释
dev:
linux中的设备文件。
etc:
linux配置,这里是空。
firmware:
固件,分块存储,有一个mdt文件。?不知道什么状态,看起来像b树的索引的样子?
init.xxx:
各种初始化sh脚本。
mnt:
linux的mount point文件夹,2.2+后里面有sd卡。
persist:
好像是跟传感器有关的持久数据,这里有指南针矫正的数据。
proc:
linux进程实时数据,解释
res:
没有进入安卓系统时的资源,小米有充电时的界面,但是没有启动画面。
sbin:
linux可执行文件。
sys:
linux中的系统状态文件,类似proc,解释
system:
app:系统自带应用,
fonts:字体