Related
I flashed Evil Eris 3.0 couple days ago and could out get the A2SD function to working so I decided that I want to go back to a previous version where A2SD works. When I reboot into recovery menu, I found that everything else works fine with the trackball except the downward direction. That really pissed me off because no matter how hard I try to scroll it down, it does not work. Now the recovery menu does not work for me anymore except the reboot function. It seems that it is the problem with trackball itself because when I reboot it into the system the downward direction still does not work. Anyway, I am thinking about flashing the ROM with terminal commands. Anyone who can help me with this? I'm using recovery image 1.6.2. Whats the command line for wiping the four things(I am not even sure if there is four or five because I cannot get into it! aaahhh) under the wipe function? For partitioning SD card? For upgrading from ext 2 to ext 3(if i remember this function right)? And finally whats the command line for flashing a ROM from SD card? Thanks!!!! Now I really wish that I had the Droid cuz theres a physical D-pad on it!
This will solve your issue:
http://www.xda-developers.com/android/trackball-transplant-on-htc-droid-eris/
Don't forget that when Amon_RA recovery is booted up, "adbd" is running on the phone.
That means that you can get your restore operations done by using ADB on the PC, and the
/sbin/nandroid-mobile.sh
script in Amon_RA to perform all the operations that you would have with the menu system.
do a /sbin/nandroid-mobile.sh --help
with Amon_RA recovery booted, and have a look at the
--listbackup
--subname
--restore
options for more information.
Obviously, this won't fix your trackball. But it does give you access to restore and backup operations in the meantime.
bftb0
I am a newbie with terminal and command lines, so I hope you don't mind if I ask some questions here. I checked the help list of nandroid-mobile script, but I think all the functions are to do with nandroid backup file? it is either to back up or to restore a backup file? I have successfully backed up though. But how do I wipe my dalvik cache and other misc. stuff in the recovery menu? How do I partition my sdcard using the script? and flash an img?
My trackball went out on me the other night when I was working on it. Or so I thought. Just before I called Verizon to send me a replacement, I tried one last ditch effort. I used my tshirt to wipe whatever was on the ball and pressed it kind of hard when moving the trackball around and what do you know, it fixed it. I only use my trackball for when flashing, which is a lot. So hopefully this might help you.
lacrisexistentielle said:
I am a newbie with terminal and command lines, so I hope you don't mind if I ask some questions here. I checked the help list of nandroid-mobile script, but I think all the functions are to do with nandroid backup file? it is either to back up or to restore a backup file? I have successfully backed up though. But how do I wipe my dalvik cache and other misc. stuff in the recovery menu? How do I partition my sdcard using the script? and flash an img?
Click to expand...
Click to collapse
That script only does a couple things in addition to nandroid backup and restores - it is not a replacement for the Amon_RA menu.
Your original post indicated that you were trying to restore a previously saved ROM backup, so that I why I suggested it.
Obviously, it would be better if you got your trackball fixed.
As far as wipes go, here is what happens during a wipe:
Code:
mount /system
cd /system
rm -rf /system/* >>/dev/null 2>&1
cd /
umount /system
mount /data
cd /data
rm -rf /data/* >>/dev/null 2>&1
cd /
umount /data
Since - as you said - you are a newcomer to command lines, you probably shouldn't be doing the above. In particular, the "rm" commands above are extremely dangerous if you don't know what you are doing (although I tried to minimize the danger with the superfluous-looking "cd" commands.
If you would like to learn more about using the command line, or scripting, just pull that file to your PC
adb pull /sbin/nandroid-mobile.sh nandroid-mobile.sh
and study it intently (shell scripts are plain text files). You will learn a lot about what goes on "under the hood" that way.
cheers
bftb0
I'm in the same boat as the original poster. Just need the code to push a stock or closer to stock ROM so I can return to Verizon.
-------------------------------------
Sent via the XDA Tapatalk App
thanks so much! I think I will replace my trackball just for safety. I don't want to temper with the command line that I have no idea of yet! I will certainly look into the shell script later. Also, if I want to learn more basic stuff with the terminal language, what should I do? is there any wikis or websites or even books teaching the language? I am intrigued by all these custom ROMs available for android system and I would love to learn how to build one on my own!
WOW, that is awesome! I never thought that I would be able to do that but this looks so simple!
I tried to push it really hard but nothing changed. I start to wonder if this is a common problem seen in Eris owners? I just couldn't imagine why the trackball will be senseless. Thanks for your tip though!
So if I want to save everything on my phone (including kernel, radios, apps, system, market links, etc) how do I go about doing that? There's a check box in odin called Dump and then File [Dump] at the end but it didn't quite work the way I expected and I'm a little afraid of something wrong with odin, so I'd rather if someone could tell me how to do it from experience.
It would be nice if there was a recovery program that did a full backup of your device so that you could always resore from within recovery, but my understanding is that nandroids can't replace your radio or anything like that. So does a nandroid backup just saving you from having to reflash to stock from odin and having to do a titanium restore?
Thanks.
no one?
.....Buehler?
11 minutes worth of searching... ( I kinda knew where to look )
http://forum.xda-developers.com/showthread.php?t=459830&highlight=Nandroid+backup+restore
I was just gonna throw out a close enough answer and hope not to get flamed for my incompetence, but I got over curious as to whether or not my over-complication was correct.. so here goes it in simple terms..
its basically a script (.sh file) that tells your phone to backup your system to your sdcard while your phone is in recovery... something like this(off the top of my head):
to backup
mount /system
cp /system/* /sdcard/nandroid/DATE
to restore
mount /sdcard
cp /sdcard/nandroid/DATE /system
hope that answered your question?
junkdruggler said:
11 minutes worth of searching... ( I kinda knew where to look )
http://forum.xda-developers.com/showthread.php?t=459830&highlight=Nandroid+backup+restore
I was just gonna throw out a close enough answer and hope not to get flamed for my incompetence, but I got over curious as to whether or not my over-complication was correct.. so here goes it in simple terms..
its basically a script (.sh file) that tells your phone to backup your system to your sdcard while your phone is in recovery... something like this(off the top of my head):
to backup
mount /system
cp /system/* /sdcard/nandroid/DATE
to restore
mount /sdcard
cp /sdcard/nandroid/DATE /system
hope that answered your question?
Click to expand...
Click to collapse
I think that's just a regular nandroid backup. The scripts are handled for us these days by the excellent recovery menus in clockwork. So I don't think that's what I was looking for. I get the feeling I can do what I'd like from odin, I just don't know how to go about doing it.
Well there has to be a script that pulls the radio and kernel and whatever else you would want...( I saw koush ask someone with a stock phone to do it for him..) Then you would just have to make it an update.zip.. Koush would probably be the person to ask how to do it...
But I pretty much have to be at a computer to mess up your radio or kernel do you can use it to fix your phone with odin and do a nandroid..
I personally use an older recovery on my g1 and use switchrom.sh to backup and restore.. Which has to be typed by hand..
Sent from my SGH-T959 using XDA App
Yeah, so that.
Ya its called mass storage mode.
LOL
Is that what you'd use if you wanted to make a tar of your setup?
The Root said:
Is that what you'd use if you wanted to make a tar of your setup?
Click to expand...
Click to collapse
Hmm...
Make a tar on the phone?
I guess you could system dump your setup?
Or stick all your mods in the rom flash like i do and then restore with titanium.
Sorry i couldn't help i was just joking around.
You can use adb to make direct, bit-for-bit copies of each partition using the dd command, I just can't remember the exact format of the command. But the phone doesn't have a built-in method to do the reverse of what download mode is used for (although I'm not sure what Odin's dump option does, sounds like the right idea but I've never seen a how-to, and, of course, we've always been advised to uncheck all but auto reboot)
Try a google search for "xda epic 4g" and keywords pertaining to making your own odin flashable (using xda as a keyword yields more results from the forum, and using google instead of xda search yields results that actually contain the key search terms, lol). I learned of this from a thread somewhere around here, just can't recall where. Oh, and maybe it would be better NOT to include Epic, I'm starting to doubt myself as to whether the thread was in our section... Hope that helps you find what you're looking for
Sent from my SPH-D700 using XDA App
There is a "kernel panic upload mode" that various Samsung devices can get trapped in after a kernel panic. I've not seen it happen on an Epic, but that's not what you're asking about.
You can dump the flash partitions using adb. It's best done in recovery with the file systems mounted read-only, to guarantee that they're in a consistent state. While you can do it from Android, inevitably changes (particularly to /data) will be made underneath you while dumping, which is bad for restoration.
Anyways, in order to make a proper dump you need a recovery that spawns the adbd service with either ro.secure=0 or ro.debuggable=1 set in default.prop. I think ClockworkMod does this, but it's been a long time since I used it.
Boot into recovery and connect your phone up to USB. Run "adb shell" and make sure you have a root shell ("#" prompt). If you have a user shell ("$" prompt), try running "adb root", wait, then run "adb shell" again. Once at the root shell prompt, run:
Code:
mount -ro remount /dev/block/stl6 /mnt/.lfs
mount -ro remount /dev/block/stl9 /system
mount -ro remount /dev/block/stl10 /data
mount -ro remount /dev/block/stl11 /cache
mount -t vfat /dev/block/mmcblk0p1 /sdcard
mkdir /sdcard/dump
cd /sdcard/dump
sync
cat /dev/block/bml1 > boot.bin
cat /dev/block/bml2 > ries.pit
cat /dev/block/bml4 > Sbl.bin
cat /dev/block/stl6 > param.lfs
cat /dev/block/bml7 > zImage
cat /dev/block/bml8 > recovery.bin
cat /dev/block/stl9 > factoryfs.rfs
cat /dev/block/stl10 > datafs.rfs
cat /dev/block/stl11 > cache.rfs
cd /
umount /sdcard
mount -wo remount /dev/block/stl6 /mnt/.lfs
That remounts all the stl partitions read-only, mounts the SD card, creates /sdcard/dump, dumps all the partitions, unmounts the SD card, and remounts /mnt/.lfs read-write so the phone will reboot properly. At this point you can reboot and once in Android, copy the dump folder over to a computer.
From here you can create a .tar containing the partitions that you want to flash with Odin/Heimdall. In Linux or Cygwin, that would be:
Code:
tar cf foo.tar zImage recovery.bin factoryfs.rfs datafs.rfs cache.rfs
.
You could include param.lfs, but it's not worth restoring unless corrupt, and if it's corrupt it's probably better to grab the version from the latest stock tar. I also wouldn't flash boot.bin or Sbl.bin unless you absolutely have to, and again, I'd go for the stock tar versions.
Also, according to the Galaxy S wiki page, bml12 is supposed to contain modem.bin but I've never had success dumping it.
Disclaimer: I've never actually restored a dump with Odin/Heimdall--I haven't had the need to. But I believe the above should be all that's necessary.
All hail mkasick! Thanks for my daily education
Sent from my SPH-D700 using xda premium
JohnCorleone said:
All hail mkasick! Thanks for my daily education
Sent from my SPH-D700 using xda premium
Click to expand...
Click to collapse
I know understand you "ocean of knowledge" metaphor lol
Sent from my SPH-D700
Thanks guys.
whoa I just got edjumicated! that's some detailed info. thanks
Sent from my SPH-D700 using XDA App
I think it should be manditory for mkasick to post once a day minimum
Sent from my SPH-D710 using xda premium
JohnCorleone said:
I think it should be manditory for mkasick to post once a day minimum
Sent from my SPH-D710 using xda premium
Click to expand...
Click to collapse
Agreed.
Posted by Mr. Z's Epic 4G Touch+Keyboard
Considering you can't dump the modem (with anything, bmlwrite, redbend_ua, dd) is it safe to assume you can't flash one to it?
remember to thank me if I was helpful
It might be possible to dump the modem, just not with the same method as regular flash partitions. But yes, I think all the modem image we have came from stock Odin tars.
As for flashing the modem, folks definitely do it with Odin. Samsung's recovery also contains a "write_firmware_image" function that a binary diff of the modem and applies it to the current firmware. It's not part of the AOSP recovery sources, so I don't know how it works.
Come to think of it, there's no obvious check to see if the modem is the correct version when applying an OTA update. So if you're running a stock phone except for the modem, and apply an update, something unfortunate might happen.
mkasick said:
It might be possible to dump the modem, just not with the same method as regular flash partitions. But yes, I think all the modem image we have came from stock Odin tars.
As for flashing the modem, folks definitely do it with Odin. Samsung's recovery also contains a "write_firmware_image" function that a binary diff of the modem and applies it to the current firmware. It's not part of the AOSP recovery sources, so I don't know how it works.
Come to think of it, there's no obvious check to see if the modem is the correct version when applying an OTA update. So if you're running a stock phone except for the modem, and apply an update, something unfortunate might happen.
Click to expand...
Click to collapse
I know you can flash with odin...I mean on-device (if thats a word?) tools. I started looking into the di18-ec05 update.zip. What is the difference between a modem.bin and modem_delta.bin? There seems to be a pretty hefty size difference
The delta contains just the diffs between modems.
mkasick said:
You can dump the flash partitions using adb. It's best done in recovery with the file systems mounted read-only, to guarantee that they're in a consistent state. While you can do it from Android, inevitably changes (particularly to /data) will be made underneath you while dumping, which is bad for restoration.
Click to expand...
Click to collapse
Yes, that was what I was thinking of - thanks for a *much* more detailed explanation, mkasick!
Sent from my SPH-D700 using XDA App
I posted a tutorial on how to mke an odin tar a loong time ago in general.. using dd instead of cat, same **** though...
Also modem patches are redbend bindifs full modems can't be flashed except in download mode.. they aren't actually in bml12, its some trickery involved, they are really in the nvram..
Also epic does have a kernel panic upload mode... little green guy and all, seen it a few times lol
Sent from my SPH-D700 using XDA App
mkasick said:
Come to think of it, there's no obvious check to see if the modem is the correct version when applying an OTA update. So if you're running a stock phone except for the modem, and apply an update, something unfortunate might happen.
Click to expand...
Click to collapse
There is an edify script assert for baseband version btw
Sent from my SPH-D700 using XDA App
Holy crap. I found upload mode. Kinda. Get your favorite file manger, and browse to /mnt/.lfs. TELL ME WHAT YOU SEE. Cuz I'm confused
FIRST: Supercurio makes a really awesome app, so I highly recommend purchasing the pro version to support further development for two reasons. First, it's the right thing to do and second, I haven't figured out how to make all of the VooDoo sound settings work yet, and I'm a busy college student in my senior year attempting to convince someone to pay me, so I don't have much time on my hands (thus my erratic shower schedule).
That being said, I have attached a script that I run on boot. That being said, I'm running AOSP's oiCSv43 ROM with Eugene's Speedy 2 kernel. So long as your kernel supports the following options (which will be listed below), you shouldn't have a problem with this script. I've also verified that it works just peachy with GLaDOS 2.5 for ICS-- another very good ICS kernel [I head 2.6 is quite nice]. (This should also work for GB roms if anyone cares to test for me)
You must have
root
superuser
busybox, or an alternate way to mount /system as writable (there are 2 other methods AFAIK)
ROM that supports init.d scripts OR scripter or some other app like it (in this case, you can just add the script to scripter and set it to run on boot)
If you don't (know if you) have init.d support, check out this post by damnmisur about scripting with ROM Toolbox
This script changes the following:
cpu governor -> interactive
max freq->1000mhz
min freq->150mhz
touchwake enabled with 10 second delay
back light dimmer settings are commented out, so it uses whatever is default for you kernel
bln enabled with blink disabled
blx commented out (reverts to kernel default which is likely 96%)
voodoo_color/red_multiplier->2724764160
voodoo_color/green_multiplier->3059586880
voodoo_color/blue_multiplier->2944130880
voodoo_color/red_v1_offset->-26
voodoo_color/green_v1_offset->-30
voodoo_color/blue_v1_offset->-33
voodoo sound anti-jitter, hi-fi play, hi-fi record, dac direct, voodoo sound control enabled
headphone_amplifier_level->+3db
voodoo sound mono downmix disabled
USE AT YOUR OWN RISK! I AM NOT LIABLE IF ANYTHING GOES WRONG!!!
NANDROID NANDROID NANDROID.
ALWAYS MAKE A BACKUP
NANDROID
The script is in the zip. To install:
Unzip archive into same directory as adb (or wherever you want if you know what you're doing)
open a terminal
Code:
adb remount
adb shell
su
busybox mount -o remount,rw /system
exit
adb push 99whirlpool-Speedy_2 /system/etc/init.d/99whirlpool-Speedy_2
adb shell
chmod 755 /system/etc/init.d/99whirlpool-Speedy_2 && reboot
The file has no extension! If you want to edit it, open it in a text editor. If you don't know what you're doing, don't play with it. To disable boolean values, change the 1 (1 means true i.e. on) to a 0 (which means false, i.e. off).
frequency values are in hertz
you can find out what scaling governors and frequencies your kernel supports by typing
Code:
adb shell
su
cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_governors
cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_frequencies
Feel free to edit anything you'd like!
DO NOT FLASH THE .ZIP FILE! Extract and follow the directions above
thanks....
Nice but some of your changes are the exact opposite of what I use. So I'll just change voodoo settings because I'll be a lot less to change with every boot than if I was to use this.
I do of course use easy settings. Color multipliyer: all the way right.
Gama: all the way left.
Sent from my Nexus S 4G using XDA App. Developer of brickROM, and OP of XDA Thread of The Year 2011.
Thank you.
Don't voodoo settings stick by default? It seems my voodoo settings stick just fine without using any script?
Si_NZ said:
Don't voodoo settings stick by default? It seems my voodoo settings stick just fine without using any script?
Click to expand...
Click to collapse
They do with the PRO version, not the free one. I've also never had a problem with them NOT sticking on Pete Alfonso's GPA19, or any GB ROM for that matter, but many ICS users, including myself, have not been able to get our settings to stick recently.
This also means that I don't have to use NSTools or VooDoo Control.
Translation:
no apps changing settings on boot->
fewer individual SU requests (count the number of toast notifications, or check the request list in the superuser app for NSTools and VooDoo control on boot)->
faster boot sequence, and less lag on boot.
Not everyone may have this problem, but I and others do.
I'm visiting for a lesson, had read this before on aosp's or Eugene's kernel threads, but didn't get it so, wanted to ask and thank you for this help.
I'm trying to make voodoo stick, I downloaded your zip, opened and changed a couple of things in Wordpad, it asked to save and rezip, said yes. I used different multipliers and want bln to blink, so changed those numbers and the blink 0 to 1 (or vice versa, followed your directions).
So to do this, do I just flash zip in recovery? Any wipe or just flash away??
Like you said, I will backup, but really don't want to make a mess and thought I would double check first.
nmoreman said:
I'm visiting for a lesson, had read this before on aosp's or Eugene's kernel threads, but didn't get it so, wanted to ask and thank you for this help.
I'm trying to make voodoo stick, I downloaded your zip, opened and changed a couple of things in Wordpad, it asked to save and rezip, said yes. I used different multipliers and want bln to blink, so changed those numbers and the blink 0 to 1 (or vice versa, followed your directions).
So to do this, do I just flash zip in recovery? Any wipe or just flash away??
Like you said, I will backup, but really don't want to make a mess and thought I would double check first.
Click to expand...
Click to collapse
Don't flash the zip. It's just there so that I could upload the attachment properly.
The script is in the zip. To install:
Unzip archive into same directory as adb (or wherever you want if you know what you're doing)
open a terminal
Code:
adb remount
adb shell
su
busybox mount -o remount,rw /system
exit
adb push 99whirlpool-Speedy_2 /system/etc/init.d/99whirlpool-Speedy_2
adb shell
chmod 755 /system/etc/init.d/99whirlpool-Speedy_2 && reboot
I'll add a readme to the zip to make it more obvious.
Shark_On_Land said:
Nice but some of your changes are the exact opposite of what I use. So I'll just change voodoo settings because I'll be a lot less to change with every boot than if I was to use this.
I do of course use easy settings. Color multipliyer: all the way right.
Gama: all the way left.
Sent from my Nexus S 4G using XDA App. Developer of brickROM, and OP of XDA Thread of The Year 2011.
Click to expand...
Click to collapse
If your just worried about voodoo settings you could do the following :
http://forum.xda-developers.com/showthread.php?t=1366780 or just use the script from this method. Of course you have to edit numbers to your preference.
Sent from my Skanky Nexus S in the Matr1x using XDA App
damnmisur said:
If your just worried about voodoo settings you could do the following :
http://forum.xda-developers.com/showthread.php?t=1366780 or just use the script from this method. Of course you have to edit numbers to your preference.
Sent from my Skanky Nexus S in the Matr1x using XDA App
Click to expand...
Click to collapse
Thanks, I'm going to add this post to the OP as an alternative for those without init.d support
DISCLAIMER: YOU AGREE TO TAKE FULL RESPONSIBILITY FOR YOUR DEVICE IF YOU PROCEED.
The original thread (http://forum.xda-developers.com/moto-g/general/mod-save-data-space-cache-partition-t2942765) was getting to cluttered up with development and testing so I decided to start a new thread with the "finished" product. The original thread will be renamed to Q&A/Development. We might even ask for the old thread to be closed down. (up to @Bert98, the thread's creator.)
Moto G's internal eMMC card has a ~600Mb partition called /cache, which is not used since the apps' cache is stored in /data, so the latter fills up and the first one stays empty.
Owning a 8Gb model, having 600Mb not available for storage really bugged me, because my phone's memory (/data partition) was always full because it's a 5.7Gb space shared between apps and microSD files.
Now, it may not work for you if:
a) you have A LOT of apps installed.
And by "a lot", I mean more than 90-100 apps, but if you have a 8Gb model, you probably don't
b) you're running ART (this is default in lollipop and newer)
Since ART uses a lot more space than dalvik, the space in the /cache partition probably won't be enough. When I was running ART, it used 1Gb more than dalvik.
Original post by @Bert98
Click to expand...
Click to collapse
This was tested on my moto g 16GB which is running RetailUS_4.4.4 kitkat with CWM recovery. The custom ROM procedure was tested on the same phone but with cm11 Nightly installed.
Prerequisites:
1. You must have "adb root" functioning. If you don't head to this thread: http://forum.xda-developers.com/showthread.php?t=1687590 and there is a free download link at the bottom of the post.
Download and install the apk on your phone. Open up adbd insecure (the new app) and grant it superuser rights PERMANENTLY. Check the box that says "enable insecure binary" and make sure to check the box
that says "enable at boot."
2. You must have a recovery that can accept adb shell commands.
3. Root Access Duh?!
4. A windows machine capable of running batch files.
5. A decent text editor, notepad will work but notepad++ is strongly recommended. (Only needed if you are using STOCK ROM procedure)
Please, please make a nandroid backup before you continue!!!!
Stock ROM procedure:
Read the directions very carefully and then read them again, before continuing.
1. Download the cachemover_v1.3.zip from: LINK REMOVED DUE TO SCRIPT ISSUES.
2. Extract the contents.
3. Connect device to PC and navigate to the extracted folder.
4. Double click/Run the cachemover_Stock.bat
5. Follow the onscreen instructions until you get to the part where it says to edit a file.
6. About halfway through the script it will pull a file called "init.qcom.post_boot.sh" to the folder.
7. Open it with a TEXT editor and navigate to about line 487 (Might be different for 8gb model). Look here for a better understanding: https://www.dropbox.com/s/jr5lyl5s5i2jtpg/where to paste code.PNG?dl=0
8. Start a new line and paste this code in the file: (Refer to the image above for help)
Code:
chmod 655 /cache
chmod 655 /cache/dalvik-cache
chmod 655 /cache/dalvik-cache/*
9. Make sure to save the file in the same folder as the cachemover_Stock.bat
10. Press any key to continue on the script and let it do its thing.
11. It will reboot several times and land you on the home screen/lock screen.
12. If the script hangs after a reboot, you need to unlock the device to reestablish a connection with your computer.
13. There might be one or two force closes but once you close the notifications they will not come back.
Custom ROM procedure:
USE THIS FOR ROMS THAT DO NOT REMOUNT OR CHANGE PERMISSIONS OF /CACHE ON BOOT
1. Download the cachemover_v1.3.zip from: https://www.dropbox.com/s/bzj34g4q1s61ojz/cachemover_v1.3.zip?dl=0
2. Extract the contents.
3. Connect device to PC and navigate to the extracted folder.
4. Double click/Run the cachemover.bat
5. Follow the onscreen instructions.
If anything goes wrong:
Go to recovery, wipe cache, then wipe dalvik-cache and reboot. This should get your device back to how it was.
(If you used STOCK ROM procedure)
The script made a backup of the "init.qcom.post_boot.sh" file to /sdcard/init_backup
You can restore the shell script to /system/etc/ via shell commands or by using a root browser. To restore permissions:
Code:
chmod 740 /system/etc/init.qcom.post_boot.sh
chown root:root /system/etc/init.qcom.post_boot.sh
Custom ROM procedure already has a restore script!
I am currently working on an auto restore script for stock and that will be relased soon, hopefully! :good:
Changelog:
v1.0 - First stable release. Does not work on STOCK ROM.
v1.1 - Added a restore script.
v1.3 - Added support for STOCK ROM. There are still a few bugs.
How it works?!?!
Coming soon...
Huge thanks to @Bert98 and @dd043
Hit the thanks button if it worked! I went through about 50 factory resets, and reflashed the ROM about 25 times, and put about 10 hours of work into this script! Really motivates me for future projects. :laugh:
Thanks for your help man and effort.
I encountered a problem, everything works up until my device boots in CWM to fix permissions, then just sits there doing not alot I don't even see the option in my CWM.
Any ideas? cheers
Sent from my XT1032 using XDA Free mobile app
When it reboots to cwm unplug the cable and replug it, if it hangs just type these commands manually from a command window.
chmod 655 /cache
chmod 655 /cache/dalvik-cache
chmod 655 /cache/dalvik-cache/*
reboot
If this does not work you may ned to go into mounts & storage in the cwm menu and click mount /cache. Then try the commands again.
I'm having some issues on stock.
I thought 0655 fixed everything but no, I can't install any app after moving the dalvik-cache to /cache. I tried chmoding 0777 on the new cache folder, on /cache itself, to no avail.
Code:
E/dexopt cannot open '/data/dalvik-cache/[email protected]' for output
Anyone can confirm it's not only my device? And/or can help find a fix?
Also does someone knows how to execute commands on a particular init step? Real init.rc scripts can do:
Code:
on post-fs-data
mount -o bind /cache/dalvik /data/dalvik-cache
It there was a way to achieve the same from post_boot/init.d we could mount -o bind /cache/dalvik /data/dalvik-cache and all permissions issues would disappear as well as the need for symlink.
You have a typo in the threads title. Just a heads up.
Vuciz said:
You have a typo in the threads title. Just a heads up.
Click to expand...
Click to collapse
Thanks for letting me know!
dd043 said:
I'm having some issues on stock.
I thought 0655 fixed everything but no, I can't install any app after moving the dalvik-cache to /cache. I tried chmoding 0777 on the new cache folder, on /cache itself, to no avail.
Code:
E/dexopt cannot open '/data/dalvik-cache/[email protected]' for output
Anyone can confirm it's not only my device? And/or can help find a fix?
Also does someone knows how to execute commands on a particular init step? Real init.rc scripts can do:
Code:
on post-fs-data
mount -o bind /cache/dalvik /data/dalvik-cache
It there was a way to achieve the same from post_boot/init.d we could mount -o bind /cache/dalvik /data/dalvik-cache and all permissions issues would disappear as well as the need for symlink.
Click to expand...
Click to collapse
Let me try and do that right now... Ill get back to you if it does!
My script works on stock btw... But the mount way seems a bit easier and might cause less errors than my way.
Try it please.
skyguy126 said:
Let me try and do that right now... Ill get back to you if it does!
My script works on stock btw... But the mount way seems a bit easier and might cause less errors than my way.
Try it please.
Click to expand...
Click to collapse
Yes I've tried your script, all went well but the result is the same. The script itself works nicely btw
Applications present before moving cache work perfectly, but I can't install anything new. I suspect it might be my device but before wiping everything I'd prefer feedback from others :fingers-crossed:.
I cannot install new apps as well. The mount command you showed me has the same effect too. I honestly don't know anymore, the sym link did not allow the install of new apps nor did the mount command you sent me. Correct me if I am wrong.
Edit: Going through all the init files on my phone to see which one remounts /cache at boot.
Why does the init.rc get overwritten at boot. Is it because the kernel (boot.img) is the one that copies it over? I have found by changing the perms/locations in this file and init.target.rc you can achieve what this mod is trying to acomplish.
I don't see the mount cache command in CWM strange
I've managed to get back to normal, thanks for everyone's help though, I will keep and eye on the thread
Sent from my XT1032 using XDA Free mobile app
non-windows version?
Thanks for this tool. It's a great idea and our Motos really need it.
However, I have a problem - I do not own a windows license (os x and ubuntu user) and I would prefer not to spend $120 just to use it for this script. Pirating is out of the question for me.
I was wondering if there is any chance of having this script written for linux and/or mac. If impossible, is there a LEGAL way of running windows in a virtual machine? Something like a trial or similar?
If you know how just convert it to shell script for osx and Linux. I give you permission to do this but you may not take credit or rehost your creation.
Ok so I have the kernel extracted and we could modify and flash that, but I believe that it's not really necessary. There are a lot of risks to flashing kernels and I am not willing to take it. So is there a way we can modify dalvik so it creates it's cache in /cache instead.
skyguy126 said:
Why does the init.rc get overwritten at boot. Is it because the kernel (boot.img) is the one that copies it over? I have found by changing the perms/locations in this file and init.target.rc you can achieve what this mod is trying to acomplish.
Click to expand...
Click to collapse
Yes the init.rc is in the boot ramdisk. I don't think it would be worth the trouble to rebuild a boot.img. The moto g is fairly unbrickable but it's quite a lot of work to setup an environment to rebuild an image :/.
Too bad for the mount command, I was sure it was working but maybe I had changed something else and don't quite remember the steps to reproduce
We could possibly implement a shell script toggler for when we need to install new apps, but I'm afraid it'd become annoying fairly quickly: I noticed the issue initially because google play services decided to update itself, failed, and broke all google apps. As far as I know this autoupate can't be disabled.
Thanks for trying!
dd043 said:
Yes the init.rc is in the boot ramdisk. I don't think it would be worth the trouble to rebuild a boot.img. The moto g is fairly unbrickable but it's quite a lot of work to setup an environment to rebuild an image :/.
Too bad for the mount command, I was sure it was working but maybe I had changed something else and don't quite remember the steps to reproduce
We could possibly implement a shell script toggler for when we need to install new apps, but I'm afraid it'd become annoying fairly quickly: I noticed the issue initially because google play services decided to update itself, failed, and broke all google apps. As far as I know this autoupate can't be disabled.
Thanks for trying!
Click to expand...
Click to collapse
How about making a simple apk that toggles this feature. Something like when you click the icon it doesn't even open but gives a little notification of success. Something like that. I myself am not experienced with apks but I can put together a shell script for the apk.
skyguy126 said:
Ok so I have the kernel extracted and we could modify and flash that, but I believe that it's not really necessary. There are a lot of risks to flashing kernels and I am not willing to take it. So is there a way we can modify dalvik so it creates it's cache in /cache instead.
Click to expand...
Click to collapse
Patching dalvik itself sounds promising. It can probably be done with in a batch script with a command line hex editor.
The path is defined in frameworks/base/cmds/installd/installd.h
Code:
#define DALVIK_CACHE_PREFIX "/data/dalvik-cache/"
Not sure if there is another mention in the source tree.
But there's nothing to say we wouldn't face the same issue, the error message in the logcat is pretty generic
dd043 said:
Patching dalvik itself sounds promising. It can probably be done with in a batch script with a command line hex editor.
The path is defined in frameworks/base/cmds/installd/installd.h
Code:
#define DALVIK_CACHE_PREFIX "/data/dalvik-cache/"
Not sure if there is another mention in the source tree.
But there's nothing to say we wouldn't face the same issue, the error message in the logcat is pretty generic
Click to expand...
Click to collapse
Ill try it. I don't mind doing a bunch of resets because I am using my moto g as a test bench anyway. My daily driver is the OnePlus One
dd043 said:
Patching dalvik itself sounds promising. It can probably be done with in a batch script with a command line hex editor.
The path is defined in frameworks/base/cmds/installd/installd.h
Code:
#define DALVIK_CACHE_PREFIX "/data/dalvik-cache/"
Not sure if there is another mention in the source tree.
But there's nothing to say we wouldn't face the same issue, the error message in the logcat is pretty generic
Click to expand...
Click to collapse
EDIT: Unfortunately it didn't work. I don't know if I modified the installd file correctly. The program I used is HxD.
Is there a way we can force dalvik to start after the directories are created. And change dalvik to create it in /cache.