[Diskussion] Root + CWM Recovery + Systemapps entfernen + Auslieferungszustand

  • 451 Antworten
  • Letztes Antwortdatum
Danke.
Interessanter Gedankengang, das ist ne gute Frage. :D

Ob das überhaupt Image Files von einer Partition sind? Von den Dateinamen her merkwürdig. Aber ich teste es einfach mal. ;)
 
wie geschrieben, das script benennt die files nicht richtig...so stehts auch in dem thread...
es gab eine abgeänderte version, welche die md5-checksummen verglichen hat und danach dann die files benannt hat...zumindest hab ich das so verstanden...allerdings ist der link zu diesem script off...
 
Fett! Es ist die Datei splash.raw565, sieht original wie das X3 Recovery aus, und ist es wahrscheinlich auch. ;)

Habe vorher die andere Datei geflasht, dann verhält sich das X3 wie ohne Recovery.
Vol+ und Power bootet das X3 nach einiger zeit, überspringt also die Recovery Partition.
Vol- und power bleibt es im fastboot.
 
  • Danke
Reaktionen: Ryuk
da war meine allererste vermutung ja richtig... :D

also kann man so die clockworkmod recovery wieder rückgängig machen...und hat dann wieder ein komplettes lidl/fonic-stock x3...
fein fein

:thumbup:
 
  • Danke
Reaktionen: judokus
Mission Accomplished! :D

Jetzt Bügel ich aber wieder das CWMod-R drauf ;)
 
Super Arbeit Jungs!
Edit: hast du einfach die Dateiendung ergänzt?
Edit2: habs hinbekommen. Allerdings mit Android-SDK ;)
 
Zuletzt bearbeitet:
  • Danke
Reaktionen: judokus
Habe hier mal das orginal X3/X5-Recovery (professionell extrahiert von Ryuk :), danke dafür) hoch geladen: File-Upload.net - recovery.zip

Einfach die recovery.img im Ordner "RecoveryClockmodByZaDkYn" ersetzen (am besten vorher die andere umbenennen) und instalados.bat ausführen. Dann habt Ihr wieder ein orginales Recovery mit Batterienzeige usw.
 
Zuletzt bearbeitet von einem Moderator:
  • Danke
Reaktionen: leo.pernes und judokus
How-To Thread aktualisiert
 
Geile Sache, besten Dank für die Mühe!
 
dank geht auch an denjenigen ausm android.modaco forum, der das script geschrieben hat, ohne das wäre es nicht gegangen...
auch wenn er es wohl nicht lesen wird... :winki:
 
  • Danke
Reaktionen: leo.pernes
Gib mir den Name und ich fügs ein
 
McSpoon
 
mein gott, ihr habt's geschafft! (und ich war nicht dabei :crying: - bin aber ganz froh, im ansatz richtig gedacht zu haben)

super!! danke an [8], Ryuk, Diamond-X und McSpoon!!

edit: goiles kloines perl script! die sprache ist eh der hammer... (das script läuft auch unter windows, wenn man perl installiert hat, am besten ActivePerl)
ich hoffe, es ist ok wenn ich's hier mal reinstelle, so muss man sich nicht extra anmelden wenn's jemand interessiert. hier "kompiliert" als .exe (mit perl2exe), einfach die update.app draufziehn.
Code:
#!/usr/bin/perl
######################################################################
#
#   File          : split_updata.pl
#   Author(s)     : McSpoon
#   Description   : Unpack a Huawei U8220 'UPDATA.APP' file.
#                   http://pulse.modaco.com
#
#   Last Modified : Thu 24 December 2009
#   By            : McSpoon
#
######################################################################

use strict;
use warnings;

# Turn on print flushing.
$|++;

# Unsigned integers are 4 bytes.
use constant UINT_SIZE => 4;

# If a filename wasn't specified on the commmand line then
# assume the file to be unpacked is called "UPDATA.APP". 
my $FILENAME = undef;
if ($#ARGV == -1) {
    $FILENAME = "UPDATA.APP";
}
else {
    $FILENAME = $ARGV[0];
}

open(INFILE, $FILENAME) or die "Cannot open $FILENAME: $!\n";
binmode INFILE;

# Skip the first 92 bytes, they're blank.
seek(INFILE, 92, 0);

# We'll dump the files into a folder called "output".
my $BASEPATH = "output/";
mkdir $BASEPATH;

