Diferencia entre revisiones de «Usuario:Juanda/android/fastboot»

De WikiEducator
Saltar a: navegación, buscar
(Pasos Previos)
(Ejemplo de uso)
 
(14 revisiones intermedias por el mismo usuario no mostrado)
Línea 6: Línea 6:
 
</div>
 
</div>
 
<div class="slide">
 
<div class="slide">
=== ¿Qué es FastBoot? ===
+
==== ¿Qué es FastBoot? ====
 
*[[wikipedia:fastboot|fastboot]] es una pequeña herramienta que y puede ser usada para flashear particiones del dispositivo.   
 
*[[wikipedia:fastboot|fastboot]] es una pequeña herramienta que y puede ser usada para flashear particiones del dispositivo.   
 
*Es un modo de recuperación alternativo al de recovery.
 
*Es un modo de recuperación alternativo al de recovery.
 
*El modo FastBoot arranca antes de cargar el SO Android (arranca incluso si Android no está instalado).  
 
*El modo FastBoot arranca antes de cargar el SO Android (arranca incluso si Android no está instalado).  
*Es útil para hacer un update del firmware sin tener que usar el modo recovery.
 
 
*Es el modo preferido para instalar la imagen de recovery en muchos dispositivos.
 
*Es el modo preferido para instalar la imagen de recovery en muchos dispositivos.
*Fastboot también se usa para desbloquear el bootloader de los dispositovos Google Nexus.
+
*Fastboot también se usa para desbloquear el bootloader de los dispositivos Google Nexus.
 
</div>
 
</div>
 
<div class="slide">
 
<div class="slide">
===Instalación y ejecución de Fastboot===
+
====Instalación y ejecución de Fastboot====
 
