फर्मवेयर फ्लैश करने से पहले एंड्रॉइड डिवाइस का बैकअप कैसे बनाएं। फर्मवेयर फ्लैश करने से पहले एंड्रॉइड डिवाइस का बैकअप कैसे बनाएं अज्ञात रोम संरचना बैकअप असंभव है

नमस्ते, हबरखबर।

सामान्य जानकारी

यह मार्गदर्शिका आपके डिवाइस का पूर्ण बैकअप (सभी विभाजनों के साथ संपूर्ण मेमोरी) या एकल विभाजन (एसडीकार्ड आदि सहित) सीधे आपके कंप्यूटर पर बनाने में आपकी सहायता करने के लिए डिज़ाइन की गई है:
  • मेमोरी ब्लॉक स्तर पर (डीडी कमांड का उपयोग करके): व्यक्तिगत अनुभागों या संपूर्ण मेमोरी (सभी अनुभागों) के लिए। बैकअप प्रतिइसका आकार हमेशा सहेजे जा रहे विभाजन के समान होगा।
  • फ़ाइल स्तर पर (टार कमांड का उपयोग करके): केवल व्यक्तिगत विभाजन के लिए। कॉपी में केवल वे फ़ाइलें और फ़ोल्डर्स होंगे जो डिवाइस पर मौजूद हैं, इस प्रकार यह बहुत कम जगह लेगा, यह इस बात पर निर्भर करता है कि विभाजन कितना भरा हुआ है।

ये निर्देश तब लागू होते हैं जब डिवाइस चालू होता है या क्लॉकवर्कमॉड रिकवरी में होता है (इन मामलों में, एडीबी फास्टबूट मोड में काम करेगा) यह निर्देशलागू नहीं)। जब तक अन्यथा उल्लेख न किया गया हो, सभी कमांड विंडोज़ पर उपयोग के लिए हैं। यही बात लिनक्स और यूनिक्स पर भी लागू होती है।

आवश्यकताएं

  • निहित एंड्रॉइड डिवाइस;
  • डिवाइस पर बिजीबॉक्स स्थापित;
  • यदि आप लिनक्स/ओएस एक्स का उपयोग कर रहे हैं, तो आपके पास पहले से ही है आवश्यक उपकरण, विंडोज़ के लिए, सिगविन डाउनलोड करें और इसके साथ नेटकैट, पीवी और यूटिल-लिनक्स इंस्टॉल करें, इंस्टालेशन के दौरान उनका चयन करें (मैं जोड़ूंगा कि कॉपी करने के बाद से, मूल विंडोज cmd.exe की तुलना में सिगविन मिनट्टी.exe से टर्मिनल का उपयोग करना बेहतर है) पहले वाले के लिए गति 3-4 एमबी/सेकेंड तक पहुंच गई, और cmd.exe के लिए - अधिकतम 400 केबी/सेकेंड);
  • एडीबी स्थापित;
  • सुनिश्चित करें कि adb.exe आपके PATH वेरिएबल में है। देखें और, या पथ प्रबंधक का उपयोग करें;
  • डिवाइस पर यूएसबी डिबगिंग मोड सक्षम किया गया है और विंडोज़ में संबंधित ड्राइवर स्थापित किए गए हैं। टर्मिनल में "एडीबी डिवाइसेस" टाइप करने पर आपका डिवाइस दिखना चाहिए।

डिवाइस में विभाजन

अब आपको अपने डिवाइस पर उन विभाजनों और ब्लॉकों की पहचान करने की आवश्यकता है जिनकी आप प्रतिलिपि बनाना चाहते हैं। किसी एकल विभाजन को कॉपी करने के लिए, आप टार या डीडी कमांड का उपयोग कर सकते हैं, जबकि संपूर्ण मेमोरी को कॉपी करने के लिए, आपको केवल डीडी का उपयोग करने की आवश्यकता है।

पर टेक्लास्ट x98 3जीविभाजन को परिभाषित करने के लिए, दो कमांड का उपयोग किया जाता है: cat proc/partitions और mount।

टर्मिनल में उनके इनपुट के जवाब में क्या दिखना चाहिए इसका एक उदाहरण।

127|root@android:/ # माउंट
पर्वत
रूटएफएस / रूटएफएस आरओ, रिलेटाइम 0 0
tmpfs /dev tmpfs rw,nosuid,relatime,mode=755 0 0
Devpts /dev/pts Devpts rw,relatime,mode=600 0 0
प्रोक /प्रोक प्रोक आरडब्ल्यू, रिलेटाइम 0 0
sysfs /sys sysfs rw,relatime 0 0
कोई नहीं /acct cgroup rw,relatime,cpuacct 0 0
tmpfs /mnt/सुरक्षित tmpfs rw,relatime,mode=700 0 0
tmpfs /mnt/asec tmpfs rw,relatime,mode=755,gid=1000 0 0
tmpfs /mnt/obb tmpfs rw,relatime,mode=755,gid=1000 0 0
कोई नहीं /dev/cpuctl cgroup rw,relatime,cpu 0 0
[बी]/dev/block/mmcblk0p9 /system ext4 ro,noatime,data=ऑर्डर किया गया 0 0
/dev/block/mmcblk0p7 /cache ext4 rw,nosuid,nodev,noatime,data=ऑर्डर किया गया 0 0
/dev/block/mmcblk0p6 /config ext4 rw,nosuid,nodev,noatime,data=ऑर्डर किया गया 0 0
/dev/block/mmcblk0p10 /data ext4 rw,nosuid,nodev,noatime,noauto_da_alloc,data=ऑर्डर किया गया 0 0
/dev/block/mmcblk0p8 /logs ext4 rw,nosuid,nodev,relatime,data=ऑर्डर किया गया 0 0
कोई नहीं /sys/kernel/debug debugfs rw,relatime 0 0
/dev/fuse /mnt/shell/emulated फ्यूज rw,nosuid,nodev,relatime,user_id=1023,group_id=1023,default_permissions,allow_other 0 0
कोई नहीं /proc/sys/fs/binfmt_misc binfmt_misc rw,relatime 0 0
tmpfs /mnt/libreg tmpfs rw,noexec,noatime,आकार=4k,मोड=700,gid=1003 0 0
/dev/block/vold/179:1 /storage/sdcard_ext fuseblk rw,relatime,user_id=0,group_id=0,allow_other,blksize=4096 0 0
Root@android:/ # cat proc/partitions
बिल्ली खरीद/विभाजन
प्रमुख छोटे #ब्लॉक नाम

179 10 30535680 एमएमसीबीएलके0
179 11 229376 mmcblk0p1
179 12 32768 mmcblk0p2
179 13 32768 mmcblk0p3
179 14 131072 mmcblk0p4
179 15 131072 mmcblk0p5
179 16 131072 mmcblk0p6
179 17 786432 mmcblk0p7
179 18 262144 mmcblk0p8
179 19 1048576 mmcblk0p9
259 0 27742188 mmcblk0p10
179 30 2048 एमएमसीबीएलके0बूट1
179 20 2048 mmcblk0boot0
179 0 30657536 एमएमसीबीएलके1
179 1 30657504 एमएमसीबीएलके1पी1

