Android系統(tǒng)中,system文件夾一般都是只讀屬性,無論是root用戶還是普通權(quán)限用戶,在Android安全研究或開發(fā)過程中,如果想要訪問和修改system文件夾下的內(nèi)容的話就需要獲取system文件夾的寫屬性,因為Android版本的變化和Android各廠商機型的差異以及Android安全的不斷升級,所以在不同版本、不同機型下system文件夾修改讀寫屬性的方式也有較大的區(qū)別。
1.Android8.0以下
(1).獲取system分區(qū)的全名
adb shell mount
Android7.1.2
cancro:/ # mount rootfs on / type rootfs (ro,seclabel,relatime) tmpfs on /dev type tmpfs (rw,seclabel,nosuid,relatime,size=1465856k,nr_inodes=150784,mode=755) devpts on /dev/pts type devpts (rw,seclabel,relatime,mode=600) proc on /proc type proc (rw,relatime,gid=3009,hidepid=2) sysfs on /sys type sysfs (rw,seclabel,relatime) selinuxfs on /sys/fs/selinux type selinuxfs (rw,relatime) debugfs on /sys/kernel/debug type debugfs (rw,seclabel,relatime) none on /acct type cgroup (rw,relatime,cpuacct) tmpfs on /mnt type tmpfs (rw,seclabel,relatime,size=1465856k,nr_inodes=150784,mode=755,gid=1000) none on /config type configfs (rw,relatime) none on /dev/cpuctl type cgroup (rw,relatime,cpu) none on /dev/bfqio type cgroup (rw,relatime,bfqio) /dev/block/mmcblk0p23 on /system type ext4 (ro,seclabel,relatime,data=ordered) /dev/block/mmcblk0p24 on /cache type ext4 (rw,seclabel,nosuid,nodev,noatime,noauto_da_alloc,data=ordered) /dev/block/mmcblk0p25 on /data type ext4 (rw,seclabel,nosuid,nodev,noatime,noauto_da_alloc,data=ordered) /dev/block/mmcblk0p21 on /persist type ext4 (rw,seclabel,nosuid,nodev,relatime,data=ordered) /dev/block/mmcblk0p22 on /firmware type vfat (ro,context=ufirmware_file:s0,relatime,uid=1000,gid=1000,fmask=0337,dmask=0227,codepage=cp437,iocharset=iso8859-1,shortname=lower,errors=remount-ro) tmpfs on /storage type tmpfs (rw,seclabel,relatime,size=1465856k,nr_inodes=150784,mode=755,gid=1000) /data/media on /mnt/runtime/default/emulated type sdcardfs (rw,nosuid,nodev,noexec,noatime,uid=1023,gid=1023,multiuser) /data/media on /storage/emulated type sdcardfs (rw,nosuid,nodev,noexec,noatime,uid=1023,gid=1023,multiuser) /data/media on /mnt/runtime/read/emulated type sdcardfs (rw,nosuid,nodev,noexec,noatime,uid=1023,gid=1023,multiuser) /data/media on /mnt/runtime/write/emulated type sdcardfs (rw,nosuid,nodev,noexec,noatime,uid=1023,gid=1023,multiuser)
/dev/block/mmcblk0p23 on /system type ext4 (ro,seclabel,relatime,data=ordered)
可以看得出/system的權(quán)限是ro,即是read only
(2).根據(jù)名稱重新掛載
mount -o rw,remount -t ext4 /system
/dev/block/mmcblk0p23 on /system type ext4 (rw,seclabel,relatime,data=ordered)
可以看到/system擁有rw的權(quán)限
當(dāng)/system目錄為RW權(quán)限后,就可以隨意刪除或者替換系統(tǒng)應(yīng)用
(3).完全重新掛載整個系統(tǒng)
adb root adb disable-verity adb remount
(4).如果要改回到ro權(quán)限,可以執(zhí)行,如下命令
2.Android8.0以上
Android8.0以上通過以上mount命令,會發(fā)現(xiàn)找不到/system代表的節(jié)點和擁有的權(quán)限信息,這是因為Android8.0之后谷歌加入了A/B system的特性,system分區(qū)跟ramdisk分區(qū)打包在一起,因此系統(tǒng)起來之后也就不存在system分區(qū)了,而是直接把system鏡像掛載到/根目錄上。所以/proc/mounts文件中沒有包含/system的權(quán)限信息,此時如果使用上面的命令:
mount -o remount,rw /system
Android8.1.0
shamu:/ $ mount rootfs on / type rootfs (ro,seclabel) tmpfs on /dev type tmpfs (rw,seclabel,nosuid,relatime,size=1508708k,nr_inodes=147903,mode=755) devpts on /dev/pts type devpts (rw,seclabel,relatime,mode=600) proc on /proc type proc (rw,relatime,gid=3009,hidepid=2) sysfs on /sys type sysfs (rw,seclabel,relatime) selinuxfs on /sys/fs/selinux type selinuxfs (rw,relatime) /dev/block/mmcblk0p41 on /system type ext4 (ro,seclabel,relatime,data=ordered) none on /acct type cgroup (rw,relatime,cpuacct) none on /dev/memcg type cgroup (rw,relatime,memory) debugfs on /sys/kernel/debug type debugfs (rw,seclabel,relatime) tmpfs on /mnt type tmpfs (rw,seclabel,relatime,size=1508708k,nr_inodes=147903,mode=755,gid=1000) none on /config type configfs (rw,relatime) none on /dev/cpuctl type cgroup (rw,relatime,cpu) none on /dev/cpuset type cgroup (rw,relatime,cpuset,noprefix,release_agent=/sbin/cpuset_release_agent) pstore on /sys/fs/pstore type pstore (rw,seclabel,relatime) none on /dev/bfqio type cgroup (rw,relatime,bfqio) /dev/block/mmcblk0p38 on /cache type ext4 (rw,seclabel,nosuid,nodev,noatime,data=ordered) /dev/block/mmcblk0p1 on /firmware type ext4 (ro,context=ufirmware_file:s0,relatime,data=ordered) /dev/block/mmcblk0p26 on /persist type ext4 (rw,seclabel,nosuid,nodev,noatime,data=ordered) /dev/block/mmcblk0p21 on /fsg type ext4 (ro,context=ufsg_file:s0,nosuid,nodev,relatime) adb on /dev/usb-ffs/adb type functionfs (rw,relatime) tmpfs on /storage type tmpfs (rw,seclabel,relatime,size=1508708k,nr_inodes=147903,mode=755,gid=1000) /dev/block/mmcblk0p42 on /data type ext4 (rw,seclabel,nosuid,nodev,noatime,nobarrier,noauto_da_alloc,data=ordered) /data/media on /mnt/runtime/default/emulated type sdcardfs (rw,nosuid,nodev,noexec,noatime,fsuid=1023,fsgid=1023,gid=1015,multiuser,mask=6,derive_gid) /data/media on /storage/emulated type sdcardfs (rw,nosuid,nodev,noexec,noatime,fsuid=1023,fsgid=1023,gid=1015,multiuser,mask=6,derive_gid) /data/media on /mnt/runtime/read/emulated type sdcardfs (rw,nosuid,nodev,noexec,noatime,fsuid=1023,fsgid=1023,gid=9997,multiuser,mask=23,derive_gid) /data/media on /mnt/runtime/write/emulated type sdcardfs (rw,nosuid,nodev,noexec,noatime,fsuid=1023,fsgid=1023,gid=9997,multiuser,mask=7,derive_gid)
Android10
重新掛載/system分區(qū)會報錯
mount: '/system' not in /proc/mounts
臨時掛載上/system文件夾 ,重啟后失效
mount-oremount-orw/
其實為什么root用戶會出現(xiàn)/system文件夾無權(quán)限寫的情況的話,主要原因是/system所屬的用戶組不是root,而是system用戶組,所以需要重新掛載。
當(dāng)然上面方法不能掛載/system目錄的話而且提示“’/dev/root’ is read-only”的話,那么是因為你的設(shè)備開啟了avb,此時就只能通過下面的方式完全重新掛載整個系統(tǒng):
adb root adb disable-verity adb remount
如果adb disable-verity提示需要解鎖OEM的話,那么還需要先解鎖OEM:
adb reboot fastboot fastboot oem unlock fastboot reboot
提示解鎖成功后,重新執(zhí)行命令就不會報錯!
審核編輯:劉清
-
OEM
+關(guān)注
關(guān)注
4文章
405瀏覽量
51092 -
Android系統(tǒng)
+關(guān)注
關(guān)注
0文章
56瀏覽量
13672 -
ADB驅(qū)動
+關(guān)注
關(guān)注
0文章
13瀏覽量
6389
原文標(biāo)題:Android掛載system文件夾讀寫權(quán)限
文章出處:【微信號:哆啦安全,微信公眾號:哆啦安全】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
【NanoPi M1 Plus試用體驗】掛載硬盤并設(shè)置讀寫權(quán)限
哪里有SYSTEM文件夾?
在Android 11中OTA工具讀寫的文件夾不具有訪問權(quán)限,不能升級是為什么?
如何給共享文件夾加密
如何刪除msn共享文件夾
ubuntu中隱藏/顯示文件和文件夾
Linux中如何判斷文件夾是否存在并新建文件夾

Unity中所有特殊的文件夾
筆記:Unity中所有特殊的文件夾

嵌入式開發(fā)板掛載linux上文件夾

【自學(xué)筆記】STM32的SYSTEM文件夾介紹

linux 顯示文件夾所有文件的屬性
【操作指引】鐵威馬NAS加密文件夾創(chuàng)建和使用教程

評論