artykuły

Android - przywracanie danych oraz bazy kontaktów po formacie wewnętrznej pamięci

21:26
Fri, 9 May 2014
Artykuł pokazuje jak odzyskać kontakty po formacie pamięci wewnętrznej (resecie urzadzenia do ustawień fabrycznych). Rady zawarte w artykule mają tym większą szansę powodzenia im mniej zmian było wprowadzanych do pamięci po formacie.
Uwaga! Ten niesamowicie popularny artykuł trochę stracił na aktualności. Dotyczy raczej telefonów z systemem Android w wersji niżej niż 4.3. W Androidzie 4.3 wprowadzono wsparcie dla komendy TRIM, która fizycznie zeruje pamięć w miejscu usuwanych danych. Według mojej wiedzy nie ma sposobu aby przywrócić tak skasowane dane.

Naotmiast jeśli posiadasz Android w wersji niższej niż 4.3 (wyłączając):
Jak najszybciej odłącz telefon od Internetu (wyłącz WiFi i transmisje danych), nie synchronizuj go z kontem Google, nie kopiuj na niego danych, nie instaluj aplikacji (zwiększa to szanse odzyskania danych). Jeśli masz Samsunga, sprawdź czy SMSy i kontakty nie zostały zbackupowane na Samsung Account Ten artykuł jest przeznaczony dla osób u których `wszystko zawiodło`. Jeśli nie jesteś jeszcze na tym etapie, proponuję skorzystać z przyjaznej aplikacji do przywracania kontaktów i SMS z telefonów z Androidem o nazwie Wondershare Dr.Fone (który prócz kontaktów i SMSów potrafi odzyskać również zdjęcia i filmy, automatycznie próbuje zrobić root), FonePaw Android Data Recovery (również automatycznie próbuje zdobyć roota) lub EaseUS MobiSaver for Android (potrzebny root w telefonie). W przeciwnym wypadku - zapraszam do artykułu.