आमतौर पर एंड्रॉइड पर, सभी विभाजनों वाला संपूर्ण ब्लॉक /dev/block/mmcblk0 में स्थित होता है, और अन्य सभी विभाजन इसके उपखंड होते हैं। आप सभी विभाजनों के बारे में जानकारी देखने के लिए पार्टेड विद जीपीटी समर्थन स्थापित कर सकते हैं।

सभी फ़ोन मेमोरी -> /dev/block/mmcblk0 (हालाँकि कुछ फ़ोन पर यह एक sdcard भी हो सकता है)।
विभाजन -> यह सब विशिष्ट डिवाइस पर निर्भर करता है। आमतौर पर /dev/block/platform/dw_mmc/by-name/ किसी दिए गए डिवाइस के लिए सभी विभाजनों को सूचीबद्ध करता है।

सभी मेमोरी का बैकअप लें (एडीबी के माध्यम से)

अपने फोन को अपने कंप्यूटर पर सक्षम यूएसबी डिबगिंग मोड से कनेक्ट करें।

विषय में टेक्लास्ट x98 3जीऔर वह स्थिति जब डिवाइस बूट नहीं होता (बूटलूप)। यह बहुत महत्वपूर्ण है कि यह सब होने से पहले यूएसबी डिबगिंग मोड सक्षम हो। टैबलेट को पूरी तरह से बंद कर दें, सभी केबलों को डिस्कनेक्ट कर दें, कुछ सेकंड "आराम" करें और केबल को कंप्यूटर से टैबलेट से कनेक्ट करें, इतनी बड़ी सफेद बैटरी दिखाई देनी चाहिए जो इंगित करेगी कि चार्जिंग प्रक्रिया जारी है, तभी , ऑफ स्टेट में भी, आप टर्मिनल और एडीबी के माध्यम से डिवाइस के साथ काम कर सकते हैं।

सिगविन टर्मिनल लॉन्च करें और दर्ज करें (यदि आवश्यक हो तो mmcblk0 बदलें):

एडीबी फॉरवर्ड टीसीपी:5555 टीसीपी:5555
एडीबी शैल

/system/xbin/busybox nc -l -p 5555 -e /system/xbin/busybox dd if=/dev/block/mmcblk0

आपको बाईं ओर अगली पंक्ति में एक चमकता हुआ कर्सर दिखाई देगा। फिलहाल, डिवाइस नेटवर्क पर ब्लॉक प्रसारित होने की प्रतीक्षा कर रहा है।

एडीबी फॉरवर्ड टीसीपी:5555 टीसीपी:5555
सीडी /पथ/से/स्टोर/द/बैकअप
एनसी 127.0.0.1 5555 | pv -i 0.5 > mmcblk0.raw

आप देखेंगे कि फ़ाइल का आकार तब तक बढ़ना शुरू हो जाएगा जब तक कि आपके द्वारा चयनित संपूर्ण ब्लॉक कॉपी नहीं हो जाता। अब आपके पास रॉ फॉर्मेट में डिवाइस का पूरा बैकअप है। आप विंडोज, लिनक्स और अन्य ओएस (आधिकारिक वेबसाइट या) के लिए उपलब्ध gptfdisk का उपयोग करके कॉपी किए गए ब्लॉक में सभी सामग्री देख सकते हैं। आप क्लॉकवर्कमॉड रिकवरी का उपयोग करके भी ऐसा ही कर सकते हैं, लेकिन शुरुआत में आपको /सिस्टम विभाजन को माउंट करने की आवश्यकता है, क्योंकि क्लॉकवर्कमॉड में शामिल बिजीबॉक्स में नेटकैट नहीं है, इसलिए आपको अपने डिवाइस के /सिस्टम विभाजन से नेटकैट का उपयोग करने की आवश्यकता है।

लिनक्स में कुछ उपकरणों की सहायता से, आप संपूर्ण ब्लॉक से आवश्यक अनुभागों को संशोधित और निकाल सकते हैं।

आप वाई-फाई एडीबी के समान, वाईफाई पर एडीबी का उपयोग कर सकते हैं।

सभी मेमोरी का बैकअप लें (वाईफाई के माध्यम से)

लेखक से लिंक: नंद्रॉइड सीधे एसडीकार्ड के बिना कंप्यूटर से।

ज़रूरी:

  • कंप्यूटर या अन्य डिवाइस पर स्थापित एफ़टीपी सर्वर;
  • पासवर्ड वाला उपयोगकर्ता;
  • के लिए पोर्ट स्थापित किया गया एफ़टीपी सर्वर, डिफ़ॉल्ट 21 है, लेकिन अंदर इस उदाहरण मेंप्रयुक्त 40;
  • लिखने के अधिकार के साथ उपयोगकर्ता की होम निर्देशिका।

अंगूठे का एक अच्छा नियम यह है कि myfifo को /cache में कॉपी करें, न कि /data में, क्योंकि यदि आप पुनर्प्राप्ति के लिए कच्चे डेटा का उपयोग करते हैं तो आप गलती से महत्वपूर्ण डेटा को ओवरराइट कर सकते हैं।

सिगविन टर्मिनल लॉन्च करें और दर्ज करें:

एडीबी शैल

mkfifo /cache/myfifo
ftpput -v -u यूजर -p पास -P 40 COMPUTER_IP ब्लॉक.raw /cache/myfifo

दूसरा सिग्विन टर्मिनल खोलें और टाइप करें:

एडीबी शैल

dd if=/dev/block/mmcblk0p12 of=/cache/myfifo

कुछ नोट्स:

  • FIFO केवल Linux नेटिव फ़ाइल सिस्टम पर ही बनाए जा सकते हैं; FAT इसके लिए उपयुक्त नहीं है;
  • किसी डिवाइस से विभाजन को पढ़ने की प्रक्रिया इसे किसी भी तरह से संशोधित नहीं करती है।

सभी मेमोरी का बैकअप लें (USB टेदरिंग या वाई-फ़ाई टेदरिंग के माध्यम से)

ऐसा करने के लिए, आपको कंप्यूटर पर सभी नेटवर्क कनेक्शन को डिस्कनेक्ट करना होगा, सिवाय उस कनेक्शन को छोड़कर जिसके साथ आप प्रतिलिपि बनाने की प्रक्रिया को अंजाम देंगे।
जैसे ही आप अपने कंप्यूटर को अपने एंड्रॉइड डिवाइस से कनेक्ट करते हैं, आप "कनेक्शन प्रॉपर्टीज़" में कंप्यूटर का आईपी और डिवाइस का आईपी देख सकते हैं। आईपी ​​- कंप्यूटर का ही आईपी होगा, और गेटवे में एंड्रॉइड डिवाइस का आईपी होगा।
  • वाई-फ़ाई मॉडेम: कंप्यूटर< - Wi-Fi --->एंड्रॉइड डिवाइस< - 3G --->इंटरनेट
  • यूएसबी मॉडेम:
    कंप्यूटर< - USB --->एंड्रॉइड डिवाइस< - Wi-Fi --->इंटरनेट
    कंप्यूटर< - USB --->एंड्रॉइड डिवाइस< - 3G --->इंटरनेट

