ฉันจะเปิดใช้งานการถ่ายโอนข้อมูลเคอร์เนลผิดพลาดใน Debian ได้อย่างไร


9

ฉันต้องการเปิดใช้งานการถ่ายโอนข้อมูลเคอร์เนลผิดพลาดสำหรับเครื่อง Debian 5.0.7 ของฉัน รุ่นเคอร์เนลคือ 2.2.26 amd64

ฉันจะกำหนดค่าสิ่งนี้ได้อย่างไร


ฉันจำ Kernel 2.2.x ที่มี AMD64 รองรับได้หรือไม่ ... ฉันหมายเลขรุ่นนี้ถูกต้องหรือไม่
Turbo J

คำตอบ:


7

คุณอาจต้องการดูkdump-toolsแพ็คเกจของ Debian เพื่อทำขั้นตอนการบู๊ตที่จำเป็นโดยอัตโนมัติ

ขั้นตอนคร่าว ๆ

  1. sudo apt-get install kdump-tools
  2. ตั้งUSE_KDUMP=1อยู่ที่/etc/default/kdump-tools
  3. เพิ่มcrashkernel=128Mไปยังบรรทัดคำสั่งเคอร์เนลที่กำหนดในการกำหนดค่า bootloader (เช่น/etc/default/grub) นอกจากนี้ยังไม่เจ็บที่จะผ่านnmi_watchdog=1เช่นกันเพื่อให้แน่ใจว่าถูกจับได้ยาก
    • โปรดทราบว่า 128MB เป็นเพียงรูปเบสบอล จำเป็นต้องมีขนาดใหญ่พอที่จะรองรับอิมเมจเคอร์เนลและ init ramdisk ที่เกี่ยวข้อง
    • หากดิสก์เริ่มต้นของคุณมีขนาดใหญ่คุณอาจสามารถย่อขนาดได้ด้วยการปรับแต่ง /etc/initramfs-tools/initramfs.conf
  4. ตรวจสอบให้แน่ใจว่ามีการอัปเดตการกำหนดค่าบูตโหลดเดอร์ของคุณ (เช่นsudo update-grub)
  5. ตรวจสอบให้แน่ใจเคอร์เนลของคุณถูกสร้างขึ้นด้วย
    • CONFIG_RELOCATABLE=y
    • CONFIG_KEXEC=y
    • CONFIG_CRASH_DUMP=y
    • CONFIG_DEBUG_INFO=y
  6. Reboot
  7. ตรวจสอบว่าโหลดเคอร์เนลผิดพลาด cat /sys/kernel/kexec_crash_loaded
  8. ทางเลือก:ทดสอบว่าทั้งหมดนี้ใช้งานได้
    1. sudo sync; echo c | sudo tee /proc/sysrq-trigger
    2. ใช้crashเครื่องมือเพื่อดูการถ่ายโอนข้อมูลความผิดพลาดที่เกิดขึ้น
  9. ค้นหาหมายเลขของวิสกี้ที่ดีเพื่อลดความเจ็บปวดในอนาคตของคุณในการดีบักเคอร์เนล

โหวตขึ้นสำหรับการอ้างอิงวิสกี้ (และทุกอย่างอื่น)
clearlight

4

คำตอบสั้น ๆ แต่ ...

ไปที่แหล่งเคอร์เนลของคุณ (เช่น cd / usr / src / linux /) และกำหนดค่าตัวเลือกสำหรับเคอร์เนลถัดไป (สร้าง menuconfig) ไปที่ "ประเภทและคุณสมบัติของโปรเซสเซอร์" เปิดใช้งาน "การถ่ายโอนข้อมูลเคอร์เนลผิดพลาด" (CONFIG_CRASH_DUMP = y)

สร้างเคอร์เนลใหม่ติดตั้ง

จากนั้นอ่านข้อมูลพื้นหลังเหล่านี้เพิ่มเติม: Linux-Crash-HOWTO.pdfและlkcd utils


1
และตรวจสอบได้หากมีการเปิดใช้งานแล้ว: grep CONFIG_CRASH /boot/config-$(uname -r)
แมทธิว Flaschen
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.