ฉันแน่ใจว่าคุณเคยเจอเหตุการณ์แบบนี้มาก่อน: คุณเปิดคอมพิวเตอร์ด้วยความตื่นเต้น และทันใดนั้นก็พบกับหน้าจอสีดำและข้อความปริศนาที่บอกว่า... โปรแกรมจัดการบูต GRUB เสียชีวิตแล้วคุณอาจไปยุ่งเกี่ยวกับพาร์ติชั่นดิสก์ ติดตั้ง Windows หลังจาก Linux และอาจทำให้เซกเตอร์บูตถูกเขียนทับ หรือการอัปเดตระบบอาจผิดพลาดระหว่างทาง
สิ่งแรกคืออย่าตกใจ เพราะถึงแม้ว่ามันอาจจะดูเหมือนว่าอุปกรณ์ของคุณเสียไปแล้วก็ตาม ข้อมูลของคุณยังคงอยู่ครบถ้วนGRUB เป็นเพียงประตูสู่ระบบ และถึงแม้ประตูจะเสีย ระบบก็ยังคงอยู่ ขึ้นอยู่กับสิ่งที่คุณมีอยู่ มีหลายวิธีในการแก้ไขปัญหานี้ ตั้งแต่การใช้คอนโซล GRUB เองหากยังใช้งานได้ ไปจนถึงการใช้... Ubuntu หรือ Debian Live USB เพื่อทำการผ่าตัดหัวใจแบบเปิด
การกู้คืนโดยตรงจากคอนโซล GRUB
Si tienes la suerte de que el equipo no arranca pero aún puedes entrar en la línea de comandos de GRUB (pulsando la tecla ‘c’ al inicio), puedes intentar levantar el sistema sin necesidad de un USB externo. Lo primero es ระบุตำแหน่งที่ตั้งของไฟล์ของคุณ เรียกใช้คำสั่ง lsซึ่งจะแสดงดิสก์และพาร์ติชั่นที่มีอยู่ให้คุณเห็น เช่น (hd0,msdos1).
เมื่อคุณพบดิสก์แล้ว คุณต้องมองหาโฟลเดอร์นั้น boot การสำรวจพาร์ติชั่นด้วย ls (hd0,1)/เมื่อคุณเจอคนที่ใช่แล้ว คุณต้อง... กำหนดค่าเส้นทางคำนำหน้า และเข้าถึงสิทธิ์ระดับรูทของระบบโดยใช้คำสั่งต่างๆ set prefix=(hd0,1)/boot/grub y set root=(hd0,1)ถัดไป ให้ค้นหาเคอร์เนลที่มีอยู่ในโฟลเดอร์บูต แล้วโหลดโดยใช้คำสั่ง linuxโดยระบุพาร์ติชันราก (ตัวอย่างเช่น root=/dev/sda1) เพื่อดำเนินการในที่สุด initrd และสตาร์ทเครื่องยนต์
เมื่อคุณเข้าสู่ระบบเซสชันผู้ใช้ของคุณสำเร็จแล้ว อย่าลืมทำสิ่งต่อไปนี้ ซ่อมแซมมอเตอร์สตาร์ทอย่างถาวรเปิดเทอร์มินัลในฐานะผู้ใช้ root แล้วเรียกใช้คำสั่งต่อไปนี้ grub-install /dev/sda ตามด้วย update-grub2 y update-initramfs -u เพื่อป้องกันไม่ให้ปัญหาดังกล่าวเกิดขึ้นซ้ำอีกเมื่อรีสตาร์ทเครื่อง
การติดตั้งระบบใหม่โดยใช้ Live USB (วิธีแบบแมนนวลและแบบ Chroot)
เมื่อ GRUB หายไปอย่างสมบูรณ์ วิธีแก้ปัญหาที่น่าเชื่อถือที่สุดคือการใช้ Live USB ของระบบปฏิบัติการใดๆ ที่ใช้ Debian เป็นพื้นฐาน (เช่น Ubuntu หรือ Linux Mint) สิ่งสำคัญคือสถาปัตยกรรมของ Live USB (AMD64 หรือ i386) ต้องตรงกับสถาปัตยกรรมของระบบที่ติดตั้งไว้ เพื่อหลีกเลี่ยงข้อผิดพลาดขณะเรียกใช้กระบวนการ การเปลี่ยนรูทหรือ chroot.
กระบวนการเริ่มต้นด้วยการระบุพาร์ติชันด้วย sudo fdisk -lสิ่งสำคัญคือต้องแยกแยะให้ได้ว่าพาร์ติชั่นใดเป็นพาร์ติชั่นหลัก (/) และคุณมีพาร์ติชั่น /boot แยกต่างหากหรือไม่ ในการดำเนินการต่อ คุณต้อง ติดตั้งพาร์ติชั่นรูทที่ /mnt และถ้ามีอยู่ จุดเริ่มต้นใน /mnt/bootเพื่อให้ระบบทำงานได้อย่างถูกต้องในสภาพแวดล้อมการใช้งานจริง จำเป็นต้องดำเนินการดังต่อไปนี้ การประกอบที่เชื่อมโยง ของไดเร็กทอรีที่สำคัญของระบบปฏิบัติการที่กำลังทำงานอยู่ sudo mount --bind /dev /mnt/devเช่นเดียวกับ /dev/pts, /proc y /sys.
เมื่อประกอบทุกอย่างเสร็จเรียบร้อยแล้ว เราก็ใช้คำสั่งนั้น sudo chroot /mntนี่เหมือนกับการเล่นมายากล: เราบอกคอมพิวเตอร์ว่า ตอนนี้ไดรฟ์หลักของเราคือฮาร์ดไดรฟ์ และไม่ใช่ USB จากตรงนี้ เราจะติดตั้งตัวจัดการใหม่ด้วย grub-install /dev/sda และเราได้อัปเดตการตั้งค่าด้วย grub-mkconfig -o /boot/grub/grub.cfg o update-grubสุดท้าย เราก็จากไปพร้อมกับ exit และเราก็เริ่มต้นใหม่
โซลูชันอัตโนมัติและทางเลือกที่รวดเร็ว
หากคุณไม่ถนัดการใช้งานเทอร์มินัล หรือรู้สึกว่ากระบวนการยุ่งยากเกินไป ก็มีเครื่องมือที่เรียกว่า... ซ่อมแซมบูต ซึ่งช่วยชีวิตได้จริง ๆ วิธีใช้คือ บูตเครื่องจาก Ubuntu Live USB เปิดเทอร์มินัล แล้วติดตั้งเครื่องมือจากแหล่งเก็บซอฟต์แวร์อย่างเป็นทางการ เมื่อโปรแกรมทำงานแล้ว เพียงเลือกตัวเลือกเพื่อ... การซ่อมแซมที่แนะนำ และโปรแกรมนี้จะจัดการงานที่ยุ่งยากทั้งหมดให้คุณ โดยจะตรวจจับระบบปฏิบัติการและติดตั้ง GRUB ใหม่โดยอัตโนมัติ
ในกรณีที่ง่ายกว่านั้น ซึ่งเราเพียงแค่ต้องการติดตั้ง GRUB ใหม่โดยไม่ต้องทำการ chroot แบบเต็มรูปแบบ เราสามารถเมานต์พาร์ติชันที่มีไดเร็กทอรีบูตอยู่ในโฟลเดอร์ชั่วคราวได้ เช่น /tmp/part และเรียกใช้ sudo grub-install --root-directory=/tmp/part /dev/sda. นี่มีประโยชน์ถ้า เรากำลังมองหาเส้นทางที่ตรงกว่านี้ และเรารู้แน่ชัดว่าเครื่องชาร์จแบตเตอรี่สตาร์ทอยู่ที่ไหน
เพื่อแก้ไขปัญหานี้ ไม่ว่าจะโดยการใช้คำสั่งด้วยตนเองในคอนโซล GRUB เทคนิค chroot กับไดรฟ์ USB ที่บูตได้ หรือการใช้เครื่องมืออัตโนมัติเช่น Boot-Repair สิ่งสำคัญคือการระบุพาร์ติชั่นของดิสก์อย่างถูกต้อง และตรวจสอบให้แน่ใจว่าเซกเตอร์บูตของ MBR หรือ EFI เชื่อมโยงกับเคอร์เนลของระบบปฏิบัติการที่ติดตั้งอย่างถูกต้อง