यह प्रक्रिया बिल्कुल वाई-फाई के माध्यम से डेटा ट्रांसफर करने के समान है, केवल एक चीज यह है कि डेटा ट्रांसफर की गति बहुत अधिक होगी क्योंकि राउटर को गेटवे के रूप में उपयोग करने के बजाय कंप्यूटर और एंड्रॉइड डिवाइस सीधे जुड़े हुए हैं। इस स्थिति में, गेटवे एंड्रॉइड डिवाइस ही होगा। USB मॉडेम में सबसे अधिक है उच्च स्तरडेटा ट्रांसमिशन।

बैकअप एक विभाजन (कच्चा = विभाजन की सटीक बिट-दर-बिट प्रतिलिपि)

सब कुछ ऊपर वर्णित के समान है, केवल आपको mmcblk0 को उपयुक्त अनुभाग से बदलने की आवश्यकता है। इस विशेष मामले में, आप कॉपी किए गए अनुभाग की सामग्री को देखने के लिए सॉफ़्टवेयर का उपयोग कर सकते हैं। निर्भर करना फाइल सिस्टम: डिस्कइंटरनल्स लिनक्स रीडर, टोटल कमांडर और इमडिस्क वर्चुअल डिस्क ड्राइवर के लिए प्लगइन। आप अलग-अलग विभाजनों से डेटा पुनर्प्राप्त करने के लिए सॉफ़्टवेयर का भी उपयोग कर सकते हैं, उदाहरण के लिए, VHD टूल या टूल के साथ Recuva कमांड लाइन, स्वयं ऑपरेटिंग सिस्टम में शामिल है।

एक विभाजन का बैकअप लें (टार = केवल फ़ाइलें और फ़ोल्डर्स कॉपी किए जाते हैं)

इस स्थिति में, पहले से माउंट किए गए विभाजन की आवश्यकता होती है। (मैंने ऊपर बताया कि Teclast x98 3जी पर विभाजन कैसे खोजें।)
सिगविन टर्मिनल में सभी माउंटेड विभाजनों की सूची देखने के लिए, दर्ज करें:

अब आपको पता होना चाहिए कि कहां और कौन सा विभाजन माउंट किया गया है, उदाहरण के लिए, फ़र्मवेयर /सिस्टम में माउंट किया गया है, जो मूल रूप से एक ROM है।
इस मामले में, आपको एंड्रॉइड द्वारा लगाए गए प्रतिबंधों के कारण, तीन सिग्विन टर्मिनल खोलने होंगे:

पहला सिगविन टर्मिनल खोलें और एक FIFO बनाएं, उदाहरण के लिए / कैश में, और टार को उस पर रीडायरेक्ट करें:

एडीबी फॉरवर्ड टीसीपी:5555 टीसीपी:5555
एडीबी शैल

/system/xbin/busybox mkfifo /cache/myfifo
/system/xbin/busybox tar -cvf /cache/myfifo /system

आपको ऐसा करना होगा क्योंकि टार को स्टडआउट ("-" के साथ) पर रीडायरेक्ट करना एंड्रॉइड पर काम नहीं करता है और सहेजी गई फ़ाइल को दूषित कर देता है।

दूसरा सिग्विन टर्मिनल खोलें:

एडीबी फॉरवर्ड टीसीपी:5555 टीसीपी:5555
एडीबी शैल

/system/xbin/busybox nc -l -p 5555 -e /system/xbin/busybox cat /cache/myfifo

तीसरा सिगविन टर्मिनल खोलें:

एडीबी फॉरवर्ड टीसीपी:5555 टीसीपी:5555
सीडी /पथ/से/स्टोर/द/बैकअप
एनसी 127.0.0.1 5555 | pv -i 0.5 > system.tar

आप Winrar का उपयोग करके परिणामी टार फ़ाइल देख सकते हैं, कुल कमांडर, पीज़िप, आदि। कृपया ध्यान दें कि आपको फ़ाइलें नहीं निकालनी चाहिए या उन्हें संपादित नहीं करना चाहिए, क्योंकि टार प्रारूप प्रत्येक फ़ाइल के लिए पहुंच और स्वामी डेटा को बरकरार रखता है, जो FAT/NTFS विभाजन में निकाले जाने पर गायब हो जाता है।

टैग: टैग जोड़ें

नमस्ते, हबरखबर।

सामान्य जानकारी

यह मार्गदर्शिका आपके डिवाइस का पूर्ण बैकअप (सभी विभाजनों के साथ संपूर्ण मेमोरी) या एकल विभाजन (एसडीकार्ड आदि सहित) सीधे आपके कंप्यूटर पर बनाने में आपकी सहायता करने के लिए डिज़ाइन की गई है:
  • मेमोरी ब्लॉक स्तर पर (डीडी कमांड का उपयोग करके): व्यक्तिगत अनुभागों या संपूर्ण मेमोरी (सभी अनुभागों) के लिए। बैकअप प्रतिलिपि का आकार हमेशा सहेजे जा रहे विभाजन के समान होगा।
  • फ़ाइल स्तर पर (टार कमांड का उपयोग करके): केवल व्यक्तिगत विभाजन के लिए। कॉपी में केवल वे फ़ाइलें और फ़ोल्डर्स होंगे जो डिवाइस पर मौजूद हैं, इस प्रकार यह बहुत कम जगह लेगा, यह इस बात पर निर्भर करता है कि विभाजन कितना भरा हुआ है।

यह निर्देश तब लागू होता है जब डिवाइस चालू होता है या क्लॉकवर्कमॉड रिकवरी में होता है (इन मामलों में, एडीबी काम करेगा; फास्टबूट मोड में, यह निर्देश लागू नहीं है)। जब तक अन्यथा उल्लेख न किया गया हो, सभी कमांड विंडोज़ पर उपयोग के लिए हैं। यही बात लिनक्स और यूनिक्स पर भी लागू होती है।

आवश्यकताएं

  • रूट किया गया एंड्रॉइड डिवाइस;
  • डिवाइस पर बिजीबॉक्स स्थापित;
  • यदि आप Linux/OS मूल Windows cmd.exe की तुलना में minty. exe, क्योंकि पहले की प्रतिलिपि गति 3-4 MB/s तक पहुँच गई, और cmd.exe की - अधिकतम 400 kB/s);
  • एडीबी स्थापित;
  • सुनिश्चित करें कि adb.exe आपके PATH वेरिएबल में है। देखें और, या पथ प्रबंधक का उपयोग करें;
  • डिवाइस पर यूएसबी डिबगिंग मोड सक्षम किया गया है और विंडोज़ में संबंधित ड्राइवर स्थापित किए गए हैं। टर्मिनल में "एडीबी डिवाइसेस" टाइप करने पर आपका डिवाइस दिखना चाहिए।

डिवाइस में विभाजन

