כיצד לגלות פקודות Fastboot נסתרות

יש הרבה פקודות אתחול מהיר נסתרות במכשיר שלך. כדי למצוא אותם, נצטרך לזרוק את מאתחול האתחול ולבחון את התוכן!

במסע שלי לגלות כמה שיותר על התאמה אישית של אנדרואיד, גיליתי הרבה תגליות לא ברורות אך מעניינות. הראיתי לך איך לגשת תפריטים נסתרים במכשיר שלך על ידי סינון כל פעילויות האפליקציות הנסתרות בטלפון שלך. לאחרונה, הראיתי לך איך לגשת ל כלי אבחון חומרה מוסתר בסמארטפונים מסוימים. עכשיו, אני מבין שחלקכם התאכזבו מהעובדה שהסמארטפון שלכם לא כוסה במאמר הקודם, ואני מתנצל על כך.

כדי לפצות על זה, אני הולך להדריך אותך דרך משהו הרבה יותר מתקדם ומרגש: השלכת מטעין האתחול של המכשיר שלך כדי לגלות פקודות אתחול מהיר נסתרות. המדריך הזה, למרות שנעשה על שלי Nexus 6P, בהחלט ניתן לשכפל ברוב הסמארטפונים. עם זאת, אילו פקודות תהיה לך גישה ישתנו באופן משמעותי בין המכשירים. רוב הפקודות לא ממש יעזרו לך בכל מצב אמיתי, אבל בכל זאת זה די מעניין לצלול את זה עמוק לתוך הגדרות הטלפון שלך. בואו נתחיל.

כתב ויתור: כל עוד אתה יודע מה אתה עושה ויכול לעקוב אחר ההוראות כראוי, שום דבר רע לא אמור לקרות למכשיר שלך. אבל, אנחנו עדיין מתעסקים עם מחיצות המכשיר שלנו ומטען האתחול, כך שאין לדעת מה יכול לקרות אם תזין את הפקודה הלא נכונה. ודא שיש לך גיבוי מחוץ למכשיר מוכן!


הכנה

לפני שנתחיל, יש דבר אחד ממש ממש חשוב לשים לב אליו. על מנת לחלץ את טוען האתחול של המכשיר שלך, תצטרך גישת שורש בטלפון שלך. אם אין לך גישת שורש, תוכל להמשיך לקרוא מדריך זה למטרות חינוכיות, אך לא תוכל לבצע אף אחת מהפקודות הדרושות. הבנתי את זה? טוֹב. תנאי מוקדם נוסף שתצטרך לעמוד בו הוא לוודא שבמחשב שלך יש את כל האפשרויות מנהלי התקנים ADB/fastboot מתאימים. אם אין לך את הקבצים הבינאריים של ADB/fastboot, אז אני ממליץ להתקין מינימלי ADB & Fastboot מהפורומים שלנו. לגבי מנהלי ההתקן, אתה יכול לתפוס את מנהלי ההתקן הדרושים עבור מכשירי Google Nexus כאן ולכל שאר המכשירים מ כאן. איך אתה יודע אם אתה מוכן ללכת? חבר את המכשיר שלך, הפעל איתור באגים ב-USB תחת הגדרות מפתחים, פתח שורת פקודה והקלד:

adb devices

אם אתה רואה את המספר הסידורי של המכשיר שלך קופץ, אז יש לך את הדרייברים הנכונים.


זריקת ה-bootloader

הצעד הראשון שלנו הוא לפתוח מעטפת במכשיר שלנו כדי שנוכל להריץ פקודות על ADB. עדיף שנפעיל פקודות על ADB כי אנחנו נוטים הרבה יותר לעשות טעויות בזמן הקלדה על מקלדת וירטואלית, וטעויות זה לא משהו שאתה רוצה לעשות כאן. הפקודה הראשונה שאתה צריך להפעיל בשורת הפקודה שלך היא:

adb shell

אם אתה רואה את שורת הפקודה משתנה מהצגת הספרייה הבינארית של ADB להצגת שם הקוד של מכשיר האנדרואיד שלך, אז נכנסת בהצלחה למעטפת שורת הפקודה המקומית של המכשיר שלך. כעת, על מנת לגשת למחיצות שעלינו לזרוק, תצטרך גישת משתמש-על. כדי לעשות זאת, הקלד את הדברים הבאים:

su

הסמל שלפני שם הקוד של המכשיר שלך אמור להשתנות מ $ ל # המציין שאתה יכול כעת להפעיל פקודות עם הרשאות גבוהות. היזהר עכשיו!

לאחר מכן, נגלה את המיקום המדויק של תמונת טוען האתחול של המכשיר שלך. על מנת למצוא את הספרייה המדויקת, נדפיס רשימה של כל המחיצות והספריות שלהן לפי שם, ונחפש אחת במיוחד בשם 'מגף.' תצטרך להזין שתי פקודות באופן הבא:

cd /dev/block/bootdevice/by-name
ls -all

כפי שניתן לראות לעיל, מודפסת רשימה ענקית של ספריות מחיצות. המחיצות הללו ממוינות לפי שם, כך שנוכל להבחין בקלות במיקום מחיצת טוען האתחול שלנו. במקרה שלי, טוען האתחול, כלומר 'מגף' בתמונה למעלה, ניתן למצוא ב- /dev/block/mmcblk0p10. זֶה ישתנה בהתאם למכשיר שלך, לכן חשוב שתעקוב אחר ההוראות האלה כדי להבין את הספרייה האמיתית שבה נמצא טוען האתחול שלך. עם זאת, שים לב לספרייה הזו, מכיוון שאנו נתייחס אליה בפקודה הבאה כדי לזרוק את טוען האתחול:

