Search code examples
androidandroid-studioadbmount

/system folder is not mountable: mount: '/system' not in /proc/mounts


I'm trying to follow this tutorial: https://ivrodriguez.com/installing-self-signed-certificates-on-android/

When I get to the step that tries to remount /system as writeable, I am running into problems. Can someone help me figure out what's wrong? Or what my next troubleshooting steps should be?

Thank you in advance.

Below is what I'm able to see from my basic Linux experience.

$ /Users/me/Library/Android/sdk/platform-tools/adb devices
List of devices attached
emulator-5554   device

$ /Users/me/Library/Android/sdk/platform-tools/adb -s emulator-5554 shell
generic_x86:/ $ su
generic_x86:/ # mount -o rw,remount /system                 
mount: '/system' not in /proc/mounts

It seems as though /system does not exist in /proc/mounts (but I don't know enough about Android file mounting to know what to do about it):

generic_x86:/ # cat /proc/mounts | grep system
# nothing

generic_x86:/ # cat /proc/mounts       
tmpfs /dev tmpfs rw,seclabel,nosuid,relatime,mode=755 0 0                                                                               
devpts /dev/pts devpts rw,seclabel,relatime,mode=600,ptmxmode=000 0 0
proc /proc proc rw,relatime,gid=3009,hidepid=2 0 0
sysfs /sys sysfs rw,seclabel,relatime 0 0
selinuxfs /sys/fs/selinux selinuxfs rw,relatime 0 0
tmpfs /mnt tmpfs rw,seclabel,nosuid,nodev,noexec,relatime,mode=755,gid=1000 0 0
tmpfs /apex tmpfs rw,seclabel,nosuid,nodev,noexec,relatime,mode=755 0 0
/dev/block/dm-2 / ext4 ro,seclabel,nodev,relatime,block_validity,delalloc,barrier,user_xattr 0 0
/dev/block/dm-1 /vendor ext4 ro,seclabel,relatime,block_validity,delalloc,barrier,user_xattr 0 0
none /dev/cg2_bpf cgroup2 rw,nosuid,nodev,noexec,relatime 0 0
none /dev/cpuctl cgroup rw,nosuid,nodev,noexec,relatime,cpu 0 0
none /acct cgroup rw,nosuid,nodev,noexec,relatime,cpuacct 0 0
none /dev/cpuset cgroup rw,nosuid,nodev,noexec,relatime,cpuset,noprefix,release_agent=/sbin/cpuset_release_agent 0 0
none /dev/memcg cgroup rw,nosuid,nodev,noexec,relatime,memory 0 0
none /dev/stune cgroup rw,nosuid,nodev,noexec,relatime,schedtune 0 0 
/dev/block/dm-2 /apex/com.android.tzdata@290000000 ext4 ro,seclabel,relatime,block_validity,delalloc,barrier,user_xattr 0 0
/dev/block/dm-2 /apex/com.android.tzdata ext4 ro,seclabel,relatime,block_validity,delalloc,barrier,user_xattr 0 0
/dev/block/dm-2 /apex/com.android.runtime@1 ext4 ro,seclabel,relatime,block_validity,delalloc,barrier,user_xattr 0 0
/dev/block/dm-2 /apex/com.android.runtime ext4 ro,seclabel,relatime,block_validity,delalloc,barrier,user_xattr 0 0
debugfs /sys/kernel/debug debugfs rw,seclabel,relatime,mode=755 0 0
none /config configfs rw,nosuid,nodev,noexec,relatime 0 0
bpf /sys/fs/bpf bpf rw,nosuid,nodev,noexec,relatime 0 0
pstore /sys/fs/pstore pstore rw,seclabel,nosuid,nodev,noexec,relatime 0 0
tracefs /sys/kernel/debug/tracing tracefs rw,seclabel,relatime 0 0
/dev/block/vdc /data ext4 rw,seclabel,nosuid,nodev,noatime,resgid=1065,errors=panic,data=ordered 0 0
tmpfs /storage tmpfs rw,seclabel,nosuid,nodev,noexec,relatime,mode=755,gid=1000 0 0
/dev/block/dm-2 /apex/com.android.conscrypt@290000000 ext4 ro,seclabel,nodev,relatime,block_validity,delalloc,barrier,user_xattr 0 0
/dev/block/dm-2 /apex/com.android.conscrypt ext4 ro,seclabel,nodev,relatime,block_validity,delalloc,barrier,user_xattr 0 0
/dev/block/dm-2 /apex/com.android.resolv@290000000 ext4 ro,seclabel,nodev,relatime,block_validity,delalloc,barrier,user_xattr 0 0
/dev/block/dm-2 /apex/com.android.resolv ext4 ro,seclabel,nodev,relatime,block_validity,delalloc,barrier,user_xattr 0 0
/dev/block/dm-2 /apex/com.android.media.swcodec@290000000 ext4 ro,seclabel,nodev,relatime,block_validity,delalloc,barrier,user_xattr 0 0 
/dev/block/dm-2 /apex/com.android.media.swcodec ext4 ro,seclabel,nodev,relatime,block_validity,delalloc,barrier,user_xattr 0 0
/dev/block/dm-2 /apex/com.android.media@290000000 ext4 ro,seclabel,nodev,relatime,block_validity,delalloc,barrier,user_xattr 0 0
/dev/block/dm-2 /apex/com.android.media ext4 ro,seclabel,nodev,relatime,block_validity,delalloc,barrier,user_xattr 0 0
adb /dev/usb-ffs/adb functionfs rw,relatime 0 0
nsfs /data/vendor/var/run/netns/router nsfs rw 0 0
/data/media /mnt/runtime/default/emulated sdcardfs rw,nosuid,nodev,noexec,noatime,fsuid=1023,fsgid=1023,gid=1015,multiuser,mask=6,derive_gid,default_normal 0 0
/data/media /storage/emulated sdcardfs rw,nosuid,nodev,noexec,noatime,fsuid=1023,fsgid=1023,gid=1015,multiuser,mask=6,derive_gid,default_normal 0 0
/data/media /mnt/runtime/read/emulated sdcardfs rw,nosuid,nodev,noexec,noatime,fsuid=1023,fsgid=1023,gid=9997,multiuser,mask=23,derive_gid,default_normal 0 0
/data/media /mnt/runtime/write/emulated sdcardfs rw,nosuid,nodev,noexec,noatime,fsuid=1023,fsgid=1023,gid=9997,multiuser,mask=7,derive_gid,default_normal 0 0
/data/media /mnt/runtime/full/emulated sdcardfs rw,nosuid,nodev,noexec,noatime,fsuid=1023,fsgid=1023,gid=9997,multiuser,mask=7,derive_gid,default_normal 0 0
/dev/block/vold/public:253,80 /mnt/media_rw/091C-2D02 vfat rw,dirsync,nosuid,nodev,noexec,noatime,uid=1023,gid=1023,fmask=0007,dmask=0007,allow_utime=0020,codepage=437,iocharset=iso8859-1,shortname=mixed,utf8,errors=remount-ro 0 0
/mnt/media_rw/091C-2D02 /mnt/runtime/default/091C-2D02 sdcardfs rw,nosuid,nodev,noexec,noatime,fsuid=1023,fsgid=1023,gid=1015,mask=6 0 0 
/mnt/media_rw/091C-2D02 /storage/091C-2D02 sdcardfs rw,nosuid,nodev,noexec,noatime,fsuid=1023,fsgid=1023,gid=1015,mask=6 0 0
/mnt/media_rw/091C-2D02 /mnt/runtime/read/091C-2D02 sdcardfs rw,nosuid,nodev,noexec,noatime,fsuid=1023,fsgid=1023,gid=9997,mask=18 0 0
/mnt/media_rw/091C-2D02 /mnt/runtime/write/091C-2D02 sdcardfs rw,nosuid,nodev,noexec,noatime,fsuid=1023,fsgid=1023,gid=9997,mask=18 0 0
/mnt/media_rw/091C-2D02 /mnt/runtime/full/091C-2D02 sdcardfs rw,nosuid,nodev,noexec,noatime,fsuid=1023,fsgid=1023,gid=9997,mask=7 0 0

The /system folder does exist:

generic_x86:/ # ls -la / | grep system
lrw-r--r--   1 root   root      11 2019-09-20 19:50 bin -> /system/bin
drwxrwx---   2 system cache   4096 2019-09-20 19:22 cache
lrw-r--r--   1 root   root      19 2019-09-20 19:50 charger -> /system/bin/charger
drwxrwx--x  45 system system  4096 2019-10-01 15:58 data
lrw-------   1 root   root      23 2019-09-20 19:50 default.prop -> system/etc/prop.default
lrw-r--r--   1 root   root      11 2019-09-20 19:50 etc -> /system/etc
lrwxr-x---   1 root   shell     16 2019-09-20 19:50 init -> /system/bin/init
drwxr-xr-x  12 root   system   260 2019-10-08 10:10 mnt
lrw-r--r--   1 root   root      15 2019-09-20 19:50 product -> /system/product
lrw-r--r--   1 root   root      24 2019-09-20 19:50 product_services -> /system/product_services
drwxr-xr-x  13 root   root    4096 2019-09-20 19:50 system

generic_x86:/ # ls -la /              
total 136
drwxr-xr-x  21 root   root    4096 2019-09-20 19:50 .
drwxr-xr-x  21 root   root    4096 2019-09-20 19:50 ..
dr-xr-xr-x  70 root   root       0 2019-10-08 10:10 acct
-rw-r--r--   1 root   root     723 2019-09-20 19:39 adb_keys
drwxr-xr-x  14 root   root     280 2019-10-08 10:10 apex
lrw-r--r--   1 root   root      11 2019-09-20 19:50 bin -> /system/bin
lrw-r--r--   1 root   root      50 2019-09-20 19:50 bugreports -> /data/user_de/0/com.android.shell/files/bugreports
drwxrwx---   2 system cache   4096 2019-09-20 19:22 cache
lrw-r--r--   1 root   root      19 2019-09-20 19:50 charger -> /system/bin/charger
drwxr-xr-x   4 root   root       0 2019-10-08 10:09 config
lrw-r--r--   1 root   root      17 2019-09-20 19:50 d -> /sys/kernel/debug
drwxrwx--x  45 system system  4096 2019-10-01 15:58 data
drwxr-xr-x   2 root   root    4096 2019-09-20 19:22 debug_ramdisk
lrw-------   1 root   root      23 2019-09-20 19:50 default.prop -> system/etc/prop.default
drwxr-xr-x  19 root   root    1420 2019-10-08 10:10 dev
lrw-r--r--   1 root   root      11 2019-09-20 19:50 etc -> /system/etc
lrwxr-x---   1 root   shell     16 2019-09-20 19:50 init -> /system/bin/init
-rwxr-x---   1 root   shell   1653 2019-09-20 19:22 init.environ.rc
-rwxr-x---   1 root   shell  33152 2019-09-20 19:39 init.rc
-rwxr-x---   1 root   shell   7690 2019-09-20 19:39 init.usb.configfs.rc
-rwxr-x---   1 root   shell   5649 2019-09-20 19:39 init.usb.rc
-rwxr-x---   1 root   shell    563 2019-09-20 19:39 init.zygote32.rc
drwx------   2 root   root   16384 2019-09-20 19:51 lost+found
drwxr-xr-x   2 root   root    4096 2019-09-20 19:22 metadata
drwxr-xr-x  12 root   system   260 2019-10-08 10:10 mnt
drwxr-xr-x   2 root   root    4096 2019-09-20 19:22 odm
drwxr-xr-x   2 root   root    4096 2019-09-20 19:22 oem
dr-xr-xr-x 201 root   root       0 2019-10-08 10:09 proc
lrw-r--r--   1 root   root      15 2019-09-20 19:50 product -> /system/product
lrw-r--r--   1 root   root      24 2019-09-20 19:50 product_services -> /system/product_services
drwxr-xr-x   3 root   root    4096 2019-09-20 19:39 res
drwxr-x---   2 root   shell   4096 2019-09-20 19:22 sbin
lrw-r--r--   1 root   root      21 2019-09-20 19:50 sdcard -> /storage/self/primary
drwxr-xr-x   5 root   root     100 2019-10-08 10:10 storage
dr-xr-xr-x  12 root   root       0 2019-10-08 10:09 sys
drwxr-xr-x  13 root   root    4096 2019-09-20 19:50 system
-rw-r--r--   1 root   root    2608 2019-09-20 19:22 ueventd.rc
drwxr-xr-x   8 root   root    4096 2019-09-20 19:40 vendor

Solution

  • I got pass this by running emulator with writable system disk (Android 9)

    For example

    emulator.exe -writable-system -no-snapshot -avd virtual_device
    

    where virtual_device is the name of your configured virtual device (AVD)

    Perhaps also this can help

    mount -o rw,remount /