มีสองวิธีในการทำสิ่งนี้:
cat /proc/last_kmsg > /sdcard/last_kernel_message_log.txt
dmesg > /sdcard/kernel_boot_log.txt
- เสียบสายเคเบิล USB พร้อมกับปิดสมาร์ทโฟน จากนั้นออกคำสั่ง
adb logcat
จาก Windows cmd หรือเทอร์มินัล Linux ของคุณมันจะรอให้อุปกรณ์มาออนไลน์ตอนนี้เปิดสมาร์ทโฟน logcat ควรเริ่มเลื่อนออก
เนื่องจากคุณแสดงความสนใจในการค้นหาว่าโทรศัพท์ของคุณเข้าสู่ขั้นตอนการบู๊ตได้ไกลแค่ไหนก่อนที่จะเกิดปัญหาวิธีการเหล่านั้นจะช่วยได้ สิ่งคือคุณต้องรวดเร็วในการคว้าบันทึกของเคอร์เนล (สองวิธีแรกที่แสดงด้านบน)
สิ่งที่ฉันจะทำคือนี้บนกล่อง Arch Linux ของฉันสองหน้าต่างเทอร์มินัลหนึ่งหน้าต่างสำหรับอีกบานหนึ่งadb logcat
เพื่อคว้าบันทึก logcat นาทีเริ่มเลื่อนออก!
แก้ไข:
ระวังให้ดีมีความแตกต่างกับการใช้adb
และfastboot
!
fastboot
การทำงานแตกต่างกันมันจะใช้เฉพาะสำหรับภาพกระพริบเป็นพาร์ทิชันที่ระบุและมีความผูกพันกับกระบวนการบูตโหลดเดอร์คือมันสามารถเข้าใจกลไกบูตโหลดเดอร์ นอกจากนี้ยังกำหนดให้:
- ภายใต้ Windows สิทธิ์ 'ผู้ดูแลระบบ' เพื่อเรียกใช้งาน
- ภายใต้ Linux สิทธิ์ 'รูท'
เหตุผลที่ต้องใช้เพราะมันผ่านอินพุต / เอาท์พุตบางอย่างของฮาร์ดแวร์และดังนั้นจึงไม่ "พูดคุย" ในadb
โปรโตคอล แต่เป็น "พูดคุย" โดยตรงกับบูตโหลดเดอร์ สิ่งที่ไม่สามารถทำได้ในฐานะผู้ใช้ปกติ 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
การใช้งานที่fastboot
เป็นที่รู้จักกันดีคือใช้สำหรับการกะพริบเช่นการแฟลชอิมเมจการกู้คืน: sudo fastboot flash recovery recovery.img
อีกอันคือการแฟลชอิมเมจดิบsudo fastboot flash system system.img
โดยตรง สำหรับกรณีเพิ่มเติมของการพัฒนาเคอร์เนลการใช้สิ่งfastboot boot new_kernel
นี้เป็นการดาวน์โหลดเคอร์เนลใหม่และการบูตแบบชั่วคราวโดยไม่ต้องแตะการบู๊ตของบูทโหลดเดอร์เอง
นอกจากนี้ยังมีข้อ จำกัด เกี่ยวกับขนาดของภาพดิบที่ต้องใช้แฟลชเมื่อฉันพูดภาพดิบฉันหมายถึงไฟล์ที่มี.img
นามสกุลภาพต้องไม่เกิน 128Mb ( ฉันค้นพบสิ่งนี้เมื่อพัฒนา ics4blade หลังจากสร้างเสร็จแล้ว system.img คือ 162Mb และฉันพยายามแฟลช แต่ fastboot ปฏิเสธ! เพื่อหลีกเลี่ยงข้อ จำกัด ต้องสร้างไฟล์ zip ที่สามารถ flashable CWM เพื่อทำสิ่งนั้นและไปรอบ ๆ มัน! )
ปฏิบัติด้วยความระมัดระวังและตรวจสอบให้แน่ใจว่าพาร์ติชันนั้นถูกต้องและตรวจสอบอีกครั้งและตรวจสอบอีกครั้งหากจำเป็นเดินออกจากเครื่องคอมพิวเตอร์หยุดพักกลับมาอีกครั้งและตรวจสอบอีกครั้ง แฟลชไฟล์ที่ไม่ถูกต้องลงในพาร์ทิชันผิด ... ดียักไหล่