1) Предыстория.
Желание пользоваться линуксом было давно,но считал,что не разберусь. Не так давно решил все же перейти на эту замечательную ОС, но на тот момент у меня был ноутбук Asus eee pc и как-то у меня с ним не очень вышло.(Пост ранее об этом писал) За прошедшее время обзавелся машинкой HP Elitebook 6930p и опять же решил поставить линукс. Сначала была установленна Lubuntu, но как-то не очень "зашла". После небольших раздумий решил,что стоит попробовать установить российскую ОС "Роса". Задуманно - сделанно. ROSA FRESH R11 установленна.
На следующий день,то бишь сегодня, решил чуть поэкспериментировать с драйверами видеокарты. В настройках на выбор было четыре драйвера(один как раз на данный момент использовался), выбрал другой наугад,применил, система запросила перезагрузку. И после оной - не загрузилась. Зато загрузился "веселый" черный экран. И что-то мне подсказывало, что это "Бзззззз" - неспроста.
текст гласил: "Поддерживается несколько BASH-подобных команд редактирования строки. Есть вывод списка команд по TAB для дополнения. Также есть везде, где возможно, вывод списка по TAB для устройств или файлов. "
Ну, и собсна,строка "grub> "
По логике вещей стало понятно,что похоже накрылось что-то в загрузчике GRUB. На тот момент я знал о загрузчке:
а) он загружает (что-то. Наверное,систему)
б) он называется GRUB
в) может загружать разные ОС
Все. Да и сейчас не рсбо больше знаю.
Первое решение обратиться за помощью в группу Росы в ВК - результатов не дало. Советы конечно дали, но в виде "чем смог - тем помог" . И за это спасибо!
Яндекс - выдал кучу всего. И все вроде понятно и просто, только вот нифига не срабатывает.
Методом проб и ошибок систему я запустил.
И поэтому выложу результаты опыта здесь - может кому сэкономлю время и нервы.
2) Восстановление загрузчика.
Итак.
Краткая шпаргалка
ls
ls (hdX,Y)
ls (hdX,Y)/
ls (hdX,Y)/boot/
set prefix=(hdX,Y)/boot
set root=(hdX,Y)
insmod /boot/grub2/i386-pc/linux.mod
linux /boot/vmlinuz(здесь указываем полное название ядра,а не просто "vmlinuz") root=/dev/sdaY
initrd /boot/initrd(указываем соответственно ядру, и опять же полное название включая расширение)
boot
Те кто шпаргалку не понял. листайте ниже. там объяснения и фото.
Первое что пишем это - ls.
Эта команда возвратит известные диски и разделы.
Далее пользователь должен задать диск и раздел, где находиться система. Если вы не помните/не знаете, где она, то методом научного тыка перебираете все. По очереди. Из тех вариантов, что вам вернула команда ls. То есть в моем случае это было так
ls (hd0)
ls (hd0,6)
ls (hd0,5)
ls (hd0,1) <--Приставку msdos можно опустить--->
На вариантах hd0,5 и hd0,1 команда выдала, что на данных разделах имеется файловая система ext. Значит на одном из них и должна находиться наша система.
Проверить можно также командой ls. Добавив после раздела слэш.
ls hd(0,1)/
Команда возвратила название каталогов (папок) находящихся на этом разделе. Среди них есть каталог Boot, который нам и нужен.
Но еще неплохо бы узнать какой именно загрузчик у нас. GRUB или GRUB2. Каталог должен находиться в Boot, поэтому вновь воспользуемся командой ls немного ее дополнив
ls (hd0,1)/boot/
Тут мы видим каталог grub2, а также видим два ядра(vmlinuz) и два файла initrd соответствующих ядрам. Это очень нужная информация!
Дальше мы, используя команду set prefix, устанавливаем префикс и корневой раздел
set prefix=(hd0,1)/boot
Указываем путь к файловой системе
set root=(hd0,1)
загружаем модуль загрузки linux
insmod /boot/grub2/i386-pc/linux.mod
Теперь нам надо загрузить ядро. У меня их почему-то два. Выбирал наугад.
linux /boot/vmlinuz-4.15.0-desktop-47.2rosa-x86_64 root=/dev/sda1
В конце обязательно указываем root-раздел
В интернетике пишут,что полное название ядра можно не указывать. Можно ограничиться записью вида:
linux /boot/vmlinuz
Но у меня почему-то такой вариант не проходил ни в какую. До тех пор пока не указал имя ядра полностью. Может из-за того,что ядра два?!
Теперь выбираем образ инит-диска(еще б мне кто объяснил что такое вообще)
initrd /boot/initrd-4.15.0-desktop-47.2rosa-x86_64.img
образ инит-диска выбираем соответсвенно ядру. Обратите внимание,что у инит-диска указывается расширение файла - .img .
Указывают, что выбор инит-диска можно записать короче
initrd /boot/initrd.img
У меня такой вариант не прошел.
Ну-с и последнее. загрузка.
boot
Если все сделали правильно - будет вам счастье!
После того как загрузитесь не забудьте установить GRUBcustomizer и поправить свой загрузчик. А то вся это пляска будет при каждой загрузке.
За неточности в терминах - тапками не кидать. Я только учусь. )