一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

Android掛載system文件夾讀寫(xiě)權(quán)限

哆啦安全 ? 來(lái)源:哆啦安全 ? 2023-08-08 09:36 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

Android系統(tǒng)中,system文件夾一般都是只讀屬性,無(wú)論是root用戶還是普通權(quán)限用戶,在Android安全研究或開(kāi)發(fā)過(guò)程中,如果想要訪問(wèn)和修改system文件夾下的內(nèi)容的話就需要獲取system文件夾的寫(xiě)屬性,因?yàn)锳ndroid版本的變化和Android各廠商機(jī)型的差異以及Android安全的不斷升級(jí),所以在不同版本、不同機(jī)型下system文件夾修改讀寫(xiě)屬性的方式也有較大的區(qū)別。

1.Android8.0以下

(1).獲取system分區(qū)的全名

adb shell
mount

Android7.1.2

ce44cb08-3535-11ee-9e74-dac502259ad0.png

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

ce64c39a-3535-11ee-9e74-dac502259ad0.png

(2).根據(jù)名稱重新掛載

mount -o rw,remount -t ext4 /system

ce840b4c-3535-11ee-9e74-dac502259ad0.png

/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).完全重新掛載整個(gè)系統(tǒng)

adb root
adb disable-verity
adb remount

(4).如果要改回到ro權(quán)限,可以執(zhí)行,如下命令

ceabf45e-3535-11ee-9e74-dac502259ad0.png

2.Android8.0以上

Android8.0以上通過(guò)以上mount命令,會(huì)發(fā)現(xiàn)找不到/system代表的節(jié)點(diǎn)和擁有的權(quán)限信息,這是因?yàn)锳ndroid8.0之后谷歌加入了A/B system的特性,system分區(qū)跟ramdisk分區(qū)打包在一起,因此系統(tǒng)起來(lái)之后也就不存在system分區(qū)了,而是直接把system鏡像掛載到/根目錄上。所以/proc/mounts文件中沒(méi)有包含/system的權(quán)限信息,此時(shí)如果使用上面的命令:

mount -o remount,rw /system

cecfb556-3535-11ee-9e74-dac502259ad0.png

Android8.1.0

cefa0090-3535-11ee-9e74-dac502259ad0.png

cf195102-3535-11ee-9e74-dac502259ad0.png

cf3a3c5a-3535-11ee-9e74-dac502259ad0.png

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

cf58e0a6-3535-11ee-9e74-dac502259ad0.png

cf6c8fd4-3535-11ee-9e74-dac502259ad0.png

cf9819c4-3535-11ee-9e74-dac502259ad0.png

重新掛載/system分區(qū)會(huì)報(bào)錯(cuò)

mount: '/system' not in /proc/mounts

臨時(shí)掛載上/system文件夾 ,重啟后失效

mount-oremount-orw/

cfb365c6-3535-11ee-9e74-dac502259ad0.png

cfc32380-3535-11ee-9e74-dac502259ad0.png

cfd326ae-3535-11ee-9e74-dac502259ad0.png

其實(shí)為什么root用戶會(huì)出現(xiàn)/system文件夾無(wú)權(quán)限寫(xiě)的情況的話,主要原因是/system所屬的用戶組不是root,而是system用戶組,所以需要重新掛載。

當(dāng)然上面方法不能掛載/system目錄的話而且提示“’/dev/root’ is read-only”的話,那么是因?yàn)槟愕脑O(shè)備開(kāi)啟了avb,此時(shí)就只能通過(guò)下面的方式完全重新掛載整個(gè)系統(tǒng):

adb root
adb disable-verity
adb remount

如果adb disable-verity提示需要解鎖OEM的話,那么還需要先解鎖OEM:

adb reboot fastboot
fastboot oem unlock
fastboot reboot

提示解鎖成功后,重新執(zhí)行命令就不會(huì)報(bào)錯(cuò)!





審核編輯:劉清

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • OEM
    OEM
    +關(guān)注

    關(guān)注

    4

    文章

    408

    瀏覽量

    51596
  • Android系統(tǒng)
    +關(guān)注

    關(guān)注

    0

    文章

    57

    瀏覽量

    13808
  • ADB驅(qū)動(dòng)
    +關(guān)注

    關(guān)注

    0

    文章

    13

    瀏覽量

    6437

原文標(biāo)題:Android掛載system文件夾讀寫(xiě)權(quán)限

