[CLOSED][SCRIPT][Android 10+] Universal Mount SystemRW / SuperRW featuring MakeRW (read/write)

Status
Not open for further replies.
Search This thread

TheGhost1951

Senior Member
Feb 11, 2009
334
67
Garfield
OnePlus 9 Pro
Ok guys, I just upgraded to T-Mobile's LE2127 Android 12 C16 OnePlus 9 Pro. I know, this script is not compatible with A12 yet, but I am hoping. I will patiently wait for the developer to do his thing. May you all be blessed this year! I went ahead and tried the script anyway, but as expected this version of android not supported! Bummer...........
 
Last edited:

2mkl

Senior Member
Jan 2, 2011
161
19
You need top run su command beforehand
Ok....
give command su - ok
Then chmod +x /data/local/tmp/systemrw_1.32/systemrw.sh - Nothing happens

I have been using this script for a long time and on different phones (however with A10) - no problems via TWRP or in manual.
But this....
 

Attachments

  • Screenshot_20220626-091221781.png
    Screenshot_20220626-091221781.png
    117.4 KB · Views: 72

2mkl

Senior Member
Jan 2, 2011
161
19
Hmmmm....
I managed to execute the script only via Root Explorer.
Just ran .sh in it
Via TWRP or Termux - failed
But a question. Where should I flash super_fixed.bin?
 

Attachments

  • mylog_bisonPro.txt
    4.2 KB · Views: 13
Last edited:

FKX1997

Member
Apr 30, 2022
44
12
Ok guys, I just upgraded to T-Mobile's LE2127 Android 12 C16 OnePlus 9 Pro. I know, this script is not compatible with A12 yet, but I am hoping. I will patiently wait for the developer to do his thing. May you all be blessed this year! I went ahead and tried the script anyway, but as expected this version of android not supported! Bummer...........
It wont work, the steps do, the outcome does not work
 

lebigmac

Senior Member
Jan 31, 2017
1,092
728
Ok guys, I just upgraded to T-Mobile's LE2127 Android 12 C16 OnePlus 9 Pro. I know, this script is not compatible with A12 yet, but I am hoping. I will patiently wait for the developer to do his thing. May you all be blessed this year! I went ahead and tried the script anyway, but as expected this version of android not supported! Bummer...........
Didn't saw in OP and after trying in my android 12 Wondering Since when did android 12 got excluded from "android 10 or newer" 😂
To run script in Android 12+ just open systemrw.sh script file with notepad and replace the sdkCheck() function with this one and save file

Please keep in mind that the new version (release imminent) has Android 12+ support straight out of the box ;)(y)



Hmmmm....
I managed to execute the script only via Root Explorer.
Just ran .sh in it
Via TWRP or Termux - failed
But a question. Where should I flash super_fixed.bin?
Hi @2mkl
You never flashed super image manually before with fastboot?
Bash:
adb reboot bootloader
fastboot flash super super_fixed.bin



It wont work, the steps do, the outcome does not work

Hi. What do you mean does not work? Can you please provide a screenshot or log for better understanding? Thanks! (y)
 
Last edited:

FKX1997

Member
Apr 30, 2022
44
12
To run script in Android 12+ just open systemrw.sh script file with notepad and replace the sdkCheck() function with this one and save file

Please keep in mind that the new version (release imminent) has Android 12+ support straight out of the box ;)(y)




Hi @2mkl
You never flashed super image manually before with fastboot?
Bash:
adb reboot bootloader
fastboot flash super super_fixed.bin





Hi. What do you mean does not work? Can you please provide a screenshot or log for better understanding? Thanks! (y)
I have A12 on the OP10 and it does not work.
 

starbucks2010

Senior Member
Jun 30, 2010
3,154
1,866
@lebigmac I tried the script on a S22 Exynos super.img but it didn't work. Here is my log.

Do you have any idea what's wrong or what can I try to fix this error?

Thanks.
 

Attachments

  • systemrw__lebigmac_error_1.png
    systemrw__lebigmac_error_1.png
    116.2 KB · Views: 51
  • Haha
Reactions: lebigmac

lebigmac

