• Introducing XDA Computing: Discussion zones for Hardware, Software, and more!    Check it out!
Search This thread

Pachacouti

Senior Member
Jul 8, 2020
232
44
52
The Capital above the Lower one...
First post I see today deserves a response:

I place extracted systemrw_1.32 in my adb folder.

I right click on adb folder and select open cmd window here.

adb push systemrw_1.32 /data/local/tmp/systemrw_1.32

adb shell

su

chmod +x /data/local/tmp/systemrw_1.32/systemrw.sh

cd /data/local/tmp/systemrw_1.32

./systemrw.sh size=80

Let it do its thing. But at this point watch for where it stores your super_fixed.bin, because to save doing this again, you can

adb pull /data/local/tmp/systemrw_1.32/img/super_fixed.bin

Now reboot into fastboot, remember I'm on A-only, so I actually do this:

fastboot --disable-verity --disable-verification flash vbmeta vblankmeta.img
fastboot --disable-verity --disable-verification flash vbmeta_system vblankmeta.img
fastboot --disable-verity --disable-verification flash vbmeta_vendor vblankmeta.img
fastboot --disable-verity --disable-verification flash boot Magisk'd _Bootloader.img
fastboot --disable-verity --disable-verification flash recovery Magik'd_Recovery-TWRP.img

fastboot --disable-verity --disable-verification flash super super_fixed.bin

The vblankmeta is my own blanked vmeta, renamed to also wipe system and vendor...

Now, after doing this I can:

Rellash stock bootloader, load Twrp to recovery, flash a zipped magisk, reboot, and up until magisk FORCED update can in fact read and write to system, but cant SU in GUI because magisk wants the internet to GIVE su (why adb shell su freezes...) and the update put's magisk in charge, removing the rw access we have, to the super (allowing rw system/vendor) to begin with, and how does it do it?

John wu thinks system is ro.

I would stop concentrating on system/vendor partitions, that are ro, and concentrate on a new way to load linux... boot it from the beginning of SUPER.img.

To the SUPER directory!!! instead of SYSTEM!


(A only cannot SEE sytem, fastboot cannot WIPE system, but I can flash and wipe super...!)

ooops... running away here... but all you read I learnt using this script to see I can access the system rw, but only in twrp...

If twrp can su from recovery, all else can be wiped, and reflashed with whatever else.
 

KimNatorz

New member
Sep 21, 2021
1
1
Thank u so much.. it's working on Redmi note 10.. I really wanted to install Dolby Atmos but failed because the file system is read only
 

Attachments

  • Screenshot_2021-09-22-01-44-01-377_jackpal.androidterm.jpg
    Screenshot_2021-09-22-01-44-01-377_jackpal.androidterm.jpg
    152 KB · Views: 31
  • Screenshot_2021-09-22-02-00-43-400_com.estrongs.android.pop.jpg
    Screenshot_2021-09-22-02-00-43-400_com.estrongs.android.pop.jpg
    698.3 KB · Views: 32
  • Screenshot_2021-09-22-01-50-46-886_com.topjohnwu.magisk.jpg
    Screenshot_2021-09-22-01-50-46-886_com.topjohnwu.magisk.jpg
    345.5 KB · Views: 32
  • Love
Reactions: lebigmac

Pachacouti

Senior Member
Jul 8, 2020
232
44
52
The Capital above the Lower one...
Thank u so much.. it's working on Redmi note 10.. I really wanted to install Dolby Atmos but failed because the file system is read only
To understand overlayfs is simple, you have an overlaid root. overlaid system symlinked to /

Root apps mostly fail just now, saying read only, because they look for /system, which is no longer the case, and so while you have root, since android 10_Q,

/system is actually conmtained WITHIN super, so dont expect fastboot to work, or root or twrp or... well, cheers magisk... nowt actually works in this a-only... rooted or not...

But hey, it feels good seeing that root in root checker... shame it means nowt with sysstem as root...
 

lebigmac

Senior Member
Jan 31, 2017
876
507
How can I use this, how do I connect the phone to the computer, and how do I put the script, I have lubuntu.
I try it from the zip with twrp, but it gives me the error 73. and it also does not work with the change of slot a and b.
Hi @Ricardo Cruz. Please send me your log files from this folder. Thanks.
/data/local/tmp/systemrw_1.32/log/

Here you can find official troubleshooting repair script instructions (Linux only).
 
Last edited:

lebigmac

