GRUB และ LILO ทั้งสองไม่สามารถติดตั้งลงในฮาร์ดดิสก์ NVMe เมื่อติดตั้ง Debian


10

ฉันพยายามติดตั้ง Debian 64 บิตบน Lenovo Thinkpad เมื่อฉันไปถึงขั้นตอนการติดตั้งที่ติดตั้ง bootloader ฉันได้รับข้อความนี้:

ขั้นตอนการติดตั้งล้มเหลว คุณสามารถลองใช้รายการที่ล้มเหลวอีกครั้งจากเมนูหรือข้ามรายการนั้นและเลือกอย่างอื่น ขั้นตอนที่ล้มเหลวคือ: ติดตั้งบูตโหลดเดอร์ของ GRUB บนฮาร์ดดิสก์

กลับไปที่เมนูและการเลือก LILO ทำให้ฉันมีข้อผิดพลาดเดียวกัน บันทึกการติดตั้งบอกว่า

May  1 13:24:23 main-menu[188]: WARNING **: Configuring 'grub-installer' failed with error code 1
May  1 13:24:23 main-menu[188]: WARNING **: Menu item 'grub-installer' failed.
May  1 13:24:28 main-menu[188]: INFO: Menu item 'lilo-installer' selected
May  1 13:24:28 main-menu[188]: WARNING **: Unable to set title for fdisk-udeb.
May  1 13:24:28 main-menu[188]: WARNING **: Configuring 'lilo-installer' failed with error code 1
May  1 13:24:28 main-menu[188]: WARNING **: Menu item 'lilo-installer' failed.

ฉันไม่ได้ใช้ LVM หรือ RAID จนถึงตอนนี้ฉันได้ลองแล้ว

  1. ปิดใช้งานการบู๊ต UEFI และใช้การบูตแบบเดิมแทน ข้อผิดพลาดยังคงเกิดขึ้นกับทั้ง GRUB และ LILO

  2. ทำตามคำแนะนำในคำถามนี้และเรียกใช้

    parted /dev/nvme01
    set 1 bios_grub on
    

    จาก tty2 parted not foundแต่ฉันได้รับข้อผิดพลาดที่กล่าวว่า ในระบบของฉัน/dev/nvme01เป็นเพียงฮาร์ดดิสก์

  3. ตรวจสอบข้อผิดพลาดของฮาร์ดแวร์ เมื่อฉันซื้อระบบครั้งแรกฉันใช้การทดสอบฮาร์ดแวร์ทั้งหมดที่มีอยู่ทั้งจากภายใน BIOS และจากภายใน Windows และผ่านการทดสอบทั้งหมด ฉันสมมติว่านั่นหมายความว่าฮาร์ดแวร์จะไม่ทำงานผิดพลาด

  4. ต่อกระทู้นี้ว่ามีข้อผิดพลาดที่คล้ายกันแม้จะมี LVM ฉันพยายาม redoing แบ่งพาร์ทิชันที่มีขนาดเล็กพาร์ทิชันที่จุดเริ่มต้นรูปแบบด้วย/boot ext2ข้อผิดพลาดเดียวกัน

  5. เปลี่ยนเป็น TTY4 เพื่อดูผลลัพธ์การติดตั้งฉันก็เห็นข้อผิดพลาดเช่นกัน

    chroot: can't execute 'grub-probe': No such file or directory
    

    ค้นหาข้อมูลที่ทำให้เธรดนี้และรายงานข้อผิดพลาดนี้เกี่ยวข้องกับ GRUB แต่ก) สิ่งเหล่านั้นเก่าและข) ฉันได้ทำการติดตั้งจนถึงจุดนี้หลายสิบครั้งและฉันได้รับข้อผิดพลาดทุกครั้ง ดังนั้นมันจึงไม่ดูเหมือนเป็นสิ่งที่เกิดขึ้นครั้งเดียว

  6. ฉันใช้ Gparted เพื่อตรวจสอบว่าฮาร์ดดิสก์ว่างเปล่าหมด

  7. Secure boot ถูกปิดใช้งานใน BIOS

  8. ฉันใช้การติดตั้งโดยใช้แผ่นดีวีดีแบบเต็มและแผ่นซีดีติดตั้ง ทั้งสองถูกบูทจาก USB แต่ปัญหายังคงมีอยู่

ฉันสามารถสร้างmsdosพาร์ติชันตารางและพาร์ติชันสาม (สำหรับ/, /homeและswap) บนไดรฟ์ในขั้นตอนการติดตั้งก่อนหน้านี้ได้สำเร็จดังนั้นฉันจึงไม่รู้ว่าทำไม GRUB จึงไม่สามารถเขียนลงในไดรฟ์ได้

ฉันจะแก้ไขปัญหานี้และติดตั้ง Debian ได้อย่างไร ณ ตอนนี้ระบบ (ใหม่เอี่ยม!) ใช้ไม่ได้อย่างสมบูรณ์เพราะฉันไม่สามารถใช้ระบบปฏิบัติการได้


ส่วนหนึ่งของปัญหาอาจเป็นได้ว่า Debian / แยกส่วนรู้จักดิสก์ไม่ถูกต้องหรือไม่ มันบอกว่าดิสก์มีขนาด 512.1 GB ซึ่งเป็นจริงในแง่ที่ว่าสเปคบอกว่า 512 GB และนั่นคือสิ่งที่โฆษณาไว้และมันจะให้ฉันจัดสรร 512 GB ทั้งหมดให้กับพาร์ติชันต่างๆ อย่างไรก็ตามถ้าฉันโหลดใน Gparted พื้นที่ดิสก์จริงใกล้เคียงกับ 476 GB แต่ฉันคิดว่ามันเป็นเพียง 1024 ต่อ 1,000 สิ่งปกติ

