สาเหตุหนึ่งที่ทำให้ Linux บูตไม่ขึ้นคือ GRUB (บูตโหลดเดอร์) เสียหาย
เมื่อ GRUB มีปัญหา ระบบอาจค้างอยู่ที่ grub rescue แสดงเพียงหน้าจอดำ หรือไม่สามารถเข้าสู่ระบบปฏิบัติการได้เลย
บทความนี้จะอธิบายอาการที่พบบ่อย สาเหตุหลัก และวิธีซ่อมแซม GRUB เบื้องต้นด้วย Live USB
1. อาการเมื่อ GRUB เสียหาย
- เปิดเครื่องแล้วขึ้นเพียง
grub rescue - มีข้อความผิดพลาดเช่น “no such partition”
- Linux ไม่เข้าสู่ระบบและค้างอยู่ที่หน้าจอดำ
- หลังอัปเดตแล้วระบบบูตไม่ขึ้น
หากมีอาการเหล่านี้ เป็นไปได้ว่า GRUB หรือพาร์ทิชันที่เกี่ยวข้องกับการบูตเกิดความเสียหาย
2. สาเหตุที่พบบ่อย
- การอัปเดตระบบถูกขัดจังหวะ
- โครงสร้างพาร์ทิชันของดิสก์ถูกเปลี่ยน
- การทำดูอัลบูตกับ Windows เขียนทับข้อมูลการบูต
- พาร์ทิชัน EFI หรือ /boot เสียหาย
- ดิสก์มีปัญหาจนไฟล์บูตหายไป
ปัญหานี้มักเกิดหลังจากปรับพาร์ทิชัน ติดตั้งระบบใหม่ หรืออัปเดตเคอร์เนล
3. เริ่มจากบูตด้วย Live USB
ถ้า Linux บูตไม่ขึ้นตามปกติ วิธีที่ปลอดภัยที่สุดคือบูตเครื่องด้วย Linux Live USB ก่อน จากนั้นเปิดเทอร์มินัลและตรวจสอบพาร์ทิชันที่มีอยู่
lsblk -f
ให้ตรวจสอบว่าพาร์ทิชันใดคือ Linux root และพาร์ทิชันใดคือ EFI
4. เมานต์ระบบแล้วซ่อม GRUB
ด้านล่างคือตัวอย่างขั้นตอนการกู้คืนทั่วไป โปรดเปลี่ยนชื่ออุปกรณ์ให้ตรงกับเครื่องของคุณ
sudo mount /dev/sda2 /mnt
sudo mount /dev/sda1 /mnt/boot/efi # ใช้เฉพาะระบบ UEFI
sudo mount --bind /dev /mnt/dev
sudo mount --bind /proc /mnt/proc
sudo mount --bind /sys /mnt/sys
sudo chroot /mnt
เมื่อเข้า chroot แล้ว ให้ติดตั้ง GRUB ใหม่
grub-install /dev/sda
ถ้าเป็นระบบ UEFI สามารถใช้คำสั่งนี้ได้เช่นกัน
grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=GRUB
จากนั้นสร้างการตั้งค่าการบูตใหม่
update-grub
เสร็จแล้วให้ออกจากระบบและรีบูต
exit
sudo reboot
5. หากไม่มีคำสั่ง update-grub
ในดิสทริบิวชันอย่าง Fedora มักใช้คำสั่ง grub2-mkconfig แทน
ตัวอย่างเช่น:
grub2-mkconfig -o /boot/grub2/grub.cfg
ในระบบ UEFI ตำแหน่งไฟล์ปลายทางอาจต่างกันตามดิสทริบิวชัน
สรุป
GRUB เสียหายเป็นหนึ่งในสาเหตุที่พบบ่อยของการที่ Linux บูตไม่ขึ้น ในหลายกรณีไม่จำเป็นต้องติดตั้งระบบใหม่ทันที โดยปกติสามารถลองทำตามลำดับนี้ได้:
- บูตด้วย Live USB
- ตรวจสอบพาร์ทิชัน Linux และ EFI
- เมานต์ระบบและเข้า chroot
- ติดตั้ง GRUB ใหม่
- สร้างการตั้งค่าการบูตใหม่
หากดิสก์ไม่ได้เสียหายอย่างรุนแรง ระบบมักจะกู้คืนได้ด้วยขั้นตอนเหล่านี้