Senior Member
Jan 31, 2017
876
507
Thank u so much.. it's working on Redmi note 10.. I really wanted to install Dolby Atmos but failed because the file system is read only
Hi @KimNatorz. Thanks for your feedback.
Please send me your log files from this folder and I will add you to list of successful devices on front page. Thanks.
/data/local/tmp/systemrw_1.32/log/

Enjoy a fully read/writeable device! (y)
 

Ricardo Cruz

Member
Sep 19, 2021
7
3
Motorola One Fusion+
Hola, [USER = 11816235] @Ricardo Cruz [/ USER]. Envíeme sus archivos de registro desde esta carpeta. Gracias.
/data/local/tmp/systemrw_1.32/log / [/ ICODE] Simplemente conecte el teléfono a la computadora usando un cable usb-c a usb-a. [URL='https://forum.xda-developers.com/t/script-android-10-universal-mount-system-read-write-r-w.4247311/page-23#post-84901531'][B]Aquí[/B][/URL] puede encontrar las instrucciones oficiales del script de reparación de resolución de problemas (solo Linux). [/QUOTE] Hello, sorry for the delay, I imagine that these are the files that you ask me [/QUOTE]
 

Attachments

  • lpdump.txt
    1.6 KB · Views: 7
  • myargs.txt
    686 bytes · Views: 4
  • mylog.txt
    6.9 KB · Views: 5
  • Like
Reactions: lebigmac

Pablo_S

New member
Sep 22, 2021
1
0
Hola saludos! amigo soy nuevo por aqui tengo un Infinix hot 10 X682B quiero tener root eh visto demasiado tutorial en Youtube pero ninguno me da respuesta excepto un canal de una persona de la india que me dió a entrenar muy poco por su idioma obviamente hasta que me decidí a buscar en Google y encontré esta página donde me ví que era demasiado útil para mí problema quiero hacerlo por el método adb fastboot ya tengo algo de idea de cómo iniciar y conectar mi dispositivo pero no sé lo siguientes pasos de cómo instalarlo espero pueda ayudarme amigo se lo agradecería en el alma
 

lebigmac

Senior Member
Jan 31, 2017
876
507
Thanks @Ricardo Cruz your log looks good. Now run the included sysrw repair script in Linux while phone is connected through USB cable as described in the troubleshooting repair script instructions. Good luck!

Hola saludos! amigo soy nuevo por aqui tengo un Infinix hot 10 X682B quiero tener root eh visto demasiado tutorial en Youtube pero ninguno me da respuesta excepto un canal de una persona de la india que me dió a entrenar muy poco por su idioma obviamente hasta que me decidí a buscar en Google y encontré esta página donde me ví que era demasiado útil para mí problema quiero hacerlo por el método adb fastboot ya tengo algo de idea de cómo iniciar y conectar mi dispositivo pero no sé lo siguientes pasos de cómo instalarlo espero pueda ayudarme amigo se lo agradecería en el alma
Hello @Pablo_S please check first post in this forum thread for manual installation instructions. Good luck!
 

Ricardo Cruz

Member
Sep 19, 2021
7
3
Motorola One Fusion+
Thanks @Ricardo Cruz your log looks good. Now run the included sysrw repair script in Linux while phone is connected through USB cable as described in the troubleshooting repair script instructions. Good luck!


Hello @Pablo_S please check first post in this forum thread for manual installation instructions. Good luck!

Good morning, sorry I try to run sysrepair.sh, but nothing happens, the phone is off, in fastboot or I just connect it. I send you a screenshot of the script in lubuntu.
 

Attachments

  • Screenshot_2021-09-23_14-53-49.png
    Screenshot_2021-09-23_14-53-49.png
    164.5 KB · Views: 20

krasevalex

