Gagal mendapatkan jalur kanonik dari /sapi

Saya mencoba menginstal Ubuntu 12.10 untuk beberapa waktu, dan melewati rintangan satu per satu. Sekarang saya berada dalam situasi sebagai berikut.

Saya punya PC dan HDD 10 GB yang akan sepenuhnya didedikasikan untuk Ubuntu sehingga tidak ada pilihan Wubi dan dual boot.

Saya mencoba menginstal dari DVD, tetapi macet di "Out of frequency &" error. Jadi saya harus beradaptasi untuk opsi boot USB. Tetapi PC saya adalah USB yang tidak dapat di-boot, jadi solusinya adalah "Plop Boot Manager &". Jadi saya melakukan prosedur instalasi sebagai berikut:

  1. Dimulai dari CD drive yang sudah terinstal Plop.
  2. memilih untuk boot USB dalam opsi plop.
  3. Booting dimulai dari USB.
  4. Monitor akhirnya memberikan "out of frequency" error
  5. tekan Shift+Alt+F1 untuk membuka terminal.
  6. buka grub dengan sudo nano /etc/default/grub.
  7. lakukan perubahan yang diperlukan.
  8. sudo update-grub.

Sekarang di sini saya mendapatkan error sebagai berikut:

/usr/sbin/grub-probe:error:failed to get canonical path of /cow.

Sistem saya adalah

P4 3.06 GHz, ram 1 GB, HDD 10 GB tanpa OS, monitor CRT lg StudioWorks (7 tahun). Mobo Mercury P4 266a NDMx (setara 865). Seluruh sistem dalam kondisi sempurna dalam kondisi kerja di bawah XP, tetapi USB tidak dapat di-boot, dan semua perangkat lain bekerja dengan sempurna.

Apa yang harus saya lakukan selanjutnya?

Setelah booting dari Ubuntu live CD (Mencoba 14.04 dan 16.04) saya dapat mengatasi masalah ini dengan menjalankan update-grub chroot'ed ke partisi grub. (Gantikan /dev/sda1 di bawah ini dengan partisi apa pun tempat Anda menginstal grub. Semua perintah sebagai root).

mkdir /mnt/chrootdir
mount /dev/sda1 /mnt/chrootdir
for dir in proc dev sys etc bin sbin var usr lib lib64 tmp; do
    mkdir /mnt/chrootdir/$dir && mount --bind /$dir /mnt/chrootdir/$dir
done
chroot /mnt/chrootdir
update-grub2  # inside chroot
Komentar (8)

Temukan drive Anda yang seharusnya boot dengan

mount

Atau

parted -l

Atau

fdisk /dev/sda

Dan ketik p untuk membuat daftar partisi, cari tipe 83.

(Jika Anda punya Fedora Anda mungkin harus menggunakan perintah "vgs" dan "lvs" dan jika Anda punya mdraid Anda mungkin harus "cat /proc/mdstat" atau mdadm -A --scan atau insmod raid1 atau insmod raid5 dan kemudian mdadm -A --scan) dan Anda akan menggunakan /dev/md0 atau /dev/mapper/my-vg bukan /dev/sda

lalu coba pasang

mkdir /mnt
mount /dev/sda1 /mnt
cd /mnt
ls -l

Apakah ini drive Anda? Keren!

grub-install --recheck --root-directory=/mnt /dev/sda 

(Atau drive /dev mana pun yang menjadi root Anda, dengan jalur yang terpasang)

grub-install --recheck --root-directory=/mnt /dev/sda --force

(Paksa jika tidak suka dengan partisi Anda.)

Sekarang seharusnya boot ke grub, dan Anda dapat menggunakan perintah grub untuk boot, setelah reboot dan memilih drive boot yang tepat dari BIOS Setup, atau dengan menekan ESC atau F12 tergantung pada BIOS Anda dan apakah Anda cukup cepat, kemudian pada prompt Grub - Anda dapat menggunakan tab completion untuk menemukannya jika bukan (hd0,1) tetapi (hd1,3) atau yang lainnya, tetapi berhati-hatilah, tab completion terkadang hang selama beberapa detik jika grub tidak dapat membaca drive.

insmod linux
ls
root=(hd0,1)
linux /boot/vmlinuz root=/dev/sda1
initrd /boot/initrd
boot

Atau, mudah-mudahan Anda masih memiliki file grub.cfg yang utuh... atau mungkin ini akan berhasil:

grub-mkconfig -o /mnt/boot/grub/grub.cfg
Komentar (2)

Ini adalah perintah update-grub yang akan memberikan Anda kesalahan ketika menggunakannya dari live cd. Saya menghadapi situasi yang sama ketika saya melakukan grub rescue. Masalah yang Anda hadapi adalah perintah update-grub dan grub-install tidak bekerja secara langsung di bawah live cd (saya tidak tahu mengapa). Jadi, Anda harus pergi ke /usr/sbin di mana perintah-perintah tersebut berada dan menjalankannya dari sana (yaitu ./update-grub).

Komentar (6)