# These filenames are guessed. Feel free to correct.
&dump_file($BASEPATH."file01.mbn");
&dump_file($BASEPATH."file02.mbn");
&dump_file($BASEPATH."boot_versions.txt");
&dump_file($BASEPATH."file04.mbn"); # oemsblhd.mbn?
&dump_file($BASEPATH."file05.mbn"); # oemspl.mbn?
&dump_file($BASEPATH."upgradable_versions.txt");
&dump_file($BASEPATH."file07.mbn"); # 40byte header
&dump_file($BASEPATH."file08.mbn"); # .ELF, AMSS?
&dump_file($BASEPATH."file09.mbn");
&dump_file($BASEPATH."version.txt");
&dump_file($BASEPATH."file11.mbn");
&dump_file($BASEPATH."appsboothd.mbn"); # 40byte header
&dump_file($BASEPATH."appsboot.mbn");
&dump_file($BASEPATH."file14.mbn"); # 40byte header
&dump_file($BASEPATH."boot.img");
&dump_file($BASEPATH."file16.mbn"); # 40byte header
&dump_file($BASEPATH."system.img");
&dump_file($BASEPATH."file18.mbn"); # 40byte header
&dump_file($BASEPATH."userdata.img"); # maybe?
&dump_file($BASEPATH."file20.mbn"); # 40byte header
&dump_file($BASEPATH."file21.mbn"); # 40byte header
&dump_file($BASEPATH."recovery.img");
&dump_file($BASEPATH."file23.mbn"); # 40byte header
&dump_file($BASEPATH."splash.raw565"); # 320x480 raw pixels in RGB_565
&dump_file($BASEPATH."file25.mbn");
close INFILE;


# Unpack a file block and output the payload to a file.
sub dump_file {
    my ($outfilename) = @_;
    my $buffer = undef;

    # Verify the identifier matches.
    read(INFILE, $buffer, UINT_SIZE);
    unless ($buffer eq "\x55\xAA\x5A\xA5") {
        die "Unrecognised file format. Wrong identifier.\n";
    }
    
    # Extract the packet length.
    read(INFILE, $buffer, UINT_SIZE);
    my ($packetLength) = unpack("V", $buffer);
    
    # Ignore the next 16 bytes.
    read(INFILE, $buffer, 16);
    
    # Extract the length of the data file.
    read(INFILE, $buffer, UINT_SIZE);
    my ($dataLength) = unpack("V", $buffer);
    
    # Ignore the rest of the packet. We've already read the first 28 bytes.
    read(INFILE, $buffer, $packetLength-28);
    
    # Dump the payload.
    read(INFILE, $buffer, $dataLength);
    open(OUTFILE, ">$outfilename") or die "Unable to create $outfilename: $!\n";
    binmode OUTFILE;
    print OUTFILE $buffer;
    close OUTFILE;
    
    # Ensure we finish on a 4 byte boundary alignment.
    my $remainder = UINT_SIZE - (tell(INFILE) % UINT_SIZE);
    if ($remainder < UINT_SIZE) {
        # We can ignore the remaining padding.
        read(INFILE, $buffer, $remainder);
    }
    
    print STDOUT "Extracted $outfilename\n";
}
 
Zuletzt bearbeitet:
So ich hab noch mal was nachgeguckt wegen backup die erstellt wurde
der erste mein erstellte backup mit meine eingege daten vor ich was gemacht habe.
cache 38.423 KB
date 49.995 KB
dann habe ich die von anderem handy firmware draufgehabt
dann habe ich wieder wiederhergestellt und backup gemacht und einglich sollte wieder genau gleiche backup sein aber
da war der unterschied schon
cache 38.427 KB
date 49.983 KB
irgendwas ist anderes in die beide backups
 
hmmm... super arbeit :)


also sehe ich das jetzt richtig... Ein Unroot ist komplett möglich? Also ich kann das Gerät jederzeit wieder auf LIDL/FONIC bringen? inkl. original recovery?
 
fubuman_05 schrieb:
hmmm... super arbeit :)


also sehe ich das jetzt richtig... Ein Unroot ist komplett möglich? Also ich kann das Gerät jederzeit wieder auf LIDL/FONIC bringen? inkl. original recovery?

Ja aber nach hardreset fehlt im statusbar energiesteuerung
 
Statusbar fehlt auch wenn man das originale Rom drauf flasht und dann ein Hardreset durchführt?
 
fubuman_05 schrieb:
Statusbar fehlt auch wenn man das originale Rom drauf flasht und dann ein Hardreset durchführt?

Statusbar ist da aber die energiesteuerung gibt nicht mehr...
sehe bild
 

Anhänge

  • 2011-09-22 12.18.46.jpg
    2011-09-22 12.18.46.jpg
    261,1 KB · Aufrufe: 367
Nur mal so eine Zwischenfrage:

Gesetzt den Fall, dass man es schafft, die Originalsoftware / Firmware / Recovery wieder auf das Smartphone zu spielen.

Verraten dann nicht trotzdem noch die geänderten Datei-Änderungszeitpunkte den Eingriff?

In der Shell bringt diese zum Vorschein:

Code:
ls -l
und für wirklich alle (auch die versteckten) Dateien:

Code:
busybox ls -lA
 
Die Zeit ändert sich doch sowieso bei jedem Hardreset oder bleiben die daten unverändert?
 

Ähnliche Themen

K
Antworten
2
Aufrufe
1.529
Andy
Andy
S
  • Stonaged
Antworten
0
Aufrufe
1.550
Stonaged
S
Diamond-X
Antworten
7
Aufrufe
100.432
Diamond-X
Diamond-X
Zurück
Oben Unten