* Viene con el [http://developer.android.com/sdk/index.html Android SDK]
 
* Viene con el [http://developer.android.com/sdk/index.html Android SDK]
 
*No todos los dispositivos soportan fastboot, por ejemplo Heimdall(Linux) y Odin(Windows) para los terminales Samsung
 
*No todos los dispositivos soportan fastboot, por ejemplo Heimdall(Linux) y Odin(Windows) para los terminales Samsung
Línea 22: Línea 21:
 
</div>
 
</div>
 
<div class="slide">
 
<div class="slide">
===Opciones del comando fastboot===
+
*Arrancar el dispositivo en modo fastboot:
 +
<source lang="bash">
 +
juanda@juanda-PC:~$ adb devices
 +
List of devices attached
 +
01a927828f90ccde device
 +
juanda@juanda-PC:~$ adb reboot bootloader
 +
juanda@juanda-PC:~$ fastboot devices
 +
no permissions fastboot
 +
juanda@juanda-PC:~$ sudo fastboot devices
 +
....
 +
</source>
 +
*Otra opción sería apagar el teléfono y encenderlo pulsando una combinación de teclas.
 +
</div>
 +
<div class="slide">
 +
 
 +
====Opciones del comando fastboot====
 
<source lang="bash">
 
<source lang="bash">
 
juanda@juanda-PC:~$ fastboot
 
juanda@juanda-PC:~$ fastboot
Línea 48: Línea 62:
 
   -p <product>                            specify product name
 
   -p <product>                            specify product name
 
   -c <cmdline>                            override kernel commandline
 
   -c <cmdline>                            override kernel commandline
   -i <vendor id>                          specify a custom USB vendor id
+
   -i <vendor id>                          specify a custom USB vendor id====Comando fastboot oem unlock====
 +
[[Archivo:unlockbootloader.png|400px]]
 +
*Éste comando desbloquea el bootloader enterminales Nexus (o HTC mediante su herramienta oficial).
 +
*Si tenemos un teléfono de un fabricante distinto, tendremos un método distinto en cada caso (Odín para Samsung, por ejemplo).
 +
*Se incluye aquí porque, aún sin necesitarlo, es una parte importante del sistema de código abierto de Android.
 +
*A Google le da lo mismo lo que hagamos con nuestros dispositivos, y nos provee de esta herramienta para desbloquear el teléfono. Esto es algo que en otras compañías no se ve, y es una de las razones por las que muchos eligen Android.
 +
</div>
 
   -b <base_addr>                          specify a custom kernel base address
 
   -b <base_addr>                          specify a custom kernel base address
 
   -n <page size>                          specify the nand page size. default: 2048
 
   -n <page size>                          specify the nand page size. default: 2048
Línea 55: Línea 75:
 
</div>
 
</div>
 
<div class="slide">
 
<div class="slide">
[http://www.htcmania.com/mediawiki/index.php/C%C3%B3mo_utilizar_FastBoot Tutorial sobre FastBoot].
+
====Comando fastboot oem unlock====
 +
[[Archivo:unlockbootloader.png|400px]]
 +
*Éste comando desbloquea el bootloader enterminales Nexus (o HTC mediante su herramienta oficial).  
 +
*Si tenemos un teléfono de un fabricante distinto, tendremos un método distinto en cada caso (Odín para Samsung, por ejemplo).  
 +
*Se incluye aquí porque, aún sin necesitarlo, es una parte importante del sistema de código abierto de Android.
 +
*A Google le da lo mismo lo que hagamos con nuestros dispositivos, y nos provee de esta herramienta para desbloquear el teléfono. Esto es algo que en otras compañías no se ve, y es una de las razones por las que muchos eligen Android.
 +
</div>
 +
<div class="slide">
 +
*Comprobamos que el dispositivo esté disponible y desbloqueamos el bootloader:
 
<source lang=bash>
 
<source lang=bash>
 
juanda@juanda-PC:~/Android/sdk/platform-tools$ sudo ./fastboot devices
 
juanda@juanda-PC:~/Android/sdk/platform-tools$ sudo ./fastboot devices
Línea 67: Línea 95:
 
</div>
 
</div>
 
<div class="slide">
 
<div class="slide">
===Ejemplo de uso===
+
 
====Pasos Previos====
+
====Ejemplo de uso: flashear imágenes====
 
*Primero habría que descargar la imágen que queremos utilizar o tener alguna disponible (por ejemplo un backup).
 
*Primero habría que descargar la imágen que queremos utilizar o tener alguna disponible (por ejemplo un backup).
*Es conveniente tener ciertos comandos en nuestro PATH de usuario (fichero $HOME/.bashrc en Linux)
+
*Es conveniente tener ciertos comandos en nuestro PATH de usuario (fichero $HOME/.bashrc en Linux):
 +
<source lang="bash">
 +
juanda@juanda-PC:~$ echo $PATH
 +
/usr/local/bin:/usr/bin:/bin:/usr/games:/home/juanda/Android/sdk/tools:/home/juanda/Android/sdk/platform-tools
 +
</source>
 
*Se verifica que la imagen descargada no está corrupta.
 
*Se verifica que la imagen descargada no está corrupta.
Ejemplo: md5sum rasbeanjelly_rascarlo_mako_ota_2013-03-10.zip
+
*Ejemplo: Verificación de una ROM
 
<source lang="bash">
 
<source lang="bash">
 
juanda@juanda-PC:~/Descargas$ md5sum rasbeanjelly_rascarlo_mako_ota_2013-03-10.zip  
 
juanda@juanda-PC:~/Descargas$ md5sum rasbeanjelly_rascarlo_mako_ota_2013-03-10.zip  
Línea 79: Línea 111:
 
</div>
 
</div>
 
<div class="slide">
 
<div class="slide">
 +
*¡Los comandos fastboot los tendremos que ejecutar con usuario root!
 
*Flasheo (instalación) del kernel:
 
*Flasheo (instalación) del kernel:
 
<source lang="bash">
 
<source lang="bash">
Línea 85: Línea 118:
 
</source>
 
</source>
 
*Normalmente el fichero con boot.img corresponde al kernel.
 
*Normalmente el fichero con boot.img corresponde al kernel.
*El "./" no es necesario si tenemos fastboot en la variable de entorno $PATH.
+
*El "./" no es necesario si tenemos fastboot en la variable de entorno $PATH:
 
</div>
 
</div>
 
<div class="slide">
 
<div class="slide">
Línea 92: Línea 125:
 
./fastboot flash system systemfile.img
 
./fastboot flash system systemfile.img
 
</source>
 
</source>
 +
*Normalmente las ROM van ya con el kernel dentro del fichero de instalación (.zip)
 +
*Ejemplo fichero zip ROM CyanogenMod:
 +
[[Archivo:Romcyanogen.png|600px]]
 
</div>
 
</div>
 +
<div class="slide">
 
*Normalmente el flasheo de la ROM lo haremos desde el recovery y el zip de la ROM llevará ya el kernel adecuado.
 
*Normalmente el flasheo de la ROM lo haremos desde el recovery y el zip de la ROM llevará ya el kernel adecuado.
 
*Para ello si que necesitaremos a menudo un recovery distinto al  original (este se limita a flashear las ROM vía OTA del fabricante).
 
*Para ello si que necesitaremos a menudo un recovery distinto al  original (este se limita a flashear las ROM vía OTA del fabricante).
<div class="slide">
 
 
*Flasheo de recovery:
 
*Flasheo de recovery:
 
<source lang="bash">  
 
<source lang="bash">  
 
./fastboot flash recovery recovery.img
 
./fastboot flash recovery recovery.img
 
</source>
 
</source>
 +
</div>
 +
</div>

Última revisión de 23:03 13 may 2013


¿Qué es FastBoot?

  • fastboot es una pequeña herramienta que y puede ser usada para flashear particiones del dispositivo.
  • Es un modo de recuperación alternativo al de recovery.
  • El modo FastBoot arranca antes de cargar el SO Android (arranca incluso si Android no está instalado).
  • Es el modo preferido para instalar la imagen de recovery en muchos dispositivos.
  • Fastboot también se usa para desbloquear el bootloader de los dispositivos Google Nexus.

Instalación y ejecución de Fastboot

  • Viene con el Android SDK
  • No todos los dispositivos soportan fastboot, por ejemplo Heimdall(Linux) y Odin(Windows) para los terminales Samsung
  • El comando fastboot se debe ejecutar siempre con privilegios de root.
  • Los comandos de fastboot solo funcionan si el dispositivo está en modo fastboot.
  • Arrancar el dispositivo en modo fastboot:
juanda@juanda-PC:~$ adb devices
List of devices attached 
01a927828f90ccde	device
juanda@juanda-PC:~$ adb reboot bootloader
juanda@juanda-PC:~$ fastboot devices
no permissions	fastboot
juanda@juanda-PC:~$ sudo fastboot devices
....
  • Otra opción sería apagar el teléfono y encenderlo pulsando una combinación de teclas.

Opciones del comando fastboot

juanda@juanda-PC:~$ fastboot
usage: fastboot [ <option> ] <command>
 
commands:
  update <filename>                        reflash device from update.zip
  flashall                                 flash boot + recovery + system
  flash <partition> [ <filename> ]         write a file to a flash partition
  erase <partition>                        erase a flash partition
  format <partition>                       format a flash partition 
  getvar <variable>                        display a bootloader variable
  boot <kernel> [ <ramdisk> ]              download and boot kernel
  flash:raw boot <kernel> [ <ramdisk> ]    create bootimage and flash it
  devices                                  list all connected devices
  continue                                 continue with autoboot
  reboot                                   reboot device normally
  reboot-bootloader                        reboot device into bootloader
  help                                     show this help message
options:
  -w                                       erase userdata and cache (and format if supported by partition type)
  -u                                       do not first erase partition before formatting
  -s <specific device>                     specify device serial number or path to device port
  -l                                       with "devices", lists device paths
  -p <product>                             specify product name
  -c <cmdline>                             override kernel commandline
  -i <vendor id>                           specify a custom USB vendor id====Comando fastboot oem unlock====
[[Archivo:unlockbootloader.png|400px]]
*Éste comando desbloquea el bootloader enterminales Nexus (o HTC mediante su herramienta oficial). 
*Si tenemos un teléfono de un fabricante distinto, tendremos un método distinto en cada caso (Odín para Samsung, por ejemplo). 
*Se incluye aquí porque, aún sin necesitarlo, es una parte importante del sistema de código abierto de Android.
*A Google le da lo mismo lo que hagamos con nuestros dispositivos, y nos provee de esta herramienta para desbloquear el teléfono. Esto es algo que en otras compañías no se ve, y es una de las razones por las que muchos eligen Android.
</div>
  -b <base_addr>                           specify a custom kernel base address
  -n <page size>                           specify the nand page size. default: 2048
  -S <size>[K|M|G]                         automatically sparse files greater than size.  0 to disable

Comando fastboot oem unlock

Unlockbootloader.png

  • Éste comando desbloquea el bootloader enterminales Nexus (o HTC mediante su herramienta oficial).
  • Si tenemos un teléfono de un fabricante distinto, tendremos un método distinto en cada caso (Odín para Samsung, por ejemplo).
  • Se incluye aquí porque, aún sin necesitarlo, es una parte importante del sistema de código abierto de Android.
  • A Google le da lo mismo lo que hagamos con nuestros dispositivos, y nos provee de esta herramienta para desbloquear el teléfono. Esto es algo que en otras compañías no se ve, y es una de las razones por las que muchos eligen Android.
  • Comprobamos que el dispositivo esté disponible y desbloqueamos el bootloader:
juanda@juanda-PC:~/Android/sdk/platform-tools$ sudo ./fastboot devices
01a927828f90ccde	fastboot
juanda@juanda-PC:~/Android/sdk/platform-tools$ sudo ./fastboot oem unlock
...
FAILED (remote: Already Unlocked)
finished. total time: 0.001s
juanda@juanda-PC:~/Android/sdk/platform-tools$

Ejemplo de uso: flashear imágenes

  • Primero habría que descargar la imágen que queremos utilizar o tener alguna disponible (por ejemplo un backup).
  • Es conveniente tener ciertos comandos en nuestro PATH de usuario (fichero $HOME/.bashrc en Linux):
juanda@juanda-PC:~$ echo $PATH
/usr/local/bin:/usr/bin:/bin:/usr/games:/home/juanda/Android/sdk/tools:/home/juanda/Android/sdk/platform-tools
  • Se verifica que la imagen descargada no está corrupta.
  • Ejemplo: Verificación de una ROM
juanda@juanda-PC:~/Descargas$ md5sum rasbeanjelly_rascarlo_mako_ota_2013-03-10.zip 
ff838596803fe634fccf9cd43fd7110c  rasbeanjelly_rascarlo_mako_ota_2013-03-10.zip
  • ¡Los comandos fastboot los tendremos que ejecutar con usuario root!
  • Flasheo (instalación) del kernel:
fastboot flash boot boot.img
 ./fastboot flash boot boot.img
  • Normalmente el fichero con boot.img corresponde al kernel.
  • El "./" no es necesario si tenemos fastboot en la variable de entorno $PATH:
  • Flasheo de la ROM:
./fastboot flash system systemfile.img
  • Normalmente las ROM van ya con el kernel dentro del fichero de instalación (.zip)
  • Ejemplo fichero zip ROM CyanogenMod:

Romcyanogen.png

  • Normalmente el flasheo de la ROM lo haremos desde el recovery y el zip de la ROM llevará ya el kernel adecuado.
  • Para ello si que necesitaremos a menudo un recovery distinto al original (este se limita a flashear las ROM vía OTA del fabricante).
  • Flasheo de recovery:
 
./fastboot flash recovery recovery.img