|
|
(62 revisiones intermedias por el mismo usuario no mostrado) |
Línea 4: |
Línea 4: |
| <div class="slide"> | | <div class="slide"> |
| | | |
− | = Introducción = | + | = Conceptos básicos = |
− | </div>
| + | |
| A continuación algunos conceptos básicos para "entrar en escena" | | A continuación algunos conceptos básicos para "entrar en escena" |
− | | + | </div> |
− | =="rooting"==
| + | <div class="slide"> |
| + | ====rooting==== |
| + | * Android es un sistema operativo basado en Linux. |
| + | * El usuario root es el usuario administrador en los sistemas operativos Linux/Unix. |
| * '''Rooting''' es el proceso de adquirir privilegios de administrador en un dispositivo Android. | | * '''Rooting''' es el proceso de adquirir privilegios de administrador en un dispositivo Android. |
− | *¿Agujero de seguridad? Los dispositivos nexus están preparados para instalar sistemas operativos custom (ROM cocinadas) simplemente mediante <em>fastboot oem unlock</em> | + | * Una vez rooteado se pueden reemplazar programas preinstalados o modificar y reemplazar ficheros de sistema o realizar cualquier operación de bajo nivel. |
| + | </div> |
| + | <div class="slide"> |
| | | |
− | =="jailbreaking"== | + | ====jailbreaking==== |
| + | * Los dispositivos Apple tienen fuertes restricciones respecto al software que se ejecuta en sus dispositivos. |
| + | * Hacer jailbreak permitirá: |
| + | :- Instalar software no oficial o desde fuera del App Store |
| + | :- Permitir a las aplicaciones permisos especiales (rooting) |
| + | :- Instalar aplicaciones desde fuera del App Store |
| + | :- Instalar extensiones, temas y otras modificaciones al comportamiento y al look&feel de iOS. |
| + | </div> |
| + | <div class="slide"> |
| + | ====Diferencias entre Android y iOS==== |
| + | * Android por defecto permite sideload y cambiar el aspecto del sistema sin necesidad de hacer rooting. |
| + | * Piensa en Matrix: Jailbreak sería comparablea lo que puede hace Morfeo y Rooting a lo que hace Neo. |
| + | </div> |
| + | <div class="slide"> |
| | | |
− | '''[[Wikipedia:IOS_jailbreaking|Jailbreaking]]''' is a term that originated in the walled-garden world of Apple that does not have a single clear analog in the Android world. Because Apple has created so many tight restrictions over what software can be run on an iDevice such as iPhone and iPod, special steps must be taken to do a variety of operations ranging from
| + | ====Side-loading==== |
| + | * Es el proceso de cargar aplicaciones de fuentes distintas al Play Store. |
| + | * En Android es sencillo, simplemente marcar un checkbox en los Ajustes del dispositivo (opción Seguridad). |
| + | * En iPhone no es tan sencillo ya que implica hacer el jailbreak. |
| + | * Hay dispositivos con versiones de Android muy restrictivas: Son casos típicos para instalar ROMS cocinadas. |
| + | </div> |
| + | <div class="slide"> |
| | | |
− | * enabling the iDevice's bootloader to allow unofficial software to be loaded | + | ====ROM, firmware==== |
− | * giving apps and the user escalated privileges to do operations that an app can normally not do in the standard environment (aka "rooting") | + | *Con estos términos nos referimos normalmente al sistema operativo que corre en el dispositivo. |
− | * installing apps without the App Store's involvement (aka "side-loading") | + | *Se ha denominado habitualmente ROM porque no está concebido en principio para ser modificado por el usuario. |
− | * allowing extensions, theming, and other modifications to iOS' look, feel, and behavior | + | *Hablaremos por ejemplo de flashear una ROM cuando cojamos un sistema operativo y lo copiemos en la memoria flash del dispositivo. |
− | * permit booting into multiple operating systems such as Linux or even Android in addition to iOS | + | </div> |
− | * etc. | + | <div class="slide"> |
| + | ====ROMs cocinadas==== |
| + | *Cuando hablamos de distintas ROMS, nos referimos a versiones modificadas de Android. |
| + | *Los fabricantes de dispositivos y la comunidad realiza modificaciones sobre las diferentes versiones del SO Android que se liberan en los canales oficiales |
| + | * Las ROMs cocinadas suelen venir ya preparadas con acceso root mediante aplicaciones como Superuser/SuperSU. |
| + | *Un ejemplo de ROM cocinada sería [http://www.cyanogenmod.org/ CyanogenMod] y sus autores los cocineros. |
| + | </div> |
| + | <div class="slide"> |
| | | |
− | The activities, each of which is technically distinct, appear to have fallen under the general category of "jailbreaking", which combine a number of different facets and goals to cover the general notion of overcoming Apple's inherent iOS restrictions.
| + | ====flashing / flashear==== |
| + | *Proceso de cargar software en el dispositivo (memoria flash). |
| + | *Hay dos formas habituales de flashear un dispositivo: |
| + | :-Usando el programa '''fastboot''' o similar desde el PC y teniendo el dispositivo conectado al mismo (normalmente por usb). Se debe arrancar el dispositivo en modo fastboot. |
| + | :-Usando el modo de recuperación o '''recovery''' del dispositivo, sin utilizar un ordenador. El dispositivo se debe iniciar en modo de recuperación. |
| + | </div> |
| + | <div class="slide"> |
| | | |
− | Although the term is sometimes used by those who do not appreciate the technical distinctions as a general "catch all", Android and CyanogenMod users typically do not use the term "jailbreaking" due to this vagueness, preferring terms that are more descriptive, distinct, and appropriately specific such as "rooting", "side-loading", etc.
| + | ====unlock o desbloqueo de un terminal==== |
| + | *Permitir que el terminal funcione con distintas operadoras de telefonía. |
| + | *Un teléfono desbloqueado debe aún así cumplir los requisitos de la red móvil de las operadoras: |
| + | :- Usar un sistema compatible (GSM o CDMA) |
| + | :- Soportar las frecuencias de la nueva operadora. |
| + | </div> |
| + | <div class="slide"> |
| + | ====''superCID''==== |
| + | * Es el Carrier Identification: un identificador de la operadora de telefonía. |
| + | *Este identificador determina que software se pueden instalar en un dispositivo. Se verifica la firma oficial del software con el CID del dispositivo, que deben coincidir. |
| + | *Es similar a la codificación por regiones de los DVD's que hace que un DVD estadounidense no se pueda reproducir en Europa sin hackear el reproductor. |
| + | </div> |
| + | <div class="slide"> |
| + | ====bootloader==== |
| + | * Lo podríamos definir como la BIOS en Android. |
| + | * Se accede con una combinación de teclas especiales, en función de cada movil. |
| + | *Las funciones básicas son: |
| + | :Comprobar el hardware |
| + | :Inicializar el hardware |
| + | :Arrancar el sistema operativo (Android o el recovery) |
| + | </div> |
| + | <div class="slide"> |
| + | ====Modo S-OFF/S-ON (Security ON/OFF)==== |
| + | * Algunos bootloader incluyen un modo "Security" que imponen restricciones en el arranque como por ejemplo poner el SO en modo de solo lectura. |
| + | *Cambiar el modo del bootloader a S-OFF puede ser entonces un requisito indispensable para modificar o cambiar el sistema operativo. |
| + | *También controla que los zip que se flashean estén firmados por quien se espera. |
| + | *Es similar pero no igual al desbloqueo del bootloader. |
| + | </div> |
| + | <div class="slide"> |
| + | ====Wipe Data - Factory Reset - Hard Reset==== |
| + | *Wipe Data y factory reset son equivalentes: |
| + | :Borran los datos de usuario |
| + | :El sistema operativo se queda igual (no se hace un downgrade por ejemplo si se hubiera actualizado) |
| + | :La memoria externa se queda intacta (sdcard o interna) |
| + | *El hard reset es equivalente a un reseteo de un PC. No se pierden datos. |
| + | </div> |
| + | <div class="slide"> |
| + | ====OEM==== |
| + | *Siglas de Original Equipment Manufacturer |
| + | *El fabricante del dispositivo: Samsung, Nokia, Motorola... |
| + | *Ya no se supone el fabricante de verdad sino la "empresa contratante" (antes si), por eso lo de "original" |
| + | </div> |
| + | <div class="slide"> |
| + | ====Carrier==== |
| + | *Nuestro operador de telefonía: Movistar, Vodafone... |
| + | </div> |
| + | <div class="slide"> |
| | | |
− | Android, being open source, does not ''inherently'' restrict end users' access to their device (though vendors may choose to do so until the devices are rooted). Additionally, many "benefits" of a Jailbroken iDevice such as the ability to side-load are already commonplace and even expected of standard Android phones and tablets.
| + | ==== Imágenes ==== |
− | | + | *Cuando hablamos de imágenes hablamos de sistemas operativos autocontenidos (self-contained operating system). |
− | For more on "jailbreaking" in the iOS world, see this [http://techcrunch.com/2013/01/21/behind-the-scenes-of-the-iphone-5-jailbreak/ comprehensive history on Techcrunch].
| + | *Una imagen del sistema sería el propio sistema operativo Android: |
− | | + | <source lang="bash"> |
− | =="side-loading"== | + | dd if=/dev/mtd/mtd5 of=/sdcard/system.img bs=4096 |
− | | + | </source> |
− | In the world of Apple's iOS operating system, iPads and iPhones are generally unable to normally load apps from any source except the official App Store. Android works differently. [http://play.google.com Google's Play Store] is a source for many hundreds of thousands of apps that can be downloaded and installed automatically. However, the process of "side-loading" allows you to directly install an app from your computer or via any non-Play Store source, such as directly from a web site or even another device.
| + | *Existen imágenes para el kernel, la radio, los datos de usuario o el recovery. |
− | | + | </div> |
− | This process of loading an app that didn't originate from a store is very common in the Android world and is simply a matter of checking a box in the Settings to enable it.
| + | </div> |
− | | + | |
− | With Apple's tighter control of the user experience, steps such as "jailbreaking" must be taken to enable side-loading. Not so for Android. Generally speaking, you can load anything you want.
| + | |
− | | + | |
− | (Exceptions to this include severely-restricted incarnations of Android that appear on some phones and tablets. CyanogenMod may be an option to remove this restriction.)
| + | |
− | | + | |
− | =="flashing"== | + | |
− | | + | |
− | '''[[wikipedia:Flashing_(technology)|Flashing]]''' is a general-purpose term used to describe the process of loading software onto your mobile device. On a computer, the equivalent might be something like "reinstalling", although not all flashing processes require a reformatting to occur.
| + | |
− | | + | |
− | There are typically two types of ways to "flash" a device:
| + | |
− | | + | |
− | The first uses a program called [[Doc:_fastboot_intro|fastboot]] that is run on your computer when it is attached (typically via USB cable) to your device. You boot the device into "fastboot" mode, then use the program to "push" the new software over the cable to the device, where it is installed.
| + | |
− | | + | |
− | The second common flashing method uses the [[All_About_Recovery_Images|recovery mode]] of the device itself, without using a computer. The way it works usually is that a file containing the update to be flashed (usually ending in <code>.zip</code>) is downloaded directly to the device. Then the device is rebooted into recovery mode, at which point the recovery flashes the new software to the device.
| + | |
− | | + | |
− | That's it!
| + | |
− | | + | |
− | =="unlocking a phone"==
| + | |
− | | + | |
− | AKA "Subsidy Unlock" -- AKA "Sim Unlock" AKA "Network Unlock" AKA "Use a foreign SIM Card"
| + | |
− | | + | |
− | SIM-unlocking your phone will offer the benefit of allowing you to use your phone with other carriers.
| + | |
− | | + | |
− | In many markets, when you buy a phone (or mobile-enabled tablet), it can be "[[wikipedia:SIM_lock|locked]]" so that it will only work with a particular carrier in a particular market. The process of "'''unlocking'''" a phone typically means that the device can be used with any compatible carrier in any market. The phone effectively becomes a "universal" or "international" device that can be used with a new regional carrier when travelling, for example.
| + | |
− | | + | |
− | Note that unlocking the phone may violate the terms of your agreement with your carrier, although some US carriers such as T-Mobile are known to send you "unlock codes" if you contact them before travelling. On the other hand, in some countries it is not permitted to lock the phone at all.
| + | |
− | | + | |
− | It is also important to understand that an unlocked phone still must meet the mobile network requirements for the new carrier-- it must use a compatible system (such as GSM or CDMA) and support the frequencies of the new carrier as well.
| + | |
− | | + | |
− | ===''superCID''===
| + | |
− | | + | |
− | You may also hear the term "'''SuperCID'''" in reference to unlocking phones.
| + | |
− | | + | |
− | CID is believed to stand for "Carrier IDentification". It is a special number in the phone that restricts which software can be installed on a particular phone. The CID determines for example, that only an officially-signed T-Mobile radio image can be installed on a T-Mobile phone. And it's why you can't flash a Vodafone ROM onto a Bell Desire Z, two devices which are otherwise very similar.
| + | |
− | | + | |
− | It may be helpful to think of the CID as a kind of "region coding" like you find on DVDs, where a North American DVD can't be played in a European player. But if you hack your DVD player, you could switch it from a European player to a North American one. Or you might even hack it to play both DVDS.
| + | |
− | | + | |
− | You can do the same with phones. SuperCID is, as the name implies, a universal CID where the phone will accept any kind of firmware image.
| + | |
− | | + | |
− | =="unlocking a bootloader"==
| + | |
− | | + | |
− | {{note|note=Unlocking a bootloader and unlocking a phone are two entirely different things.}}
| + | |
− | The "[[wikipedia:Bootloader#Boot_loader|bootloader]]" is the name of the program that first loads when you press the "on" button (or power button) on your device. Its responsibilities include initializing hardware and then starting the next few steps of the boot process by first loading and then running subsequent stages of the boot. These next stages load even further stages, until the operating system as a whole is loaded and you can start to use the device.
| + | |
− | | + | |
− | A "locked bootloader" typically has some kind of restriction on what it will load, based on a digital signature provided by an authority (such as the manufacturer of the device). Devices, which have locked bootloaders, are therefore limited in the operating system that they can load.
| + | |
− | | + | |
− | Many developers of free and open general-purpose computers look at locked bootloaders as a kind of "system bug" or '''design flaw''', because they restrict the freedom of the owner of the device to replace the operating system with one which may be newer, better, faster, more secure, etc. For that reason, many otherwise "locked" bootloaders have been given a "bugfix" to removes this flaw and allow the user to replace the operating system with one that she or he prefers.
| + | |
− | | + | |
− | Some devices, such as Google Nexus devices, are sold with a bootloader that is locked and therefore that can only load Google-provided updates. However, Nexus devices can easily be unlocked by developers and others through the use of the [[fastboot]] tool, available for free via the [[sdk|android sdk]].
| + | |
− | | + | |
− | == S-OFF (Security OFF) Mode ==
| + | |
− | | + | |
− | Some bootloaders include a "Security ON" (AKA "S-ON") mode, whereby certain operational restrictions are imposed on the boot. On some devices (such as the T-Mobile G2), the S-ON bootloader may put the operating system partition in a "read-only" mode. For others, S-ON may cause the device to adopt behavior similar to a fully-locked bootloader.
| + | |
− | | + | |
− | Switching the bootloader to S-OFF mode is therefore a prerequisite on some devices to allow the operating system to be modified or replaced.
| + | |
− | | + | |
− | == More Terminology & Concepts==
| + | |
− | | + | |
− | See the [[Support#Concepts_.26_Vocabulary|Concepts and Vocabulary section]] of this wiki for discussions of additional terms such as "rooting", "sideloading", "jailbreaking", "flashing", "unlocking", "unlocking a bootloader", kinds of memory-- "RAM", "Internal storage", etc. and common Android "partitions"/directories. There's even a [[Doc:_glossary|glossary]].
| + | |
− | | + | |
− | | + | |
− | | + | |
− | | + | |
− | *ROM, firmware, sistema operativo | + | |
− | En la documentación de Android se refiere a la misma cosa. Al sistema operativo que corre en el dispositivo.
| + | |
− | Se ha denominado habitualmente ROM porque no está concebido en principio para ser modificado por el usuario.
| + | |
− | Hablaremos por ejemplo de flashear una ROM cuando cojamos un sistema operativo y lo copiemos en la memoria Flash del dispositivo.
| + | |
− | Cuando hablamos de distintas ROMS, nos referimos a versiones modificadas de Android.
| + | |
− | ¿Por qué podemos querer instalar una versión modificada?
| + | |
− | :Las [http://source.android.com/ fuentes de Android] se liberan una o dos veces al año
| + | |
− | :Mi dispositivo no recibe actualizaciones
| + | |
− | :El dispositivo funciona lento o tiene spyware o adware (por ejemplo de los operadores de telefonía).
| + | |
− | :Al dispositivo le faltan características o se han limitado por los operadores de telefonía.
| + | |
− | | + | |
− | | + | |
− | *Automount en Ubuntu 12.04
| + | |
− | [http://bernaerts.dyndns.org/linux/247-ubuntu-automount-nexus7-mtp]
| + | |
− | | + | |
− | *Android Bootloader
| + | |
− | [http://forum.xda-developers.com/wiki/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. Su función será cargar y ejecutar el sistema operativo.
| + | |
− | Al ser un código pequeño, está compuesto de las funciones más básicas.
| + | |
− | El bootloader tiene dependencia con el hardware lo que explica que cada teléfono o tableta, así como PC's o portatiles tengan distintos bootloaders.
| + | |
− | | + | |
− | *¿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.
| + | |
− | | + | |
− | *Imágenes
| + | |
− | Cuando hablamos de imágenes hablamos de sistemas operativos autocontenidos (self-contained operating system). Una imagen del sistema es lo parte de Android que se usa cada día. También está la recovery image, que normalmente solo se ve cuando se instala una actualización OTA (over the air). | + | |
− | Está recovery image es lo que usan los "power users" para recoverys avanzados, backups y flashear ROMS cocinadas y kernels.
| + | |
− | | + | |
− | *Unlocking: | + | |
− | Se refiere a desbloquear el bootloader.
| + | |
− | El bootloader viene siempre bloqueado por defecto.
| + | |
− | Los OEM (Original Equipment Manufacturer) normalmente te dan la clave de desbloqueo, que se asemeja a la llave de la casa. Algunos te dan una herramienta que puedes bajar de su website para desbloquear el bootloader pero otros no. En este caso la comunidad intenta averiguar vulnerabilidades de seguridad para desbloquearlo (exploits).
| + | |
− | 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.)
| + | |
− | El usuario estándar no tendrá nunca necesidad de hacer un unlocking.
| + | |
− | | + | |
− | *Rooting
| + | |
− | Una vez que el dispositivo está desbloqueado o unlocked es posible hacerse root del mismo. Rooting es el proceso de permitirte ejecutar tu dispositivo con permisos de root.
| + | |
− | En algunos dispositivos no es necesario desbloquear el bootloader para hacerse root. En otros es un requerimiento obligado
| + | |
− | | + | |
− | Una vez rooteado se pueden reemplazar programas preinstalados o modificar y reemplazar ficheros de sistema o realizar cualquier operación de bajo nivel.
| + | |
− | | + | |
− | *ClockworkMod Recovery (CWM)
| + | |
− | Es uno de los custom recoveries para Android más populares. Clockworkmod Recovery es un pequeño sistema operativo guardado en una partición independiente de nuestro teléfono. Dicha partición es arrancada por el "bootloader" (arranque) cuando seleccionamos la entrada "recovery". Ofrece una gran funcionalidad (hacer particiones y dar formato la microsd, hacer backups, instalar roms y actualizaciones, dejar el móvil con los valores de fábrica ...).
| + | |
− | | + | |
− | El CWM recovery desaparecerá de tu móvil si flasheas.
| + | |
− | | + | |
− | Team Win Recovery Project 2.x, or twrp2 for short, is a custom recovery built with ease of use and customization in mind. It’s a fully touch driven user interface – no more volume rocker or power buttons to mash. The GUI is also fully XML driven and completely theme-able. You can change just about every aspect of the look and feel.
| + | |
− | | + | |
− | | + | |
− | *ADB
| + | |
− | | + | |
− | [http://www.elandroidelibre.com/2013/02/diez-comandos-de-adb-que-deberias-conocer.html Comandos con adb]
| + | |