dd if=/dev/block/{YOUR ABOOT PARTITION} of=/sdcard/aboot.img

לאחר ההצלחה, אתה אמור למצוא קובץ בשם 'aboot.img' ממוקם בשורש האחסון הפנימי שלך. כעת, לאחר שהטלנו את טוען האתחול, עלינו לבחון אותו כדי לקבוע אילו פקודות נסתרות נוכל למצוא.


פקודות Fastboot נסתרות והשימושים שלהן

אולי אתה מכיר כמה מפקודות האתחול המהיר הנפוצות יותר, כגון מהיר אתחול פלאש אוֹ אתחול מהיר אתחול. ישנן הרבה יותר פקודות fastboot כפי שהוגדרו ב- פרוטוקול fastboot בקוד פתוח. להלן רשימה של פקודות fastboot הזמינות בכל מכשיר עם טוען אתחול המבוסס על קוד ה-AOSP העדכני ביותר:

מה שחסר ברשימה זו הוא fastboot oem פקודות. פקודות אלו הן ספֵּצִיפִי ליצרני מכשירי אנדרואיד, ואין רשימה מקיפה או תיעוד בשום מקום עבור אילו פקודות oem של fastboot זמינות. כעת, אם יצרן המכשיר שלך היה אדיב מספיק לספק פקודת fastboot שמפרטת את כל פקודות ה-oem (נסה fastboot oem ? ותראה אם ​​זה עובד), אז לא תצטרך לעשות שום דבר נוסף. אם אין פקודה כלשהי שמדפיסה רשימה של פקודות oem זמינות של fastboot, אז תצטרך להדפיס רשימה של מחרוזות מה-aboot.img וחפש את פקודות ה-oem באופן ידני.

'strings' היא פקודת לינוקס, שהתיעוד עבורה הוא זמין פה. כפי שאתה יכול לדעת, אני אישית משתמש במכונת Windows, אז במקום זאת השתמשתי ב- a תוכנית המחקה 'מחרוזות' מ-Linux. הפלט הגולמי של הפקודה 'strings' בקובץ aboot.img יהיה די מבולגן, אבל אם אתה פשוט CTRL+F עבור 'oem' אתה אמור למצוא את מה שאתה צריך. אם אתה רוצה לחדד את החיפוש שלך, אתה יכול לנסות את הפקודה הזו (עבור גרסת Windows שקישרתי):

strings * | findstr /i oem

עבור ה-Nexus 6P, הרכבתי את הרשימה הבאה של פקודות oem של fastboot:

fastboot oem unlock-go
fastboot oem frp-unlock
fastboot oem frp-erase
fastboot oem enable reduced-version
fastboot oem device-info
fastboot oem enable-charger-screen
fastboot oem disable-charger-screen
fastboot oem enable-bp-tools
fastboot oem disable-bp-tools
fastboot oem enable-hw-factory
fastboot oem disable-hw-factory
fastboot oem select-display-panel
fastboot oem off-mode-charge enable
fastboot oem off-mode-charge disable
fastboot oem ramdump enable
fastboot oem ramdump disable
fastboot oem uart enable
fastboot oem uart disable
fastboot oem hwdog certify begin
fastboot oem hwdog certify close
fastboot oem get-imei1
fastboot oem get-meid
fastboot oem get-sn
fastboot oem get-bsn
fastboot oem get_verify_boot_status

הוזהר כי אינך צריך לנסות אף אחת מהפקודות לעיל, או אף אחת מהפקודות שאתה מגלה במכשיר שלך, אלא אם כן אתה מוכן לקבל את הסיכונים. יש סיבה שהפקודות הללו מוסתרות מהמשתמש.

עם זאת, חשבתי על כמה שימושים מסודרים לכמה מפקודות האתחול המהיר שמצאתי (שיכול להיות או לא קיים במכשיר שלך, אז עקוב אחר ההוראות למעלה כדי לבדוק!) שאמור לאהוב את האנדרואיד הקשה ביותר נִלהָב. יש כאן שתי פקודות שיכולות להיות להן שימוש מעשי.

ראשון למעלה הוא fastboot oem (enable|disable)-charger-screen פקודה. מה שזה עושה הוא משבית את מסך הטעינה שצץ כשהמכשיר שלך כבוי. אם אתה לא מעריץ של הבהירות המסנוורת של מסך הטעינה כשהטלפון שלך כבוי, אז אתה יכול להשבית אותו באמצעות פקודת האתחול המהיר הנסתרת הזו!

הבא, יש את Fastboot oem כבוי-טעינה (הפעלה|השבתה) פקודה. פקודה זו קובעת אם המכשיר שלך יופעל אוטומטית כאשר מזוהה מקור מתח. כברירת מחדל, הוא מוגדר ל'נטרול'. אני מודה שלפקודה הזו אין שימוש רב לטלפונים, אבל אם אתה מתכנן להרכיב את הטאבלט שלך ללוח המחוונים של המכונית שלך, תמצא את הפקודה הזו בצורה מדהימה מוֹעִיל. תוכל להגדיר את המכשיר שלך להידלק באופן מיידי כאשר הטאבלט מקבל חשמל, כגון כאשר סוללת המכונית שלך מופעלת. לעומת זאת, די קל לכבות את הטאבלט כאשר החשמל אבד על ידי שימוש באפליקציית אוטומציה כגון Tasker. הפקודה הזו, אגב, עובדת בדיוק כפי שכתוב ב- Nexus 7 (2013).


זהו השיעור הזה בהתאמה אישית של אנדרואיד. שתף את הפקודות שאתה מגלה (אידיאלי בקישור pastebin) בתגובות למטה!

תודה למפתח מוכר בכיר ב-XDA דיס_טרויה על עזרתו ביצירת מאמר זה!