使用 ls -l
命令 , 查看 Android 系统根目录 , 下图的红色矩形框中的内容就是 文件 / 目录 对应的 所有者 和 分组 ;
如 : dr-xr-xr-x 123 root root 0 1973-11-21 15:33 acct
, 第一个 root
是 文件的所有者 , 第二个 root
文件的分组 ;
Android 中的 root
用户相当于 Windows 中的管理员账户 , Linux 中的 root
用户 ;
drwxr-xr-x 11 root system 240 1973-11-21 15:33 mnt
表示该 mnt
文件是 root
用户所有 , 但是文件分组是 system
;
完整的命令行输出 :
Microsoft Windows [版本 10.0.19041.1288]
(c) Microsoft Corporation。保留所有权利。
C:\Users\octop>adb shell
* daemon not running; starting now at tcp:5037
* daemon started successfully
walleye:/ $ su
walleye:/ # ls -l
total 2244
dr-xr-xr-x 123 root root 0 1973-11-21 15:33 acct
lrw-r--r-- 1 root root 11 2009-01-01 16:00 bin -> /system/bin
lrw-r--r-- 1 root root 50 2009-01-01 16:00 bugreports -> /data/user_de/0/com.android.shell/files/bugreports
lrw-r--r-- 1 root root 11 2009-01-01 16:00 cache -> /data/cache
lrw-r--r-- 1 root root 13 2009-01-01 16:00 charger -> /sbin/charger
drwxr-xr-x 4 root root 0 1970-01-01 08:00 config
lrw-r--r-- 1 root root 17 2009-01-01 16:00 d -> /sys/kernel/debug
drwxrwx--x 42 system system 4096 2020-11-11 17:10 data
lrw------- 1 root root 23 2009-01-01 16:00 default.prop -> system/etc/prop.default
drwxr-xr-x 16 root root 3940 2021-10-18 08:53 dev
lrw-r--r-- 1 root root 15 2009-01-01 16:00 dsp -> /vendor/lib/dsp
lrw-r--r-- 1 root root 11 2009-01-01 16:00 etc -> /system/etc
dr-xr-x--- 3 system system 16384 1970-01-01 08:00 firmware
-rwxr-x--- 1 root shell 2146424 2009-01-01 16:00 init
-rwxr-x--- 1 root shell 1109 2009-01-01 16:00 init.environ.rc
-rwxr-x--- 1 root shell 29264 2009-01-01 16:00 init.rc
-rwxr-x--- 1 root shell 7690 2009-01-01 16:00 init.usb.configfs.rc
-rwxr-x--- 1 root shell 5646 2009-01-01 16:00 init.usb.rc
-rwxr-x--- 1 root shell 511 2009-01-01 16:00 init.zygote32.rc
-rwxr-x--- 1 root shell 875 2009-01-01 16:00 init.zygote64_32.rc
drwx------ 2 root root 16384 2009-01-01 16:00 lost+found
drwxr-xr-x 11 root system 240 1973-11-21 15:33 mnt
drwxr-xr-x 2 root root 4096 2009-01-01 16:00 odm
drwxr-xr-x 2 root root 4096 2009-01-01 16:00 oem
drwxrwx--x 13 root system 4096 1970-09-17 20:14 persist
drwxr-xr-x 2 root root 4096 2009-01-01 16:00 postinstall
dr-xr-xr-x 784 root root 0 1970-01-01 08:00 proc
lrw-r--r-- 1 root root 15 2009-01-01 16:00 product -> /system/product
drwxr-xr-x 3 root root 4096 2009-01-01 16:00 res
drwxr-xr-x 3 root root 280 1973-11-21 15:32 sbin
lrw-r--r-- 1 root root 21 2009-01-01 16:00 sdcard -> /storage/self/primary
drwxr-xr-x 4 root root 80 2021-10-18 08:53 storage
dr-xr-xr-x 13 root root 0 1973-11-21 15:32 sys
drwxr-xr-x 15 root root 4096 2009-01-01 16:00 system
-rw-r--r-- 1 root root 5272 2009-01-01 16:00 ueventd.rc
drwxr-xr-x 16 root root 4096 2009-01-01 16:00 vendor
walleye:/ #
还有一种常见的分组 , 就是 /sdcard/ 下的文件分组 , 如
drwxrwx--x 6 root sdcard_rw 4096 2021-08-09 10:15 Android
该分组下的文件 , 只有读写软件 , 没有执行权限 ;
在 /sdcard/ 下的文件无法执行 , 必须将其拷贝到其它位置执行 , 如 /data/ 目录 , /data/ 目录中是 system 分组 , 可以执行程序 ;
/sdcard/ 下的文件即使使用 chmod 777 filename
命令 , 也无法为 /sdcard/ 下的目录赋予执行权限 ;
分析 /data/ 目录下的文件 ,
/data/adb/ 目录 , 其权限是 drwx------
, 只能由 root 用户访问 , 其它用户没有访问权限 ;
drwx------ 6 root root 4096 2020-11-11 17:11 adb
/data/data/ 目录 , 其权限为 drwxrwx--x
, 应用用户是具有 rwx 权限的 , 应用有访问该目录的权限 ;
drwxrwx--x 242 system system 20480 2021-10-21 11:16 data
root 用户的权限最高 , 其次是 system 用户 , 然后是应用用户 ;
每个应用都会创建一个对应的 应用用户 , 如 : cn.abcpiano.pianist 包名的应用 , 创建了一个 u0_a147 用户 ;
drwx------ 15 u0_a147 u0_a147 4096 2021-08-31 16:47 cn.abcpiano.pianist
部分命令行输出 :
walleye:/data/data # ls -l
total 1920
drwx------ 4 system system 4096 2020-11-11 17:05 android
drwx------ 4 u0_a4 u0_a4 4096 2020-11-11 17:05 android.auto_generated_rro__
drwxr-x--x 4 u0_a131 u0_a131 4096 2020-11-11 17:05 android.autoinstalls.config.google.nexus
drwx------ 15 u0_a147 u0_a147 4096 2021-08-31 16:47 cn.abcpiano.pianist
drwx------ 7 u0_a760 u0_a760 4096 2021-10-12 18:12 cn.qymusic.midi
drwx------ 24 u0_a590 u0_a590 4096 2021-10-18 08:53 cn.wps.moffice_eng
drwx------ 8 u0_a583 u0_a583 4096 2021-06-29 15:27 cn.zkhw.midi.drum
drwx------ 6 u0_a145 u0_a145 4096 2021-08-09 10:15 com.VisualMusicDesign.SeeMusic
drwx------ 4 u0_a40 u0_a40 4096 2020-11-11 17:05 com.android.backupconfirm
drwxr-x--- 23 u0_a143 u0_a143 4096 2021-10-18 08:53 com.android.bankabc
drwx------ 4 u0_a118 u0_a118 4096 2020-11-11 17:05 com.android.bips
drwx------ 4 bluetooth bluetooth 4096 2020-11-11 17:05 com.android.bluetooth
drwx------ 4 u0_a130 u0_a130 4096 2020-11-11 17:05 com.android.bluetoothmidiservice
drwx------ 4 u0_a91 u0_a91 4096 2020-11-11 17:05 com.android.bookmarkprovider
drwx------ 4 u0_a15 u0_a15 4096 2020-11-11 17:05 com.android.calllogbackup
drwx------ 4 u0_a87 u0_a87 4096 2020-11-11 17:05 com.android.captiveportallogin
drwx------ 4 u0_a96 u0_a96 4096 2020-11-11 17:05 com.android.carrierdefaultapp
drwx------ 4 u0_a24 u0_a24 4096 2020-11-11 17:05 com.android.cellbroadcastreceiver
drwx------ 4 u0_a97 u0_a97 4096 2020-11-11 17:05 com.android.certinstaller
drwx------ 13 u0_a108 u0_a108 4096 2021-10-18 08:53 com.android.chrome
drwx------ 4 u0_a124 u0_a124 4096 2020-11-11 17:05 com.android.companiondevicemanager
drwx------ 4 u0_a68 u0_a68 4096 2020-11-11 17:05 com.android.connectivity.metrics
drwx------ 4 u0_a77 u0_a77 4096 2020-11-11 17:05 com.android.cts.ctsshim
drwx------ 4 u0_a10 u0_a10 4096 2020-11-11 17:05 com.android.cts.priv.ctsshim
drwx------ 4 u0_a65 u0_a65 4096 2020-11-11 17:05 com.android.defcontainer
drwx------ 6 u0_a17 u0_a17 4096 2020-11-11 18:06 com.android.documentsui
drwx------ 4 u0_a98 u0_a98 4096 2020-11-11 17:05 com.android.dreams.basic
drwx------ 4 u0_a115 u0_a115 4096 2020-11-11 17:05 com.android.egg
drwx------ 4 u0_a50 u0_a50 4096 2020-11-11 17:05 com.android.emergency
drwx------ 4 u0_a63 u0_a63 4096 2020-11-11 17:05 com.android.externalstorage
drwx------ 4 u0_a88 u0_a88 4096 2020-11-11 17:05 com.android.facelock
drwx------ 5 u0_a27 u0_a27 4096 2020-11-11 17:06 com.android.hotwordenrollment.okgoogle
drwx------ 5 u0_a57 u0_a57 4096 2020-11-11 17:06 com.android.hotwordenrollment.tgoogle
drwx------ 5 u0_a26 u0_a26 4096 2020-11-11 17:06 com.android.hotwordenrollment.xgoogle
drwxr-x--x 7 u0_a70 u0_a70 4096 2021-06-02 18:48 com.android.htmlviewer
drwx------ 4 system system 4096 2020-11-11 17:05 com.android.inputdevices
drwx------ 4 u0_a1 u0_a1 4096 2020-11-11 17:05 com.android.internal.display.cutout.emulation.corner
drwx------ 4 u0_a3 u0_a3 4096 2020-11-11 17:05 com.android.internal.display.cutout.emulation.double
drwx------ 4 u0_a2 u0_a2 4096 2020-11-11 17:05 com.android.internal.display.cutout.emulation.tall
drwx------ 5 system system 4096 2020-11-11 17:15 com.android.keychain
drwx------ 4 system system 4096 2020-11-11 17:05 com.android.location.fused
drwx------ 5 u0_a42 u0_a42 4096 2020-11-11 17:05 com.android.managedprovisioning
drwx------ 5 radio radio 4096 2020-11-18 14:57 com.android.mms.service
drwx------ 5 u0_a36 u0_a36 4096 2020-11-11 17:07 com.android.mtp
drwx------ 5 u0_a66 u0_a66 4096 2021-05-13 23:41 com.android.musicfx
drwx------ 6 nfc nfc 4096 2020-11-11 17:05 com.android.nfc
drwxr-x--x 4 u0_a44 u0_a44 4096 2021-10-18 08:53 com.android.omadm.service