Hay un par de formas de hacer esto:
cat /proc/last_kmsg > /sdcard/last_kernel_message_log.txt
dmesg > /sdcard/kernel_boot_log.txt
- conecte el cable usb con el teléfono inteligente apagado. Luego emita el comando
adb logcat
desde su cmd de Windows o terminal de Linux, se colgará esperando que el dispositivo se conecte, ahora encienda el teléfono inteligente. El logcat debería comenzar a desplazarse entonces.
Dado que expresó interés en averiguar qué tan lejos llega el teléfono en las etapas de arranque antes de que se bloquee , esos métodos deberían ayudar. La cuestión es que debes ser bastante rápido para tomar el registro del kernel (los dos primeros métodos que se muestran arriba).
Lo que haría es esto, en mi caja Arch Linux, dos ventanas de terminal, una para adb logcat
la otra, para tomar el registro en el momento en que logcat comienza a desplazarse.
Editar:
Tenga en cuenta que hay diferencias con el uso de adb
y fastboot
!
fastboot
funciona de manera diferente, solo se usa para flashear imágenes en particiones especificadas, y está más relacionado con el proceso del cargador de arranque, es decir, puede comprender el mecanismo del cargador de arranque. También requiere que:
- bajo Windows, privilegio 'Administrador' para ejecutarlo
- bajo Linux, privilegio 'root'
La razón por la que lo requiere es porque omite ciertas entradas / salidas del hardware y, por lo tanto, no "habla" en el adb
protocolo, sino que es "hablar" directamente con el gestor de arranque. Algo que no se puede hacer como usuario normal. Aquí está la ayuda para el uso de fastboot
.
$ sudo 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
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
-s <serial number> specify device serial number
-p <product> specify product name
-c <cmdline> override kernel commandline
-i <vendor id> specify a custom USB vendor id
-b <base_addr> specify a custom kernel base address
-n <page size> specify the nand page size. default: 2048
A-uso conocido bien de fastboot
es para destellar por ejemplo, a parpadear una imagen de recuperación: sudo fastboot flash recovery recovery.img
, otro es a parpadear directamente una imagen sin procesar, sudo fastboot flash system system.img
. Para más sobre el caso del desarrollo del kernel, usando esto fastboot boot new_kernel
, esto descarga temporalmente un nuevo kernel y arranca usando eso sin tocar el arranque del cargador de arranque.
También hay una limitación en el tamaño de una imagen en bruto que requiere ser flasheada, cuando digo imagen en bruto, me refiero a un archivo que tiene una .img
extensión, la imagen no debe exceder los 128Mb. ( Descubrí esto cuando desarrollé ics4blade, después de que se completó la compilación, el system.img era 162Mb, ¡y traté de flashearlo pero fastboot se negó! Para evitar la limitación, tuve que crear un archivo zip CWM flashable para hacerlo y moverse eso! )
Tenga cuidado y asegúrese de que la partición sea correcta y vuelva a verificar y vuelva a verificar, si es necesario, aléjese de la computadora, tómese un descanso, regrese nuevamente y vuelva a verificar, aquí es donde puede salir terriblemente mal, flashear el archivo incorrecto en la partición incorrecta ... bueno, se encoge de hombros