文章出處:【微信號(hào):哆啦安全,微信公眾號(hào):哆啦安全】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    【NanoPi M1 Plus試用體驗(yàn)】掛載硬盤并設(shè)置讀寫(xiě)權(quán)限

    出現(xiàn)了。接著用chmod更改文件夾權(quán)限,記得要用root用戶操作chmod -R 777 /home/fa/u***hdd然后你就可以用其他用戶讀寫(xiě)硬盤里的文件了。至此,硬盤已被成功
    發(fā)表于 06-25 17:11

    哪里有SYSTEM文件夾?

    就是和system32一起的system文件夾?由于上面我們還沒(méi)有任何代碼在工程里面,這里我們把系統(tǒng)代碼COPY過(guò)來(lái)(整個(gè)SYSTEM文件夾
    發(fā)表于 08-23 04:35

    SYSTEM文件夾以及GPIO原理是什么?

    SYSTEM文件夾以及GPIO原理是什么?
    發(fā)表于 12-14 07:03

    Android 11中OTA工具讀寫(xiě)文件夾不具有訪問(wèn)權(quán)限,不能升級(jí)是為什么?

    Android 11中,OTA工具讀寫(xiě)文件夾不具有訪問(wèn)權(quán)限,不能升級(jí)。請(qǐng)問(wèn)有把OTA文件放在能訪問(wèn)的
    發(fā)表于 08-15 06:21

    如何給共享文件夾加密

    如何給共享文件夾加密 對(duì)于windows XP用戶:   1. 打開(kāi)“我的電腦”->“工具”->“文件夾選項(xiàng)”->“查看”->去掉“使
    發(fā)表于 02-24 11:31 ?2379次閱讀

    如何刪除msn共享文件夾

    如何刪除msn共享文件夾  Q:我的電腦中有個(gè)安裝了MSN 8.0才有的無(wú)名文件夾。我想問(wèn)問(wèn)董師傅,這個(gè)文件夾到底有什么?如何刪除?
    發(fā)表于 02-24 13:56 ?843次閱讀

    Android系統(tǒng)文件夾結(jié)構(gòu)解析

    Android系統(tǒng)文件夾結(jié)構(gòu)解析
    發(fā)表于 03-19 11:23 ?0次下載

    ubuntu中隱藏/顯示文件文件夾

    ubuntu 16.04 LTS - 隱藏/顯示文件文件夾 1. GUI hot key Ctrl H: 隱藏/顯示文件文件夾 2. Show hidden and backup
    發(fā)表于 11-25 12:52 ?5261次閱讀

    Linux中如何判斷文件夾是否存在并新建文件夾

    本文檔的主要內(nèi)容詳細(xì)介紹的是Linux中如何判斷文件夾是否存在并新建文件夾vi文件免費(fèi)下載。
    發(fā)表于 01-17 08:00 ?8次下載
    Linux中如何判斷<b class='flag-5'>文件夾</b>是否存在并新建<b class='flag-5'>文件夾</b>

    Unity中所有特殊的文件夾

    隱藏文件夾:以.開(kāi)頭的文件夾會(huì)被Unity忽略。在這種文件夾中的資源不會(huì)被導(dǎo)入,腳本不會(huì)被編譯。也不會(huì)出現(xiàn)在Project視圖中。
    的頭像 發(fā)表于 02-12 16:10 ?3052次閱讀

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

    隱藏文件夾:以.開(kāi)頭的文件夾會(huì)被Unity忽略。在這種文件夾中的資源不會(huì)被導(dǎo)入,腳本不會(huì)被編譯。也不會(huì)出現(xiàn)在Project視圖中。
    發(fā)表于 01-21 06:24 ?4次下載
    筆記:Unity中所有特殊的<b class='flag-5'>文件夾</b>

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

    嵌入式開(kāi)發(fā)板掛載linux上文件夾實(shí)訓(xùn)需要,學(xué)習(xí)嵌入式,本身是軟件開(kāi)發(fā),由于課程需要,完成一些步驟,以此紀(jì)錄1.首先在本地linux(Deepin)上安裝nfs服務(wù)sudo apt-get
    發(fā)表于 11-02 19:21 ?20次下載
    嵌入式開(kāi)發(fā)板<b class='flag-5'>掛載</b>linux上<b class='flag-5'>文件夾</b>

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

    概覽該文件夾下包含3個(gè)文件:1.delay文件夾? delay文件夾內(nèi)包含了delay.c和delay.h兩個(gè)文件,用來(lái)實(shí)現(xiàn)系統(tǒng)的延時(shí)功能
    發(fā)表于 11-26 11:51 ?4次下載
    【自學(xué)筆記】STM32的<b class='flag-5'>SYSTEM</b><b class='flag-5'>文件夾</b>介紹

    linux 顯示文件夾所有文件的屬性

    在Linux中,您可以使用 ls 命令來(lái)顯示文件夾所有文件的屬性。使用 ls -a 命令可以查看包括隱藏文件在內(nèi)的所有文件。每個(gè)文件的屬性將
    的頭像 發(fā)表于 11-13 16:52 ?1369次閱讀

    【操作指引】鐵威馬NAS加密文件夾創(chuàng)建和使用教程

    可以被打開(kāi),否則任何人均無(wú)法獲取加密共享文件夾的內(nèi)容。 如何創(chuàng)建加密文件夾 1.登錄TOS系統(tǒng),前往TOS桌面-控制面板-訪問(wèn)權(quán)限-共享文件夾; 2.選擇共享
    的頭像 發(fā)表于 04-02 14:17 ?1358次閱讀
    【操作指引】鐵威馬NAS加密<b class='flag-5'>文件夾</b>創(chuàng)建和使用教程