Curso de Android

De WikiEducator
Saltar a: navegación, buscar


Qué es el bootloader

  • El bootloader es en casí cualquier entorno de sistemas operativos (no solo Android), el primer código que se ejecuta en la máquina.
  • Al ser un código pequeño, está compuesto de las funciones más básicas:
Comprobar el hardware
Inicializar el hardware
Arrancar el sistema operativo (Android o el recovery)
  • Se accede con una combinación de teclas especiales, en función de cada movil.
  • El bootloader tiene dependencia con el hardware lo que explica que cada teléfono o tableta tengan distintos bootloaders.
  • Normalmente el bootloader viene bloqueado.
  • El usuario estándar no tendrá nunca necesidad de hacer un unlocking.
  • No es lo mismo que desbloquear el teléfono que desbloquear el bootloader.
  • En algunos dispositivos no es necesario desbloquear el bootloader para hacerse root. En otros es un requerimiento obligado
  • Nos servirá para acceder al movil mediante fastboot (según terminales) y en modo recovery.

Desbloqueo (unlocking) del bootloader

  • Un bootloader bloqueado no permite cambiar la ROM (/system, /boot) o el recovery (/recovery).
  • El desbloqueo normalmente elimina la garantía del terminal.
  • ¿Si Android es un sistema operativo de código libre por qué los bootloader están bloquedos?
-Lo primero de todo, el bootloader no es parte de Android.
-Los fabricantes de dispositivos desean mantener políticas restrictivas de operadoras, bloqueos de características o para evitar un bricking del movil.
  • Android entrega un sistema abierto, no con bugs de seguridad (rooting) (ver blog ingeniero del equipo de seguridad de Android).
  • Los dispositivos Google Nexus están preparados para instalar sistemas operativos custom (ROM cocinadas) desbloqueando el bootloader mediante la herramienta fastboot, presente en el Android SDK: fastboot oem unlock
  • Algunos fabricantes también permiten desbloquear el bootloader, por ejemplo htc o Sony
  • Otros no, y en este caso la comunidad intenta averiguar vulnerabilidades de seguridad para desbloquearlo (exploits).
  • Al desbloquear el bootloader se borran los datos del teléfono. Esta es una medida de seguridad para evitar el robo de datos por hackers.
  • Si el bootloader está bloqueado no se puede flashear una ROM cocinada, no se pueden editar ficheros del sistema, sustituir la imagen por una de recuperación del sistema o instalar aplicaciones especializadas (Titanium Backup, adb wireless, etc.)

Secuencia de arranque

Bootsequence.png

Ejemplo acceso Bootloader

  • Desde el bootloader podremos elegir arrancar en modo recovery
  • Podremos utilizar el Recovery que aparece por defecto o alguno más completo.
  • Nos moveremos en el menú mediante las teclas Vol+ y Vol- y seleccionaremos las opciones mediante el botón de encendido.
  • El acceso al menú del bootloader difiere entre los distintos dispositivos debido al tipo de bootloader que posea o su versión.
  • Normalmente se apaga el movil y se vuelve a encender pulsando varias teclas.
  • Ejemplo: Con el HTC Desire manteniendo pulsados tecla de encendido y el botón Volumen -.

Htc bootloader.jpg