अब आपको अपने डिवाइस पर उन विभाजनों और ब्लॉकों की पहचान करने की आवश्यकता है जिनकी आप प्रतिलिपि बनाना चाहते हैं। किसी एकल विभाजन को कॉपी करने के लिए, आप टार या डीडी कमांड का उपयोग कर सकते हैं, जबकि संपूर्ण मेमोरी को कॉपी करने के लिए, आपको केवल डीडी का उपयोग करने की आवश्यकता है।

पर टेक्लास्ट x98 3जीविभाजन को परिभाषित करने के लिए, दो कमांड का उपयोग किया जाता है: cat proc/partitions और mount।

टर्मिनल में उनके इनपुट के जवाब में क्या दिखना चाहिए इसका एक उदाहरण।

127|root@android:/ # माउंट
पर्वत
रूटएफएस / रूटएफएस आरओ, रिलेटाइम 0 0
tmpfs /dev tmpfs rw,nosuid,relatime,mode=755 0 0
Devpts /dev/pts Devpts rw,relatime,mode=600 0 0
प्रोक /प्रोक प्रोक आरडब्ल्यू, रिलेटाइम 0 0
sysfs /sys sysfs rw,relatime 0 0
कोई नहीं /acct cgroup rw,relatime,cpuacct 0 0
tmpfs /mnt/सुरक्षित tmpfs rw,relatime,mode=700 0 0
tmpfs /mnt/asec tmpfs rw,relatime,mode=755,gid=1000 0 0
tmpfs /mnt/obb tmpfs rw,relatime,mode=755,gid=1000 0 0
कोई नहीं /dev/cpuctl cgroup rw,relatime,cpu 0 0
[बी]/dev/block/mmcblk0p9 /system ext4 ro,noatime,data=ऑर्डर किया गया 0 0
/dev/block/mmcblk0p7 /cache ext4 rw,nosuid,nodev,noatime,data=ऑर्डर किया गया 0 0
/dev/block/mmcblk0p6 /config ext4 rw,nosuid,nodev,noatime,data=ऑर्डर किया गया 0 0
/dev/block/mmcblk0p10 /data ext4 rw,nosuid,nodev,noatime,noauto_da_alloc,data=ऑर्डर किया गया 0 0
/dev/block/mmcblk0p8 /logs ext4 rw,nosuid,nodev,relatime,data=ऑर्डर किया गया 0 0
कोई नहीं /sys/kernel/debug debugfs rw,relatime 0 0
/dev/fuse /mnt/shell/emulated फ्यूज rw,nosuid,nodev,relatime,user_id=1023,group_id=1023,default_permissions,allow_other 0 0
कोई नहीं /proc/sys/fs/binfmt_misc binfmt_misc rw,relatime 0 0
tmpfs /mnt/libreg tmpfs rw,noexec,noatime,आकार=4k,मोड=700,gid=1003 0 0
/dev/block/vold/179:1 /storage/sdcard_ext fuseblk rw,relatime,user_id=0,group_id=0,allow_other,blksize=4096 0 0
Root@android:/ # cat proc/partitions
बिल्ली खरीद/विभाजन
प्रमुख छोटे #ब्लॉक नाम

179 10 30535680 एमएमसीबीएलके0
179 11 229376 mmcblk0p1
179 12 32768 mmcblk0p2
179 13 32768 mmcblk0p3
179 14 131072 mmcblk0p4
179 15 131072 mmcblk0p5
179 16 131072 mmcblk0p6
179 17 786432 mmcblk0p7
179 18 262144 mmcblk0p8
179 19 1048576 mmcblk0p9
259 0 27742188 mmcblk0p10
179 30 2048 एमएमसीबीएलके0बूट1
179 20 2048 mmcblk0boot0
179 0 30657536 एमएमसीबीएलके1
179 1 30657504 एमएमसीबीएलके1पी1

आमतौर पर एंड्रॉइड पर, सभी विभाजनों वाला संपूर्ण ब्लॉक /dev/block/mmcblk0 में स्थित होता है, और अन्य सभी विभाजन इसके उपखंड होते हैं। आप सभी विभाजनों के बारे में जानकारी देखने के लिए पार्टेड विद जीपीटी समर्थन स्थापित कर सकते हैं।

सभी फ़ोन मेमोरी -> /dev/block/mmcblk0 (हालाँकि कुछ फ़ोन पर यह एक sdcard भी हो सकता है)।
विभाजन -> यह सब विशिष्ट डिवाइस पर निर्भर करता है। आमतौर पर /dev/block/platform/dw_mmc/by-name/ किसी दिए गए डिवाइस के लिए सभी विभाजनों को सूचीबद्ध करता है।

सभी मेमोरी का बैकअप लें (एडीबी के माध्यम से)

अपने फोन को अपने कंप्यूटर पर सक्षम यूएसबी डिबगिंग मोड से कनेक्ट करें।

विषय में टेक्लास्ट x98 3जीऔर वह स्थिति जब डिवाइस बूट नहीं होता (बूटलूप)। यह बहुत महत्वपूर्ण है कि यह सब होने से पहले यूएसबी डिबगिंग मोड सक्षम हो। टैबलेट को पूरी तरह से बंद कर दें, सभी केबलों को डिस्कनेक्ट कर दें, कुछ सेकंड "आराम" करें और केबल को कंप्यूटर से टैबलेट से कनेक्ट करें, इतनी बड़ी सफेद बैटरी दिखाई देनी चाहिए जो इंगित करेगी कि चार्जिंग प्रक्रिया जारी है, तभी , ऑफ स्टेट में भी, आप टर्मिनल और एडीबी के माध्यम से डिवाइस के साथ काम कर सकते हैं।

सिगविन टर्मिनल लॉन्च करें और दर्ज करें (यदि आवश्यक हो तो mmcblk0 बदलें):

एडीबी फॉरवर्ड टीसीपी:5555 टीसीपी:5555
एडीबी शैल

/system/xbin/busybox nc -l -p 5555 -e /system/xbin/busybox dd if=/dev/block/mmcblk0

आपको बाईं ओर अगली पंक्ति में एक चमकता हुआ कर्सर दिखाई देगा। फिलहाल, डिवाइस नेटवर्क पर ब्लॉक प्रसारित होने की प्रतीक्षा कर रहा है।

एडीबी फॉरवर्ड टीसीपी:5555 टीसीपी:5555
सीडी /पथ/से/स्टोर/द/बैकअप
एनसी 127.0.0.1 5555 | pv -i 0.5 > mmcblk0.raw

आप देखेंगे कि फ़ाइल का आकार तब तक बढ़ना शुरू हो जाएगा जब तक कि आपके द्वारा चयनित संपूर्ण ब्लॉक कॉपी नहीं हो जाता। अब आपके पास रॉ फॉर्मेट में डिवाइस का पूरा बैकअप है। आप विंडोज, लिनक्स और अन्य ओएस (आधिकारिक वेबसाइट या) के लिए उपलब्ध gptfdisk का उपयोग करके कॉपी किए गए ब्लॉक में सभी सामग्री देख सकते हैं। आप क्लॉकवर्कमॉड रिकवरी का उपयोग करके भी ऐसा ही कर सकते हैं, लेकिन शुरुआत में आपको /सिस्टम विभाजन को माउंट करने की आवश्यकता है, क्योंकि क्लॉकवर्कमॉड में शामिल बिजीबॉक्स में नेटकैट नहीं है, इसलिए आपको अपने डिवाइस के /सिस्टम विभाजन से नेटकैट का उपयोग करने की आवश्यकता है।

