Вже досить довго намагаюся встановити Ubuntu 12.10, долаючи перешкоди одну за одною. Зараз у мене склалася наступна ситуація.
У мене є ПК і 10 Гб HDD, який буде повністю присвячений Ubuntu, тому немає можливості використовувати Wubi та подвійне завантаження.
Я намагався встановити з DVD, але він застряг на помилці "Немає частоти". Тому мені довелося адаптуватися до варіанту завантаження з USB. Але мій ПК не завантажується з USB, тому обхідним шляхом є "Plop Boot Manager". Отже, я виконую процедуру встановлення наступним чином:
Тепер тут я отримую помилку наступного змісту:
/usr/sbin/grub-probe:error:failed to get canonical path of /cow.
Моя система
P4 3.06 GHz, 1 GB ram, 10 GB HDD без ОС, монітор CRT lg StudioWorks (7 років). Mobo Mercury P4 266a NDMx (865 еквівалент). Вся система в ідеальному робочому стані під XP, але з USB не завантажується, а всі інші пристрої працюють ідеально.
Що мені робити далі?
Після завантаження з живого компакт-диска Ubuntu (спробував 14.04 і 16.04) я зміг обійти цю проблему, запустивши update-grub chroot'ed до розділу grub. (Замініть /dev/sda1
нижче будь-яким розділом, на який ви встановили grub. Всі команди від імені користувача 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
Знайдіть диск, який повинен завантажуватися з
mount
Або
parted -l
Або
fdisk /dev/sda
І введіть p для переліку розділів, шукайте тип 83.
(Якщо у вас Fedora, можливо, вам доведеться скористатися командами "vgs" і "lvs", а якщо у вас mdraid, можливо, доведеться "cat /proc/mdstat" або mdadm -A --scan або insmod raid1 або insmod raid5 і потім mdadm -A --scan) і ви будете використовувати /dev/md0 або /dev/mapper/my-vg замість /dev/sda
потім спробуйте змонтувати його
mkdir /mnt
mount /dev/sda1 /mnt
cd /mnt
ls -l
Це твоя флешка? Круто!
grub-install --recheck --root-directory=/mnt /dev/sda
(Або будь-який інший диск /dev, на якому знаходиться ваш корінь, з його змонтованим шляхом)
grub-install --recheck --root-directory=/mnt /dev/sda --force
(Примусьте його, якщо йому не подобаються ваші розділи).
Тепер він повинен завантажитися в grub, і ви можете використовувати команди grub для завантаження, після перезавантаження і вибору правильного завантажувального диска з BIOS Setup, або натиснувши ESC або F12 в залежності від вашого BIOS і чи достатньо ви швидкі, потім у підказці Grub - ви можете використовувати завершення вкладки, щоб знайти його, якщо це не (hd0,1), а (hd1,3) або щось інше, але будьте обережні, завершення вкладки іноді зависає на кілька секунд, якщо grub не може прочитати диск.
insmod linux
ls
root=(hd0,1)
linux /boot/vmlinuz root=/dev/sda1
initrd /boot/initrd
boot
Або, сподіваємося, ви все ще маєте неушкоджений файл grub.cfg... або, можливо, це спрацює:
grub-mkconfig -o /mnt/boot/grub/grub.cfg
Саме команда update-grub видасть помилку при використанні її з живого диска. Я зіткнувся з подібною ситуацією, коли робив відновлення grub. Проблема полягає в тому, що команди update-grub і grub-install не працюють безпосередньо з live cd (я не знаю чому). Отже, вам потрібно перейти в /usr/sbin, де знаходяться команди, і виконати їх звідти (тобто ./update-grub).