Android mount the filesystem with write permission
Edit: Found a better solution
From host machine(Linux or windows PC), execute the following commands.
>> adb root
>> adb remount
remount will by default remount the /system partition with rw, if you have the permissions.
The Note 1 and 2 mentioned below are still applicable.
Old way
To remount a mounted system you need to have root privileges. Do an su
. You will enter root mode. Then run the below command. It will work, I did it many a times.
So here are the steps:
adb shell
su
mount -o rw,remount /system
Note 1: To execute the commands su
or adb root
, your device must be rooted and have su executable on it. If the command su
is successful, terminal prompt will change from $
to #
.
Note 2:
In recent mobiles, Security has been tightened, and even after rooting the phone, adb remount
wouldn't work. As of i know, there is no solution available for it so far.
Mr.
Updated on July 10, 2022Comments
-
Mr. almost 2 years
The Android device I am using does not hold
sqlite3
on it, so i thought topush
it to the device afterpull
ing it from the AVD.I had no problem pulling it from the AVD, though I cannot push it to the device since I need to enable a write permission. I tried to follow sqlite3: not found
I tried the following
$ adb -d shell $ mount mount rootfs / rootfs ro,relatime 0 0 tmpfs /dev tmpfs rw,relatime,mode=111 0 0 devpts /dev/pts devpts rw,relatime,mode=600 0 0 proc /proc proc rw,relatime 0 0 sysfs /sys sysfs rw,relatime 0 0 none /acct cgroup rw,relatime,cpuacct 0 0 tmpfs /mnt/asec tmpfs rw,relatime,mode=755,gid=1000 0 0 tmpfs /mnt/obb tmpfs rw,relatime,mode=755,gid=1000 0 0 tmpfs /mnt/usb tmpfs rw,relatime,mode=755,gid=1000 0 0 tmpfs /app-cache tmpfs rw,relatime,size=7168k 0 0 none /dev/cpuctl cgroup rw,relatime,cpu 0 0 /dev/block/mmcblk0p9 /system ext4 ro,relatime,barrier=1,data=ordered 0 0 /dev/block/mmcblk0p7 /cache ext4 rw,nosuid,nodev,noatime,barrier=1,data=ordered /dev/block/mmcblk0p1 /efs ext4 rw,nosuid,nodev,noatime,barrier=1,data=ordered 0 nil /sys/kernel/debug debugfs rw,relatime 0 0 /dev/block/mmcblk0p10 /data ext4 rw,nosuid,nodev,noatime,barrier=1,data=ordered, /dev/block/mmcblk0p4 /mnt/.lfs j4fs rw,relatime 0 0 /dev/block/vold/179:11 /mnt/sdcard vfat rw,dirsync,nosuid,nodev,noexec,noatime,n epage=cp437,iocharset=iso8859-1,shortname=mixed,utf8,errors=remount-ro,discard 0
I followed this link and tried to mount the filesystem as follows but I got a permission error.
$ mount -o rw,remount -t yaffs2 /dev/block/mmcblk0p9 /system mount: Operation not permitted
Any clue what is needed to be done in order to
push
sqlite3
into an Adroid device for debugging reasons? -
Mr. about 12 yearsFirstly, thank you for your answer. I know I have to use super user mode (
su
), but I will have to root my device. Is there any way to bypass that? I just wish to copy thesqlite3
binary for debugging. -
Sandeep about 12 yearsIf you want to use sqlite library with some specific app, you can include it in jni folder, build it using Android NDK, and then use it inside the application. Yes this is possible. You can refer the solution i posted here stackoverflow.com/questions/10169336/… But doing this way, only your app can use sqlite.
-
warfreak92 over 6 yearsHave you tried this with a rooted Android device running LineageOS? I keep having problems with remounting the file system in RW mode. I do have root permissions though. Any ideas?
-
Sandeep over 6 yearsLineageOS - Not sure what it means. But the failure could be because of the extra security taken by OEM's or could be because of selinux violation.. you can look into the kernel log to see who is denying you with remount.