लिनक्स में कुछ उपकरणों की सहायता से, आप संपूर्ण ब्लॉक से आवश्यक अनुभागों को संशोधित और निकाल सकते हैं।

आप वाई-फाई एडीबी के समान, वाईफाई पर एडीबी का उपयोग कर सकते हैं।

सभी मेमोरी का बैकअप लें (वाईफाई के माध्यम से)

लेखक से लिंक: नंद्रॉइड सीधे एसडीकार्ड के बिना कंप्यूटर से।

ज़रूरी:

  • कंप्यूटर या अन्य डिवाइस पर स्थापित एफ़टीपी सर्वर;
  • पासवर्ड वाला उपयोगकर्ता;
  • एफ़टीपी सर्वर के लिए सेट पोर्ट डिफ़ॉल्ट रूप से 21 है, लेकिन इस उदाहरण में 40 का उपयोग किया गया है;
  • लिखने के अधिकार के साथ उपयोगकर्ता की होम निर्देशिका।

अंगूठे का एक अच्छा नियम यह है कि myfifo को /cache में कॉपी करें, न कि /data में, क्योंकि यदि आप पुनर्प्राप्ति के लिए कच्चे डेटा का उपयोग करते हैं तो आप गलती से महत्वपूर्ण डेटा को ओवरराइट कर सकते हैं।

सिगविन टर्मिनल लॉन्च करें और दर्ज करें:

एडीबी शैल

mkfifo /cache/myfifo
ftpput -v -u यूजर -p पास -P 40 COMPUTER_IP ब्लॉक.raw /cache/myfifo

दूसरा सिग्विन टर्मिनल खोलें और टाइप करें:

एडीबी शैल

dd if=/dev/block/mmcblk0p12 of=/cache/myfifo

कुछ नोट्स:

  • FIFO केवल Linux नेटिव फ़ाइल सिस्टम पर ही बनाए जा सकते हैं; FAT इसके लिए उपयुक्त नहीं है;
  • किसी डिवाइस से विभाजन को पढ़ने की प्रक्रिया इसे किसी भी तरह से संशोधित नहीं करती है।

सभी मेमोरी का बैकअप लें (USB टेदरिंग या वाई-फ़ाई टेदरिंग के माध्यम से)

ऐसा करने के लिए, आपको कंप्यूटर पर सभी नेटवर्क कनेक्शन को डिस्कनेक्ट करना होगा, सिवाय उस कनेक्शन को छोड़कर जिसके साथ आप प्रतिलिपि बनाने की प्रक्रिया को अंजाम देंगे।
जैसे ही आप अपने कंप्यूटर को अपने एंड्रॉइड डिवाइस से कनेक्ट करते हैं, आप "कनेक्शन प्रॉपर्टीज़" में कंप्यूटर का आईपी और डिवाइस का आईपी देख सकते हैं। आईपी ​​- कंप्यूटर का ही आईपी होगा, और गेटवे में एंड्रॉइड डिवाइस का आईपी होगा।
  • वाई-फ़ाई मॉडेम: कंप्यूटर< - Wi-Fi --->एंड्रॉइड डिवाइस< - 3G --->इंटरनेट
  • यूएसबी मॉडेम:
    कंप्यूटर< - USB --->एंड्रॉइड डिवाइस< - Wi-Fi --->इंटरनेट
    कंप्यूटर< - USB --->एंड्रॉइड डिवाइस< - 3G --->इंटरनेट

यह प्रक्रिया बिल्कुल वाई-फाई के माध्यम से डेटा ट्रांसफर करने के समान है, केवल एक चीज यह है कि डेटा ट्रांसफर की गति बहुत अधिक होगी क्योंकि राउटर को गेटवे के रूप में उपयोग करने के बजाय कंप्यूटर और एंड्रॉइड डिवाइस सीधे जुड़े हुए हैं। इस स्थिति में, गेटवे एंड्रॉइड डिवाइस ही होगा। USB मॉडेम की डेटा ट्रांसफर दर सबसे अधिक होती है।

बैकअप एक विभाजन (कच्चा = विभाजन की सटीक बिट-दर-बिट प्रतिलिपि)

सब कुछ ऊपर वर्णित के समान है, केवल आपको mmcblk0 को उपयुक्त अनुभाग से बदलने की आवश्यकता है। इस विशेष मामले में, आप कॉपी किए गए अनुभाग की सामग्री को देखने के लिए सॉफ़्टवेयर का उपयोग कर सकते हैं। फ़ाइल सिस्टम के आधार पर: डिस्कइंटरनल्स लिनक्स रीडर, टोटल कमांडर और इमडिस्क वर्चुअल डिस्क ड्राइवर के लिए प्लगइन। आप अलग-अलग विभाजनों से डेटा पुनर्प्राप्त करने के लिए सॉफ़्टवेयर का भी उपयोग कर सकते हैं, जैसे कि वीएचडी टूल के साथ रिकुवा, या ऑपरेटिंग सिस्टम के साथ शामिल कमांड लाइन टूल।

एक विभाजन का बैकअप लें (टार = केवल फ़ाइलें और फ़ोल्डर्स कॉपी किए जाते हैं)

इस स्थिति में, पहले से माउंट किए गए विभाजन की आवश्यकता होती है। (मैंने ऊपर बताया कि Teclast x98 3जी पर विभाजन कैसे खोजें।)
सिगविन टर्मिनल में सभी माउंटेड विभाजनों की सूची देखने के लिए, दर्ज करें:

अब आपको पता होना चाहिए कि कहां और कौन सा विभाजन माउंट किया गया है, उदाहरण के लिए, फ़र्मवेयर /सिस्टम में माउंट किया गया है, जो मूल रूप से एक ROM है।
इस मामले में, आपको एंड्रॉइड द्वारा लगाए गए प्रतिबंधों के कारण, तीन सिग्विन टर्मिनल खोलने होंगे:

पहला सिगविन टर्मिनल खोलें और एक FIFO बनाएं, उदाहरण के लिए / कैश में, और टार को उस पर रीडायरेक्ट करें:

एडीबी फॉरवर्ड टीसीपी:5555 टीसीपी:5555
एडीबी शैल

/system/xbin/busybox mkfifo /cache/myfifo
/system/xbin/busybox tar -cvf /cache/myfifo /system

आपको ऐसा करना होगा क्योंकि टार को स्टडआउट ("-" के साथ) पर रीडायरेक्ट करना एंड्रॉइड पर काम नहीं करता है और सहेजी गई फ़ाइल को दूषित कर देता है।

दूसरा सिग्विन टर्मिनल खोलें:

एडीबी फॉरवर्ड टीसीपी:5555 टीसीपी:5555
एडीबी शैल

/system/xbin/busybox nc -l -p 5555 -e /system/xbin/busybox cat /cache/myfifo