Member
Jun 10, 2019
13
11
57
Philadelphia
=== Moto G Power (2020) XT2041-4-SS FIRMWARE: Android 10 "SOFIA_RETAIL_QPMS30.80-109-5" ===
1)
systemrw_1.32 (./makesysrw.sh size=50) => error code 73 (either way auto or manual)
2)
sysrw_repair_v1.32 (USB stick Ubuntu Mate 21.4) => Successfully created patched super image at /media/ubuntu-mate/Drive-C/sysrw_repair/img/super_fixed.bin
3)
"fastboot flash super super_fixed.bin" (in FASTBOOTD) => was sent 8 sparses SUPER out of 8, no errors
4)
restarted phone => OK
5)
adb shell
su
mount -o remount,rw /
mount -o remount,rw /system
mount -o remount,rw /product
mount -o remount,rw /vendor
6)
weird things started appear...
build.prop 0 Kb and copying saved earlier file build.prop to /system does not help it stays empty... I could change permissions in properties but it didn't help build.prop empty and nothing I could do... I repeated system rw remount but now I started getting bad returns like "mount: '/system' not in /proc/mounts" as I never flashed rw super image...
7)
flashed super image again in FASTBOOTD => same results: build.prop empty and nothing you can do with it
8)
flashed super image again now just in BOOTLOADER but weirdly in bootloader there were only 6 sparses SUPER out of 6 (in FASTBOOTD there were 8 sparses out of 8) => same results: build.prop empty and nothing you can do with it
9)
flashed and restored my FIRMWARE: SOFIA_RETAIL_QPMS30.80-109-5 (without erasing: boot, recovery, metadata and user data partitions) phone is fine but ROOT the same RO :(

-----------------------------------------
P.S. I was afraid to flash SUPER to slots A and B like:
fastboot flash super_a super_fixed.bin
fastboot flash super_b super_fixed.bin

and I didn't do it even though I remember some guy mentioned that it helped with two slots...

I didn't take a chance... :) I just got my phone back after being dead bricked from Motorola service... in the bricked phone i had perfect touch screen in TWRP (3.5.0_10) damn! in the phone of the same model they send me back TWRP touch screen does not work... (looks like the different drivers are set for the touch screen)
 
Last edited:

lebigmac

Senior Member
Jan 31, 2017
876
507
Good morning, sorry I try to run sysrepair.sh, but nothing happens, the phone is off, in fastboot or I just connect it. I send you a screenshot of the script in lubuntu.
Hi @Ricardo Cruz. Thanks for your feedback. It looks like your device is not recognized by adb?
ready and the script is active, thank you very much for everything.
Did you get the sysrw_repair script to work inside your Linux environment? What was the problem?

Was super_fixed.bin created successfully and did you fastboot flash it to your super partition yet?
What is the result? Can you do this now?

1-jpg.5235933


=== Moto G Power (2020) XT2041-4-SS FIRMWARE: Android 10 "SOFIA_RETAIL_QPMS30.80-109-5" ===
1)
systemrw_1.32 (./makesysrw.sh size=50) => error code 73 (either way auto or manual)
2)
sysrw_repair_v1.32 (USB stick Ubuntu Mate 21.4) => Successfully created patched super image at /media/ubuntu-mate/Drive-C/sysrw_repair/img/super_fixed.bin
3)
"fastboot flash super super_fixed.bin" (in FASTBOOTD) => was sent 8 sparses SUPER out of 8, no errors
4)
restarted phone => OK
5)
adb shell
su
mount -o remount,rw /
mount -o remount,rw /system
mount -o remount,rw /product
mount -o remount,rw /vendor
Hi @krasevalex. Thanks for your feedback. Please send me your log files from this folder. Thanks.
/data/local/tmp/systemrw_1.32/log/

