Fastboot: Difference between revisions
m Reverted edits by 119.30.35.162 (talk) (HG) (3.4.12) |
Citation bot (talk | contribs) Add: date. | Use this bot. Report bugs. | Suggested by Abductive | Category:Android (operating system) | #UCB_Category 95/109 |
||
Line 45: | Line 45: | ||
| AsOf = |
| AsOf = |
||
}} |
}} |
||
'''Fastboot''' is a [[Communication protocol|communications protocol]] used primarily with [[Android (operating system)|Android]] devices.<ref>{{Cite web |url=https://android.googlesource.com/platform/system/core/+/refs/heads/master/fastboot/README.md |title=Fastboot Protocol Documentation |website=android.googlesource.com |access-date=2019-07-07}}</ref> It is implemented in a [[command-line interface]] tool of the same name and as a mode of the [[bootloader]] of Android devices. It is included with the [[Android SDK]] package used primarily to modify the [[flash memory|flash]] [[filesystem]] via a [[USB]] connection from a host computer. It requires that the device be started in '''Fastboot mode'''. If the mode is enabled, it will accept a specific set of commands sent to it via USB using a command line.<ref>{{Cite web |url=https://lifehacker.com/the-most-useful-things-you-can-do-with-adb-and-fastboot-1590337225 |title=The Most Useful Things You Can Do with ADB and Fastboot on Android |last=Ravenscraft |first=Eric |date=2014-06-13 |website=Lifehacker |language=en |access-date=2019-07-07}}</ref> Fastboot allows to boot from a custom [[Android recovery mode|recovery]] image. Fastboot does not require [[Android Debug Bridge|USB debugging]] to be enabled on the device.<ref>{{Cite book|last=Tamma|first=Rohit|url=https://www.worldcat.org/oclc/910639389|title=Learning Android forensics : a hands-on guide to Android forensics, from setting up the forensic workstation to analyzing key forensic artifacts|date=2015|others=Donnie Tindall|isbn=978-1-78217-444-8|location=Birmingham, UK|pages=113|oclc=910639389}}</ref> Not all Android devices have fastboot enabled.<ref>{{Cite web|title=The Easiest Way to Install Android's ADB and Fastboot Tools on Any OS|url=https://lifehacker.com/the-easiest-way-to-install-androids-adb-and-fastboot-to-1586992378|url-status=live|access-date=2021-08-04|website=[[Lifehacker]]|language=en-us}}</ref> To use fastboot, a specific combination of keys must be held during boot.<ref>{{Cite web|date=2017-01-26|title=How to Use ADB and Fastboot on Android (And Why You Should)|url=https://www.makeuseof.com/tag/use-adb-fastboot-android/|url-status=live|access-date=2021-08-04|website=[[Makeuseof]]|language=en-US}}</ref> |
'''Fastboot''' is a [[Communication protocol|communications protocol]] used primarily with [[Android (operating system)|Android]] devices.<ref>{{Cite web |url=https://android.googlesource.com/platform/system/core/+/refs/heads/master/fastboot/README.md |title=Fastboot Protocol Documentation |website=android.googlesource.com |access-date=2019-07-07}}</ref> It is implemented in a [[command-line interface]] tool of the same name and as a mode of the [[bootloader]] of Android devices. It is included with the [[Android SDK]] package used primarily to modify the [[flash memory|flash]] [[filesystem]] via a [[USB]] connection from a host computer. It requires that the device be started in '''Fastboot mode'''. If the mode is enabled, it will accept a specific set of commands sent to it via USB using a command line.<ref>{{Cite web |url=https://lifehacker.com/the-most-useful-things-you-can-do-with-adb-and-fastboot-1590337225 |title=The Most Useful Things You Can Do with ADB and Fastboot on Android |last=Ravenscraft |first=Eric |date=2014-06-13 |website=Lifehacker |language=en |access-date=2019-07-07}}</ref> Fastboot allows to boot from a custom [[Android recovery mode|recovery]] image. Fastboot does not require [[Android Debug Bridge|USB debugging]] to be enabled on the device.<ref>{{Cite book|last=Tamma|first=Rohit|url=https://www.worldcat.org/oclc/910639389|title=Learning Android forensics : a hands-on guide to Android forensics, from setting up the forensic workstation to analyzing key forensic artifacts|date=2015|others=Donnie Tindall|isbn=978-1-78217-444-8|location=Birmingham, UK|pages=113|oclc=910639389}}</ref> Not all Android devices have fastboot enabled.<ref>{{Cite web|title=The Easiest Way to Install Android's ADB and Fastboot Tools on Any OS|url=https://lifehacker.com/the-easiest-way-to-install-androids-adb-and-fastboot-to-1586992378|url-status=live|access-date=2021-08-04|website=[[Lifehacker]]|date=11 January 2017 |language=en-us}}</ref> To use fastboot, a specific combination of keys must be held during boot.<ref>{{Cite web|date=2017-01-26|title=How to Use ADB and Fastboot on Android (And Why You Should)|url=https://www.makeuseof.com/tag/use-adb-fastboot-android/|url-status=live|access-date=2021-08-04|website=[[Makeuseof]]|language=en-US}}</ref> |
||
Android device manufacturers are allowed to choose if they want to implement fastboot or some other protocol.<ref name=":0">{{Cite book|last=Drake|first=Joshua J.|url=https://www.worldcat.org/oclc/875820167|title=Android hacker's handbook|date=2014|publisher=Wiley|others=Zach Lanier, Collin Mulliner, Pau Oliva, Stephen A. Ridley, Georg Wicherski|isbn=978-1-118-60861-6|location=Indianapolis, IN|oclc=875820167}}</ref> |
Android device manufacturers are allowed to choose if they want to implement fastboot or some other protocol.<ref name=":0">{{Cite book|last=Drake|first=Joshua J.|url=https://www.worldcat.org/oclc/875820167|title=Android hacker's handbook|date=2014|publisher=Wiley|others=Zach Lanier, Collin Mulliner, Pau Oliva, Stephen A. Ridley, Georg Wicherski|isbn=978-1-118-60861-6|location=Indianapolis, IN|oclc=875820167}}</ref> |
Revision as of 22:33, 6 April 2023
Original author(s) | Google LLC |
---|---|
Repository | android.googlesource.com |
Included with | Android SDK |
Available in | C++ |
Type | Firmware communication protocol and implementation thereof |
Fastboot is a communications protocol used primarily with Android devices.[1] It is implemented in a command-line interface tool of the same name and as a mode of the bootloader of Android devices. It is included with the Android SDK package used primarily to modify the flash filesystem via a USB connection from a host computer. It requires that the device be started in Fastboot mode. If the mode is enabled, it will accept a specific set of commands sent to it via USB using a command line.[2] Fastboot allows to boot from a custom recovery image. Fastboot does not require USB debugging to be enabled on the device.[3] Not all Android devices have fastboot enabled.[4] To use fastboot, a specific combination of keys must be held during boot.[5]
Android device manufacturers are allowed to choose if they want to implement fastboot or some other protocol.[6]
Keys pressed
The keys that have to be pressed for fastboot differ for various vendors.[7]
- HTC, Xiaomi, and Google Pixel: Power and volume down
- Sony: Power and volume up
- Google Nexus: Power, volume up and volume down
On Samsung devices, (excluding the Nexus S and Galaxy Nexus devices), power, volume down and home has to be pressed for entering ODIN mode. This is a proprietary protocol, and tool, as an alternative to fastboot. The tool has a partial alternative.
Commands
Some of the most commonly used fastboot commands include:
- flash – rewrites a partition with a binary image stored on the host computer.
- flashing unlock/oem unlock *** – unlocks an OEM locked bootloader for flashing custom/unsigned ROMs. The *** is a device specific unlock key.
- flashing lock/oem lock *** – locks an OEM unlocked bootloader.
- erase – erases a specific partition.
- reboot – reboots the device into either the main operating system, the system recovery partition or back into its boot loader.
- devices – displays a list of all devices (with the serial number) connected to the host computer.
- format – formats a specific partition; the file system of the partition must be recognized by the device.
- oem device-info – checks the bootloader state.
- getvar all – displays all information about device (IMEI, bootloader version, battery state etc.).
Implementations
The fastboot protocol has been implemented in the Little Kernel fork of Qualcomm[8][non-primary source needed] and in TianoCore EDK II.[9][10][non-primary source needed]
Fastboot is a mode of the Android bootloader called ABOOT.[11]
See also
References
- ^ "Fastboot Protocol Documentation". android.googlesource.com. Retrieved 2019-07-07.
- ^ Ravenscraft, Eric (2014-06-13). "The Most Useful Things You Can Do with ADB and Fastboot on Android". Lifehacker. Retrieved 2019-07-07.
- ^ Tamma, Rohit (2015). Learning Android forensics : a hands-on guide to Android forensics, from setting up the forensic workstation to analyzing key forensic artifacts. Donnie Tindall. Birmingham, UK. p. 113. ISBN 978-1-78217-444-8. OCLC 910639389.
{{cite book}}
: CS1 maint: location missing publisher (link) - ^ "The Easiest Way to Install Android's ADB and Fastboot Tools on Any OS". Lifehacker. 11 January 2017. Retrieved 2021-08-04.
{{cite web}}
: CS1 maint: url-status (link) - ^ "How to Use ADB and Fastboot on Android (And Why You Should)". Makeuseof. 2017-01-26. Retrieved 2021-08-04.
{{cite web}}
: CS1 maint: url-status (link) - ^ Drake, Joshua J. (2014). Android hacker's handbook. Zach Lanier, Collin Mulliner, Pau Oliva, Stephen A. Ridley, Georg Wicherski. Indianapolis, IN: Wiley. ISBN 978-1-118-60861-6. OCLC 875820167.
- ^ Tahiri, Soufiane (2016). Mastering mobile forensics : develop the capacity to dig deeper into device data acquisition. Birmingham, UK. ISBN 978-1-78528-106-8. OCLC 952135850.
{{cite book}}
: CS1 maint: location missing publisher (link) - ^ "fastboot.c\aboot\app - kernel/lk -". source.codeaurora.org. Retrieved 2021-09-11.
- ^ "Undocumented Fastboot Oem Commands". carlo.marag.no. 2020-09-18. Retrieved 2021-09-11.
- ^ "edk2/AndroidFastbootApp.c at master · tianocore/edk2". GitHub. Retrieved 2021-09-11.
{{cite web}}
: CS1 maint: url-status (link) - ^ Hay, R. (2017). fastboot oem vuln: Android bootloader vulnerabilities in vendor customizations. In 11th USENIX Workshop on Offensive Technologies (WOOT 17).