GRUB dan LILO gagal menginstal ke hard disk NVMe saat menginstal Debian

10

Saya mencoba untuk menginstal stabil Debian 64-bit pada Lenovo Thinkpad. Ketika saya sampai ke langkah instalasi yang menginstal bootloader, saya mendapatkan pesan ini:

Langkah instalasi gagal. Anda dapat mencoba menjalankan item yang gagal lagi dari menu, atau melewatkannya dan memilih yang lain. Langkah yang gagal adalah: Instal boot loader GRUB pada hard disk

Kembali ke menu dan memilih LILO memberi saya kesalahan yang sama. Log instalasi mengatakan

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.

Saya tidak menggunakan LVM atau RAID. Sejauh ini, saya sudah mencoba

  1. Nonaktifkan boot UEFI dan gunakan boot lawas. Kesalahan masih terjadi, dengan GRUB dan LILO.

  2. Ikuti instruksi pada pertanyaan ini dan jalankan

    parted /dev/nvme01
    set 1 bios_grub on
    

    dari TTY2, tapi saya mendapatkan kesalahan yang mengatakan parted not found. Di sistem saya /dev/nvme01adalah satu-satunya hard disk

  3. Periksa kesalahan perangkat keras. Ketika saya pertama kali membeli sistem saya menjalankan semua tes perangkat keras yang tersedia, baik dari dalam BIOS dan dari dalam Windows, dan itu lulus semuanya. Saya berasumsi itu berarti perangkat kerasnya tidak berfungsi.

  4. Per utas ini yang memiliki kesalahan serupa, meskipun dengan LVM, saya mencoba mengulang partisi dengan /bootpartisi kecil di awal, diformat dengan ext2. Kesalahan yang sama.

  5. Beralih ke TTY4 untuk melihat output instalasi, saya juga melihat kesalahannya

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

    Mencari informasi tentang yang muncul di utas ini dan laporan bug ini terkait dengan GRUB, tetapi a) yang sudah lama, dan b) Saya telah menjalankan instalasi hingga saat ini lebih dari selusin kali sekarang dan saya mendapatkan kesalahan setiap kali , jadi itu tidak tampak seperti satu kali.

  6. Saya telah menggunakan Gparted untuk memeriksa apakah hard disk benar-benar kosong.

  7. Boot aman dinonaktifkan di BIOS.

  8. Saya sudah menjalankan instalasi menggunakan DVD lengkap dan CD netinstall; keduanya di-boot dari USB, tetapi masalahnya tetap ada.

Saya berhasil membuat msdostabel partisi dan tiga partisi (untuk /,, /homedan swap) pada drive pada langkah instalasi sebelumnya, jadi saya tidak tahu mengapa GRUB tiba-tiba tidak dapat menulis ke drive.

Bagaimana cara memperbaikinya dan menginstal Debian? Sampai sekarang, sistem (baru!) Benar-benar tidak dapat digunakan karena saya tidak bisa mendapatkan OS di atasnya.


Mungkinkah sebagian masalahnya adalah bahwa Debian / parted mengenali disk secara salah? Dikatakan bahwa disk adalah 512.1 GB, yang benar dalam arti bahwa spesifikasi mengatakan 512 GB dan itulah yang diiklankan, dan itu akan membiarkan saya mengalokasikan semua 512 GB ke berbagai partisi. Namun, jika saya memuatnya di Gparted, ruang disk sebenarnya lebih dekat ke 476 GB, tapi saya berasumsi itu hanya 1024 vs 1000 barang biasa.

(Saya juga memposting versi pertanyaan ini di forum Debian , jadi saya akan memperbarui pertanyaan saya dengan sesuatu yang penting dari utas itu dan sebaliknya.)

Michael A
sumber
Sudahkah Anda mencoba menginstal GRUB pada drive eksternal, mis. Flash drive?
McSinyx
Saya melihat Anda menggunakan msdostabel partisi. Apakah GPT berfungsi?
forquare
@forquare Tidak, GPT juga tidak berfungsi.
Michael A
@McSinyx Saya dapat menginstal GRUB pada drive eksternal, selama drive eksternal tersebut dikenali sebagai / dev / sdX dan bukan / dev / nvmeXXX atau / dev / <beberapa kombinasi aneh lainnya>. Preferensi saya tidak harus menggunakan drive USB hanya untuk mem-boot mesin saya, tetapi sepertinya semakin itulah satu-satunya pilihan saya saat ini.
Michael A

Jawaban:

13

Inilah yang bekerja untuk saya, menggunakan Debian jessie (stable). Saya pada dasarnya mengambil instruksi dari posting wiki ini , dan menghapus semua langkah tentang dual-boot dengan Windows, karena itu tidak berlaku untuk kasus saya.

  1. Di BIOS, atur boot "UEFI only".

  2. Menggunakan Gparted, buat partisi FAT32 di awal disk dengan tanda bootdan esp. (Penginstal Debian juga bisa melakukan ini, tetapi karena penginstal salah mengenali ukuran disk, saya lebih suka menggunakan Gparted). Dalam kasus saya, partisi FAT32 adalah / dev / nvme0n1p1.

  3. Selama instalasi, pastikan Anda memiliki koneksi jaringan yang dikonfigurasi (secara manual atau otomatis, tidak masalah). Jika tidak, langkah selanjutnya akan gagal.

  4. Pada tahap instalasi di mana GRUB gagal untuk menginstal, buka shell dan jalankan perintah berikut:

    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
    

    Keluar dari shell dan pilih "Lanjutkan tanpa menginstal bootloader." Anda akan melihat pesan peringatan yang memberi Anda perintah boot untuk digunakan; kamu bisa mengabaikan ini.

  5. Setelah instalasi selesai, boot ke sistem. Tambahkan "nvme" ke / etc / initramfs-tools / modules, lalu jalankan update-initramfs -usebagai root.

  6. Edit / etc / default / grub dan tambahkan baris ini

    GRUB_CMDLINE_LINUX="intel_pstate=no_hwp"
    

    dan tambahkan "nomodeset" ke GRUB_CMDLINE_LINUX_DEFAULT sehingga terlihat seperti ini:

    GRUB_CMDLINE_LINUX_DEFAULT="quiet nomodeset"
    
  7. Lari update-grub.

Beberapa perintah terakhir (initramfs dan seterusnya) diperlukan untuk mencegah disk tidak menemukan kesalahan saat kedua kali Anda mencoba untuk boot ke sistem baru.

Michael A
sumber
2
Terima kasih untuk yang ini! Ini bekerja dengan baik bahkan tanpa menggunakan Gparted!
Victor Schröder
Ketika saya grub-install --target=x86_64-efi /dev/nvme0n1, saya mendapat kesalahan:failed to register the EFI boot entry: No such file or directory
Rahn
@Rahn Apakah sebenarnya ada /dev/nvme0n1di sistem Anda? Itu tidak disebut sesuatu yang lain /dev/nvme0n2? Anda harus mengajukan pertanyaan baru, tetapi sudo fdisk -ladalah tempat untuk memulai.
Michael A