You can successfully boot device after flashing super_fixed.bin AND you can remount partitions as R/W? That sounds like a success to me. Congratulations!
6)
weird things started appear...
build.prop 0 Kb and copying saved earlier file build.prop to /system does not help it stays empty... I could change permissions in properties but it didn't help build.prop empty and nothing I could do... I repeated system rw remount but now I started getting bad returns like "mount: '/system' not in /proc/mounts" as I never flashed rw super image...
7)
flashed super image again in FASTBOOTD => same results: build.prop empty and nothing you can do with it
8)
flashed super image again now just in BOOTLOADER but weirdly in bootloader there were only 6 sparses SUPER out of 6 (in FASTBOOTD there were 8 sparses out of 8) => same results: build.prop empty and nothing you can do with it
9)
flashed and restored my FIRMWARE: SOFIA_RETAIL_QPMS30.80-109-5 (without erasing: boot, recovery, metadata and user data partitions) phone is fine but ROOT the same RO :(

-----------------------------------------
P.S. I was afraid to flash SUPER to slots A and B like:
fastboot flash super_a super_fixed.bin
fastboot flash super_b super_fixed.bin

and I didn't do it even though I remember some guy mentioned that it helped with two slots...

I didn't take a chance... :) I just got my phone back after being dead bricked from Motorola service... in the bricked phone i had perfect touch screen in TWRP (3.5.0_10) damn! in the phone of the same model they send me back TWRP touch screen does not work... (looks like the different drivers are set for the touch screen)
I think you need to run script again with larger custom size and generate new super_fixed.bin with the repair script and fastboot flash it manually to your super partition.
After that everything should work as expected.

Bash:
adb shell
su
cd /data/local/tmp/systemrw_1.32
./systemrw.sh in=`ls -l /dev/block/by-name/super | awk '{print $NF}'` size=50

I started getting bad returns like "mount: '/system' not in /proc/mounts" as I never flashed rw super image...
/system is only in Android 9 and earlier. In Android 10+ it's called /
 
Last edited:

Ricardo Cruz

Member
Sep 19, 2021
7
3
Motorola One Fusion+
Hi @Ricardo Cruz. Thanks for your feedback. It looks like your device is not recognized by adb?

Did you get the sysrw_repair script to work inside your Linux environment? What was the problem?

Was super_fixed.bin created successfully and did you fastboot flash it to your super partition yet?
What is the result? Can you do this now?

1-jpg.5235933

Well, in my case, the device was not detected when running the script in linux lubuntu live, what I did was create a usb with permanent storage. but later I faced the problem of the space in the usb for the img files, and passed the sysrepair folder to the Windows hard disk, where there was space. I ran the script, rebooted in fastboot and when finished reboot. I probe with root xplorer and I was able to switch to r / w, in fact I already modified an xml file in the vendor folder and I keep the changes on save and reboot. Thanks.
 

Attachments

  • Screenshot_20210924-001029.png
    Screenshot_20210924-001029.png
    174.9 KB · Views: 13
  • Love
Reactions: lebigmac

krasevalex

Member
Jun 10, 2019
13
11
57
Philadelphia
Hi @Ricardo Cruz. Thanks for your feedback. It looks like your device is not recognized by adb?

Did you get the sysrw_repair script to work inside your Linux environment? What was the problem?

Was super_fixed.bin created successfully and did you fastboot flash it to your super partition yet?
What is the result? Can you do this now?

1-jpg.5235933



Hi @krasevalex. Thanks for your feedback. Please send me your log files from this folder. Thanks.
/data/local/tmp/systemrw_1.32/log/

You can successfully boot device after flashing super_fixed.bin AND you can remount partitions as R/W? That sounds like a success to me. Congratulations!

I think you need to run script again with larger custom size and generate new super_fixed.bin with the repair script and fastboot flash it manually to your super partition.
After that everything should work as expected. Enjoy a fully read/writeable device!

Bash:
adb shell
su
cd /data/local/tmp/systemrw_1.32
./systemrw.sh in=`ls -l /dev/block/by-name/super | awk '{print $NF}'` size=50


/system is only in Android 9 and earlier. In Android 10+ it's called /
in fact I ran script with size=50 but as I wrote I have got an error code 73... i flashed super_fixed.bin manually besides i did it twice, first from FASTBOOTD (it was sent 8 sparses out of 8) and second time i flashed it from just BOOTLOADER (strangely only 6 sparses out of 6)... anyway in both cases i had problems with build.prop file and RW system and in both cases I executed command:
mount -o remount,rw /


here is an attached zip file with my logs...
 

Attachments

  • systemrw_1.32_logs.zip
    100.3 KB · Views: 3
Last edited:

Pachacouti

Senior Member
Jul 8, 2020
232
44
52
The Capital above the Lower one...
Can this be adapted better using this method in anyway?

I continue to use my back up pulled, have tested countless methods, then found a way for your script to work better for me, but that's out of my league, I hope you can use this:

 

lolvatveo

Member
Nov 1, 2020
24
0
except using lucky patcher to modify system apps on android 6.0.1 and android 7, i can't modify in any way, need help because above guide is only for android 10
 

flaxx187

Senior Member
Jun 23, 2013
138
5
- extract Bundle
- Flash the flashable file
- beeing happy

amazing work

testet with Poco F1

on /system/media I can create/rename new Files, but not move via root explorer why ?






on my redmi Note 10 Pro I got an error via TWRP, so I did it via adb
what is a super partition ?how I can check it ?


tried:

adb shell
cd /data/local/tmp/systemrw_1.32
chmod +x sytemrw.sh
./systemrw.sh

finally I got my rw system


I don't have to do this:

su
mount -o remount,rw /
mount -o remount,rw /system
mount -o remount,rw /product
mount -o remount,rw /vendor

right ?
 

Attachments

  • IMG_20210925_123357_1.jpg
    IMG_20210925_123357_1.jpg
    818.9 KB · Views: 12
  • lpdump.txt
    1.5 KB · Views: 0
  • mylog.txt
    5.9 KB · Views: 2
Last edited:
  • Love
Reactions: lebigmac

lebigmac

Senior Member
Jan 31, 2017
876
507
- extract Bundle
- Flash the flashable file
- beeing happy

amazing work

testet with Poco F1

on /system/media I can create/rename new Files, but not move via root explorer why ?






on my redmi Note 10 Pro I got an error via TWRP, so I did it via adb
what is a super partition ?how I can check it ?


tried:

adb shell
cd /data/local/tmp/systemrw_1.32
chmod +x sytemrw.sh
./systemrw.sh

finally I got my rw system


I don't have to do this:

su
mount -o remount,rw /
mount -o remount,rw /system
mount -o remount,rw /product
mount -o remount,rw /vendor

right ?
Hi. Thanks for your feedback.

on /system/media I can create/rename new Files, but not move via root explorer why ?

Usually if you can only rename system files or create empty system files this means you must run script again with larger custom size. Try for example size=50 or size=100
./systemrw.sh in=`ls -l /dev/block/by-name/super | awk '{print $NF}'` size=50

Regarding error 255 in some recoveries this is already fixed in next version ;)

