Notes na iPodzie i iPhonie
Posted on Wed 27 August 2008 in iPhone/iPod
• [1 min read]
Erica Sadun podała sposób na wyciągnięcie z backupów starych notek:
Zachowaj poniższy skrypt jako dbextract.pl w katalogu, który jest w zmiennej $PATH
#!/usr/bin/perl -w use strict; # This file clumsily extracts the DB's hidden in the iPhone backup files # Usage: perl -w dbpextract.pl /Users/flip/Library/Application\\ Support/MobileSync/Backup/\*/\* my %seen; foreach my $filename (@ARGV) { # Slurp File Contents open(FILE, "<$filename") or die "Can't open $filename: $!"; my $data = do {local $/; binmode FILE; }; close(FILE); # skip non-SQLite Files ($data =~ m|SQLite\|) or next; # identify the file and use it to name the output my $type = ($data =~ m!([^/]\*?)\\.(sqlitedb|db)!) ? $1 : 'unknown'; $seen{$type}++; my $outfilename = sprintf "%s\_%02d.db", $type, $seen{$type}; # Helpful progress report printf STDERR "%-60s to %-25s\\n", $filename, $type, $outfilename; # dump the part between "SQLite format 3" and end # FIXME -- is there cruft at end? I don't know the SQLite format. Maybe you do? open(OUTFILE, ">$outfilename") or die "Can't open $outfilename: $!"; binmode OUTFILE; my $sqlitedb = $data; $sqlitedb =~ s/^(.\*?SQLite format 3)/SQLite format 3/; print OUTFILE $sqlitedb; close(OUTFILE); }
Przejdź do ~/Library/Application Support/MobileSync/Backup,
Wylistuj zawartość chronologicznie: ls -lt,
Przejdź do najnowszego folderu i uruchom dbextract.pl z plikiem mdbackup jako parametrem, np.: dbextract.pl *.mdbackup,
Zbadaj otrzymane pliki. Jeśli trzeba otwórz je w sqlite3 i zdumpuj ich zawartość. Jeśli masz to czego szukałeś to fajnie, jeśli nie to przejdź do następnego chronologicznie folderu i powtórz od kroku nr 4,
Gdy znajdziesz odpowiedni plik notes.db, przescpuj go do iPhone'a/iPoda do folderu /var/[name]/Library/Notes.
*Zamiast [name] użyj:
root - jeśli firmware twojego iPoda jest niższy od 1.1.4,
mobile - w innym przypadku.*