В настоящее время я весь диск , /dev/sda
отформатированный в ext4, и установил Gentoo.
(MBR нет, раздела нет вообще.)
Но, наконец, я не могу установить GRUB на него, потому что кажется, что GRUB нужно писать в MBR.
# grub-install /dev/sda
Unknown partition table signature
Unknown partition table signature
Unknown partition table signature
Unknown partition table signature
Unknown partition table signature
The file /boot/grub/stage1 not read correctly.
не grub
работает,
# grub
grub> root (hd0)
Filesystem type unknown, using whole disk
grub> setup (hd0)
Error 17: Cannot mount selected partition
В любом случае я могу установить GRUB в / dev / sda без MBR?
PS /boot
Каталог и grub.conf
файлы:
# tree /boot
/boot
|-- boot -> .
|-- grub
| |-- default
| |-- device.map
| |-- e2fs_stage1_5
| |-- fat_stage1_5
| |-- ffs_stage1_5
| |-- grub.conf
| |-- iso9660_stage1_5
| |-- jfs_stage1_5
| |-- menu.lst -> grub.conf
| |-- minix_stage1_5
| |-- reiserfs_stage1_5
| |-- splash.xpm.gz
| |-- stage1
| |-- stage2
| |-- stage2_eltorito
| |-- ufs2_stage1_5
| |-- vstafs_stage1_5
| `-- xfs_stage1_5
`-- kernel-2.6.36-gentoo-r5
# cat /boot/grub/grub.conf
default 0
timeout 30
splashimage=(hd0)/boot/grub/splash.xpm.gz
title Gentoo Linux 2.6.36-r5
root (hd0)
kernel /boot/kernel-2.6.36-gentoo-r5 root=/dev/sda
title Gentoo Linux 2.6.36-r5 Rescue
kernel /boot/kernel-2.6.36-gentoo-r5 root=/dev/sda init=/bin/bb
# cat /boot/grub/devices
(fd0) /dev/fd0
(hd0) /dev/sda
boot
grub-legacy
Xiè Jìléi
источник
источник
grub-install /dev/sda
?Ответы:
BIOS считывает первый сектор (512 байт) диска и разветвляется на него. Если ваш диск содержит разделы в стиле ПК, первый сектор также содержит таблицу разделов. Если ваш диск содержит одну файловую систему, первый сектор содержит все, что файловая система решит поместить туда. В случае ext [234] (и многих других файловых систем) первый сектор¹ зарезервирован для загрузчика (и первоначально обнуляется). Вы можете установить Grub на
/dev/sda
.Это, как говорится, время от времени BIOS, которые отказываются загружаться с устройства, которое не содержит таблицу разделов. (Но есть также BIOS, которые отказываются загружаться с некоторых внешних устройств, если они содержат таблицу разделов!) Если у вас есть один из этих BIOS, вам придется создать таблицу разделов.
Даже если таблица разделов не нужна, рекомендуется. Вы тратите всего несколько килобайт и получаете удобочитаемость во многих операционных системах, отличных от Linux, и меньше удивляет любого со-системного администратора. Если вы случайно подключите диск к машине под управлением Windows, он может предложить переформатировать диск, если он не видит таблицу разделов, тогда как он просто будет жаловаться, что не может прочитать данные, если видит таблицу разделов с тип раздела, который он не распознает.
¹ На самом деле, первый блок, я думаю, где блок 1 кБ, 2 кБ или 4 кБ, в зависимости от переданных опций
mkfs
.источник
image.ext4
. Причина, по которой я использую весь диск для одной файловой системы, заключается в том, что я хочу смонтировать том непосредственно в хост-ОС, без хитрого смещения раздела, как-o loop,offset=1048576
.--recheck
он будет обновлять свою таблицу сопоставления этими дисками без разделов, а затем жаловаться, когда проверяет их несуществующую таблицу разделов. Если я удалю эти пути дисков из файла карты, предупреждение исчезнет.Не обязательно, что GRUB должен быть записан в MBR. Вы можете установить его в загрузочный сектор раздела и позволить другому загрузчику из MBR загрузить его, например, загрузчику Windows 7.
http://www.linuxselfhelp.com/gnu/grub/html_chapter/grub_3.html
источник
Почти все ожидает таблицы разделов. Я думаю, вам придется переустановить и следовать предложенным рекомендациям по крайней мере, иметь разделы / boot, swap и / root. Где твой своп?
источник
/boot
больше не рекомендуется на современном оборудовании (это был обходной путь, чтобы обойти ограничения BIOS по размерам дисков и отсутствие поддержки расширенных режимов диска, таких как LVM в Grub 1)./boot
? Если так, то почему лучше оставить/boot
в том же разделе, что и/
?/boot
с Lilo или Grub 2, но не с Grub 1. отдельно/boot
имеет административные расходы (вам нужно сделать еще один раздел, и вы должны быть осторожны , чтобы не перепутать/boot
с/
), поэтому вы можете использовать только один, если есть причина (например, ваш загрузчик не понимает LVM).