Android平台根目录文件
> 系统分区
# adb shell
# 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 none /acct cgroup rw,cpuacct 0 0 tmpfs /mnt/asec tmpfs rw,mode=755,gid=1000 0 0 none /dev/cpuctl cgroup rw,cpu 0 0 /dev/block/mtdblock0 /system yaffs2 ro 0 0 /dev/block/mtdblock1 /data yaffs2 rw,nosuid,nodev 0 0 /dev/block/mtdblock2 /cache yaffs2 rw,nosuid,nodev 0 0 /dev/block/vold/179:0 /mnt/sdcard vfat rw,dirsync,nosuid,nodev,noexec,uid=1000,gid=1015,fmask=0702,dmask=0702,allow_utime=0020,codepage=cp437,iocharset=iso8859-1,shortname=mixed,utf8,err ors=remount-ro 0 0 /dev/block/vold/179:0 /mnt/secure/asec vfat rw,dirsync,nosuid,nodev,noexec,uid=1000,gid=1015,fmask=0702,dmask=0702,allow_utime=0020,codepage=cp437,iocharset=iso8859-1,shortname=mixed,utf 8,errors=remount-ro 0 0 tmpfs /mnt/sdcard/.android_secure tmpfs ro,size=0k,mode=000 0 0
以上就是 Android 系统的分区结构,可见其挂载方式和 Linux 非常类似,熟悉 Linux 的朋友应该能很容易的看出这些分区的作用大概是什么。
其中需要说明一下的可能是 /dev/block/mtdblock* 这几个核心分区(写入 ROM 的),他们都是使用 yaffs2 文件系统(基于 FLASH 存储),
其中是 /system 这个分区只有特殊的 ro 只读权限,由此可见 Android 在安全性设计方面所下的一些功夫。另外 /dev/block/vold 据说是设计
来替代 udev 的功能,主要用于支持一些热插拔设备。
> 目录概览
# ls -l
dr-x------ root root 2011-08-18 10:36 config drwxrwx--- system cache 2011-06-21 05:32 cache lrwxrwxrwx root root 2011-08-18 10:36 sdcard -> /mnt/sdcard drwxr-xr-x root root 2011-08-18 10:36 acct drwxrwxr-x root system 2011-08-18 10:36 mnt lrwxrwxrwx root root 2011-08-18 10:36 d -> /sys/kernel/debug lrwxrwxrwx root root 2011-08-18 10:36 etc -> /system/etc drwxr-xr-x root root 2010-06-30 21:06 system drwxr-xr-x root root 1970-01-01 00:00 sys drwxr-x--- root root 1970-01-01 00:00 sbin dr-xr-xr-x root root 1970-01-01 00:00 proc -rwxr-x--- root root 12995 1970-01-01 00:00 init.rc -rwxr-x--- root root 1677 1970-01-01 00:00 init.goldfish.rc -rwxr-x--- root root 107412 1970-01-01 00:00 init -rw-r--r-- root root 118 1970-01-01 00:00 default.prop drwxrwx--x system system 2011-08-12 06:54 data drwx------ root root 2010-01-28 00:59 root drwxr-xr-x root root 2011-08-18 10:36 dev
以上是 Android 根目录下文件目录,根据之前的分区结构可以大致看出每个目录的所处位置和大致功能,
以下是几个重要目录/文件的说明:
1、mnt 挂载点目录
2、etc 系统主要配置文件
3、system Android 系统文件
4、sys Linux 内核文件
5、proc 运行时文件
6、init.rc 启动脚本
7、default.prop 系统属性配置文件
8、data 用户程序目录
9、dev 设备文件
system目录:
# ls -l /system
drwxr-xr-x root root 2010-06-30 21:03 usr drwxr-xr-x root root 2010-06-30 21:07 app drwxr-xr-x root root 2010-06-30 21:05 lib drwxr-xr-x root root 2010-06-30 21:07 etc drwxr-xr-x root root 2010-06-30 21:06 framework -rw-r--r-- root root 1532 2010-06-30 20:58 build.prop drwxr-xr-x root shell 2010-06-30 21:04 xbin drwxr-xr-x root root 2010-06-30 21:00 tts drwxr-xr-x root root 2010-06-30 21:00 media drwxr-xr-x root root 2010-06-30 21:00 fonts drwxr-xr-x root shell 2010-06-30 21:04 bin drw-rw-rw- root root 2011-08-18 10:36 lost+found
以上是 system 目录下面的主要文件目录下面也简单介绍一下:
1、usr 用户文件夹,包含共享、键盘布局、时间区域文件等
2、app 常规下载的应用程序,这些 apk 包都是受保护的哦
3、lib 系统底层库,如平台运行时库等
4、etc 系统的配置文件,比如APN接入点设置等核心配置等
5、framework Android 系统平台核心 framework 的文件
6、build.prop Android 系统属性配置文件
7、xbin 常用开发工具,比如 tcpdump/sqlite3 等
8、bin 系统工具,比如 ps/cp/pm 等
data目录:
# ls -l /data
drwx------ root root 2011-06-22 02:32 property drwxrwx--t system misc 2011-06-21 05:32 misc drwxrwx--x shell shell 2011-06-21 05:32 local drwxrwx--x system system 2011-06-21 05:32 app-private drwx------ system system 2011-06-21 05:33 backup drwxrwxr-x system system 2011-08-12 06:54 anr drwxrwx--x system system 2011-08-20 06:50 app drwxrwx--x system system 2011-08-20 06:50 data drwxr-x--- root log 2011-06-21 05:32 dontpanic drwxrwx--x system system 2011-08-20 06:50 dalvik-cache drwxrwxr-x system system 2011-08-22 06:40 system drwxrwx--- root root 2011-06-21 05:32 lost+found
可以看到 /data 目录下结构都和应用有关,平时安装的用户应用/游戏程序,对应APP的数据,
都被安装在 /data/app 下就可以了。
查看系统变量:
# set
ANDROID_ASSETS=/system/app ANDROID_BOOTLOGO=1 ANDROID_DATA=/data ANDROID_PROPERTY_WORKSPACE=9,32768 ANDROID_ROOT=/system ASEC_MOUNTPOINT=/mnt/asec BOOTCLASSPATH=/system/framework/core.jar:/system/framework/ext.jar:/system/framework/framework.jar:/system/framework/android.policy.jar:/system/framework/services.jar EXTERNAL_STORAGE=/mnt/sdcard IFS=' ' LD_LIBRARY_PATH=/system/lib OPTIND=1 PATH=/sbin:/system/sbin:/system/bin:/system/xbin PS1='# ' PS2='> ' PS4='+ ' PWD=/ _=/system/xbin
从系统变量我们也可以看到一些系统使用中的重要目录。
> 进程分析
# ps
USER PID PPID VSIZE RSS WCHAN PC NAME root 1 0 312 220 c009b74c 0000ca4c S /init root 2 0 0 0 c004e72c 00000000 S kthreadd root 3 2 0 0 c003fdc8 00000000 S ksoftirqd/0 root 4 2 0 0 c004b2c4 00000000 S events/0 ... ... root 27 1 740 196 c0158eb0 afd0d8ac S /system/bin/sh system 28 1 808 204 c01a94a4 afd0db4c S /system/bin/servicemanager root 29 1 3736 372 ffffffff afd0e1bc S /system/bin/vold root 30 1 3716 336 ffffffff afd0e1bc S /system/bin/netd ... ... system 59 33 183396 25580 ffffffff afd0db4c S system_server app_0 108 33 134184 14876 ffffffff afd0eb08 S com.android.inputmethod.pinyin radio 112 33 147300 15804 ffffffff afd0eb08 S com.android.phone app_25 122 33 149408 19932 ffffffff afd0eb08 S com.android.launcher system 124 33 136708 13172 ffffffff afd0eb08 S com.android.settings app_0 148 33 148892 18044 ffffffff afd0eb08 S android.process.acore
从这里我们可以看出和 Linux 一样所有进程的入口都是 init,接下来的系统进程也和 Linux 类似,
再接下来就是一些系统的守护程序(Native Service),最后是系统重要的应用程序。
通过这个列表大家也可以看出 Android 启动过程的一些端倪。
来自:http://blog.csdn.net/shagoo/article/details/6709430
Android平台根目录文件相关推荐
- android 文件加密解决方法,一种Android平台的文件快速加密以及解密方法与流程
本发明属于数据安全领域,具体涉及一种Android平台的文件快速加密以及解密方法. 背景技术: 目前移动办公系统极大地提升了企.事业单位的工作效率,而带装有办公应用的智能设备中会存储一些较高机密性的文 ...
- Unity android平台读取文件
一.代码: 1.通过C#的IO进行文件内容读取: using UnityEngine.UI;public class Test : MonoBehaviour {Text text;string re ...
- android加密技术框架,Android平台下文件透明加密技术的研究与实现
摘要: 移动互联网的迅速发展使得手机应用不断丰富,智能手机的快速兴起为现代人们的生活带来了全新的体验.然而,人们在尽情享受这些全新体验的同时也在面临着日益突出的手机数据安全问题.目前,市场上已经出现了 ...
- Unity Android平台读取文件时添加了权限依然报错“Access to the path is denied“
Unity 调用Android读取文件"Access to the path is denied" 添加权限依然报错 记录一下Unity 调用Android读取文件"Ac ...
- ReactNative生成android平台的bundle文件命令
ReactNative生成android平台的bundle文件命令 2016年11月03日 23:23:28 阅读数:4869 注:如果assets文件没有正确生成,需要手机创建或授权 网上的其它的很 ...
- wgt文件怎么安装到手机_uni-app开发经验分享十二: Android平台应用启动时读写手机存储、访问设备信息(如IMEI)等权限策略及提示信息...
Android平台从6.0(API23)开始系统对权限的管理更加严格,所有涉及敏感权限都需要用户授权允许才能获取. 因此一些应用基础业务逻辑需要的权限会在应用启动时申请,并引导用户允许. 读写手机存储 ...
- android代码zip怎么用,Android平台实现Zip文件解压缩
[android]代码库在Android平台中如何实现Zip文件的解压缩功能呢? 因为Android内部已经集成了zlib库,对于英文和非密码的Zip文件解压缩还是比较简单的,下面给大家一个解压缩zi ...
- 基于Android平台的记事本软件(Android Studio项目+报告+app文件)
移动应用开发技术 期末考核报告 题 目: 基于Android平台的记事本软件 学生姓名 学生学号 ...
- Android平台dalvik模式下java Hook框架ddi的分析(2)--dex文件的注入和调用
本文博客地址:http://blog.csdn.net/qq1084283172/article/details/77942585 前面的博客<Android平台dalvik模式下java Ho ...
最新文章
- 今天开始学习shell编程!!!
- 计算机临床医学自动化哪个好,大学专业难度排行前十名,临床医学位列第二
- 前端学习(2260)高校案例
- python最基本的语句_Python的基本语句
- MySQL 5.6, 5.7并行复制测试(二)(r12笔记第10天)
- 小白学习vuex的超级全面版本
- win10升级助手_微软官网win10下载_win10教程
- c语言考研真题及答案pdf,中财信息学院C语言程序设计2002年考研真题及答案.pdf...
- 腾讯云TCA运维工程师认证题库及例题示范
- mysql批量抽取数据_批量从数据库是提取数据,并显示出来。
- Gson的基本介绍和使用
- 使用script#编写Xrm的Javascript
- concatenation 和 element-wise summation 该选哪个?
- Syncthing - P2P文件同步工具 - 快速开始
- ES2016/ES2017/ES2018/ES2019 新语法
- cqp VS bitrate VS crf [学习笔记]
- SpringBoot 封装返回类报错:No converter found for return value of type
- [读书笔记]5个小技巧让你写出更好的JavaScript[图]
- 音视频OSD——将64*64的GB2312字库的信息叠加至YUV图像
- Redis Sentinel主从复制自动切换方案
热门文章
- java 调用servlet_[Java Servlet]调用 Servlet
- docker安装mysql并配置,Docker安装MySql-挂载外部数据和配置
- 生成pojo mysql_通过数据库表反向生成pojo类
- vi测试仪维修成功率高吗?_电工电路板检测维修无图电路板的技巧
- Java语法基础-1
- 2020.12.17
- 以前的的华为手机可不可以用鸿蒙系统_鸿蒙系统面世之后,以前的华为手机可以用鸿蒙系统吗?不好意思!...
- combobox 怎么实现对listview的类别查询_通过 Django Pagination 实现简单分页
- 服务器推送信息到客户端,服务器如何发送消息到客户端
- 上传代码到gitee操作