Ni uspelo dobiti kanonične poti do /cow

Poskušam namestiti Ubuntu 12.10 za kar nekaj časa, in mimo ovire eno za drugo. Zdaj sem v naslednji situaciji.

Imam računalnik in 10 GB HDD, ki bo v celoti namenjen Ubuntuju, zato ni možnosti Wubi in dvojnega zagona.

Poskušal sem namestiti z DVD-ja, vendar se je zataknilo pri napaki "Out of frequency". Zato sem se moral prilagoditi možnosti zagona prek USB. Toda moj računalnik ni mogoče zagnati prek USB, zato je rešitev "Plop Boot Manager". Postopek namestitve torej izvajam na naslednji način:

  1. začenjam s pogona CD, na katerem je nameščen Plop.
  2. v možnostih programa Plop izberem zagon USB.
  3. zagon se začne z USB.
  4. monitor na koncu pokaže napako "out of frequency"
  5. pritisnite Shift+Alt+F1 za terminal.
  6. odprite grub s sudo nano /etc/default/grub.
  7. opravite potrebne spremembe.
  8. sudo update-grub.

Zdaj tukaj dobivam naslednjo napako:

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

Moj sistem je

P4 3,06 GHz, 1 GB ram , 10 GB HDD brez OS, monitor CRT lg StudioWorks (star 7 let). Mobo Mercury P4 266a NDMx (865 ekvivalent). Celoten sistem je popolnoma v delujočem stanju pod XP, vendar je USB brez zagona, vse ostale naprave pa delujejo brezhibno.

Kaj naj storim naprej?

Po zagonu iz Ubuntu live CD (Poskusil 14.04 in 16.04) Bil sem sposoben delati okoli te težave z zagonom update-grub chroot'ed na grub particijo. (V nadaljevanju /dev/sda1 nadomestite s particijo, na katero ste namestili grub. Vse ukaze izvajajte kot 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
Komentarji (8)

Poiščite pogon, ki naj bi se zagnal z

mount

Ali .

parted -l

Ali

fdisk /dev/sda

Za seznam razdelkov vnesite p in poiščite tip 83.

(Če imate Fedoro, boste morda morali uporabiti ukaza "vgs" in "lvs", če pa imate mdraid, boste morda morali "cat /proc/mdstat" ali mdadm -A --scan ali insmod raid1 ali insmod raid5 in nato mdadm -A --scan) in namesto /dev/sda boste uporabili /dev/md0 ali /dev/mapper/my-vg

nato ga poskusite namestiti

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

Ali je to vaš pogon? Super!

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

(Ali katerikoli korenski disk /dev s potjo do njega)

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

(Prisilite ga, če mu niso všeč vaše particije.)

Zdaj bi se moral zagnati grub in za zagon lahko uporabite ukaze gruba, po ponovnem zagonu in izbiri pravega zagonskega pogona v nastavitvah BIOS-a ali s pritiskom ESC ali F12, odvisno od vašega BIOS-a in tega, ali ste dovolj hitri, nato pa na poziv gruba - če ni (hd0,1), temveč (hd1,3) ali kaj drugega, ga lahko najdete s pomočjo dopolnjevanja zavihka, vendar pazite, da se dopolnjevanje zavihti za nekaj sekund, če grub ne prebere pogona.

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

Upajmo, da imaš še vedno nedotaknjeno datoteko grub.cfg... ali pa bo morda to delovalo:

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

Pri uporabi ukaza update-grub iz živega CD-ja se pojavi napaka. S podobnim položajem sem se soočil, ko sem opravljal reševanje gruba. Težava je v tem, da ukaza update-grub in grub-install ne delujeta neposredno pod live cd (ne vem, zakaj). Zato morate iti v /usr/sbin, kjer se nahajajo ukazi, in jih izvesti od tam (tj. ./update-grub).

Komentarji (6)