तीसरा सिगविन टर्मिनल खोलें:

एडीबी फॉरवर्ड टीसीपी:5555 टीसीपी:5555
सीडी /पथ/से/स्टोर/द/बैकअप
एनसी 127.0.0.1 5555 | pv -i 0.5 > system.tar

आप परिणामी टार फ़ाइल को Winrar, टोटल कमांडर, PeaZip आदि का उपयोग करके देख सकते हैं। कृपया ध्यान दें कि आपको फ़ाइलें नहीं निकालनी चाहिए या उन्हें संपादित नहीं करना चाहिए, क्योंकि टार प्रारूप प्रत्येक फ़ाइल के लिए पहुंच और स्वामी डेटा को बरकरार रखता है, जो FAT/NTFS विभाजन में निकाले जाने पर गायब हो जाता है।

टैग:

  • एंड्रॉयड
  • नंद्रॉइड बैकअप
  • डेटा सहेजा जा रहा है
  • अनुवाद
टैगों को जोड़ें

अपनी ज़रूरत की हर चीज़ डाउनलोड करने के बाद, उदाहरण के लिए, हम किसी फ़ोल्डर के रूट में एक एंड्रॉइड फ़ोल्डर बना सकते हैं और संग्रह की अनपैक की गई सामग्री को फ़ोल्डरों में व्यवस्थित कर सकते हैं, यानी। ड्राइवर फ़ोल्डर में ड्राइवर, प्लेटफ़ॉर्म टूल्स में अलग फ़ोल्डर, एसपी फ्लैश टूलएक अलग में, MTK Droid Tools भी एक अलग में।

इसके बाद, अपने डिवाइस पर डेवलपर मोड सक्षम करें और यूएसबी डिबगिंग सक्रिय करें। वे। सबसे पहले, सेटिंग्स -> फोन के बारे में (डिवाइस के बारे में) पर जाएं और "बिल्ड नंबर" पर कई बार (5-7) क्लिक करें जब तक कि एक संदेश दिखाई न दे कि डेवलपर मोड सक्रिय हो गया है। इसके बाद, सेटिंग्स मेनू -> डेवलपर्स के लिए पर जाएं और "यूएसबी डिबगिंग" के लिए बॉक्स को चेक करें:

उसके बाद, डिवाइस को पीसी से कनेक्ट करें और ADB ड्राइवर इंस्टॉल करें (यानी, या तो संग्रह से AdbDriverInstaller.exe चलाकर, या डिवाइस मैनेजर खोलकर और मैन्युअल रूप से ड्राइवरों के लिए पथ निर्दिष्ट करें) एंड्रॉइड फ़ोल्डरअज्ञात डिवाइस के लिए ADB ड्राइवर x64)। परिणाम इस तरह दिखना चाहिए (डिवाइस मैनेजर):

उपकरण एंड्रॉइड एडीबीडिवाइस मैनेजर में इंटरफ़ेस पुष्टि करता है कि हम अगले चरण के लिए तैयार हैं।

हम इसमें डिवाइस का पता चलने तक प्रतीक्षा करते हैं और "ब्लॉक मैप" बटन पर क्लिक करते हैं:

फिर "स्कैटर फ़ाइल बनाएं" बटन पर क्लिक करें और परिणामी फ़ाइल (मेरे लिए इसे MT6582_Android_scatter.txt कहा जाता था) को डिस्क पर सहेजें। इस बिंदु पर, तैयारी का चरण पूरा हो गया है और आप सीधे डेटा पढ़ने के लिए आगे बढ़ सकते हैं।

परिणामी फ़ाइल को नोटपैड++ या वर्ड में खोलें (ध्यान दें कि नियमित नोटपैड काम नहीं करेगा) और उसमें पार्टीशन_नाम: CACHE पंक्ति ढूंढें:

और याद रखें कि Linear_start_addr कॉलम में क्या लिखा है, इस मामले में यह 0x3E900000 है।

हम फोन को पीसी से डिस्कनेक्ट करते हैं और इसे बंद कर देते हैं, यानी। पावर ऑफ बटन को दबाए रखें और मेनू में "पावर ऑफ" चुनें, आप बैटरी को डिस्कनेक्ट और डाल भी सकते हैं। इसके बाद, एसपी फ्लैश टूल लॉन्च करें और रीडबैक टैब पर जाएं। इसके बाद, ऐड बटन पर क्लिक करें। परिणामस्वरूप, तालिका में एक पंक्ति दिखाई देगी:

हम उस पर क्लिक करते हैं, हमसे ROM_0 फ़ाइल को सहेजने के लिए एक स्थान का चयन करने के लिए कहा जाता है, उस फ़ोल्डर का चयन करें जिसमें हम इसे सहेजना चाहते हैं और अगली स्क्रीन पर लंबाई फ़ील्ड में हम वह संख्या दर्ज करते हैं जो हमें पहले याद थी (linear_start_addr):

अंतिम परिणाम कुछ इस प्रकार होना चाहिए:

फिर हम बंद फोन (!) को पीसी से कनेक्ट करते हैं। इस बिंदु पर, डिवाइस मैनेजर खोलने की सलाह दी जाती है। अभी के लिए, हम इस स्क्रीन पर SP फ़्लैश टूल में कोई भी बटन नहीं दबाते हैं!

कनेक्शन के समय, एक अज्ञात MT65xx प्रीलोडर डिवाइस का पता लगाया जाएगा और ओएस आपको इसके लिए ड्राइवर स्थापित करने के लिए संकेत देगा। नीचे दी गई तस्वीर यह स्पष्ट रूप से दिखाती है। MT65xx प्रीलोडर के प्रकट होने के क्षण को "पकड़ने" के लिए फ़ोन कनेक्ट करने से तुरंत पहले डिवाइस मैनेजर को खोलना बेहतर है। यदि डिवाइस दिखाई देता है और ओएस स्वचालित रूप से ड्राइवर स्थापित करने की पेशकश नहीं करता है, तो इसे MT65xx प्रीलोडर डिवाइस पर राइट-क्लिक करके मैन्युअल रूप से किया जाना चाहिए।

"इस कंप्यूटर पर ड्राइवरों की खोज करें" का चयन करें और उस फ़ोल्डर को इंगित करें जिसमें mtk_xp_vista_7_8_x32_x64.zip संग्रह की अनपैक की गई सामग्री स्थित है (यानी इस बिंदु तक आपको संग्रह को कहीं और अनपैक करना चाहिए)। ड्राइवर सफलतापूर्वक स्थापित होने के बाद, डिवाइस मैनेजर में चित्र इस प्रकार बदलना चाहिए:

यदि ड्राइवर स्थापित हैं, तो आप अगले चरण पर आगे बढ़ सकते हैं। कृपया ध्यान दें कि जब आप फोन कनेक्ट करते हैं, तो प्रीलोडर यूएसबी वीकॉम पोर्ट केवल कुछ सेकंड के लिए दिखाई दे सकता है - यह सामान्य है, इस स्तर पर हमारा काम फोन ड्राइवरों को स्थापित करना है ताकि यह बिल्कुल प्रीलोडर यूएसबी वीकॉम पोर्ट के रूप में पहचाना जा सके। और अज्ञात MT65xx प्रीलोडर डिवाइस नहीं। यदि आपके पास अचानक ड्राइवर स्थापित करने का समय नहीं है और फोन चालू हो गया है, तो बैटरी निकालें, फोन डिस्कनेक्ट करें, बैटरी डालें, फोन कनेक्ट करें और प्रक्रिया दोहराएं।

एक बार जब हम आश्वस्त हो जाते हैं कि ड्राइवर स्थापित हो गए हैं, तो हम फोन को पीसी से डिस्कनेक्ट कर देते हैं। हम इसे बंद कर देते हैं, खुले एसपी फ्लैश टूल में हम रीडबैक बटन दबाते हैं और बंद फोन को पीसी से कनेक्ट करते हैं। इसके बाद, हम फोन से फर्मवेयर पढ़ने की प्रक्रिया से गुजरेंगे:

बहुत से लोग उन कठिनाइयों के बारे में लिखते हैं जो ठीक इसी चरण में उत्पन्न होती हैं। मैं थोड़ा और विस्तार से समझाने की कोशिश करूंगा. रीडबैक बटन दबाने के बाद, एसपी फ्लैश टूल फोन को कनेक्ट करने के लिए स्टैंडबाय मोड में चला जाता है, यानी। यह माना जाता है कि इससे पहले आप उस क्षण को पकड़ने में कामयाब रहे जब आपके स्विच ऑफ फोन को MT65xx प्रीलोडर के रूप में पहचाना गया और उस पर ड्राइवर स्थापित किए गए ताकि प्रीलोडर USB VCOM पोर्ट COM पोर्ट में दिखाई दे। यदि अचानक किसी कारण से एसपी फ्लैश टूल ने कोई त्रुटि लिखी, या फोन को कनेक्ट करने का समय नहीं मिला, तो निम्न विधि मदद कर सकती है (वर्णित सब कुछ केवल तभी सत्य है जब आपने ड्राइवरों को सही ढंग से स्थापित किया है और जब आप फोन कनेक्ट करते हैं, तो प्रीलोडर यूएसबी वीकॉम पोर्ट प्रकट होता है): फोन को पीसी से डिस्कनेक्ट करें, बैटरी निकालें, रीडबैक बटन दबाएं, निकाली गई बैटरी के साथ फोन को कनेक्ट करें। एसपी फ्लैश टूल में एक लाल पट्टी होगी (डाउनलोड करें), इस दौरान हम जल्दी से बैटरी वापस डालते हैं, अगर हमारे पास समय है, तो प्रतिशत के साथ एक नीली रीडबैक पट्टी होगी, जैसा कि चित्र में है:

हम प्रक्रिया पूरी होने का इंतजार कर रहे हैं. बैकअप बनाने में 10-15 मिनट लग सकते हैं. बस चल रहे प्रतिशत को देखें और कुछ भी न छुएं 😉 पढ़ने की प्रक्रिया के अंत में, आपको रीडबैक ओके संदेश दिखाई देगा:

जब हम बैकअप कर रहे हैं, तो यह समझाने का समय आ गया है कि स्कैटर फ़ाइल क्या है और ROM_0 फ़ाइल क्या है, जो हमें आउटपुट के रूप में प्राप्त होगी। फ़ोन की मेमोरी एक नियमित EMMC फ़्लैश है, जिसे विशिष्ट अनुभागों में विभाजित किया गया है। स्कैटर फ़ाइल एक अनुभाग विवरण फ़ाइल है (उदाहरण के लिए, स्कैटर में अनुभाग प्रीलोडर, रिकवरी, लोगो, एंड्रॉइड इत्यादि हैं)। विभाजनों का उद्देश्य अलग-अलग है, उदाहरण के लिए, रिकवरी में पुनर्प्राप्ति छवि होती है, लोगो में सिस्टम लोड करते समय उपयोग किया जाने वाला लोगो होता है, एंड्रॉइड में सिस्टम छवि होती है, आदि। ROM_0 फ़ाइल जो हमें आउटपुट के रूप में मिलती है वह अनिवार्य रूप से एक फ़ाइल में EMMC फ़्लैश का निरंतर डंप है। लेकिन परिणामी फर्मवेयर बैकअप का उपयोग करने के लिए, उदाहरण के लिए, किसी अन्य समान डिवाइस को पुनर्स्थापित करने के लिए, हमें अभी भी इसे विभाजनों में विभाजित करने की आवश्यकता होगी। यहां मैं ऐसा करने के कई तरीकों का वर्णन करूंगा। पहला और सबसे आम है MTK Droid Tools के माध्यम से। मान लीजिए कि हमारे पास पहले से ही SP फ़्लैश टूल का उपयोग करके बनाई गई ROM_0 फ़ाइल है।

हम डिवाइस (फोन) की शक्ति को चालू करते हैं और इसे बूट होने देते हैं, जिसके बाद हम MTK Droid Tools को फिर से लॉन्च करते हैं (फोन पर यूएसबी डिबगिंग मोड, निश्चित रूप से चालू होना चाहिए, और ADB ड्राइवरों को स्थापित किया जाना चाहिए) पीसी), रूट, बैकअप, रिकवरी टैब पर जाएं और "ROM_ फ्लैश ड्राइव से बैकअप बनाएं" बटन पर क्लिक करें:

हम पिछले चरण में प्राप्त ROM_0 का चयन करते हैं और लॉग विंडो में हमें निम्नलिखित जैसा कुछ दिखाई देता है:

- कंप्यूटर पर फ़ोल्डर सहेजें: E:\Android\MtkDroidTools\backups\KINGSING_S1_141117_ForFlashtoolFromReadBack_150512-005322\
- स्कैटर फ़ाइल में सहेजा गया है:
E:\Work\मेगाफोन लॉगिन प्लस\MtkDroidTools\backups\KINGSING_S1_141117_ForFlashtoolFromReadBack_150512-005322\MT6582_Android_scatter.txtकॉपी पूरी हुई
- प्रीलोडर.बिन... कॉपी किया गया... कट ठीक है
- एमबीआर...कॉपी किया गया
- EBR1...कॉपी किया गया
- pro_info...कॉपी किया गया
- nvram.bin...कॉपी किया गया
- प्रोटेक्ट_एफ ...कॉपी किया गया
— प्रोटेक्ट_एस...कॉपी किया गया
-seccfg...कॉपी किया गया
- uboot.bin...कॉपी किया गया
-boot.img...कॉपी किया गया

खैर, आदि. अब सेव फ़ोल्डर में, मेरे लिए यह E:\Android\MtkDroidTools\backups\ है, हमारे पास हमारे फर्मवेयर के पूर्ण बैकअप के साथ एक फ़ोल्डर है, जो अनुभागों में विभाजित है (यानी, प्रत्येक अनुभाग एक अलग फ़ाइल में):

