Общие вопросы > Полезные советы, инструкции

[GRUBая флешка]

(1/2) > >>

DdShurick:
Вместо предисловия:
GRUB - GRand мира загрузчиков - статья Владимира Попова  http://citkit.ru/articles/166/

Linux для начинающих: загрузчики системы - статья Сергея Голубева http://citkit.ru/articles/511/

Скачать GRUB ftp://alpha.gnu.org/gnu/grub/

Примечание. Grub имеецо у нас в дистро. см. http://forum.puppyrus.org/index.php/topic,1540.0.html

Устанавливаем на флешку:

1. Не все флешки могут быть загрузочными, поэтому проверяем, видит ли флешку GRUB. В Puppy делаем так:
Подключаем флешку.
Вводим команду


--- Код ---
# grub
--- Конец кода ---
Представившись GRUB пригласит ввести команду:

--- Код ---
grub >
--- Конец кода ---
Вводим

--- Код ---
grub > root (hd
--- Конец кода ---
и жмём <tab>

Получаем список дисков hd0 hd1 , если появился "лишний" диск, то всё нормально.
Можно посмотреть разделы
 grub > root (hd0,  жмём <tab>

В данном случае получаем список разделов диска hda ( sda ) с указанием файловых систем. hd1 будет соответственно hdb ( sdb ) и т.п.

2. Создаём в конце флешки маленький раздельчик, при помощи GParted например, 1Mb будет достаточно. Файловая ситема безразлично какая, но думаю чучше будет EXT.

3. Распаковываем в новый раздел архив GRUB, или просто копируем директорию grub из любого установленного линукса.

4. Создаём файл menu.lst ( в архиве его нет )

--- Код ---
#  : > /grub/menu.lst 
--- Конец кода ---
 и записываем в него:

Вариант для Puppy установденного  на первый раздел первого диска

--- Код ---
timeout 10  # время показа меню в секундах
color black/cyan yellow/cyan  # можно и другие цвета
default  0 # какой пункт меню грузится по умолчанию, отсчёт с нуля

rootnoverify (hd1,0) # при загрузке с флешки GRUB считает её как hd0
kernel /puppy301/vmlinuz pmedia=idend psubdir=puppy301
initrd /puppy301/initrd.gz
boot
--- Конец кода ---

5. Снова вызываем в консоли GRUB и командуем

--- Код ---
grub > root (hdX,X)
--- Конец кода ---
  # здесь Х номер , под которым GRUB определил флешку и номер необходимого нам раздела. Как узнать - см. пункт 1.

--- Код ---
grub > setup (hdX)
--- Конец кода ---
После этого GRUB выдаёт "отчёт о проделанной работе" и это всё. :)
С помощью пункта 5 можно восстановить  ранее установленный GRUB, если знаете на каком разделе он находился.
 

Kazm:
Добавлю, что в PuppyRus Linux GRUB можно не скачивать, а просто переписать из каталога
/usr/lib/grub/i386-pc в ваш каталог на флешке, обычно /boot/grub


Kazm:
A /dev/ram0 что значит? у меня (правда Grub обычный) /dev/sda1
и psubdir=....
может все-таки нужен...

а вообще тоже на одном запускается, на другом нет - не может найти pup_301.sfs

Фарватер:

--- Цитата ---а вообще тоже на одном запускается, на другом нет - не может найти pup_301.sfs
--- Конец цитаты ---
Тогда можно попробовать отключить dma при загрузке.

Kazm:
http://puppyrus.ru/index.php?option=com_fireboard&Itemid=37&func=view&id=2289&catid=20

По мотивам http://ubuntero.blogspot.com/2008/01/grub-usb-flash.html
После того как уменя грубо полетел раздел с фулл хдд инсталом, появилось время поэксперементировать с инсталляцией груба  :) Заодно выкладываю то, что раньше заметил, но как-то не довелось сообщить

Итак, у нас есть:
1. Пуппи, наверное неважно как загруженный?
2. Флешка.
3. Компьютер, который загрузится с вашей флешки (кстати, это отдельная тема для разговора)

Хотим установить груб на флешку. На вопрос зачем это вам надо я отвечу так - чтобы сделать мультизагрузочную флешку. Другие может ответят по-другому.

1. Делаем разделы на флешке Gparted'-ом, надеюсь это умеют все  :D. Если нет, смотрите здесь
http://puppyrus.ru/index.php?option=com_content&task=view&id=59&Itemid=40
Правда кое-кто рекомендует делать первичный (primary) раздел fat32, чтобы потом было видно из винды.
Я так и сделал. Поставил ему метку boot. Второй primary раздел сделал уже ext3. И extended полностью отдал под fat32.
(Под виндой кстати виден только один первичный раздел fat32, так что лучше его сделать побольше.)
После этого надо наверное перегрузится?

2. Теперь ищем груб  :D Вообще-то в Пуппи он есть
файлы stage* оказались в папке /usr/lib/grub/i386-pc/. Копируем их на флешку в папку /boot/grub/.
Теперь осталось найти menu.lst, т.к его там нет  :) То бишь делаем его сами можно прям отсюда скопировать мою версию (буду постпенно ее корректировать)


#/boot/grub/menu.lst

default=0
timeout=5

#Наши любимые 4 файла на флешке в /pup301r/
title PuppyRus FRUGAL install
root (hd0,0)
kernel /pup301r/vmlinuz root=/dev/sda1 pmedia=usbflash pkeys=us psubdir=pup301r
initrd /pup301r/initrd.gz

title REBOOT
reboot

title SHUTDOWN
halt



3. Ну и устанавливаем сам груб в МБР.
набираем в консоли grub
grub>
говорим грубу что флешка это hd0:
grub> device (hd0) /dev/sda
устанавливаем корневой раздел:
grub> root (hd0,0)
запиcываем MBR:
grub> setup (hd0)
Перезагружаемся.

Вроде пока все.
Наверняка так же можно установить груб на винт. Только вот эксперементировать с флешкой не так уж страшно  ;D

Навигация

[0] Главная страница сообщений

[#] Следующая страница

Перейти к полной версии