Enjoy a fully read/writeable device!
 
  • Like
Reactions: rhewins2268

flaxx187

Senior Member
Jun 23, 2013
138
5
Hi. Thanks for your feedback.

on /system/media I can create/rename new Files, but not move via root explorer why ?

Usually if you can only rename system files or create empty system files this means you must run script again with larger custom size. Try for example size=50 or size=100
./systemrw.sh in=`ls -l /dev/block/by-name/super | awk '{print $NF}'` size=50

Regarding error 255 in some recoveries this is already fixed in next version ;)

Enjoy a fully read/writeable device!
so shall I do it again with adb shell but write ?:
./systemrw.sh in=`ls -l /dev/block/by-name/super | awk '{print $NF}'` size=50


50 mbmore ? that would be helpfull :D

thanks I helps :D

but i have still issue, but it is bc the app or my zip file idk.

The Size is now there, thanks made !
 

Attachments

  • Screenshot_2021-09-25-13-35-20-156_com.speedsoftware.rootexplorer.jpg
    Screenshot_2021-09-25-13-35-20-156_com.speedsoftware.rootexplorer.jpg
    148.9 KB · Views: 11
Last edited:

Top Liked Posts

  • There are no posts matching your filters.
  • 2
    is there any tutorial on how to use sysrw_repair_v1.32 ? :

    1- Sorry for spamming the thread.
    2- Thank you Keven11 and lebigmac
    3- Finally I got it, first flashed the stock rom (android 11) and started it just to create the /data/media/ folder. Right after that I turned off the device, flashed the twrp and magisk, and placed the systemrw_1.32 in the /data/local/tmp/ folder. I started the script from the twrp terminal "sh /data/local/tmp/systemrw_1.32/systemrw.sh size=15. After getting the error "73" screen, I started sysrw_repair_v1.32 in vmware emulating linux mint... And everything went really well! :)

    View attachment 5425517
    It is definitely a journey. Well worth the work, and time invested in then end. Also, it helps many people understand their devices just that much more. I am glad that you were successful.

    Also, everytime a person manages to get this to work for themselves, and explains how they did. That alone helps many others. So thank you for putting in the work, and sharing your experience.
    2
    1- Sorry for spamming the thread.
    2- Thank you Keven11 and lebigmac
    3- Finally I got it, first flashed the stock rom (android 11) and started it just to create the /data/media/ folder. Right after that I turned off the device, flashed the twrp and magisk, and placed the systemrw_1.32 in the /data/local/tmp/ folder. I started the script from the twrp terminal "sh /data/local/tmp/systemrw_1.32/systemrw.sh size=15. After getting the error "73" screen, I started sysrw_repair_v1.32 in vmware emulating linux mint... And everything went really well! :)

    c74256c2706c6e8f74e5858e4aa85f57.gif
    2
    Thanks. But you can tell in more detail. Where to get the super_original.bin and super_fix files. Please write detailed instructions.
    this script have 2 mode one is from recovery flash as zip second have run it in android environment.
    if you run this in recovery then it patch and flash super automatically.
    second if you run it in android environment with as mention location of /data/local/tmp/here_your_script_folder/here_script.sh then it create a "img" folder inside of script folder then pull super from your device make a backup and rename that to super_orignal.bin then extract that super and patch r/w capability then make that again super and rename it as super_fix.img so simply you get two bin files inside "img" folder
    if you wanna r/w your device flash super_fix.img from bootloader.
    if you wanna go back to original state "flash super_orignal.bin" from bootloader.
    directory tree will like this :-
    data/ ├─ local/ │ ├─ tmp/ │ │ ├─ systemrw_1.32/ │ │ │ ├─img/ │ │ │ │ ├─super_orignal.bin │ │ │ │ ├─super_fix.bin │ │ │ ├─ tools/ │ │ │ ├─ config.ini │ │ │ ├─ systemrw.sh
    thanks this for @The_Tablet
    That's it!
    1
    Hola, [USER = 11816235] @Ricardo Cruz [/ USER]. Envíeme sus archivos de registro desde esta carpeta. Gracias.
    /data/local/tmp/systemrw_1.32/log / [/ ICODE] Simplemente conecte el teléfono a la computadora usando un cable usb-c a usb-a. [URL='https://forum.xda-developers.com/t/script-android-10-universal-mount-system-read-write-r-w.4247311/page-23#post-84901531'][B]Aquí[/B][/URL] puede encontrar las instrucciones oficiales del script de reparación de resolución de problemas (solo Linux). [/QUOTE] Hello, sorry for the delay, I imagine that these are the files that you ask me [/QUOTE]
    1
    Ok

    it's like this :
    I have Asus ROG III
    stock android 11
    twrp latest
    rooted with latest magisk
    I have Xposed working and some modules installed on Xposed
    I too have some modules installed on magisk
    I have plenty of free storage
    I have RW system

    the question is: I want to install a full update package from Asus , after wards I should probably lose RW system
    how should I approach this with 💯 success and without having to wipe data?

    thank you
  • 101
    If you can't get this script to work on your device check out the brand new sophisticated superrepack tool by @munjeni


    logo_large.jpg

    *NEW* SystemRW v1.32 *NEW*
    automated bash script by lebigmac for Android 10 and above

    Creation date: February 2021
    Updated: August 2021

    Requirements:
    • rooted STOCK Android 10 or newer (custom ROM should already be R/W!)
    • at least 10+ GB free space on phone for dumping data
    Description:
    A script for all Android power users that wish to make their read-only Android 10+ system read/write-able again to remove bloatware and make more thorough customizations to their device.

    In a nutshell this is what the script is doing:
    • dumps your existing super OR your system / product / vendor partitions depending on whether or not you've got super partition
    • extracts embedded read-only partitions (system, vendor, product...) from super if applicable
    • makes these partitions read/write-able
    • joins everything back together to new super.img OR NOT depending on whether or not you've got super partition
    • flashes read/write-able images back to device using the super fast Kolibass technique (only in recovery mode)
    User data is not affected.

    NOTE:
    • Extract BUNDLE.zip (the included sysrw_repair.zip is only for fixing error 73!)
    • Before launching script make sure you've got full read/write access to the /data partition by first decrypting and then mounting /data partition as R/W!
    • The script can be run both inside custom recovery and inside Android operating system.
      If you run script in Android mode you will need to fastboot flash the patched image(s) manually!
    • To check whether or not you've got a super partition on your device you can run this command:
      adb shell "ls -l /dev/block/by-name/super"
    Manual installation:
    • Extract flashable.zip and copy systemrw_*VERSION* folder into /data/local/tmp/
    • run this command to make the script executable:
    chmod +x /data/local/tmp/systemrw_*VERSION*/systemrw.sh
    Automatic installation:
    Installation of the script has never been this easy!
    Download the flashable.zip below, do NOT enable zip signature verification and simply install it in your custom recovery (works in TWRP, OrangeFox and PBRP!)
    The installer binary will auto-detect whether or not your device has a super partition and launch the script accordingly with the proper command line arguments.

    Flashable zip custom usage:
    You can set these custom installation arguments in the included config.ini file.
    Simply extract the flashable.zip and modify the included config.ini file and then save the file. Then compress the systemrw_*VERSION* and META-INF folders again as a new .zip and install it in recovery.
    First line of config.ini contains the script arguments for those WITHOUT super partition.
    By default this line is completely empty (no space).
    Second line of config.ini contains the script arguments for those WITH super partition.
    For example if you already dumped your super_original.bin and want to skip that process next time you install the .zip then put this in line #2 of config.ini :
    in=`ls -l /dev/block/by-name/super | awk '{print $NF}'` size=15
    Remember if you decide to use custom arguments in config.ini then the first character should always be an empty space. If no arguments are used such as by default in line #1 (no super) then the line should be completely empty, no space, nothing.

    Script usage:
    If you've got no super partition then simply call the script with no arguments from the shell (see examples below).
    If you've got a super partition I would recommend using the optional size=15 parameter as well to give some extra free space (in MB) to each partition.
    Optional script arguments:
    Replace x with your custom value
    • in=x *THIS IS IGNORED IF YOU'VE GOT NO SUPER PARTITION*
      With this flag you can specify an existing super image as input and skip the entire dumping of the super image process. Here you can use the super_original.bin which you dumped earlier with systemrw or the official unsparsed super.img from your downloaded firmware. (unsparse with simg2img). It's also possible to use your super partition block device as input.
      If omitted, systemrw will dump super image from phone to ./img/super_original.bin
      (path is relative to the script)
    • out=x *THIS IS IGNORED IF YOU'VE GOT NO SUPER PARTITION*
      With this argument you can specify the output path of the new patched super file.
      If omitted, default output value is ./img/super_fixed.bin
    • size=x *ONLY RECOMMENDED IF YOU'VE GOT SUPER PARTITION*
      With this parameter you can specify the extra free space (in megabytes) that will be added to each partition. There is a limit as to how much extra free space you can add per partition. Check your lpdump.txt to find out the exact maximum extra size.
      If omitted, default extra size is 0 (shrink to minimum)

    Examples:
    Bash:
    adb shell
    su
    cd /data/local/tmp/systemrw_1.32
    chmod +x ./systemrw.sh
    
    # Run this command *IF YOU'VE GOT NO SUPER PARTITION*
    ./systemrw.sh
    
    # Run this command if you're first time user *AND YOU'VE GOT SUPER PARTITION*
    # Specify the extra free space in megabytes for each partition:
    ./systemrw.sh size=15
    
    # Plug an existing super image into the script like this *ONLY IF YOU'VE GOT SUPER PARTITION*
    ./systemrw.sh in=./img/super_original.bin size=15
    
    # Specify both the input file as well as the output destination *ONLY IF YOU'VE GOT SUPER PARTITION*
    ./systemrw.sh in=./img/super_original.bin out=./custom/path/super_fixed.bin size=15
    
    # EXPERT EXAMPLE:
    ./systemrw.sh in=`ls -l /dev/block/by-name/super | awk '{print $NF}'` out=./img/super_fixed.bin size=50

    Troubleshooting:
    If you get error 255 in custom recovery when trying to install flashable zip then try to install it manually. If you encounter this error please send me this file /tmp/recovery.log
    Make sure the script folder was correctly extracted to:
    /data/local/tmp/systemrw_*VERSION*
    If you can't run the script try making the file executable like this: chmod +x ./systemrw.sh
    If you still can't get it to work run which sh in your shell and replace the shebang in the first line of the script with the output of that command. Don't remove the first two #! symbols though. Then save the file and try again.
    Make sure you have full read write access to the /data/local/tmp directory and that the containing files are not encrypted in custom recovery!
    If you experience bootloop after successfully flashing super_fixed.bin then your device probably has additional protection features that prevent it from booting modified super images. Try to undo bootloop simply by flashing original stock super image. You might have to flash stock vbmeta as well. Good luck!

    About:
    I did not come up with all this by myself. After searching for a solution for countless days without success, going even as far as learning hex editing - I accidentally came across a couple of very interesting threads burried deep inside the new forum interface where this method has been described by various enthousiasts (links can be found in the credits section below). Therefore I take absolutely no credit for the underlying core mechanisms of the script. I'm only the amateur who put it all together into a compact script so that everybody can enjoy an Android system that's read/write-able again. Just like it used to be in Android 9 or earlier. Before this annoying 'shared_blocks feature' was implemented.

    Credits:
    Huge thanks to @Kolibass for allowing me to use his partition tools for Android. Without your tools this script would not work on the Android platform! This genius also showed me how to flash a 5GB file to my partition in just under 30 seconds! Much faster than fastboot! I still can't believe it!
    Big thanks to @Brepro1 for allowing me to basically copy his awesome tutorial and make it into a script. Without your tutorial guiding me I couldn't have created this script.
    Thanks @AndyYan your great tutorial also helped me a lot for automating the script especially the lpdump part.
    Also big thanks @munjeni for allowing me to use his superunpack V1 tool in the previous version. It helped me to understand how these super images work.
    Thanks @bynarie for making available his otatools package! A part of it was bundled with the previous version which helped me to create this version. It's still part of the troubleshooting repair script to fix error 73.
    More thanks @gabrielfrias for his helpful comment
    Thanks @YOisuPU and of course @topjohnwu for discovering the 'shared_blocks feature'
    Thanks @HemanthJabalpuri for assisting me in optimizing the underlying algorithm!

    Disclaimer:
    #Disclaimer v2.0​
    This open source software is provided as is without any kind of warranty or support whatsoever.
    By using and viewing this software you agree to the following terms:
    • Under no circumstances shall the author be held responsible for any damages that may ensue from the (inappropriate) use of this software.
    • All responsibility, liability and risk lies with the end-user. You hereby agree not to abuse this software for illegal purposes.
    • Under no circumstances shall the comments & title section of the script (lines #1 - #65) as well as the included update-binary be modified or removed by the end-user without the original author's explicit consent.
    • Under no circumstances shall any files included in this project be re-uploaded to 3rd party websites without the original author's explicit consent. That means NO RE-UPLOADS of my files please! Thank you!
    • Under no circumstances shall the end-user disrespect, abuse or steal my project for his own disturbed purposes! The end-user also agrees not to steal my program logo or program name or the names of my functions and variables (and more) only to re-publish them as his/her own without even mentioning the original source.
    • The end-user is encouraged to improve the underlying algorithm (as long as no malicious code is added) and post his/her modifications, results and feedback right here in the official SystemRW project thread @ xda-developers.com
    • If the end-user wants to re-publish my work in his/her own project then he/she shall first ask me (the original author) for permission.
      If you want to make a video tutorial about my script please contact me first!
      Thank you! I can give you high resolution project logo and more!

    Please make sure to post your feedback and suggestions in the official thread right here.
    Enjoy customizing your fully read/write-able Android device! And feel free to share your Android system mods with other users in this thread! Thanks!


    v1-31d_01-jpg.5309953
    v1-31d_02-jpg.5309955
    v1-31d_03-jpg.5309957


    1-jpg.5235933


    Confirmed working on these devices :

    Download v1.32 mirror #1
    Download v1.32 mirror #2
    current status:
    experimental
    If you like this project and want to support further development of this project & the creation of more amazing projects like this then please feel free to donate to the developer by clicking the link below. Thanks! Your support is very much appreciated!

    Donate
    9
    If the script works on your device please send me your log files from this folder:
    /data/local/tmp/systemrw_1.32/log/

    Then I can add you to the list of successful devices and it will be helpful for further development. Thank you!
    6
    New version 1.20 is ready! DOWNLOAD HERE
    Good news for those that don't have TWRP or couldn't get it to work in their TWRP. Now the script can also be run directly inside Android. Keep in mind that you will have to flash the patched images manually in this case using fastboot flash.

    The zip can still be flashed in TWRP (make sure zip signature verification isn't checked). This time I bundled my device's stock sh binary (which I used to develop the script) with the archive. Hopefully this will prevent avoidable sh-related syntax errors for some folks. The flashable zip installer update-binary automatically launches the script with the proper arguments using this bundled sh program (it's inside the tools subfolder).

    To those that were having difficulties running the previous version due to empty partitions or multiple partition groups inside their super : this has finally been fixed :D

    Please give this new version a try and let me know if it works for you or not and I will add it to the first post. Thanks for your feedback!
    5
    I try to redo the procedure, i want to change the size. but i get error, can't remove lock.

    Good news. New hotfix available HERE
    I got rid of that buggy get minimum size function and reworked the size querying algorithm a little bit. Should be more stable now.

    Next step will be to make the script compatible with those devices that have empty partitions embedded inside their super partition...
    Also ronnie was complaining about syntax error but I have yet to find the syntax error... If anyone finds it please let me know so I can fix it. Thank you!
    4
    Great news! Flashable zip is almost ready! I'll upload it later today. Any volunteers want to beta test the new flashable zip to help me iron out any bugs? Please send me a message. Thanks!

    Installing the script has never been this easy. Simply swipe with finger inside TWRP and it's automatically installed to correct location on your phone.
    Then it checks a config file for any custom script execution arguments and launches the script with these arguments depending on whether or not your phone has a super partition.

    Let me tell you it was not easy to create this flashable zip installer but I had lots of fun learning about this whole flashable zip concept the past few days.