यह बैकअप फ़र्मवेयर बनाने की प्रक्रिया पूरी करता है। यदि आप सिर्फ यह जानना चाहते थे कि एसपी फ्लैश टूल का उपयोग करके बैकअप फर्मवेयर कैसे बनाया जाए और आप सफल हो गए, तो आपको आगे पढ़ने की जरूरत नहीं है।

उन्नत के लिए

यदि MTK Droid Tools फ़ोन को "नहीं" देखता है तो क्या करें? या क्या स्कैटर फ़ाइल बनाना या परिणामी ROM_0 फ़ाइल को अनुभागों में विभाजित करना असंभव है? विभाजन मानचित्र कैसे प्राप्त करें और क्या ROM_0 फ़ाइल को मैन्युअल रूप से "कट" करना संभव है? ऐसी संभावना है. MTK 65xx पर एक विभाजन मानचित्र प्राप्त करने के लिए आपको ADB कंसोल में एक कमांड देने की आवश्यकता है - यानी। कंसोल में adb शेल चलाएँ और वहाँ यह कमांड टाइप करें:

यदि अचानक किसी कारण से फोन एडीबी के माध्यम से दिखाई नहीं देता है (इस मामले में, मैं आपको एडीबी मैनुअल पढ़ने की सलाह देता हूं, डिवाइस के VEN_ID में कोई समस्या हो सकती है और आपको बस इसे पंजीकृत करने की आवश्यकता है) %USERPROFILE%\.android\adb_usb.ini, तो वही कमांड Google Play से Android के लिए टर्मिनल एमुलेटर इंस्टॉल करके फोन में ही दिया जा सकता है:

जैसा कि आप देख सकते हैं, परिणाम बिल्कुल वैसा ही है और कैश अनुभाग का लीनियर_स्टार्ट_एड्रेस यहां से लिया जा सकता है। हाँ, वैसे, नए उपकरणों में, उदाहरण के लिए एमटीके 6752 पर आधारित, जैसे बीलाइन प्रो, जेडटीई क्यू लक्स, आदि। विभाजन मानचित्र cat /proc/partinfo का उपयोग करके प्राप्त किया जा सकता है। MTK Droid Tools इन उपकरणों के साथ बिल्कुल भी काम नहीं करता है।

अब हमारे पास कैश अनुभाग का प्रारंभ पता प्राप्त करने की एक विधि है, जो SP फ्लैश टूल का उपयोग करके ROM_0 प्राप्त करने के लिए आवश्यक है। हम प्रत्येक विभाजन के पते (ऑफ़सेट) और आकार भी जानते हैं। वे। ROM_0 को विभाजनों में "काटने" के लिए, हमें MTK Droid Tools का उपयोग करने की आवश्यकता नहीं है। यह किसी भी हेक्स संपादक में मैन्युअल रूप से किया जा सकता है जो किसी ब्लॉक को फ़ाइल में चुनने और सहेजने के कार्य का समर्थन करता है (मैं कंसोल HIEW का उपयोग करता हूं)। खैर, उदाहरण के तौर पर, आइए परिणामी ROM_0 फ़ाइल से पुनर्प्राप्ति विभाजन को "काटें"।

हम जानते हैं (स्कैटर से या डमचर_इन्फो से) इसका लीनियर_स्टार्ट_एड्र: 0x4180000 और पार्टीशन_साइज: 0x1000000। HIEW में ROM_0 खोलें और 0x4180000 पर जाएं। वे। कंसोल में हम hiew32 ROM_0 बनाते हैं, फिर F5 दबाते हैं और विभाजन की शुरुआत का पता दर्ज करते हैं - 4180000:

जैसा कि आप 4180000 से देख सकते हैं, हमारे पास एंड्रॉइड हस्ताक्षर है, जो हमें बताता है कि हम सही रास्ते पर हैं 😉 हमारे मामले में विभाजन पते के अंत की गणना रैखिक_स्टार्ट_एड्र+पार्टिशन_साइज-1 = 0x517FFFF के रूप में की जाती है। हम ब्लॉक का चयन शुरू करने के लिए HIEW * (अतिरिक्त कीबोर्ड पर तारांकन चिह्न) दबाते हैं (यदि हम तीरों को ऊपर / नीचे / दाएं / बाएं घुमाते हैं, तो हम देखते हैं कि ब्लॉक रंग में कैसे हाइलाइट होना शुरू होता है) और या तो 0x517FFFF पर जाएं , या इसे F5 के माध्यम से करें:

और हम फिर से "ग्रे" * (अतिरिक्त कीबोर्ड पर) का उपयोग करके ब्लॉक का चयन करना समाप्त करते हैं। उसके बाद, F2 दबाएं - ब्लॉक लगाएं (ब्लॉक को फ़ाइल में सेव करना):

और पुनर्प्राप्ति अनुभागहमने इसे रिकॉर्ड कर लिया है. इसी प्रकार आप ROM_0 से किसी भी अन्य पार्टीशन को काट सकते हैं। जैसा कि आप समझते हैं, हमें MTK Droid टूल की बिल्कुल भी आवश्यकता नहीं है।

प्रक्रिया को सरल बनाने के लिए, आप एक स्क्रिप्ट/प्रोग्राम भी लिख सकते हैं जो सभी अनुभागों के लिए यह स्वचालित रूप से करेगा, लेकिन ईमानदारी से कहूं तो, मेरे पास इसके लिए पर्याप्त समय नहीं है, और यह कार्य बहुत बार उत्पन्न नहीं होता है, इसलिए HIEW काफी है इन उद्देश्यों के लिए पर्याप्त है.

पी.एस. अभी के लिए बस इतना ही... पोस्ट एक "ड्राफ्ट संस्करण" निकला, क्योंकि... मैंने इसे जल्दी में लिखा था, हो सकता है कि अगर कोई अस्पष्ट बिंदु हो तो मैं इसे बाद में जोड़ूंगा। और हां, हमेशा की तरह, मैं आपकी टिप्पणियों और सवालों का जवाब दूंगा...

पी.पी.एस. चूँकि वे मुझे थोड़ा ठीक करने में कामयाब रहे, /proc/dumchar_info में स्कैटर से लीनियर_स्टार्ट_एड्र नहीं, बल्कि फिजिकल_स्टार्ट_एड्र शामिल है। वे। पुनर्प्राप्ति विभाजन के लिए दिए गए उदाहरण में हमारे पास:

लीनियर_स्टार्ट_एड्र: 0x4180000
फिजिकल_स्टार्ट_एड्र: 0x2D80000
विभाजन_आकार: 0x1000000

और /proc/dumchar_info में हम बिल्कुल प्रारंभएड्र कॉलम में फिजिकल_स्टार्ट_एड्र देखते हैं। लेकिन अगर हम पहले विभाजन (प्रीलोडर) के आकार को देखें, तो यह स्पष्ट हो जाता है कि फिजिकल_स्टार्ट_एड्र को लीनियर_स्टार्ट_एड्र में कैसे परिवर्तित किया जाए; यदि आप 0x1400000 को 0x2D80000 में जोड़ते हैं (यह बिल्कुल प्रीलोडर का आकार है), तो आपको 0x4180000 मिलता है।

विषय पर प्रकाशन