Senior Member
Jan 31, 2017
1,092
728
I have A12 on the OP10 and it does not work.
Thanks for your very limited feedback. If you don't show me log or screenshot then I cannot make it work on your device...



@lebigmac I tried the script on a S22 Exynos super.img but it didn't work. Here is my log.

Do you have any idea what's wrong or what can I try to fix this error?

Thanks.
Hi. It looks like you're trying to run the script in Linux even though it was made to be run on your phone.

Don't waste your time trying to run it on a modern day next gen Samsung or Realme device. Next version should have support for those next generation devices ;)(y)
 
Last edited:
  • Like
Reactions: starbucks2010

starbucks2010

Senior Member
Jun 30, 2010
3,154
1,866
Thanks for the reply. Looking forward for the next version.
Do you have any Telegram channel for this tool?
 

TheGhost1951

Senior Member
Feb 11, 2009
334
67
Garfield
OnePlus 9 Pro
Thanks to the developer of this script, after unlocking bootloader and rooting with Magisk and running this script, I now have the phone I have wanted for several years now. OnePlus 9 Pro Model LE2127, with custom bootanimation and custom fonts. That is why I got away from Samsung phones with the unlockable bootloader.....yippee!
 
  • Love
Reactions: lebigmac

2mkl

Senior Member
Jan 2, 2011
161
19
Flash super_fixed.bin via fastboot.
Thank`s!
But I did everything in a different way through TWRP
Problem - selinux enforcing in A11...
I was not sure that using Root Explorer I got the desired result

P.S. I know how to flash via fastboot, fastbootd and other.....
But since the script resizes super a lot, I was careful...
 
Last edited:

TheGhost1951

Senior Member
Feb 11, 2009
334
67
Garfield
OnePlus 9 Pro
Had everything working on OnePlus 9 Pro Android 11. Upgraded to 12 and tried the script flashing the super_fixed.bin through fastboot. Lost half my system folders, could not add a folder to root and nothing looked right. I changed the systemrw.sh file as instructed for Android 12 but nothing worked like it did on Android 12. Could not even find the /data/local/tmp/ systemrw_1.32 folder to get the log files. Going back to Android 11.....
 
  • Haha
Reactions: lebigmac

strannij

New member
May 19, 2015
3
1
Moto G Play
does't work in Lenovo Lemon K12 Pro,i got error code 73,anyone can help?

View attachment 5340439

systemrw: Joining all extracted images back into one single super image...

systemrw: Please wait and ignore the invalid sparse warnings...

systemrw: Error! failed to create super_fixed.img file. Error code: 73
I had the same problem on my moto g play 2021. I fixed it by using different
 

strannij

New member
May 19, 2015
3
1
Moto G Play
does't work in Lenovo Lemon K12 Pro,i got error code 73,anyone can help?

View attachment 5340439

systemrw: Joining all extracted images back into one single super image...

systemrw: Please wait and ignore the invalid sparse warnings...

systemrw: Error! failed to create super_fixed.img file. Error code: 73
I had the same problem on my Moto g play 2021. I fixed it by using different android-tools. In termux, pkg install android-tools. And then I tweaked the script to use /data/data/com.termux/files/usr/bin/lpmake rather then /tools/lpmake.
 
  • Wow
Reactions: lebigmac

Zerolol

New member
Jul 16, 2017
3
2
Thank you it works with me (my phone) Xiaomi 11T Pro I was able to edit the system folder. I encountered a problem, which is the space (ie, a solution to increase the system space). miui 12 - android 11
 

Attachments

  • lpdump.txt
    2.2 KB · Views: 3
  • mylog.txt
    6.2 KB · Views: 3
  • Love
Reactions: lebigmac
Status
Not open for further replies.

Top Liked Posts

  • There are no posts matching your filters.
  • 4
    Hi @TheGhost1951 thanks for trying to help out this other user and I know you only have the best intentions but

    Please no unofficial, unverified, unauthorized reuploads of my SystemRW/SuperRW feat. MakeRW project (or any parts thereof) or else I'll have to download every single unofficial, unverified, unauthorized re-upload out there and check each individual file for any suspicious modifications by 3rd party users before I can allow it. I don't have time to do that. I prefer working on the script itself. Thanks for your understanding! (y)

    Hi @a9381 if your browser doesn't work correctly then simply try a different browser! Good luck! (y)
    And don't worry for the new version I will add at least 3 different official download mirrors for your pleasure! ;)(y)

    Don't waste your time with that old version 1.32 ! That old version only seems to work in Android 10 and Android 11.

    Brand new version with out-of-box support for A12+, auto-resize feature, next-gen Samsung devices support and more enhancements is scheduled to be released this summer! Stay tuned! ;)(y)
    2
    Is flashing the script from fastboot a viable option
    Good idea but I'm afraid my programming knowledge is too limited for that. Only true genius can achieve that.



    awesome tool
    this tool works on my device using terminal emulator
    there is only 1 problem,,,, the vendor partition is still in read only mode

    My device : OPPO A15s
    Model : CPH2179
    Thanks. Your log looks good. I can't find the error :(
    Did you try
    Bash:
    adb shell
    su
    mount -o remount,rw /vendor
    mount | grep " /vendor "
    If you get error type dmesg immediately afterwards to get more info about error. Good luck! (y)
    2
    Thread closed on request of OP @lebigmac
    2
    Hi @TheGhost1951 thanks for trying to help out this other user and I know you only have the best intentions but

    Please no unofficial, unverified reuploads or else I'll have to download every single unofficial, unverified re-upload out there and check each individual file for any suspicious modifications by 3rd party users before I can allow it. I don't have time to do that. I prefer working on the script itself. Thanks for your understanding! (y)

    Don't waste your time with that old version! That old version only works in Android 10 and Android 11.
    Brand new version with out-of-box support for A12+, auto-resize feature and more enhancements is scheduled to be released this summer! ;)(y)

    Hi @a9381 if your browser doesn't work correctly then simply try a different browser! Good luck! (y)
    And don't worry for the new version I will add at least 3 different official download mirrors for your pleasure! ;)(y)
    My apologies, I don't know why his view of the first post did not show the download links! Again I apologize!
    1
    Mind sharing link to your modified version? I also have moto G power 2021 and was thinking about tweaking it but if yours worked I might give it a shot
    Sure thing! But you need to install android-tools in termux first and run this in termux as well. Just copy this file to
    systemrw_1.32 folder. After it's done just move super_fixed.img to your computer and flash it to your phone.
  • 150
    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

    SystemRW / SuperRW (feat. MakeRW) v1.32 by lebigmac
    NEW VERSION COMING SOON! STAY TUNED!;)(y)
    ANY TALENTED DEVELOPERS WANT TO CONTRIBUTE TO NEXT VERSION? PLEASE CONTACT ME NOW! THANKS! :love:(y)

    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.
    Script only modifies super and vbmeta partitions. /data partition is not affected. It's only used for dumping data and for storing script files.
    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)

    NOTE:
    • Before running this experimental software on your device it is recommended to make a full backup of your device (just in case you are unlucky enough to end up in an irreversible bootloop)
    • Extract BUNDLE.zip (the included sysrw_repair.zip is only for fixing error 73!)
    • 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"
    • To check whether or not your device has the notorious 'shared_blocks' read-only feature you can run this code:
      Bash:
      adb shell
      su
      for a in /dev/block/dm-*; do tune2fs -l $a | grep -e "feat" -e "vol"; done
    • To check whether or not the script worked correctly you can run this code:
      Bash:
      adb shell
      su
      for a in /dev/block/dm-*; do mount -o remount,rw $a; done
    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=`realpath /dev/block/by-name/super` 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=`realpath /dev/block/by-name/super` out=./img/super_fixed.bin size=50

    Uninstallation:
    • To free up space and keep script as well as r/w capability you can simply delete /img subfolder at /data/local/tmp/systemrw_1.32/img
    • To delete script and keep r/w capability you can simply delete whole script folder at /data/local/tmp/systemrw_1.32
    • To undo all changes performed by the script you can simply reflash original stock read-only super image and re-enable dm-verity and verification either through adb/fastboot or with the included avbctl binary (inside /tools/ subfolder - also available in recovery).

    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 get bootloop after successfully flashing super_fixed.bin then you can undo bootloop simply by re-flashing original stock super image and re-enabling dm-verity and verification with the included avbctl binary (inside /tools/ subfolder - also available in recovery). Those are the only changes performed by the script.
    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 @Brepro1 for allowing me to use his awesome tutorial and make it into a script. Without your tutorial guiding me I couldn't have created this script.
    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 @munjeni for allowing me to use his amazing superunpack V1 tool in the initial version. It helped me to understand how these super images work.
    Thanks @AndyYan your great tutorial also helped me a lot for automating the script especially the lpdump part.
    Thanks @bynarie for making available his otatools package! A part of it was bundled with the initial version which helped me to create this universal 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!
    Thanks @aIecxs for helping me fix some shell scripting errors (y)

    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 - #100) 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 the end-user steal and / or abuse my entire SystemRW project or parts thereof (including but not limited to my update-binary, my script, my program logo, my program name or the names of my functions and/or my variables and more...) only to rename and republish my SystemRW / SuperRW feat. MakeRW project (or parts thereof) as his/her own creation without even mentioning original source!!! (yes this actually happened :( perpetrated by at least 2 fellow forum members...)
    • Unverified, unauthorized re-uploads of any files contained within this project to 3rd party websites are not permitted without the original author's prior knowledge and consent!
      If you want to share this software with your friends please just send them the link to this website. Thanks.
    • The end-user is allowed to improve the underlying algorithm (as long as no malicious code is added) and post his/her improvements, results and feedback right here in the official SystemRW / SuperRW feat. MakeRW project thread @ xda-developers.com
    • If the end-user wishes to re-use my SystemRW / SuperRW featuring MakeRW project (or any parts thereof) inside his/her own project then he/she shall first contact me! Thanks!
      If you want to make a video tutorial about this project 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_03-jpg.5309957


    1-jpg.5235933


    working-jpg.5525671


    Confirmed working on these devices:

    Download v1.32 mirror #1
    Download v1.32 mirror #2
    more official download mirrors coming soon!
    current status: experimental


    If you like this project and want to support further development of SystemRW / SuperRW feat. MakeRW & the creation of more amazing projects like this then please feel free to donate to the original developer by clicking the button below. Thanks! Your support is very much appreciated!
    Donate
    15
    If the script works on your device please send me your log files from this folder:
    /data/local/tmp/systemrw_1.32/log/

    And please write your phone model - Android version - firmware version

    Then I can add you to the list of successful devices and it will be helpful for further development. Thank you!(y)
    9
    Is it summer holidays yet or what? So much interest in my thread right now it's crazy. I can't even keep up with every single comment there's just too many. I just want to say thank you to every single one of you for your enthousiastic interest in this amazing SystemRW / SuperRW feat. MakeRW by lebigmac project! (y)

    Guys please stop wasting your time trying to get that old version to work in Android 12 + as it was originally not designed for such a new Android version. Just be patient for a couple more days and I will officially release BRAND NEW VERSION :D(y) which has Android 12+ support out of the box, auto-resize feature and more ;)(y)
    I'm working on it hard as we speak... 🛠️

    If you're Samsung or Realme device user just send me a message and we can work on a fix! Thanks (y)
    8
    Okay I know you guys have been waiting a long time... Thanks for your patience, loyalty, support and your interest in this amazing project for the past year! Unfortunately there's lots of dubious copycats floating around by now. Remember you saw it here first ;)(y)
    The one and only, the original
    SystemRW / SuperRW featuring MakeRW by lebigmac
    This month new version should be ready :D(y)
    I'm working on it hard 🛠️⚙️⛏️🔧✂️🔨
    Hopefully we can start beta testing in 2nd half of April May June and then it should be ready for final release :love:
    I'm so excited!


    This is awesome! Unfortunately, it doesn't support Android 12 yet : ( .

    The new version has support for Android 12 and beyond! :ROFLMAO:

    Bash:
    sdkCheck(){
        sdkVersion=`getprop ro.build.version.sdk`
        if [ $sdkVersion -lt 29 ]; then
            printf "$app: Please install Android 10 or newer and try again\n\n" && exit 1
        else
            android=$(($sdkVersion - 19)) 
        fi
        printf "$app: Current Android version: %s\n" $android
    }
    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!