(ฉันโพสต์เวอร์ชันของคำถามนี้ในฟอรัม Debianดังนั้นฉันจะอัปเดตคำถามของฉันด้วยสิ่งที่สำคัญจากชุดข้อความนั้นและในทางกลับกัน)


คุณลองติดตั้ง GRUB บนไดรฟ์ภายนอกเช่นแฟลชไดรฟ์แล้วหรือยัง
McSinyx

ฉันเห็นว่าคุณกำลังใช้msdosตารางพาร์ทิชัน GPT ทำงานหรือไม่
forquare

@forquare ไม่ GPT ไม่ทำงานเช่นกัน
Michael

@McSinyx ฉันสามารถติดตั้ง GRUB บนไดรฟ์ภายนอกตราบใดที่ไดรฟ์ภายนอกได้รับการยอมรับว่าเป็น / dev / sdX และไม่ / dev / nvmeXXX หรือ / dev / <ชุดค่าผสมแปลก ๆ อื่น ๆ > การตั้งค่าของฉันไม่ต้องใช้ไดรฟ์ USB เพียงเพื่อบู๊ตเครื่อง แต่ดูเหมือนว่าจะเป็นตัวเลือกเดียวของฉันในตอนนี้
Michael

คำตอบ:


13

นี่คือสิ่งที่ใช้ได้กับฉันโดยใช้ Debian jessie (เสถียร) โดยทั่วไปฉันใช้คำแนะนำจากโพสต์วิกินี้และแยกขั้นตอนทั้งหมดเกี่ยวกับการบูทคู่กับ Windows เนื่องจากสิ่งเหล่านั้นไม่ได้ใช้กับกรณีของฉัน

  1. ใน BIOS ตั้งค่าการบูต "UEFI เท่านั้น"

  2. ใช้ Gparted สร้างพาร์ติชัน FAT32 ที่จุดเริ่มต้นของดิสก์ด้วยbootและespแฟล็ก (ตัวติดตั้ง Debian ควรทำเช่นนี้ด้วยเช่นกัน แต่เนื่องจากตัวติดตั้งรู้จักขนาดของดิสก์ที่ไม่ถูกต้องฉันจึงชอบใช้ Gparted) ในกรณีของฉันพาร์ติชัน FAT32 คือ / dev / nvme0n1p1

  3. ระหว่างการติดตั้งตรวจสอบให้แน่ใจว่าคุณได้กำหนดค่าการเชื่อมต่อเครือข่าย (ด้วยตนเองหรือโดยอัตโนมัติไม่สำคัญ) มิฉะนั้นขั้นตอนต่อไปจะล้มเหลว

  4. ที่ขั้นตอนการติดตั้งที่ GRUB ไม่สามารถติดตั้งให้เปิดเชลล์และรันคำสั่งต่อไปนี้:

    mount --bind /dev /target/dev
    mount --bind /dev/pts /target/dev/pts
    mount --bind /proc /target/proc
    mount --bind /sys /target/sys
    cp /etc/resolv.conf /target/etc
    chroot /target /bin/bash
    
    aptitude update
    aptitude install grub-efi-amd64
    update-grub
    grub-install --target=x86_64-efi /dev/nvme0n1
    

    ออกจากเชลล์แล้วเลือก "ดำเนินการต่อโดยไม่ติดตั้ง bootloader" คุณจะเห็นข้อความเตือนที่ให้คุณใช้คำสั่งบูต คุณสามารถละเว้นสิ่งนี้ได้

  5. เมื่อการติดตั้งเสร็จสิ้นให้บูตเข้าสู่ระบบ เพิ่ม "nvme" ให้กับ / etc / initramfs-tools / modules จากนั้นเรียกใช้update-initramfs -uเป็น root

  6. แก้ไข / etc / default / grub และเพิ่มบรรทัดนี้

    GRUB_CMDLINE_LINUX="intel_pstate=no_hwp"
    

    และเพิ่ม "nomodeset" ใน GRUB_CMDLINE_LINUX_DEFAULT ดังนั้นจึงมีลักษณะดังนี้:

    GRUB_CMDLINE_LINUX_DEFAULT="quiet nomodeset"
    
  7. update-grubวิ่ง

จำเป็นต้องใช้คำสั่งสองสามคำสั่งสุดท้าย (initramfs เป็นต้นไป) เพื่อป้องกันดิสก์ไม่พบข้อผิดพลาดในครั้งที่สองที่คุณพยายามบูตระบบใหม่


2
ขอบคุณสำหรับสิ่งนี้! มันใช้งานได้ดีโดยไม่ต้องใช้ Gparted!
Victor Schröder

เมื่อฉันgrub-install --target=x86_64-efi /dev/nvme0n1ฉันได้รับข้อผิดพลาด:failed to register the EFI boot entry: No such file or directory
Rahn

@ Rahn มี/dev/nvme0n1ระบบของคุณหรือไม่? มันไม่เรียกว่าเป็นอย่างอื่น/dev/nvme0n2ใช่มั้ย คุณควรถามคำถามใหม่ แต่sudo fdisk -lเป็นจุดเริ่มต้น
Michael A
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.