Có một vài cách để làm điều này:
cat /proc/last_kmsg > /sdcard/last_kernel_message_log.txt
dmesg > /sdcard/kernel_boot_log.txt
- cắm cáp usb với điện thoại thông minh đã tắt. Sau đó đưa ra lệnh
adb logcat
từ thiết bị đầu cuối cmd hoặc Linux của Windows, nó sẽ chờ đợi thiết bị được phát trực tuyến, bây giờ cấp nguồn cho điện thoại thông minh. Logcat sẽ bắt đầu cuộn xuống sau đó.
Vì bạn bày tỏ sự quan tâm trong việc tìm ra điện thoại của một người trong giai đoạn khởi động bao xa trước khi nó gặp sự cố , những phương pháp đó sẽ giúp ích. Vấn đề là bạn cần phải khá nhanh để lấy nhật ký của kernel (hai phương thức đầu tiên được hiển thị ở trên).
Những gì tôi sẽ làm là cái này, trên hộp Arch Linux của tôi, hai cửa sổ đầu cuối, một cái cho adb logcat
cái kia, để lấy nhật ký, phút logcat bắt đầu cuộn xuống!
Chỉnh sửa:
Hãy nhận biết, có sự khác biệt với việc sử dụng adb
và fastboot
!
fastboot
hoạt động khác nhau, nó chỉ được sử dụng để flash hình ảnh vào các phân vùng được chỉ định và gắn chặt hơn với quy trình bộ tải khởi động, nghĩa là nó có thể hiểu cơ chế bộ tải khởi động. Nó cũng yêu cầu:
- trong Windows, đặc quyền 'Quản trị viên' để thực thi nó
- trong Linux, đặc quyền 'root'
Lý do nó yêu cầu là vì nó bỏ qua một số đầu vào / đầu ra của phần cứng, và do đó, không "nói" trong adb
giao thức, thay vào đó, nó là để "nói chuyện" trực tiếp với bộ tải khởi động. Một cái gì đó không thể được thực hiện như một người dùng bình thường. Đây là sự giúp đỡ cho việc sử dụng 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
Một cách sử dụng nổi tiếng fastboot
là để flash chẳng hạn, để flash một hình ảnh phục hồi : sudo fastboot flash recovery recovery.img
, một cách khác là trực tiếp flash một hình ảnh thô , sudo fastboot flash system system.img
. Để biết thêm về trường hợp phát triển kernel, sử dụng cái này fastboot boot new_kernel
, cái này tạm thời tải xuống kernel mới và khởi động bằng cách sử dụng mà không cần chạm vào boot của boot-loader.
Ngoài ra còn có một giới hạn về kích thước của một hình ảnh thô cần phải được flash, khi tôi nói hình ảnh thô, tôi đang đề cập đến một tập tin có .img
phần mở rộng, hình ảnh không được vượt quá 128Mb. ( Tôi đã phát hiện ra điều này khi phát triển ics4blade, sau khi quá trình xây dựng hoàn thành, system.img là 162Mb và tôi đã cố gắng flash nó nhưng fastboot đã từ chối! nó! )
Hãy thận trọng và đảm bảo phân vùng là chính xác, kiểm tra lại và kiểm tra lại một lần nữa, nếu cần, rời khỏi máy tính, nghỉ ngơi, quay lại lần nữa và kiểm tra lại, đây là nơi nó có thể trở nên sai lầm khủng khiếp, flash tập tin sai vào phân vùng sai ... cũng nhún vai