LINUX.ORG.RU

Поставить GRUB на диск без разделов (FS создана на самом устройстве)?


0

1

$SUBJ, есть диск, где фс была создана на самом устройстве без создания разделов. Сейчас захотелось запихнуть туда загрузчик, на обычные действия груб ругается, плюется и отказывается вставать.

Это вобще возможно и как это сделать?

Вопрос скорее для общего развития, чем первой необходимости.


Ответ на: комментарий от aleks13

Это как раз GRUB2. У первого номер версии меньше единицы.

GotF ★★★★★
()
Ответ на: комментарий от aleks13

Можно попробовать LILO — у него с жирностью всегда было гораздо лучше. Ещё можно посмотреть extlinux.

GotF ★★★★★
()

В принципе, GRUB2 может влезть в PBR, используя механизм blocklists, но это ненадёжно. Попробуйте просто поставить с --force.

AITap ★★★★★
()

фс была создана на самом устройстве без создания разделов

Что за ФС? Хотя о чем я, такого не бывает. Вывод fdisk -l /dev/sdX ?

eagleivg ★★★★★
()
Ответ на: комментарий от GotF

ЕМНИП, его советуют ставить в Bios Parameter Partition, если диск gpt

anonymous
()

$SUBJ, есть диск, где фс была создана на самом устройстве без создания разделов.

какая именно FS?

Это вобще возможно и как это сделать?

возможно. 1 вариант — blocklist, 2 вариант — по образу и подобию grub4dos. То есть, грузится один загрузчик через MBR/PBR, а из него грузится уже grub. Естественно, надо этот другой загрузчик как-то воткнуть, он должен уметь загрузить grub, ну и grub должен уметь читать эту ФС (или загружаться должен по образу и подобию grldr / ntldr из grub4dos).

anonymous
()
Ответ на: комментарий от GotF

Гм. А мне почему-то казалось, что при создании фс 'наживую', без разделов, mbr тоже затирается под данные. Можно попросить что-нибудь интересное почитать на тему?

Хотя это, как я понимаю, зависит от драйверов и конкретной реализации фс.

takino ★★★★★
()
Ответ на: комментарий от eagleivg

И что.
mkfs просто лишний раз подтверждения запросит.


%dd if=/dev/zero of=./hdd_disk_image bs=4M count=10
10+0 records in
10+0 records out
41943040 bytes transferred in 0.042402 secs (989175305 bytes/sec)
%mkfs.ext
mkfs.ext2 mkfs.ext3 mkfs.ext4 mkfs.ext4dev
%mkfs.ext3 ./hdd_disk_image
mke2fs 1.41.14 (22-Dec-2010)
./hdd_disk_image is not a block special device.
Proceed anyway? (y,n) y

takino ★★★★★
()
Ответ на: комментарий от takino

Хорошо, убедил. Но вот вопрос, что при этом случится с MBR?

eagleivg ★★★★★
()
Ответ на: комментарий от eagleivg

нет. блочное устр-во оно и есть блочное устр-во
я для linux-а так флешки и форматирую
/dev/sda1 отличается от /dev/sda только смещением на физ. носителе

anonymous
()
Ответ на: комментарий от takino

Я не знаю, что предложить почитать, могу только сказать, что загрузчик ставится в суперблок ФС. Естественно, не с каждой из них это возможно. Первый сектор ФС будет как бы MBR. Вроде так, но я сам не пробовал такое сделать.

GotF ★★★★★
()
Ответ на: комментарий от takino

Ну да

$ stat /dev/sda
  File: «/dev/sda»
  Size: 0         	Blocks: 0          IO Block: 4096   блочный специальный файл
Device: 5h/5d	Inode: 1360        Links: 1     Device type: 8,0
Access: (0660/brw-rw----)  Uid: (    0/    root)   Gid: (    6/    disk)
Access: 2012-02-08 18:17:20.697095253 +0400
Modify: 2012-02-07 11:07:37.834823869 +0400
Change: 2012-02-07 11:07:37.834823869 +0400

eagleivg ★★★★★
()
Ответ на: комментарий от GotF

Т.е. - это вопрос в самой файловой системе? Ок, спасибо.

takino ★★★★★
()
Ответ на: комментарий от eagleivg

Ну дак тогда MBR потрется, нет?

Ну и фиг с ней, нет? BIOS выполнит любой код из нулевого сектора. Пруф: http://img.flashtux.org/img13302902781bxef51c4ab.png Система установлена на ext4, созданную непосредственно на sda; в качестве загрузчика, что удивительно, GRUB2, — LILO отказался ставиться, по крайней мере автоматически.

GotF ★★★★★
()
Ответ на: комментарий от GotF

Я вот что не пойму. Если в нулевом секторе загрузчик, то где тогда начинается ФС? С учетом того, что таблицы разделов у нас нет?

eagleivg ★★★★★
()
Ответ на: комментарий от eagleivg

Если в нулевом секторе загрузчик, то где тогда начинается ФС?

С нулевого. Загрузчик у неё в суперблоке, очевидно, в специально предусмотренной зоне.

GotF ★★★★★
()
Ответ на: комментарий от GotF

Я совсем запутался. Ведь суперблок, ЕМНИП смещен относительно начала раздела, как управление попадает туда? Короче, что можно почитать по данной теме?

eagleivg ★★★★★
()
Ответ на: комментарий от eagleivg

Ведь суперблок, ЕМНИП смещен относительно начала раздела

Да, ты прав. Я сейчас посмотрел — чуть более тысячи \0. Хватит для бутсектора, а остальное, видимо, дальше. И заодно вспомнил, почему такое не работает с XFS — у неё как раз суперблок начинается строго с нулевого сектора.

Короче, что можно почитать по данной теме?

Исходники mkfs? :) Я предоставил подтверждение работоспособности, но теорию знаю на уровне слухов и догадок.

GotF ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.