Mislyktes med å få kanonisk bane for /cow

Jeg prøver å installere Ubuntu 12.10 i ganske lang tid, og passerer hindringer en etter en. Nå er jeg i en situasjon som følger.

Jeg har en PC og 10 GB HDD som vil være helt dedikert til Ubuntu, så ingen mulighet for Wubi og dual boot.

Jeg prøvde å installere fra DVD, men det blir sittende fast på " Ut av frekvens " feil. Så jeg måtte tilpasse meg for USB-oppstartsalternativet. Men PC-en min er ikke USB-oppstartbar, så løsningen er " Plop Boot Manager ". Så jeg gjør installasjonsprosedyren som følger:

  1. starter fra en CD-stasjon som har plop installert.
  2. velge for USB-oppstart i plop-alternativer.
  3. oppstart begynner fra USB.
  4. skjermen gir til slutt "ut av frekvens" -feil.
  5. trykk Shift+Alt+F1 for å få terminalen.
  6. Åpne grub med sudo nano /etc/default/grub.
  7. Gjør nødvendige endringer.
  8. sudo update-grub.

Nå får jeg feil som følger:

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

Mitt system er

P4 3.06 GHz, 1 GB ram , 10 GB HDD uten OS, skjerm CRT lg StudioWorks (7 år gammel). Mobo Mercury P4 266a NDMx (865 ekvivalent). Hele systemet er perfekt i arbeidstilstand under XP, men det er USB ikke oppstartbar, og alle andre enheter fungerer perfekt.

Hva skal jeg gjøre videre?

Etter å ha startet opp fra Ubuntu live-CD (prøvde 14.04 og 16.04) klarte jeg å omgå dette problemet ved å kjøre update-grub chroot' ed til grub-partisjonen. (Erstatt /dev/sda1 nedenfor med hvilken partisjon du installerte grub på.) Alle kommandoer som root. Alle kommandoer som 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
Kommentarer (8)

Finn stasjonen din som skal starte opp med

mount

Eller

parted -l

Eller

fdisk /dev/sda

Og skriv p for å liste opp partisjonene, se etter type 83.

(Hvis du har Fedora må du kanskje bruke kommandoene "vgs" og "lvs" og hvis du har mdraid må du kanskje bruke "cat /proc/mdstat" eller mdadm -A --scan eller insmod raid1 eller insmod raid5 og deretter mdadm -A --scan) og du vil bruke /dev/md0 eller /dev/mapper/my-vg i stedet for /dev/sda

prøv deretter å montere den

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

Er dette harddisken din? Kult!

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

(Eller hvilken /dev-stasjon roten din er, med den monterte banen)

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

(Tving den hvis den ikke liker partisjonene dine).

Nå skal den starte opp i grub, og du kan bruke grub-kommandoene til å starte opp, etter omstart og velge riktig oppstartstasjon fra BIOS-oppsettet, eller ved å trykke ESC eller F12, avhengig av BIOS og om du er rask nok, og deretter ved Grub-prompten - du kan bruke faneutfylling for å finne den hvis den ikke er (hd0,1), men (hd1,3) eller noe annet i stedet, men pass på, faneutfylling henger noen ganger i noen sekunder hvis grub ikke kan lese stasjonen.

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

Eller, forhåpentligvis har du fortsatt en intakt grub.cfg-fil ... eller kanskje dette vil fungere:

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

Det er kommandoen update-grub som vil gi deg feilen når du bruker den fra en live-cd. Jeg sto overfor en lignende situasjon da jeg gjorde en grub-redning. Problemet du har er at kommandoene update-grub og grub-install ikke fungerer direkte under live cd (jeg vet ikke hvorfor). Så du må gå til / usr/sbin der kommandoene er plassert og utføre dem derfra (dvs. ./update-grub).

Kommentarer (6)