Co zrobić gdy ktoś zresetował nam telefon do ustawień fabrycznych lub, co ciekawsze, zrobiliśmy to sami? Dane da się odzyskać prawie w całości (sam odzyskałem ok. 90%). Tym więcej się da ich odzyskać im mniej było wprowadzanych modyfikacji/dokonywanych zapisów na wewnętrznej pamięci już po dokonaniu resetu.
Po ściągnięciu pamięci urządzenia (o czym będzie mowa), dane takie jak zdjęcia, muzyka, nagrania dyktafonu czy klipy wideo można łatwo wyciągnąć dowolnym programem do przywracania danych (ja polecam Stellar Phoenix Photo Recovery - z użytych przeze mnie siedmiu najpopularniejszych programów z tej dziedziny to on najbardziej poprawnie odzyskał dane multimedialne). Ten artykuł opisuje natomiast jak odzyskać książkę adresową - coś czego popularne programy do przywracania danych niestety nie zrobią. Zapraszam do czytania.

  1. Rootujemy telefon (poradnika jak to zrobić na Twoim modelu smartphon'a poszukaj w sieci) Najlepiej jednak nie robić tego za pomocą oprogramowania Odin (które umożliwia wgranie nowego oprogramowania do smartfona), bo po takiej operacji może wiele nie pozostać, ale skorzystać ze znacznie mniej inwazyjnych metod. Ja podam adres, pod którym możecie znaleźć narzędzia służące do rootowania, takie jak KingoRoot, czy iRoot. W poniższym linku więcej tego typu narzędzi:
    https://tunesgo.wondershare.com/mobile-phone/android-root-tool.html
  2. Ściągamy wewnętrzną pamięć telefonu i konwertujemy ją do formatu VHD (poniższy opis wzorowany na tym artykule z xda-developers). Dostając sygnał o niewystarczającym wytłumaczeniu niniejszego punktu od czytelnika @Patryk, przetłumaczyłem materiał ze strony xda-developers.com uzupełniając go i rozszerzając. Sporządziłem również wideotutorial obrazujący w bardziej przystępnej formie cały proces kopiowania partycji ze smartphone'a.
    1. Aby ściągnąć wewnętrzną pamięć telefonu, musimy zainstalować w smartphonie program Busybox (do znalezienia w Google Play lub LHP Busybox, wersja 38 - do instalacji np. z karty pamięci zamiast przez Internet). AKTUALIZACJA: 8.1.2016 Po instalacji należy go uruchomić (po zainstalowaniu na ekranie startowym pojawi się jego ikonka), na liście narzędzi które mają zostać zainstalowane zaznaczyć: nc, dd, ftpput, mkfifo i kliknąć INSTALL. Z pewnością coś tą akcją nadpiszemy, jednak aplikacja nie waży dużo (około 2,6MiB) i przy odrobinie szczęścia nie nadpiszemy nią ważnych danych. Osoby nie chcące ryzykować w tym miejscu przestrzegam.
    2. Włączamy w telefonie funkcje debugowania. Aby to zrobić, wchodzimy w "Ustawienia" następnie w "Opcje programisty" i zaznaczamy "Tryb debugowania" (umiejscowienie tej opcji różni się w zależności od wersji systemu Android jaką posiadamy - pamiętam, że w jednym telefonie LG musiałem się sporo naszukać aby ją znaleźć, w Samsungach natomiast jest podana na tacy).
      AKTUALIZACJA: 30.12.2015 Nie mam pozycji "Opcje programisty" w ustawieniach - co robić? Jak żyć? Opcje programisty są domyślnie ukryte począwszy od Androida 4.2 Jelly Bean. Aby sprawić by się pokazywały, wejdź w pozycję "Informacje o urządzeniu" (w Ustawieniach), a następnie wielokrotnie, szybko pacnij palcem w pola "Numer wersji" lub "Numer kompilacji" (zależnie od tłumaczenia). Po kilku tapnięciach powinna pojawić się informacja (tzw. toast), że "Opcje programistyczne" zostały włączone. Odnajdziesz je teraz w ustawieniach.
    3. Instalujemy narzędzia Linuxowe dla systemu Windows - tzw. Cygwin (zaawansowani czytelnicy mogą spróbować wszystkie operacje wykonywać na Linuxsie zamiast na Windowsie, nie będą musieli wtedy instalować Cygwina).
    4. Instalujemy dowolny hex edytor (np. HexEdit)
    5. Instalujemy Google Android SDK (sekcja "SDK Tools Only") lub bezpośrednio stąd (ten link może w przyszłości wygasnąć)
    6. AKTUALIZACJA: 28.12.2015 Po zainstalowaniu "Android SDK"należy wejść do katalogu w którym został on zainstalowany i sprawdzić czy w tym katalogu znajduje się podkatalog o nazwie "platform-tools" - jeśli tak - przechodzimy do następnego punktu, jeśli nie, należy doinstalować odpowiednią paczkę. Aby to zrobić, musimy kliknąć na "SDK Manager.exe". Po uruchomieniu programu musimy doinstalować domyślnie odznaczone "Android SDK Platform-tools" z katalogu "Tools". Aby to zrobić klikamy fajeczkę przy tej pozycji i klikamy na przycisk "Install packages" znajdujący się w prawym, dolnym rogu. Wyskoczy nam okienko "Choose Packages to Install" z prośbą o zatwierdzenie licencji poszczególnych paczek, które chcemy zainstalować. Wybieramy z listy po lewej "Android SDK Platform-tools" i zaznaczamy "Accept", a następnie klikamy przycisk "Install".
    7. Instalujemy sterowniki do ADB od Google'a - można je pobrać z tego miejsca.
    8. Dodajemy do zmiennej środowiskowej PATH ścieżkę do folderu w którym znajduje się program adb.exe (program jest częścią Android SDK). W tym celu (wskazówki dla Windows 7 i Vista) klikamy menu Start, następnie prawym przyciskiem na "Komputer" wybierając z menu "Właściwości". W nowo otwartym oknie, po lewej stronie, klikamy na "Zaawansowane ustawienia systemu" a następnie na karcie "Zaawansowane" klikamy w przycisk "Zmienne środowiskowe". W sekcji "Zmienne użytkownika XXX" odnajdujemy zmienną środowiskową PATH i klikamy nań dwukrotnie. W polu "Wartość zmiennej", po średniku, dopisujemy ścieżkę katalogu w którym znajduje się program adb.exe, standardowo będzie to (jednak zweryfikujcie tą ścieżkę u siebie):
      C:\Program Files\Android SDK\platform-tools\
      AKTUALIZACJA: 8.01.2016 Nie mogę u siebie znaleźć zmiennej PATH lub nie mam uprawnień do jej zmiany - co robić? Przede wszystkim, należy powiedzieć, że dodanie ścieżki katalogu narzędzia ADB do zmiennej PATH służy tylko i wyłącznie naszej wygodzie (aby system wiedział gdzie szukać narzędzia adb.exe i abyśmy nie musieli przez to za każdym razem wpisywać długiej ścieżki do niego). Zatem, jeśli coś jest nie tak ze zmienną PATH w Twoim systemie (nie możesz jej znaleźć lub nie masz uprawnień do jej zmiany), ciągle możesz wykonywać kroki z niniejszego tutoriala, jednak zamiast adb.exe będziesz musiał wpisywać pełną ścieżkę do niego. Czyli zamiast:
      .\adb.exe
      należy przykładowo wpisać (to przykładowa ścieżka u mnie):
      "C:\Program Files\Android SDK\platform-tools\adb.exe"
    9. Wchodzimy do "Menadżera zadań" (można w tym celu nacisnąć trzech króli: ALT+CTRL+DELETE). Na karcie "Procesy" zamykamy proces "explorer.exe". Powinien zniknąć pasek zadań. Następnie z menu "Plik" wybieramy "Nowe zadanie (Uruchom...)" i w polu wpisujemy
      explorer.exe
      . Po takiej czynności pasek zadań powinien powrócić. Tym sposobem zrestartowaliśmy systemowy explorer.exe - było to potrzebne, aby wczytał nową zmienną środowiskową (można było oczywiście uruchomić ponownie komputer, ale restart explorera jest sposobem szybszym :).
    10. Uruchamiamy konsolę Cygwin jako Administrator (AKTUALIZACJA [12.03.2016]: kliknij prawym przyciskiem na ikonę Cygwina i wybierz "Uruchom jako administrator"). W tym celu, z katalogu w którym zainstalowaliśmy Cygwin (zwykle C:\Cygwin) uruchamiamy skrypt Cygwin.bat.
    11. Wpisujemy adb.exe i naciskamy ENTER. Powinno nam wyskoczyć dużo tekstu. Jeśli tak się nie dzieje i dostajemy komunikat "Nie znaleziono polecenia" to coś źle zrobiliście przy dodawaniu nowej ścieżki do zmiennej systemowej PATH. Sprawdźcie czy nie popełniliście przy tym błędu lub zróbcie to jeszcze raz :)
    12. Podłączamy smartphone do komputera, czekamy aż system wykryje sprzęt (powinien wykryć smartphone jako interfejs ADB).
    13. Odblokowujemy ekran telefonu (to ważne, bez tego nie będziemy mieli z komputera dostępu do wnętrza urządzenia). AKTUALIZACJA: 30.12.2015 Jeśli na telefonie pojawi się informacja o konieczności zaakceptowania certyfikatu związanego z debugowaniem - akceptujemy certyfikat.
    14. W konsoli Cygwin wpisujemy:
      adb forward tcp:12345 tcp:12345
      Składnia polecenia
      forward <local> <remote>
      * AKTUALIZACJA: gdzie 12345 to numer portu - może być dowolny w zakresie 1-65535, ale w naszym przypadku najlepiej w przedziale 1024-65535 (chodzi o brak konfliktu z Linuxowymi usługami). Niżej w tym artykule będziemy wielokrotnie korzystać właśnie z tego numeru portu. Jeśli więc podałeś własny numer portu w tym miejscu, musisz pamiętać o jego zmianie w innych poleceniach zawartych w tym artykule. [dziękuję czytelnikowi ~andrew_77 za zwrócenie uwagi na brak tych informacji].
    15. Następnie wpisujemy:
      adb shell
      Po tym, powinien pojawić się prompt
      shell@android:/ $
      Jeśli go widzimy to super. Nie powinno być problemów, ale jeśli jednak są, poszukajcie w internecie porad związanych z dostępem do shella przez adb.
    16. Mając shella, wpisujemy w konsoli polecenie:
      su
      To krótkie polecenie spowoduje, że dostaniemy najwyższe możliwe uprawnienia (tzw. roota). Po tej operacji prompt w konsoli powinien wyglądać tak:
      shell@android:/ #
      (zauważcie zmianę ze znaku dolara na hasz - to oznacza, że mamy roota)
    17. Teraz musimy się dowiedzieć jak nazywa się partycja/blok danych w której przechowywane są pliki użytkownika. W tym celu wydajemy polecenie:
      find /dev/block/platform/ -name 'mmc*' -exec fdisk -l {} \;
      lub (jeśli w systemie nie ma programu `find`), wydajemy polecenie:
      cat /proc/partitions
      Po jego wykonaniu, powinna wyświetlić nam się lista partycji obecnych w pamięci urządzenia:
      Lista partycji
      Partycje mają stałą wielkość, dlatego jest prawie pewne, że partycja z danymi użytkownika po formacie będzie w tym samym miejscu w pamięci, co partycja z danymi użytkownika przed formatem. Na zwróconej liście odnajdujemy partycje użytkownika orientując się po jej wielkości - będzie zajmowała od kilkuset megabajtów do kilku gigabajtów. Zapisujemy sobie jej nazwę/ich nazwy.
      AKTUALIZACJA [31.10.2015] Jeśli nie jesteśmy pewni która to, najlepiej skopiować mmcblk0, która w Androidzie jest zwykle odwzorowaniem całego dysku - jej wielkość to wielkość całej dostępnej pamięci urządzenia, a ściągając ją, ściągamy tak naprawdę wszystkie partycje. Narzędzie do odzyskiwania danych, którym będziemy się później posługiwać potrafi wykryć partycje zawarte w obrazie.
    18. Wpisujemy w konsolę:
      /system/xbin/busybox nc -l -p 12345 -e /system/xbin/busybox dd if=/dev/block/<TUTAJ NAZWA NASZEJ PARTYCJI>
      AKTUALIZACJA [12.03.2016]: gdzie -l to mała litera L, jak podkreśla @majsterkowicz. Od ang. "listen".

      (czasami, w niektórych telefonach [np. Samsungu Galaxy S3 Mini] busybox po instalacji znajdziemy w folderze: /data/user/0/stericson.busybox/files/bb/busybox, w innych telefonach z kolei musimy zlokalizować go sami lub przy pomocy polecenia `locate busybox` jeśli jest dostępne).

      W tej chwili NetCat na smartphonie oczekuje na połączenie na porcie 12345. Jeśli takie połączenie nadejdzie, NetCat uruchomi polecenie określone parametrem -e i zacznie przesyłać jego wynik (jego strumień wyjściowy) do podłączonego klienta. Polecenie okreslone w parametrze -e zwróci nam surową zawartość określonej w jego parametrze partycji. A NetCat to wyśle.
      Jedyne czego nam więc potrzeba to klienta na naszym stacjonarnym komputerze, który połączy się z tym nasłuchującym na smartphonie NetCatem. Taki klient będzie otrzymywał mnóstwo danych - musi je więc gdzieś zapisać.
    19. Stwórzmy na dysku C: katalog
      partition_images
    20. Ustalmy jaki adres IP ma Wasz smartfon w Waszej domowej sieci (w tym celu połączcie się ze swoją siecią domową, następnie wejdźcie w ustawienia WiFi i kliknijcie na nazwę sieci do której jesteście podłączeni). Powinna pojawić się tabliczka ze szczegółami połączenia, w tym z adresem IP, który został telefonowi przypisany przez serwer DHCP. Adres standardowo ma postać: 192.168.XXX.XXX (jeśli jest nieco inny - nic się nie dzieje :)
      UWAGA: w tej samej sieci lokalnej powinien być komputer stacjonarny z którego wykonujemy połączenie! Komputer stacjonarny musi więc być podłączony do tego samego routera (nie ważne czy przez kabel Ethernet, czy przez WiFi).
    21. Otwórzmy nowe okno konsoli Cygwina (nie zamykając starego z nasłuchującym NetCatem!)
    22. W nowo otwartym oknie konsoli przechodzimy do nowo utworzonego na dysku C: katalogu "partition_images". W tym celu wydajemy polecenie:
      cd /cygdrive/c/partition_images
    23. AKTUALIZACJA [24.05.2015]: Ściągamy narzędzie NetCat (wersję 32-bit lub 64-bit - stosownie do posiadanej wersji systemu operacyjnego) na nasz komputer: https://eternallybored.org/misc/netcat/ i rozpakowujemy je gdzieś (polecam na dysk C, do folderu nc [mało pisania]).
    24. Następnie łączymy się za jego pomocą z NetCatem nasłuchującym na smartphonie, przekierowując wyjście do pliku:
      /cygdrive/c/nc/nc.exe 192.168.XXX.XXX 12345 > <TUTAJ DOWOLNA NAZWA PLIKU - NP. NAZWA PARTYCJI>.dat
      Można również spróbować po kablu USB (łącząc się z uprzednio przekierowanym przez nas portem 12345 na localhoście i najlepiej wyłączając WiFi w telefonie) (sposób szybszy, ale czasami nie działa):
      /cygdrive/c/nc/nc.exe localhost 12345 > <TUTAJ DOWOLNA NAZWA PLIKU - NP. NAZWA PARTYCJI>.dat
      Operacja może potrwać od kilku do kilkudziesięciu minut (w zależności od wielkości partycji i szybkości połączenia WiFi). Podczas kopiowania, w oknach konsol nie będą się wyświetlać żadne informacje o aktualnym postępie. O tym, że kopiowanie zostało zakończone dowiemy się gdy w oknie konsoli pojawi się znak zachęty proszący nas o wpisanie kolejnego polecenia.
      Aktualną ilość przekopiowanych danych możemy ustalić sprawdzając aktualną wielkość pliku z obrazem partycji w folderze `partition_images`. Plik ten co sekundę powinien przybierać na wadze o około ~0.5 MiB. [dziękuję czytelnikowi ~andrew_77 za zwrócenie uwagi na brak tych informacji]
      Co robić jeśli plik ma ciągle 0 bajtów? Jeśli plik ma 0 bajtów i jego wielkość nie wzrasta, bądź konsola od razu zakończyła polecenie i wyświetliła znak zachęty to coś jest nie w porządku. Powinieneś wtedy sprawdzić czy połączenie pomiędzy smartphonem a komputerem jest w obie strony (!) drożne: np. czy masz wyłączony firewall oraz czy masz wystarczające uprawnienia do zapisu w danym katalogu na komputerze (dochodzą do mnie informacje od czytelników, że błędy dostępu czasami nie są sygnalizowane w konsoli). Spróbuj też uruchomić konsolę Cygwin jako Administrator na co zwraca uwagę @majsterkowicz (kliknij prawym przyciskiem na ikonę Cygwina i wybierz "Uruchom jako administrator".)
      Dla osób, którym sposób opisany w artykule po wielu próbach zupełnie nie chce działać, przygotowałem alternatywny sposób z użyciem potoku (polecenie `mkfifo`), narzędzia `ftpput` i serwera FTP uruchomionego na własnym komputerze.
      Alternatywny sposób przesyłu danych (poprzez FTP) Ten sposób zadziałał u dwóch użytkowników u których przesyłanie danych za pomocą netcat`owego klienta i serwera działało tylko w jedną stronę - tzn. gdy próbowałem wysłać coś z telefonu do komputera - wracało to do telefonu, natomiast gdy próbowałem wysłać coś z komputera do telefonu - wszystko było ok. Nie mam na razie pojęcia co jest przyczyną. Postanowiłem więc spróbować innej metody. Padło na serwer FTP.
      1. Stawiamy serwer FTP FileZilla.
      2. Dodajemy użytkownika `uzytkownik`, bez hasła
      3. Wskazujemy dodanemu użytkownikowi folder roboczy (np. c:\partition_images)
      4. Ustawiamy maksymalne uprawnienia dla tego użytkownika (wszystko w okienku serwera użytkowników FileZilla)
      5. Na Smartphonie Wydajemy polecenie utworzenia potoku FIFO:
        mkfifo /cache/myfifo
        Co robić w przypadku błędu: mkfifo Error:Read-only file system. Jeśli przy próbie utworzenia potoku, widzimy następujący błąd związany z brakiem uprawnień dostępu:
                      mkfifo myfifo
                      Error: Read-only file system.
                      
        Możemy go zniwelować tworząc plik potoku w folderze do którego mamy uprawnienia dostępu:
                      mkfifo /cache/myfifo
                      
        Co robić w przypadku niemożności połączenia (connection refused) z serwerem FTP na komputerze? AKTUALIZACJA: 29.02.2016 Przeczytaj wskazówkę zatytułowaną "Co robić jeśli serwer na komórce odrzuca wszystkie połączenia?" i wykonaj kroki tam zawarte (przekieruj odwrotnie dwa porty).

        Wejdź w ustawienia serwera FileZilla FTP i w "General Settings" zmień port nasłuchu na jeden z podanych w poleceniu `adb reverse`. Następnie kliknij na "Passive Mode Settings" i zaznacz "Use custom port range" i wprowadź zakres portów jakie przekierowałeś za pomocą `adb reverse` (dla przykładów podanych w tym artykule będzie to zakres 12345-12346).
        Trochę więcej o trybie aktywnym i trybie pasywnym FTP (wiedza opcjonalna) Na nasze szczęście narzędzie `ftpput` próbuje wykorzystać tryb pasywny połączenia FTP w przypadku gdy nie powiedzie się połączenie przez tryb aktywny. W przypadku trybu aktywnego, łącząc się z serwerem FTP, otwieramy kanał komend, ale serwer otwierając kanał do przesyłu danych do nas "oddzwania" (łączy się z podanym przez nas [na kanale komend] portem). Nie pytajcie mnie dlaczego tak to zostało zrobione (kiedyś nie było potrzeby stosowania firewalli)- po prostu tak jest i ze względów historycznych tak już zostanie. Takie, aktywne działanie serwera powoduje, że serwer nie może się z nami połączyć (musielibyśmy jeszcze bardziej się namęczyć przy przekierowywaniu portów - jeden port przekierować w jedną stronę, za pomocą `adb reverse`, a drugi w drugą, za pomocą `adb forward`). Zamiast takiego misz-maszu, korzystamy z rozsądku `ftpput`, który sam przełącza się do trybu pasywnego gdy nie powiedzie się tryb aktywny. W trybie pasywnym to my otwieramy oba połączenia (komend i danych), a serwer mówi nam jedynie na którym porcie otworzyć z nim to drugie połączenie (danych). Jak pamiętacie, ograniczyliśmy mu możliwości odnośnie portów, które może wykorzystać do dwóch (za pomocą ustawienia "Use custom port range" w ustawieniach serwera FTP) co sprawia, że skorzysta z dokładnie tych portów, który przekierowaliśmy - dzięki temu wszystko się powiedzie.
        Co robić w przypadku błędu "550: Can't access file" przy próbie kopiowania plików przez FTP? U jednego z czytelników miałem do czynienia z błędem 550 (poniżej prezentuję zrzut ekranu z takiego wypadku).
        FTP 550 error - Can't access file
        Błąd jest spowodowany brakiem uprawnień serwera FTP do zapisu w katalogu ustawionym w programie FTP jako katalog domowy FTP. Aby wyeliminować błąd, musimy nadać koncie użytkownika na którym działa serwer FTP uprawnienia do zapisu w tym folderze. W tym celu klikamy prawym przyciskiem myszy w Eksploratorze Windows na folder będący katalogiem domowym użytkownika FTP (ten który mamy ustawiony w ustawieniach serwera FTP) i wybieramy "Właściwości". Następnie przechodzimy na zakładkę zabezpieczenia i klikamy przycisk Edytuj. Nadajemy pełne uprawnienia użytkownikowi na którym działa serwer FTP (a jeśli nie jesteśmy pewni na jakim użytkowniku działa - nadajemy tymczasowo pełne uprawnienia wszystkim użytkownikom do operacji w tym folderze). Klikamy OK. i próbujemy ponownie rozpocząć operację kopiowania danych przez FTP. Powinno być już dobrze.
      6. Następnie, korzystając z naszego potoku przesyłamy go na nasz serwer FTP stojący na naszym komputerze:
        użytkownik FTP | port | IP Serwera | nazwa pliku | strumień odczytu | wysyłanie za pomocą dd danych do strumienia
        ftpput -v -u uzytkownik -P 21 192.168.0.12 mmcblk0p18.img /cache/myfifo & dd if=/dev/block/mmcblk0p18 of=/cache/myfifo bs=512
                      
      Alternatywny sposób przesyłu danych (poprzez kartę pamięci) AKTUALIZACJA [12.03.2016] Drugim sposobem przesyłu danych jest zapisywanie ich na zewnętrznej karcie SD. Aby to zrobić, musimy posiadać kartę microSD sformatowaną w systemie exFAT, a nie FAT32 (w przypadku sformatowania jej w systemie plików FAT32, największa partycja jaką będziemy mogli przesłać będzie musiała mieć maksymalnie 4GiB - to na dzisiejsze czasy mało). Dlatego zdecydowanie polecam sformatowanie karty pamięci w systemie plików exFAT, gdzie maksymalny rozmiar pojedynczego pliku wynosi 16 EiB (16 exbibajtów).
      /system/xbin/busybox dd if=/dev/block/<TUTAJ NAZWA NASZEJ PARTYCJI> of=/mnt/extSdCard/<TUTAJ DOWOLNA NAZWA PLIKU>
      Przy czym ścieżka prowadząca do karty pamięci może być różna. U mnie jest to właśnie /mnt/extSdCard, u kogoś innego może to być /mnt/sdcard1 lub /storage/extSdCard, a nawet /mnt/sdcard/ext_sd.

      Przykład praktyczny:
      /system/xbin/busybox dd if=/dev/block/mmcblk0p20 of=/mnt/extSdCard/partycja0p20.dat
      Po naciśnięciu klawisza ENTER rozpocznie się proces kopiowania danych.
      Co robić jeśli serwer na komórce odrzuca wszystkie połączenia? AKTUALIZACJA: 29.02.2016 Ta wskazówka jest raczej przeznaczona dla zaawansowanych czytelników, którzy rozumieją co robią. Wymaga zmodyfikowania poleceń, które zgromadzone są w artykule (zamiany miejscami tych które mamy wykonać na komórce z tymi, które mamy wykonać na komputerze).
      Czasami zdarza się (miałem taki przypadek u kilku czytelników [około 30%]), że nie mamy połączenia z telefonem z poziomu komputera (i to przy prawidłowym przekierowaniu portów za pomocą adb forward!). Jeszcze nie odkryłem co jest tego przyczyną, ale objawia się to odrzucaniem wszelkich połączeń nadchodzących z komputera przez serwer na telefonie. W takich przypadkach stosuję u czytelników odwrócony model połączenia (reverse-tcp). Na komputerze uruchamiam nasłuchującego netcata (lub serwer FTP), a z telefonu łączę się i przesyłam dane na serwer uruchomiony na komputerze. W takim wypadku musimy zamiast polecenia:
      adb forward tcp:12345 tcp:12345
      ...użyć polecenia:
      adb reverse tcp:12345 tcp:12345
      A przy korzystaniu ze sposobu wykorzystującego FTP (poniżej) najlepiej przekierować kilka portów (FTP używa jednego portu na komendy i jednego na dane):
              adb reverse tcp:12345 tcp:12345
              adb reverse tcp:12346 tcp:12346
              
    25. Po zakończonym kopiowaniu (o tym fakcie zorientujemy się dzięki temu, że w pierwszym oknie konsoli NetCat, który do tej pory nasłuchiwał i wysyłał nam dane, zakończy swoje działanie, znów pokaże się więc w niej prompt systemowy). W katalogu "partition_images" na dysku C: powinniśmy mieć skopiowaną partycję. Warto dodać, że podczas kopiowania, aktualną wielkość pliku często można zaobserwować jedynie w oknie "Właściwości" tego pliku. AKTUALIZACJA: 9.1.2016 W innych miejscach (np. w widoku folderu) wielkość pliku nie jest często uaktualniana i przez długi czas może wynosić 0 bajtów o czym warto wiedzieć.
    26. Jeśli kopiowaliśmy dane za pomocą `netcata` i narzędzia `dd`, to teraz należy usunąć z przekopiowanego obrazu partycji końcówkę, którą narzędzie `dd` dołączyło do danych. Jeśli korzystaliśmy ze sposobu z FTP - pomijamy usuwanie tej końcówki i od razu bierzemy się za przerabianie obrazu na plik VHD (kilka punktów niżej).
      Aby usunąć tę doklejkę, posłużymy się hex edytorem i narzędziem truncate. Otwórzmy więc naszą partycję w hex edytorze. Przejdźmy na sam jej koniec. Powinniśmy zobaczyć:Rozmiar doklejki
    27. Aby usunąć te przeszkadzające nam, dodatkowe dane, należy posłużyć się poleceniem truncate. W tym celu należy w oknie konsoli przejść do katalogu w którym znajduje się skopiowana partycja:
      cd /cygdrive/c/partition_images
      a następnie wydać polecenie:
      truncate <TU NAZWA NASZEGO PLIKU Z PARTYCJĄ> -s-108
      Po tej operacji nadmiarowe dane na końcu pliku powinny zniknąć (zweryfikujcie to hex edytorem).
    28. Konieczne jest "przerobienie" pliku z naszą partycją tak, aby można go było zainstalować w systemie. Do tego celu posłuży nam program VHDTOOL, który możecie pobrać z techieshelp.com lub bezpośrednio z mojego serwisu LHP. AKTUALIZACJA [31.10.2015] - dziękuję @Paweł Aby wszystko szło gładko i aby zaoszczędzić sobie pisania ścieżek, musimy go zainstalować skopiować do katalogu do którego przesłaliśmy obraz partycji (jeśli robicie wszystko zgodnie ze wskazówkami będzie to folder c:\partition_images).
      Natępnie wydajemy polecenie polecenie:
      ./VhdTool.exe /convert <TU NAZWA NASZEGO PLIKU Z PARTYCJĄ>
      (wielkość liter w nazwie pliku ma znaczenie)
      Co robić jeśli okienko VHDTool znika tak szybko jak się pojawia? Nie doczytałeś artykułu :) Narzędzia VHDTool nie uruchamia się poprzez dwukrotne kliknięcie. Jest to narzędzie konsolowe, nie ma swojego okna. Aby go uruchomić należy wydać powyższe polecenie w oknie Cygwina, będąc w katalogu przekopiowanej partycji. Aby zadziałało gładko, program VHDTool.exe też powinien znajdować się w tym folderze.
      Pojawia się komunikat "bash: vhdtool: nie znaleziono polecenia" Przyczyną może być cztery i tylko cztery rzeczy:
      1. Nie jesteś obecnie w katalogu, do którego przekopiowałeś narzędzie VhdTool.exe.
        Przekopiuj VhdTool.exe do katalogu z obrazem partycji C:\partition_images\ i w konsoli przejdź do katalogu partycji poleceniem:
        cd /cygdrive/c/partition_images
        (wszystko było opisane wyżej :)
      2. Nie zwracasz uwagi na wielkość liter. Musi być ona prawidłowa.
        Wydanie polecenia VHDTool.exe zamiast VhdTool.exe spowoduje komunikat o braku polecenia.
      3. Wydajesz polecenie bez oznaczenia katalogu ./
        Jesteś zbyt rozleniwiony Windowsem :) W Linuxsie, którego składnie poleceń stara się naśladować paczka Cygwin nie jest tak prosto. Należy podać oznaczenie bieżącego katalogu ./ przed nazwą programu, a więc ./VhdTool.exe
      4. W ogóle nie ściągnąłeś narzędzia VhdTool.exe
        W takim wypadku pozostaje Ci cofnąć się o kilka kroków wyżej, ściągnąć narzędzie i kontynuować pracę.
      Powyższe polecenie doklei do naszego pliku partycji sygnaturę powodującą, że system uzna taką partycję jako "swojaka" i nie będzie się buntował :)
      Po takiej operacji zmieniamy rozszerzenie naszego pliku z partycją na .vhd. Dobrze jest też zrobić kopię takiego pliku (ot tak żeby zaoszczędzić sobie roboty jak coś pójdzie źle w kolejnych krokach - warto to zrobić).
    29. Następnie klikamy "Menu Start", następnie prawym przyciskiem na "Komputer" wybierając z menu "Zarządzaj". W nowo otwartym oknie, po lewej stronie, wybieramy "Zarządzanie dyskami". Dopiero po kliknięciu i załadowaniu apletu "Zarządzania dyskami" klikamy prawym przyciskiem na "Zarządzanie dyskami" wybierając "Dołącz dysk VHD". W oknie dołączania dysku, które się pojawi, wskazujemy plik z naszą partycją i klikamy OK.
    30. W spisie dysków u dołu, odnajdujemy nasz nowo dołączony dysk, klikamy nań prawym przyciskiem myszy i wybieramy "Zainicjuj dysk". W nowootwartym oknie "Inicjowanie dysku" wybieramy styl partycji "GPT (Tabela partycji GUID)" i klikamy na OK.
    31. Ponownie klikamy prawym przyciskiem na nasz nowo dołączony dysk i wybieramy polecenie "Nowy wolumin prosty", przechodząc przez kolejne ekrany za pomocą przycisku Dalej - jednak będąc ostrożnym i czujnym, aby w ostatnim ekranie kreatora NIE wybrać formatowania partycji! W ostatnim ekranie kreatora należy wybrać opcję "Nie formatuj tego woluminu", po czym kliknąć Dalej i Zakończ.. Po wykonaniu tych czynności możemy wrócić z powrotem do głównego wątku niniejszego artykułu.
  3. Podłączamy dysk VHD za pomocą apletu "Zarządzanie dyskami" (menu Start > prawy przycisk na "Komputer" > "Zarządzaj" > Zarządzanie dyskami"). Należy kliknąć najpierw lewym, odczekać na zładowanie apletu, a później prawym przyciskiem na "Zarządzanie dyskami" i wybrać "Dołącz dysk VHD". Wskazać ścieżkę pliku VHD i kliknąć OK.
  4. Ściągamy narzędzie "Rise Data Recovery for Ext2/3/4" - jest to narzędzie do przywracania danych z partycji Unixowych w systemie plików Ext w wersjach 2, 3, lub 4.
  5. Skanujemy nim dysk VHD będący ściągniętą pamięcią telefonu. Po wszystkim przywracamy dane (zapisujemy je gdzieś na dysku twardym komputera).
  6. W przywróconych plikach odnajdujemy plik nazywający się "contacts_db2". Plik jest w formacie plikowej bazy danych SQLite3. Próbujemy go podejrzeć za pomocą narzędzia "SQLite Studio" lub "SQLite Database Browser" (oba do ściągnięcia z Internetu). Jeśli wszystko pójdzie dobrze (a najprawodpodobniej plik jest uszkodzony i nie pójdzie dobrze) to w tabeli "contacts" znajdziesz swoje kontakty. Ten poradnik natomiast jest o tym co robić jeśli nie wszystko pójdzie dobrze i program nic nie pokazuje w tabeli "contacts" lub "raw_contacts" lub wyświetla błąd.

Co robić gdy nie wszystko poszło dobrze i baza się nie otwiera (częsty przypadek)

  1. AKTUALIZACJA:1.03.2016 Najpierw proponuję sprawdzić (aby nie męczyć się bez potrzeby) czy w tym obrazie są w ogóle dane na których nam zależy. Sprawdźmy więc czy nie zostały nadpisane. W tym celu otwórz ściągnięty obraz pamięci telefonu za pomocą Hex-Edytora (polecam HxD) i wybierz polecenie "Znajdź" z menu "Znajdź" (CTRL+F). Zaznacz pole "Ciąg znaków Unicode", zaznacz kierunek "Wszędzie", wpisz nazwisko osoby, którą straciłeś z Kontaktów i kliknij "OK.". To samo powtórz z odznaczonym polem "Ciąg znaków Unicode". Spróbuj tak z kilkoma nazwiskami, które przyjdą Ci do głowy (osoby, które nie wyłączyły Internetu i telefon zdążył się już zsynchronizować z kontem Google muszą tutaj wyszukiwać nazwiska (lub inne dane!), których obecnie nie mają na liście kontaktów w telefonie, a które były przed formatem).
    Jeśli znajdziecie coś interesującego, zapraszam dalej, jeśli nie, polecam jeszcze poprzypominać sobie czy nie posiadaliście zainstalowanego jakiegoś programu, który robił kopię kontaktów np. do formatu ZIP (wtedy takie kontakty nie byłyby wyszukiwalne za pomocą czystego tekstu, a może są/były na karcie pamięci?), bądź wysyłał te kontakty na jakiś zapomniany serwer. Przykładowo, użytkownicy Samsungów często nie zdają sobie sprawy, że ich dane (Kontakty, Notatki, SMSy, MMSy, Terminarz...) są synchronizowane z tzw. kontem Samsung (jeśli stworzyliśmy je w kreatorze przy pierwszym uruchomieniu telefonu).
    Jeśli znaleźliście interesujące ciągi znaków w obrazie to trzeba określić w którym pliku są one zawarte. Ja przyjmę (dla uproszenia artykułu), że był to jednak mimo wszystko bardzo prawdopodobny plik contacts_db2.
  2. Kopiujemy plik contacts_db2 i wszystkie operacje wykonujemy na kopii (dla bezpieczeństwa).
  3. Otwieramy kopie pliku contacts_db2 w dowolnym edytorze tekstu z obsługą wyszukiwania i zamiany z użyciem wyrażeń regularnych (np. w popularnym Notepad2).
  4. Teraz chcemy usunąć z pliku wszystkie znaki sterujące i zostawić sam tekst (aby można było użyć później narzędzi tekstowych w przeglądarce - niestety nie da się do pola tekstowego w przeglądarce przekopiować danych zawierających znaki 0/NULL - dlatego to robimy). Włączamy funkcję "Wyszukiwanie i zamiana" (CTRL+H) i w nowo otwartym oknie zaznaczamy pole wyboru "Regular expression search", po czym w pole Search String wpisujemy
    [\x00-\x1F\x7F]
    
    (oznacza to wszystkie znaki sterujące - inne klasy znaków w razie potrzeby znajdziesz tutaj: http://www.regular-expressions.info/posixbrackets.html) Natomiast pole "Replace with" zostawiamy puste, po czym klikamy na "Replace All". Zamiana potrwa kilka sekund.
  5. Kopiujemy do schowka zawartość pliku.
  6. Otwieramy narzędzie RegexHero (bardzo fajne narzędzie swoją drogą).
  7. Po prawej stronie zaznaczamy tryb Multiline.
  8. Zawartość schowka wklejamy do pola "Target string". Teraz musimy obrobić dane kilkoma wyrażeniami. W efekcie, na końcu uzyskamy plik w formacie VCARD, który będziemy mogli zaimportować w telefonie.
  9. Na pierwszy ogień idzie wyrażenie wyciągające URL zdjęcia kontaktu, numery telefonów i wyświetlaną nazwę.
    W pole "Regular Expression wpisujemy"
    "bigPictureUrl":"(.+?)",(?:.+?)"phones":\[(.*?)\](?:.+?)displayName":"(.+?)","firstName
    
  10. Klikamy na mały, szary przycisk "i" znajdujący się po prawej stronie, pomiędzy oknem "Regular Expression", a "Target String". Otworzy się okno z wynikami wyszukiwania. Odznaczamy w nim "Show group names" i kopiujemy zawartość tego okna do pola "Target String".
  11. Teraz przyszedł czas na wyłuskanie właściwego numeru telefonu dla każdego kontaktu (zauważ, że obecnie widnieje przy każdym kontakcie jedna linia zawierajća cały stos informacji w formacie JSON {z klamerkami}).

    Kliknijmy zatem na zakładkę "Replace" i w polu "Regular expression" wprowadźmy wyrażenie:
    (.+?)\n{(?:.+?)universalNumber":"(.+?)"(?:.*?)}\n(.+)
    
    Natomiast w polu "Replacement String" wprowadźmy
    $1
    $2
    $3
    
    Po tych operacjach powinniśmy mieć w polu "Final String" dane w formacie:
    ADRES_URL
    NUMER_TELEFONU
    IMIE_I_NAZWISKO
    
    (każde w osobnej linijce).
  12. Teraz nadszedł czas na zrobienie z tych danych formatu VCARD: Przenieś dane z pola "Final String" do pola "Target String". (zawsze musimy pracować na wyniku poprzedniej operacji). Będąc na zakładce "Replace" wpisz w polu Regular Expression następujące wyrażenie regularne:
    (.+?)
    (.*?)
    ((.*?) (.*?))
    
    
    (pamiętając o jednej pustej linii na jego końcu - ma być pusta, więc pamiętaj o usunięciu z niej spacji)
    W polu "Replacement String" wpisz natomiast...

    ...wpisz to jeśli chcesz prościej, ale kontakty nie będą miały zdjęć

    BEGIN:VCARD
    VERSION:2.1
    N:$5;$4;;;
    FN:$3
    TEL;CELL:$2
    END:VCARD
    

    Zapisujemy wynik działania wyrażenia (z pola Final String) do pliku Kontakty.vcf (ważne jest rozszerzenie VCF), przenosimy na komórkę i już na urządzeniu przenośnym importujemy przy użyciu opcji Importuj/eksportuj znajdującej się w menu podręcznym standardowej aplikacji "Kontakty".

    ...wpisz to jeśli chcesz mieć trudniej, ale kontakty będą miały zdjęcia

    Jeśli chcesz mieć kontakty ze zdjęciem (uwaga - trudniejsze - wymaga zainstalowanego parsera PHP) to w ostatnim kroku, w polu "Replacement String" zamiast:

    BEGIN:VCARD
    VERSION:2.1
    N:$5;$4;;;
    FN:$3
    TEL;CELL:$2
    END:VCARD
    
    wpisz:
    BEGIN:VCARD
    VERSION:2.1
    N:$5;$4;;;
    FN:$3
    TEL;CELL:$2
    PHOTO;ENCODING=BASE64;JPEG:$1
    END:VCARD
    

    Zapisz wynik działania wyrażenia do pliku Kontakty.vcf i przepuść ten plik przez poniższy skrypt PHP. Poniższy skrypt ściągnie zdjęcie każdego kontaktu z podanych adresów URL i zakoduje to w pliku z kontaktami. Aby to zrobić. Utwórz plik PHP, wklej do niego poniższy kod. Do katalogu w którym utworzyłeś plik PHP skopiuj plik Kontakty.vcf i wywołaj plik PHP (uwaga - wykonuje się dosyć długo - kilkadziesiąt sekund przy 188 kontaktach).
    Oczywiście aby wywołać plik PHP musisz mieć zainstalowany parser PHP lub po prostu umieścić pliki na jakimś serwerze WWW (istnieje dzisiaj mnóstwo darmowych hostingów).

    <?php $nazwa_pliku = "Kontakty.vcf"; set_time_limit(0); $text = file_get_contents($nazwa_pliku); function callback($matches) { $jpeg = @file_get_contents($matches[1]); return base64_encode($jpeg); } file_put_contents($nazwa_pliku, preg_replace_callback( "{\b(([\w-]+://?|www[.])[^\s()<>]+(?:\([\w\d]+\)|([^[:punct:]\s]|/)))}", "callback", $text)); echo "Zdjecia sciagniete i zakodowane w pliku ".$nazwa_pliku; ?> Po wszystkim przenosimy na komórkę plik "Kontakty.vcf" i już na urządzeniu przenośnym importujemy przy użyciu opcji Importuj/eksportuj, która znajduje się w menu podręcznym standardowej aplikacji "Kontakty".

Zakończenie

Mam wielką nadzieję, że udało Ci się z powodzeniem wykonać kroki tego dość skomplikowanego poradnika. Jeśli nie - zamieść stosowną notkę w komentarzach, lub napisz do mnie - być może coś doradzę.

12345
Android - przywracanie danych oraz bazy kontaktów po formacie wewnętrznej pamięci Autor opinii: Czytelnicy, data przesłania: 4

Podobne artykuly:

Skomentuj

Aby zamieścić komentarz, proszę włączyć JavaScript - niestety roboty spamujące dają mi niezmiernie popalić.






Komentarze czytelników

    • Zielony
    • Sun, 4 February 2018, 19:24
    • Witam.
      W punkcie 24. po wpisaniu komendy: /cygdrive/c/nc/nc.exe 192.168.1.17 12345 > Rob
      nic się nie dzieje.
      Pomóż proszę,bo nie wiem czy poprawnie wpisałem komendę
    • Jhon
    • Mon, 15 January 2018, 23:12
    • Dzieki Lukasz za odpowiedz. Kurcze odpale Ci 10% jakby sie udalo ;=

      Tak naprawde to nie 1Btc ale jakas czesc jedynie. Tak czy siak zawsze warto sprobowac.

      Ile taki serwis moze kosztowac mniej wiecej? Nie wiem czy jest sens placic bo to az taka duza kwota nie bedzie. Po drugie jaka mam pewnosc ze 1-zrobia to dobrze, niczego nie schrzania itp

      Sam bym chcial sprobowac.

      Napisz prosze dlaczego uwazasz ze moze sie nie udac?

      czy dlatego ze to apka z Google Play , dlatego ze to kryptowaluta i ma jakies hmn zabezpieczenia czy cos? Czy moze jakis inny powod ?

      Telefon jest nieuzywany nic nie nadpisane. Musze zakupic do niego LCD jedynie.

      No i ostatni aspekt to taki ze ta apka moze nie istaniec juz (bo byly takie przypadki - choc szansa jest mala raczej)

      POZDRO!!

    • Jhon
    • Sun, 7 January 2018, 23:26
    • Koksie

      Wzialbym sie za to ale nie wiem czy jest szansa.

      Mialem jakas Apke do BTC.1 Bicoin tam. Zrobilem hard reset w Galaxy s4. Czy ten poradnik moze mi pomoc czy nie ma szans ?;/
    • Jagna
    • Sat, 16 December 2017, 11:07
    • Wszystko cacy. dziekuje
    • Mario
    • Sat, 16 December 2017, 11:06
    • Wszystko cacy tylko problem z wirtualnym dyskiem
    • Mario
    • Sat, 16 December 2017, 11:03
    • Nie mogę dołączyć dysku do systemu windows ponieważ ten go nie wykrywa. W partycji ściągniętej z ktelefonu na dysk komputera wciąż jest rozszerzenie DAT. pomimo a hackowania i uwidocznienia tego w Hexedit. Pozdrawiam
    • Mario
    • Sat, 16 December 2017, 10:55
    • Zakończyłem etap ściagania partycji na dysk komputera. U mnie nie było doklejonej końcówki 108 b. Nastepnię użyłem vhdtool. Po otwarciu poprzez Hexedit partycji z telefonu pojawiła się wstawka z hackiem.Lecz, gdy zmieniam nazwę rozszerzenia tej partycji to nie zmienia się roszerzenie pliku tylko sama nazwa. A co zatym idzie nie mogę jej użyć jako wirtualny dysk bo system windows jej niewidzi. Widzi rozszerzenie DAT. POzdrawiam
    • Mariano
    • Sat, 16 December 2017, 0:07
    • Witaj Łukaszu. 2 razy działałem zgodnie z Twoimi wskazówkami i się udało ściągnąć całą partycje na dysk na laptopie.Tylko nie czytałem komentarzy, więc udało mi się za drugim razem. W każdym bądz razie mam mmcblk1.dat na dysku. I co dalej z tym zrobić. Poleciłbyś mi jakiś program do otworzenia tego bo programy do recovery jakoś tego nie widzą. Pozdrawiam Mariusz
    • kinderkowa
    • Sat, 11 November 2017, 17:31
    • hej.. własnie jestem na etapie instalownia cywin.. i mam problem jak to dobrze zainstalowac by odzyskac dane sformatowane z androida???? pomocy
    • Misiek
    • Sat, 14 October 2017, 22:02
    • Dzięki za poradnik - zgrałem całość przywróconego do fabryki tabletu.
    • Verish
    • Mon, 25 September 2017, 13:51
    • Witaj,
      Bardzo dobry i ciekawy artykuł z dużo ilością informacji.Dobrą prace wykonałeś. Masz może artykuł z instrukcją jak uzyskać dostęp do pamięci telefonu który się nie włącza ale widzi go komputer?

      Pozdrawiam
    • Mad
    • Mon, 4 September 2017, 22:42
    • Witam,
      padł mi telefon i musiałem na nowo wgrać przez ODIN system w opcji Download w telefonie Samsung galaxy S6, czy w takiej sytuacji jest możliwość jeszcze odzyskania danych (zdjęcia, filmy)?
    • Przemek
    • Thu, 15 June 2017, 11:43
    • U mnie jeszcze taki problem miałem, że nie mogę dołączyć dysku VHD. Tzn. dołączyłem w konsoli zarządzania dyskami dysk wirtualny VHD. Ale Windows sam utworzył partycję GPT i teraz po kliknięciu prawym klawiszem myszy wszystkie pola mam szare. Nie mogę utworzyć nowego woluminu czy nadać litery dysku. (Win 10 x64) Udało mi się zamontować dysk za pomocą "Gizmo" ale musiałem sformatować ten dysk,żeby był widoczny.
    • Przemek
    • Sun, 11 June 2017, 9:26
    • 6. Nie było doklejki na końcu pliku. Używałem nc i dd.

      A tak poza tymi różnicami wszystko poszło ok. Zgrałem dane. W różnych programach mam podział na wszystkie partycje, które są telefonie.

      Mam pytanie czy operacja "Ściągamy wewnętrzną pamięć telefonu i konwertujemy ją do formatu VHD" robi klon 1:1 partycji z telefonu czy zgrywa dane?

      Bo jak do tej pory nie udało mi się odzyskać żadnego pliku na którym mi zależało. A różnych programów już próbowałem.

      Nie formatowałem telefonu. Usunąłem przez pomyłkę cały folder ze zdjęciami - zamiast pojedynczego zdjęcia. Czy komuś udało się odzyskać takie dane z pamięci telefonu?

      Odp: Tak, też zauważyłem, że czasami doklejki nie ma na niektórych wersjach androidów. Ściąganie danych w ten sposób robi dokładny klon partycji (co do bita), a nie tylko "kopiuje pliki". To czego Ty doświadczasz może być powiązane z tym, że masz nowy telefon który Trimuje pamięć przy każdej operacji usuwania (niestety nowe telefony tak robią). Oznacza to fizyczne zerowanie bloków pamięci w których znajdował się dany plik. W takich przypadkach nawet firmy odzyskujące dane profesjonalnie nie są w stanie nic poradzić. W miarę wprowadzania więc nowych telefonów na rynek, ten poradnik będzie coraz mniej użyteczny. Dodam taką uwagę do artykułu.
    • Przemek
    • Sat, 10 June 2017, 14:52
    • 5. Znak zachęty ma się pojawić w drugim oknie?! Pierwsze to jest raczej, to w którym między innymi dawaliśmy komendy adb.exe oraz adb shell.

      Odp: Jeśli znak zachęty pojawi się w oknie w którym wpisywałeś adb shell to kopiowanie się zakończyło (polecenie na komórce zostało wykonane). W konsoli w której wpisujemy adb shell wykonujemy polecenia na komórce.
    • Przemek
    • Sat, 10 June 2017, 13:35
    • Witam. Super poradnik. Ale na temat.

      1. Skąd wiesz, którą partycję wybrać? Usunąłem sobie przez przypadek jeden folder ze zdjęciami. Która to będzie partycja?

      2. Udało mi się podłączyć i wykonać wszystko do momentu zgrywania. Wybrałem główną partycję i leci teraz najprawdopodobniej 16GB danych, bo tyle pamięci mam mój S3.

      3. Mam małą różnicę. A to zabrało mi sporo czasu, bo myślałem, że coś robię źle. Mianowicie w konsoli mam "root@m0:/ #" a u ciebie jest "root@android:/ #". Przez to myślałem, że podłączyłem się do np. karty pamięci a nie telefonu. Myślałem, że musi być to "android".

      Dopiero teraz zobaczyłem, że wykrył mi dwie główne partycje:

      15388672 mmcblk0 i 3909632 mmcblk1, gdzie pierwsze to pamięć telefonu a drugie 4Gb karta pamięci.

      4. Trzeba też na stałe wyłączyć blokadę ekranu, bo u mnie nic nie chciał wysyłać bez tego.



      Odp: Ad 1) Zazwyczaj partycja danych jest największa. Ale w przeważającej większości przypadków u czytelników zwykle zgrywam mmcblk0, która odpowiada za całą pamięć telefonu (ma w sobie wszystkie partycje).

      Ad 2) Super. Tak ma być.

      Ad 3) To tylko nazwa użytkownika na telefonie. Tak szczerze mówiąc to nie mógłbyś się połączyć z "kartą pamięci" w ten sposób.

      Ad 4) Dobra uwaga. W chwili wolnego czasu dodam ją do artykułu.
    • AdiLee
    • Mon, 27 March 2017, 11:28
    • Witam! Brat wykasował w swoim samsungu A5 2015 wszystkie zdjecia, kontakty oraz dane z whatsappa i vibera. Chciał sprzedać tel i nie zostawiać tam żadnych moich informacji dla nowego nabywcy. Jednak tel zostawiam i chcąc przywrócić wszystko co w nim miałe. Skorzystałem z Twojej strony i porad. Ze względu na to że nie przywrócił tel do ustawien fabrycznych tylko usunął dane, wedle instrukcji pobrałem program Dr. Fone i próbuje odzyskać co straciłem. cały proces dochodzi do 90% i na tym się kończy. Nie wiem co jest powodem ze nie moze dalej kontynuować pracy i zawiesza się w tym miejscu. Sądzę że ostatnim elementem jest root którego domyślam się że nie może z jakiś przyczyn zrobić, ale nie znam się na tym aż tak dobrze a nie chce czegoś schrzanić wiec proszę o radę, co mam zrobić. Pozdrawiam!

      Odp: Witam serdecznie. Root nie jest ostatnim, ale pierwszym co trzeba zrobić, aby w ogóle myśleć o przywracaniu danych. Jeśli programy do automatycznego przywracania danych nie radzą sobie z telefonem, wówczas być może trzeba zrobić to ręcznie (czyli przejść przez cały artykuł). Natomiast ja bym spróbował zrobić taki myk: zrootować telefon np. KingoRootem, a następnie spróbować ponownie odpalić Dr Fone. Pozdrawiam,
    • jigga
    • Thu, 16 February 2017, 3:02
    • z tym, że ja nie zrobiłam przywracania systemu, wszystko w moim telefonie zostało jak np. zdjęcia z karty wewnętrznej telefon. Wszystko zostało na swoim miejscu, zniknęły tylko notatki. Czy nadal jest sens, żebym robiła to wszystko? Może jest jakiś prostszy sposób?
    • jigga
    • Wed, 15 February 2017, 23:16
    • Czy tym sposobem uda się odzyskać notatki z HTC?

      Odp: Notatki, jak i wszystkie inne dane są zapisywane w pamięci. Ściągając więc całą pamięć z telefonu istnieje jakaś szansa, że dane nie zostały nadpisane. W przypadku zdjęć czy filmów ta szansa jest wysoka (bo to duże dane), w przypadku smsów, kontaktów czy notatek ta szansa jest niższa (ale nadal istnieje). Niestety niektóre nowe telefony przy procedurze przywracania danych zerują całą pamięć. W takich przypadkach niewiele można poradzić. W każdym razie - jeśli się nie spróbuje to się nie dowie na pewno.
    • Tomek
    • Sun, 6 November 2016, 2:40
    • Hej. nie mogę tego zrobić gdzieś mam błąd ale nie wiem gdzie. Mam pytanie czy znasz osobę w Krakowie która by takie coś zrobiła? Z góry będę wdzięczny za odpowiedz
    • MarcinekCinek2
    • Sun, 11 September 2016, 22:32
    • Super poradnik, odzyskałem prawie wszystko :-) i jestem szczęsliwy.Gorącom POLECAM wszystkim . serdecznie pozdrawiam.
    • Shoti
    • Fri, 26 August 2016, 11:08
    • Już wiem, zapomniałem w kroku 28 o rozszerzeniu. Widać to na filmiku ale nie na stronie. Z jakiegoś powodu nie było to dla mnie oczywiste skoro vhdtool potrafi konwertować różne typli plików i dat i img, myślałem że wykrywa typ
    • Shoti
    • Fri, 26 August 2016, 3:57
    • Mam problem kiedy kopiowałem partycje z telefonu DD nie doklejał tych nadmiarowych bitów. Pliki ważyły mniej więcej tyle ile powinny, nic nie przerywało. Kopiowałem i po kablu localhostem i po WI-fi Z IP. W końcu ściągnąłem po FTP ( 226 Successfully transferred "/mmcblk0p17.img") w konsoli też było potwierdzenie że się ściągnęło ale VHD tool zwraca
      błąd: unable to open file. Co robię źle?
    • kama
    • Fri, 19 August 2016, 16:05
    • czemu po zainstalowaniu androida nie mogę nic zrobic w ksiązce adresowej?
    • Bartek Kraków
    • Mon, 15 August 2016, 10:53
    • Świetny artykuł! Zajelo troche czasu ale cel osiagniety.. gdyby nie pomoc lukashp.pl nie odzyskałbym kontaktów! a wszystko przez padającą baterie w samsung 9305 (S3LTE). W moim przypadku telefon utworzyl kopie "uszkodzonej" ksiazki telefonicznej o rozszerzeniu .CORRUPT i moznabylo odzyskac wszystie kontakty nie naruszone. Jeszcze raz serdeczne dzięki!
    • takto416
    • Mon, 4 July 2016, 19:14
    • dopiero teraz jestem w domu więc teraz próbuję ale coś mi nie wychodzi
      Co mogę robić źle ?
      Mam problem
      punkt 18

      Device Boot Start End Blocks
      Id System
      /dev/block/platform/msm_sdcc.1/mmcblk0p1 1 266306 2147483647
      + ee EFI GPT
      d if=/dev/block/> <
      sush: syntax error: 'newline' unexpected
      x dd if=/dev/block/ <
      sush: syntax error: 'newline' unexpected
      1|root@flo:/ #
      x dd if=/dev/block/ <
      sush: syntax error: 'newline' unexpected
      1|root@flo:/ #
      bardzo prosze o pomoc
    • noniusz
    • Tue, 3 May 2016, 19:43
    • Problemem u mnie są kontakty gdyż synchronizacja googla przywróciła tylko maile bez numerów telefonów, a specjalnie wcześniej synchronizowałem kontakty. Żadne programy androidowe i na pc znajdowały kontakty, ale te po synchronizacji bez numerów. Prawdopodobnie synchronizacja nadpisała plik, albo miejsce gdzie wcześniej były kontakty. Raise Data Recovery for Ext2 Ext3 Ext4 znalazł plik z kontaktami, ale niestety było to co zsynchronizował mi po reinstalacji androida, a plików z kontaktami przed reinstalacją nie widzi.

      Próbuję recuvą po szybkim formacie partycji do fat32 przywrócić kontakty, ale jest tam tyle plików z krzaczkami w nazwie że to koszmar. Niestety nie widzę innego rozwiązania, chyba że Raise Data Recovery for Ext2 Ext3 Ext4 może sięgnąć głębiej, czego nie zrobiłem z niewiedzy.

      ps. byłaby możliwość gdzieś indziej z Tobą popisać dla większej wygody? Chyba że nie ma dla mnie już ratunku to nie będę głowy zawracał.

      Dzięki i pozdrawiam za pomoc



      Odp: Spróbuj otworzyć cały zgrany plik obrazu pamięci w HexEdytorze i wyszukać tam frazy typu "+48" (najpierw bez, a później z uwzględnieniem kodowania Unicode). W dziale Kontakt (u góry strony głównej) masz do mnie mejl - wiem - nawigacja jest do kitu.
    • noniusz
    • Tue, 3 May 2016, 14:14
    • Wielkie dzięki za informacje:)

      Mam jeszcze jedno pytanie. Idąc tropem anglojęzycznego wątku używają tam Recuvy. Jak to się ma do rozwiązanego podanego tutaj?



      Odp: Podczas testu próbowałem również Recuvy. Nie radziła sobie tak dobrze z partycjami Ext3/Ext4 jak Raise Data Recovery for Ext2 Ext3 Ext4. Do wyciągania treści multimedialnych (zdjęć/filmów) natomiast najlepszy był Stellar Phoenix Photo Recovery. Pozdrawiam.
    • noniusz
    • Tue, 3 May 2016, 10:11
    • Witam,

      Przepraszam za wcześniejszy brak składni. PID to nie to samo co localhost:) więc przepraszam za zamieszanie.

      Mała uwaga, na Windows 10 nie kopiował mi partycji, dopiero po przejściu na Win7, wyłączeniu zapory i odinstalowaniu antywirusa(nie sprawdzałem przy włączonej zaporze i z antywirem) zaczął kopiować.

      W punkcie siedemnastym w kodzie: "find /dev/block/platform/ -name 'mmx*' -exec fdisk -l {} ;" jest literówka, powinno być mmc


      Odp: A... no właśnie - już i tak odpisałem na poprzedni post. Dziękuję za cenną uwagę - artykuł został już poprawiony. Niezwykle gratuluje przebrnięcia przez niego. Zdaję sobie sprawę, że to nie lada wyczyn :)
    • noniusz
    • Tue, 3 May 2016, 7:18
    • Witam

      Mam problem w win10 że mimo wpisania"adb forward tcp:12345 tcp:12345" sprawdzając w menadżerze zadań identyfikator PID jest tam podany inny port, a do tego pojawia się drugie adb na jeszcze innym porcie. Czy powinno być tam tylko jedno adb? I czy powinno mieć wartość 12345? Idąc dalej krokami podanymi powyżej i wpisując port 12345, czy ten który pokazuje menadżer kopiuje tylko 0B.

      Innej metody nie potrafię użyć gdyż nie wiem jak skonfigurować serwer ftp bo tego nie ogarniam.


      Odp: PID to w skrócie "Process Identifier" - jest to zupełnie coś innego niż port. PID to identyfikator liczbowy instancji programu uruchomionego w systemie. Przez Menadżer Zadań nie ma możliwości odczytania portów na których nasłuchuje dany program (przynajmniej na dzień dzisiejszy). Można to natomiast zrobić przez osobny program Sysinternals TCPView - pokaże on procesy wraz z portami na których nasłuchują/z którymi są połączone (w zależności czy to serwer czy klient).
    • Michau
    • Sun, 24 April 2016, 15:38
    • Witam, proszę o pomoc: $ /cygdrive/c/nc/nc.exe

      Cmd line: 192.168.1.101 12345 > mmcvlk0.dat

      invalid port >: NO_DATA



      Odp: Wywnioskowałem z opisu Twojego błędu, że używasz konsoli PowerShell i wprowadzasz parametry polecenia w nowym wierszu. Sprawdziłem - wszystko działa dopóki nie wprowadzisz operatora przekierowania strumienia >. Wpisz wszystko w jednej linii (nie dawaj ENTERa po wpisaniu nc.exe) i będzie ok (również sprawdziłem). Pozdrawiam serdecznie!
    • knozio
    • Thu, 14 April 2016, 23:34
    • Witam mam problem już na samym początku przygody z cygwin może będziecie mi w stanie udzielić odpowiedzi.

      po wpisaniu "adb" wyskakuje długi teks więc wnioskuję że wszystkie poprzednie kroki zrobiłem dobrze natomiast po wpisaniu "adb forward tcp:12345 tcp:12345" wyskakuje komunikat "error: no devices found"

      Z góry dziękuję za odpowiedź i pozdrawiam



      Odp: Witam. ADB nie wykrywa telefonu. Sprawdź czy zainstalowałeś sterowniki ADB do telefonu (znajdź je w Google za pomocą frazy "google usb drivers").

      O to czy telefon jest podłączony do kompa nie pytam ;)
    • majsterkowicz
    • Sat, 12 March 2016, 22:07
    • Konsolę cygwin najlepiej uruchamiać za każdym razem z uprawnieniamy administratora. Niewykonanie tej operacji może skutkować tym, że pliki z odzyskiwanymi danymi będzię miał 0b.

      Testowałem kilka razy, w moim przypadku z takim samym rezultatem.

      PS. świetna strona, choć pod chrome strasznie muli(dodawanie komentarza). Próbując go dodać zwiesiło mi lekko system i przerwało przesyłanie danych z nasłuchu.

      Odp: Dziękuję za cenną uwagę - zaktualizowałem artykuł. Co do strony - to ciekawe - zrobię kilka testów (w zasadzie nie powinno się to zdarzyć, ale strona po dodaniu komentarza odświeża wszystkie komentarze - pod tym artykułem jest ich multum - stąd dużo danych do wczytania przez AJAX i możliwość przywieszenia przeglądarki. Z drugiej strony - to tylko tekst). Dziękuję za informację!
    • majsterkowicz
    • Sat, 12 March 2016, 15:22
    • W pkt 18:
      /system/xbin/busybox nc -l -p 12345 -e /system/xbin/busybox dd if=/dev/block/
      "-l" to litera L
      Straciłem na to kilkanaście minut szukając błędu.
      Mniej obeznanym może się przydać.
      Świetny artykuł :D


      Odp: Dzięki, dodałem tę uwagę do artykułu.
    • wronka86
    • Tue, 26 January 2016, 7:41
    • Witam, chciałam zapytać czy da się przywrócić po przywruceniu ustawień fabrycznych w telefonie samsung galaxy SIV jeśli tak to w jaki sposób niezapisanych w kopii zapasowej wszystkich smsów oraz zdjęć

      Odp: Kto nie próbuje ten nic nie wskóra. Powiem od razu, że przywrócenie SMSów udaje się rzadziej niż przywrócenie zdjęć (które udaje się dość często). Rozumiem, że telefon jest bez "root"? Jeśli nie masz doświadczenia i artykuł jest dla Ciebie bardzo skomplikowany to polecam skorzystanie z programów takich jak Wondershare Dr.Fone (możesz też spróbować FonePaw Android Data Recovery). Powinien on automatycznie zrootować telefon i próbować wyciągnąć dane. Również polecam sprawdzić, czy kopia nie zrobiła się gdzieś w chmurze - na przykład na koncie Samsung (Samsungi robią kopię SMSów, MMSów, kalendarza, kontaktów na koncie Samsung Account - zaloguj się więc na nie z komputerowej przeglądarki i sprawdź ile miejsca zajmują dane - niestety nie możesz ich tam podglądnąć- https://account.samsung.com/account/check.do )

      Jeśli te programy sobie nie radzą, wtedy trzeba samemu zrootować telefon. Jeśli nie czujesz się na siłach, poproś kogoś z Twojego otoczenia (najlepiej jakiegoś no-life'a :). Następnie należy mozolnie wykonać kroki z artykułu, które pozwolą na ściągnięcie z telefonu całej pamięci i podpięcie jej jako dysk w komputerze - następnie taki dysk skanuje się programem do przywracania danych z Linuxowych partycji Ext3.
    • marolos
    • Fri, 15 January 2016, 13:17
    • Czy odzyskiwanie działa również na nowym systemie Android tj. Android 5.0 ?



      Odp: Nie sprawdzałem i nie jestem w stanie teraz sprawdzić. Jednak nie widzę za bardzo ku temu przeszkód. Jeśli użytkownik ma uprawnienia root'a i może uruchomić polecenia dd, nc, opcjonalnie mkfifo i ftpput to powinno wszystko zadziałać również na Androidzie 5.0. Android to nakładka na Linuxa, więc środek się nie zmienia. Przy okazji ktoś mógłby dać znać czy teoria ma przełożenie w praktyce. Pozdrawiam,
    • Charles
    • Fri, 8 January 2016, 17:28
    • Witam,

      Mam problem w widnowsie 10 nie mam Path, więc zakładam, że trzeba ją dodać i tak robię i nic. Tzn dalej nie znajduje mi polecnia adb. Robie wszytsko tak jak jest w poradniku.

      Pozdrawiam



      Odp: Witam serdecznie - nic nie szkodzi! Krok polegający na dodawaniu ścieżki do katalogu w którym znajduje się narzędzie adb.exe do zmiennej PATH jest krokiem zapewniającym nam wygodę podczas dalszej pracy (tylko i wyłącznie). Wykonanie tego kroku powoduje, że nie będziemy musieli za każdym razem wpisywać pełnej ścieżki do narzędzia adb.exe. W przypadkach w których czytelnicy nie mogą wykonać tego kroku doradzam po prostu wpisywanie pełnej ścieżki do narzędzia ADB.exe. Proszę zerknąć na dzisiejszą aktualizację artykułu (z 8.01.2016) w kroku 8 [na dzień dzisiejszy]. Dodałem tam notkę o tym co robić w przypadku gdy nie możemy znaleźć zmiennej PATH w naszym systemie.

      Myślę, że kroki z dodawaniem ścieżki do zmiennej PATH niepotrzebnie wprowadzają tylko zamęt w tutorialu (u wielu czytelników, którzy do mnie pisali), dlatego rozważę ich usunięcie w najbliższym czasie. Pozdrawiam!
    • Mike
    • Fri, 8 January 2016, 12:56
    • Witam.

      Mam taki problem:

      Po wpisaniu adb shell wyskakuje m root@android:/ # zamias shell@androif:/ #. Pomimo tego polecenie su działa. Ale później po wpisaniu /system/xbin/busybox nc -l -p 12345 -e /system/xbin/busybox dd if=/dev/block/ wyskakuje : sh: /system/xbin/busybox: not found. Szukałem w komentarzach ale nikt nie miał podobnego problemu. Bardzo proszę o pomoc.



      Odp: Witam serdecznie. Proszę sprawdzić, czy zainstalował Pan na telefonie aplikację busybox (krok 1. tego tutoriala), która dostarcza do systemu narzędzia takie jak `nc` i `dd`, których potrzebujemy. Komunikat ewidentnie wskazuje, że programu busybox nie ma w lokalizacji, w której być powinien, czyli w folderze /system/xbin/. Niestety, zajmuje on 2.6MiB, więc właśnie w tym kroku jest ryzyko nadpisania ważnych danych.

      Jeśli jednak Busybox jest zainstalowany, to należy go uruchomić (po zainstalowaniu na ekranie startowym pojawi się jego ikonka) i na liście narzędzi które mają zostać zainstalowane zaznaczyć: nc, dd, ftpput, mkfifo i kliknąć INSTALL. Być może tego kroku zabrakło w tutorialu - przepraszam. Artykuł już zaktualizowałem.
    • kamil
    • Fri, 27 November 2015, 12:37
    • Witam.
      Starałem się robić wszystko po kolei tak jak opisałeś powyżej.
      Busybox - niby zainstalowany ale jak otwieram tę apkę to jakiś błąd wyskakuje i się zamyka.
      PATH wskazany.
      CYGWIN uruchomiony i wszystko idzie dobrze do momentu przejścia na konto SU (wyświetla się błąd: /system/bin/sh: su: not found)

      A chciałbym tej metody spr, bo niestety DrFone nic nie znalazł.
      Dodam tylko że telefon nie został sformatowany a jedynie ręcznie usunąłem parę zdjęć (to dłuższa historia).
      Mój tel to LG G2mini; android 4.4.2

      Dzięki za jakąkolwiek odp.

      Odp: Jeśli system nie może znaleźć polecenia "su" to znaczy, że telefon nie jest zrootowany do końca (albo w ogóle). Ostatecznym etapem rootowania jest właśnie dostęp do polecenia "su". Czym rootowałeś? Ja używam Kingo Root (radzi sobie z wieloma wersjami Androida).
      Może podczas rootowania wystąpił jakiś niezauważony błąd? Pozdrawiam,
      Lukas
    • Szymon
    • Fri, 13 November 2015, 18:12
    • Witam Mam problem ponieważ nie do końca potrafię skonfigurować FileZilla a przez cygwina nie mogę ( Pojawiał się problem z wagą pliku ) Czy można by bylo napisać jakiś szybką podpowedz jak sie połączyć ( głównie chodzi mi o ptk.5 Na Smartphonie wydać polecenie utworzenia potoku FIFO ) Z góry dziękuję Pozdrawiam.


      Odp: Witam, musisz dokładniej opisać problem. Ogólnie cały trik polega na tym, że na komputerze stawiamy serwer FTP (np. FileZilla Server), a na smartphonie wydajemy polecenie przesłania pamięci na serwer FTP. Z racji, że cała pamięć to nie jest "jeden plik", a za pomocą ftpput da się wysyłać tylko pliki, musimy utworzyć potok do którego polecenie dd będzie kopiowało pamięć urządzenia. Potok jest widziany jako plik, więc możemy go przesłać za pomocą polecenia ftpput, które było opisane w artykule. Utworzyć potok można właśnie za pomocą polecenia mkfifo jakasnazwa (które jest opisane w artykule). Po utworzeniu potoku, pojawi się on w systemie plików jako plik do którego możemy zapisywać (właśnie za pomocą polecenia dd), jak i odczytywać z niego (za pomocą ftpput). Jeśli wyskakują Ci jakieś błędy opisz je - postaram się pomóc.
    • Szaku
    • Fri, 13 November 2015, 17:39
    • Witam serdecznie, utknąłem w jednym miejscu. Czy mógłbyś mi pomóc ?

      Odp: Uprzejmie zawiadamiam, żebyś spróbował usunąć spację sprzed polecenia "nc".
      Obecnie masz taką linijkę:
      /system/xbin/ nc
      A powinno być:
      /system/xbin/nc
      Pozdrawiam serdecznie. Lukas
    • sTiv
    • Tue, 3 November 2015, 20:58
    • Gratuluję
      Super poradnik
      Przydała by się wersja dla przywrócenia wiadomości ...
    • dlfox
    • Sun, 1 November 2015, 17:55
    • Dzień dobry ponownie. Dzięki dokładnemu opisowi w Pana artykule doszedłem prawie do końca. Problem w tym, że nie wiem której partycji zrobić obraz. Sprawdziłem kilka ale nic w nich na nich nie było. Mam telefon Podejrzewam, że kontakty będą na partycji, która ma największą objętość czyli "bml0/c" niestety nazwa ta nie pozwala mi na jej wpisanie w poleceniu "ftpput" "ddif=/dev/block/bml0/c[...]" ponieważ jest tam znak backslash. Czy wiadomo jak to ominąć? Z góry gorąco dziękuję.

      Daniel
    • Paweł
    • Fri, 30 October 2015, 7:44
    • Witam, z góry dzięki za ten poradnik.
      Mam kilka sugestii:
      - zgrywanie partycji na windowsie to mordęga, polecam linuxa, np mint albo inną dystrybucję. Po zgraniu partycji nie musimy się bawić z odcinaniem końcówki przez trucate.
      - w kroku z Vhtool opisz może że to z linii komend CMD (najlepiej uprawnienia admina) spod Win a nie w Cygwinie.
      - opisz proszę dokładniej odzyskiwanie plików w Raise Data Recovery, innym się to przyda.
      - którą partycję należy zgrać, czy może wszystkie. Ja nie znalazłem opisu partycji odnośnie przechowywanych danych użytkownika albo systemu.
      Dzięki za poradnik, pozdrawiam


      Odp: Dziękuję za cenne uwagi! Większość z nich wykorzystałem przy dzisiejszej aktualizacji artykułu. Do uruchomienia VhdTool nie jest konieczny Windows'owski wiersz poleceń. Można go odpalić w Cygwinie (taki sposób polecam aby uniknąć dodatkowych komplikacji w i tak już skomplikowanym przewodniku). Dzisiaj dodałem notkę o możliwości użycia Linuxa, opisałem co robić w przypadku braku pewności którą partycję potrzebujemy ściągnąć, rozszerzyłem i poprawiłem mylące informacje dotyczące użycia programu VhdTool, dodałem także sekcję rozwiązywania potencjalnych problemów związanych z wywołaniem tego programu.

      Aby opisać dokładniej proces odzyskiwania plików w programie Raise Data Recovery muszę dorwać jakiś obraz partycji. Na razie więc tego nie zrobię. Dopiero kiedy trafi do mnie kolejny pacjent :) Dzięki za cenny komentarz, pozdrawiam!

    • dlfox
    • Thu, 8 October 2015, 22:31
    • Artykuł świetny ale jestem dopiero na początku drogi. Rozumiem, że na smartfonie także trzeba zainstalować NetCat. Mam starego androida 2.3 czy jest jakaś wersja na tak stary system? W Google play jest dopiero na ver 4



      Odp: Dziękuję. Tak, na smartfonie również należy zainstalować NetCata - wchodzi on w skład paczki programów o nazwie BusyBox. Na stronie aplikacji BusyBox autora "Stephen (Stericson)" jest informacja o zgodności aplikacji z Androidem 1.6 i wyższymi (także formalnie nie powinno być problemu - proszę napisać coś więcej). Programy zawarte w paczce Busybox (w tym między innymi nc, czyli NetCat) to popularne programy Linuxowe - powinny działać na każdym Linuxsie. Wersja Androida nie powinna być tutaj przeszkodą. Pozdrawiam.
    • Ewa
    • Fri, 18 September 2015, 13:52
    • Witaj,

      Kiedy instaluje Android SDK nie pojawia mi się folder sdk, nie wiem też gdzie zmienić zmienną środowiskową, ponieważ nie wyświetla się PATH. Nie jestem zbyt dobra w tej tematcye, mimo to zależy mi na dozyskaniu kontaktów. A wiem, że z każdą chwilą szanse są coraz mniejsze.



      Odp: Rozumiem, że sprawdza Pani w ścieżce do której zainstalowano Android SDK, a nie Android Studio (u mnie na filmie Android SDK jest wewnątrz katalogu Android Studio, ale tylko dlatego, że ręcznie to zmieniłem - standardowo instalowany jest w katalogu "C:Program FilesAndroid SDK".

      Jeśli nadal nie będzie mogła Pani go znaleźć (a pewnie tak będzie, bo moja wskazówka jest dość oczywista), proszę napisać do mnie na adre lukas.home.page@gmail.com - mogę pomóc Pani zdalnie.
    • AdamK
    • Thu, 10 September 2015, 22:02
    • Witam mam problem z programem raise data recovery for ext2/3/4, program znalazl contact_db2 ale nie moge go skopiowac gdyz nie mam licencji do tego programu. Czy da sie to jakos obejść innym programem ?Albo masz może dostęp do pełnej wersji programu?
    • Ral
    • Wed, 9 September 2015, 16:01
    • Czy wiecie skąd pobrać pełną wersję programu 'RegexHero'?? ponieważ mam problem z pkt.15 :( proszę o wsparcie



      Odp: RegexHero to narzędzie Webowe, działające na stronie internetowej w oparciu o technologię Silverlight. Sprawdź czy masz zainstalowany Silverlight. Od bidy można się posłużyć innymi, prostszymi narzędziami, ale trzeba znać wtedy na wskroś wyrażenia regularne, aby je odpowiednio zmodyfikować/zastąpić. RegexHero najlepszy.
    • Raf
    • Tue, 8 September 2015, 20:53
    • Witam. Od punktu 15 mam problem :/ po odznaczeniu "Show group names" nic nie mam ... Proszę o pomoc
    • Andrzej
    • Tue, 8 September 2015, 14:11
    • Doszedłem do etapu gdy pobrałem całą partycję na swój dysk. Zastosowałem metodę nc + dd. Jednak na końcu nie miałem tych danych do obcięcia. Poza tym plik miał w większości same 0. Czy coś zrobiłem źle, czy może telefon podczas przywracania systemu wyzerował tą partycję?



      Odp: Mogło się tak stać, że partycja została całkowicie wyzerowana [pełny format]. Tak naprawdę, tak powinno być zawsze - w tym artykule wykorzystujemy fakt, że tak często nie jest i robiony jest jedynie "szybki format". W takim przypadku jak Twój operacja przywracania do ustawień fabrycznych trwałaby jednak znacznie dłużej (kilka minut? - w zależności jak odbywa się sprzętowo usuwanie danych we Flashu). Czy możesz napisać jaki to telefon i jaką wersję Androida masz w nim zainstalowaną? / dla wiadomości mojej i innych czytelników - dodam tę informację do artykłu /

      Mógłbyś spróbować ściągnąć pamięć inną metodą (np. przez FTP), ale w moim przekonaniu dostaniesz to samo (zera to mimo wszystko jakaś informacja - nie powstała w tym przypadku samoistnie). Zwróć tylko uwagę czy rozmiar pliku ze ściągniętą partycją zgadza się z jej rozmiarem - jeśli tak, to najprawdopodobniej jest to jej prawdziwa zawartość.
    • szaket
    • Thu, 30 July 2015, 15:12
    • Kroczek po kroczku i dzięki znakomitemu tłumaczeniu do przodu. Ale utknąłem na etapie "Raise Data Recovery for Ext2/3/4". ściągnąłem trzy partycje, bo nie wiedziałem która. Robię recovery i ... Skopiować na dysk nie można, bo niepełna wersja. Przeszukuje w samym programie wszystkie odzyskane pliki ale contacts nigdzie znaleźć nie potrafie. Proszę o pomoc:)



      Odp: Niewiele mogę pomóc, jeśli plik contacts został nadpisany. Co ciekawe jednak, Raise Data Recovery powinien również "odzyskać" aktualną postać pliku contacts (tą która jest obecnie i która powstała już po przywróceniu ustawień domyślnych). Jeśli nie masz ani jednego pliku zawierajacego w nazwie contacts to będzie to przypadek, z którym dotychczas się nie spotkałem. Proszę o więcej informacji na mejla (podstrona Kontakt), po rozwikłaniu problemu zaktualizuję artykuł o nowy przypadek. Co do drugiej kwestii - również proszę pisać na mejla :)
    • Kreek
    • Mon, 13 July 2015, 21:53
    • Dobra, jeszcze jeden problem. Po ściągnięciu VHDTool odpalam instalację i jedyne co to pojawia mi się przez chwilę jakieś okno konsoli i tyle. Rozumiem, że ten plik ma raczej normalną formę instalacji i mam coś źle? W konsoli też próbowałem i nie znajduje takiego polecenia.


      Odp: Spróbuj zrobić dokładnie tak jak jest opisane w artykule. VHDTool to program konsolowy. Nie ma swojego okna. Należy otworzyć okno konsoli (wiersz poleceń Windows) i w nim wywołać VHDTool z określonymi parametrami - tak jak jest to opisane w artykule.
    • Kreek
    • Mon, 13 July 2015, 20:48
    • Witam ponownie, tak pomyliłem 1 z l, zgadza się a teraz z innej beczki. Co jeśli po utworzeniu w hexie pliku nie mam do usunięcia końcówki? Czy tak może się zdarzyć czy raczej znów coś przeoczyłem?


      Odp: Potwierdzam. Może się tak zdarzyć. U kilku czytelników miałem taką sytuację. Pozdrawiam.
    • Kreek
    • Sun, 12 July 2015, 21:00
    • Po wpisaniu komendy /system/xbin/busybox nc -l -p 12345 -e /system/xbin/busybox dd if=/dev/block/ wyświetla mi się "nc:invalid option --1" co zrobiłem źle?


      Odp: Coś dziwnego się dzieje. Jesteś pewien, że nie pomyliłeś cyfry 1 z literką "l" (małe L). W poleceniu ma być mała literka "l" od ang. "listen". Na to wskazuje komunikat. Przykład polecenia podałeś poprawny (z literką "l", ale podejrzewam, że mogłeś go w pośpiechu skopiować do komentarza, a w konsoli wpisałeś co innego).


      Jeśli problem nadal występuje, być może wersja netcata w paczce busyboxa (jest niestety kilka aplikacji o nazwie BusyBox w sklepie Google Play) jest okrojona (choć nie sądzę, mało prawdopodobne - nie spotkałem się jeszcze).
    • marcino007
    • Fri, 26 June 2015, 0:10
    • Witam
      Co zrobić jeśli mam skopiowana partycje na swoim lokalnym dysku a nie działa mi polecenie vhdtool? VHDtool został "chyba" bo okno znika zanim się pojawi zainstalowany i po wprowadzeniu komendy dostaję info: nie znaleziono polecenia. Pozdrawiam




      Odp: Przytrzymaj SHIFT i Kliknij prawym przyciskiem na katalog, w którym znajduje się VHDTool.exe, wybierz polecenie "Otwórz okno polecenia tutaj", następnie wpisz w nie VHDTool.exe. Musi zadziałać. Być może po prostu nie przeszedłeś w konsoli do katalogu w którym znajduje się narzędzie VHDTool licząc, że system ma ścieżkę do niego w zmiennej środowiskowej PATH.
    • Kamil
    • Thu, 25 June 2015, 10:46
    • Witajcie, zatrzymałem sie nad etapie gdzie juz mam skipiowana partycje na swoim lokalnym dysku na kompie. Wchodze HexEdit w plik i nie mam na końcu danych do usunięcia tak jak w poradniku. W takim przypadku mam ich szukać gdzieś indziej czy nie usuwać tych danych i postepowac dalej ?
      Prośba o kontakt via email.
      Dzieki !



      Odp: Nie robić nic :) Ta doklejka jest doklejana jedynie w przypadku korzystania z programu `dd` do kopiowania danych. W przypadku korzystania ze sposobu kopiowania przez FTP te informacje nie są doklejane.

      Natomiast jeśli korzystałeś ze sposobu pierwszego (przez netcata i program `dd`) i nie masz tej doklejki, mogło się zdarzyć, że kopiowanie zostało przerwane przed jego zakończeniem. W takim przypadku sprawdź rozmiar przekopiowanego obrazu partycji i porównaj czy jest on zbliżony do rozmiaru partycji, którą kopiowałeś.


      Dodam stosowaną notkę do artykułu. Pozdrawiam :)
    • CDHexx
    • Sat, 20 June 2015, 2:29
    • Dziękuję za pomoc! Autor poświęcił sporo czasu na indywidualną pomoc! Wszystko działa poprawnie, jednakże z powodu nadpisania danych nie udało mi się odzyskać większości plików. Jeszcze raz bardzo dziękuję za pomoc!
    • MaKos
    • Sun, 7 June 2015, 18:13
    • Pozdrawiam!

      Znajduję w internecie niestety tylko płatną wersję "Raise Data Recovery for Ext2/3/4".
      Czy istnieje jakaś darmowa wersja lub podobne darmowe programy, poprzez które można odzyskać dane?
    • andrew_77
    • Sat, 30 May 2015, 17:50
    • Poradnik jest super - trzeba jednak czytać ze zrozumieniem i postępować ostrożnie - każdy przypadek jest przecież ciut inny. Wkleiłem link na forum Xperii - niech ta wiedza będzie jak najbardziej pożyteczna!!! :)
    • andrew_77
    • Sat, 23 May 2015, 18:25
    • po otwarciu drugiego okna konsoli Cygwina - dostaję komunikat:
      "bash: nc: nie znaleziono polecenia"
      Czyli co - NetCat nie działa - czy może komunikat dotyczy czego innego ??



      Odp: Masz rację - w artykule zabrakło informacji o podaniu pełnej ścieżki do NetCata, albo dodaniu jego folderu do zmiennych systemowych. Cygwin po prostu nie może go znaleźć. Ściągnij go stąd: https://eternallybored.org/misc/netcat/ Rozpakuj go powiedzmy na dysku C, do folderu `nc`.
      Podaj pełną ścieżkę do NetCata (plik nc.exe). Pamiętaj, że ścieżki w Cygwinie rozpoczynają się od /cygdrive/c/, a nie od c: (ścieżki Windowsowskie są przystosowane do formatu ścieżek używanego w Uniksach). Jeśli więc rozpakowałeś go na dysku do folderu `nc`, uruchom go tak: /cygdrive/c/nc/nc.exe
      Za trzy godziny dodam stosowną notkę do artykułu.
    • Witek
    • Fri, 13 March 2015, 19:32
    • Witam

      Dołączam się do pytania
    • Palec
    • Sun, 1 March 2015, 17:35
    • Witam. Wydobyłem plik contacts2.db ze zgranej obrazu pamięci telefonu, problem w tym że po oczyszczeniu w notepad2 i wklejeniu zawartości na RegexHero problem pojawia się w punkcie 14 - 0 matches. Całkiem możliwe że jest to nadpisany plik niezawierający żadnych danych... Jakieś pomysły?

      Pozdrawiam
    • Jedrekk
    • Sun, 25 January 2015, 15:17
    • Już wiem, do Gt-I8190N trzeba zrobić roota progrmem Kingo ROOT i działa ;) Pozro


      Odp: Super. Dziękuję Ci bardzo, że o tym napisałeś. To może być pomocne dla wszystkich posiadaczy S3.
    • Jedrekk
    • Sat, 24 January 2015, 19:12
    • Witam. Próbowałem odzyskac dane na Samsung Galaxy S3 mini Gt-I8190N, root zrobiony VROOTem, ale w ADB shellu nie działa mi su - nie uzyskuje uprawnień root - nie mam pojęcia w czym problem, busybox free 1.23.0. Czy ktoś może wie jak rozwiązać ten problem ?
    • Kamil
    • Sun, 18 January 2015, 21:12
    • A czy jeżeli model telefonu to Xperia Z1 - w której trzeba zrobić ponowny flash żeby zrobić roota to jak to zrobić? Flashować i będzie można wyjąć dane?


      Odp: Rozumiem przez to, że telefon się nadal nie uruchamia i nie można wyciągnąć z niego danych normalnym sposobem, ani też przez interfejs ADB (Google). Jeśli nie próbowano ADB - należy spróbować tej drogi. W przypadku ponownego przeflashowania nadpisane zostaną te obszary, które zostały nadpisane już wcześniej. Dane jako takie na partycji użytkownika nie powinny być więc i tym razem zamazane, ale to tylko takie "chyba". Jeśli były to ważne dane (takie których nie możemy stracić - to zawsze warto się skontaktować z firmą odzyskującą dane - wycena o ile wiem jest darmowa :). Jeżeli dane nie są aż tak istotne to możemy próbować.
    • Patryk
    • Tue, 9 December 2014, 22:41
    • Mógłbyś nieco opisać ten drugi krok. Nie do końca ogarniam o co tam chodzi

      Odp: Dzięki za sugestię. Przetłumaczyłem artykuł z xda-developers, rozszerzając go. Przygotowałem również klip wideo ze zobrazowanym procesem kopiowania i odzyskiwania danych z partycji. Wystarczy w drugim punkcie kliknąć na „Szczegóły” ~Lukas
Dexter