Существует несколько причин избежать пространства пользователя FreeBSD:
Никоим образом я не критикую ни одну из операционных систем. Оба служат их цели хорошо. kfreeBSD является попыткой объединиться лучший из обоих миров.
У меня была та же проблема, и путем поиска я нашел, что uuid корня / раздел является неправильным в grub.cfg, можно попробовать это:
mount /dev/sdxx /mnt
(sdxx Ваш корневой раздел),arch-chroot /mnt
grub-mkconfig -o /boot/grub/grub.cfg
grub-install
конец.
Хорошо. Стал немного, жаждут комментария. Это непосредственно не связано, но только объяснить aa55
комментарий.
Когда Базовая система ввода-вывода (BIOS) запускается, это делает Самотестирование при включении питания (POST), проверяет аппаратные средства и т.д. Затем это ищет устройства, которые являются и загрузочными и активными согласно распоряжению, данному CMOS (Ваша конфигурация в BIOS – который в свою очередь дан Комплементарной МОП-структурой). Когда это находит диск, который имеет 0xaa55
при смещении 510 это загружает тот раздел диска, (сектора 1), в память, и выйдите из-под контроля к нему на адресе 0x00000 того кода. Теми 512 байтами является Главная загрузочная запись (MBR).
Тот код, в этом случае "GRUB - начальная загрузка", проверяют различные байты этих 512, кроме того, для просьбы BIOS различную информацию. В этом процессе это располагается, какой диск имеет отдых GRUB, и загрузите тот раздел диска в память – затем, что часть кода получает контроль. Тот монтирует ядро и т.д. и выходит из-под контроля к этому.
Используя GPT изображение загрузки GRUB из MBR расположено в bios_grub
раздел, - который Вы имеете и являетесь достаточно крупными, и т.д., поэтому не видят, как это могло быть неправильно.
На "Никаком загрузочном найденном устройстве". сообщение от BIOS – можно иметь случай, что MBR загрузочного диска повреждается, если MBR заканчивается в 0xaa55
и MBR является поврежденным, обычно получают другую ошибку - или система просто зависает.
Во всяком случае. Это странно. Я замечаю, что у Вас нет раздела, отмеченного как "начальная загрузка". Используя GPT, который корректен, - но, хотя он запрещается, Вы могли попытаться отметить один, например. sda5
как начальная загрузка. В gparted: (изученный, что (g), разделенный также, изменяют GPT, который whan не хотят), fdisk:
# Toggle bootable:
a [DISK NUMBER]
# Check (could be an asterisk marking boot partition):
p
# Save changes:
w
Могло случиться так, что Ваш BIOS делает больше затем, это должно и проверка таблицы разделов в MBR.
РЕДАКТИРОВАНИЕ – Обновление комментария:
AFAIK это не имеет значения, какой Вы устанавливаете, поскольку это на самом деле не используется. Точка быть, для кого когда-либо говорят что никакое "загрузочное найденное устройство", они должны быть удовлетворены. sda1
не раздел начальной загрузки в традиционном смысле, но пространство для загрузочных файлов GRUB.
В традиционном расположении раздела (не GPT) у Вас обычно есть что-то как:
0x000 [Master Boot Record] <- Partition table say Partition 2 is active
|
0x200 [ GRUB module 1 ] <- core.img from GRUB |
|
0x400 [ Partition 1 Swap ] |
| | |
| | |
|__________________| |
|
0x... [ Partition 2 ext4 ] |
| * Active | <- AKA boot ----------------+
| |
|__________________|
0x... [ Partition 3 ext4 ]
| |
| |
|__________________|
Это означало бы 3 раздела. Все, прежде чем смещено 0x400 на жестком диске i необработанных байтов – как в не часть любого раздела и т.д.
Здесь разделом начальной загрузки является Раздел 2, который является системным разделом с Linux.
Модуль GRUB 1 файл находится сразу после MBR и перед первым разделом. Это может находиться где угодно, но обычно на том же диске и при смещении 512 из диска MBR.
Также в системе GPT – GPT использует тот раздел диска для себя, таким образом нужно переместить те файлы GRUB в другое местоположение. Именно это bios_grub
для - для хранения core.img
для GRUB 2.
"Флаг начальной загрузки набора" является просто выстрелом в темноте, - и был бы удивлен, работает ли он. Но каждый имеет, запускаются где-нибудь.
EDIT2:
Что, если Вы делаете это:
Резервный текущий MBR:
dd if=/dev/sda of=/path/mbr-backup bs=512 count=1
Создайте изображение из Code TEST
ниже, сохраненный в файл test.s
:
as -o test.o test.s
objcopy -O binary test.o test.img
Скопируйте test.img
файл к MBR:
dd if=test.img of=/dev/sda bs=512 count=1
Начальная загрузка
ТЕСТ кода:
.file "test.s"
.text
.code16
.globl start, _start
start:
_start:
jmp go
nop
go:
movb $0x48, %al
call prnt_chr
movb $0x65, %al
call prnt_chr
movb $0x6c, %al
call prnt_chr
movb $0x6c, %al
call prnt_chr
movb $0x6f, %al
call prnt_chr
movb $0x21, %al
call prnt_chr
ret
prnt_chr:
movb $0x0e, %ah
int $0x10
ret
. = _start + 0x1fe
.word 0xaa55
Для восстановления MBR, сделайте:
dd if=/path/mbr-backup of=/dev/sda bs=512 count=1
Это должно просто распечатать "Привет!" экран, если MBR был загружен, то остановитесь. Протестированный это путем выполнения под qemu-system-x86_64, qemu-system-i386, VirtualBox, стационарный Intel PC 32 и 64 бита.
sda5
как раздел начальной загрузки. Не sda1
более оптимальный вариант установить как раздел начальной загрузки, как это здесь только для этого?
– brgr
01.04.2013, 22:22
Я могу ошибаться и поступать неправильно, но сначала у меня была та же проблема, что и у вас. Через некоторое время я обнаружил здесь , что GRUB должен иметь раздел EFI объемом 512 МБ с файловой системой vfat
. Это на случай, если вы устанавливаете свою систему как EFI:
Для EFI вам нужен небольшой (512 МБ или меньше) раздел с файловой системой vfat и включенным флагом загрузки.
Это означает, что вы должны учитывать этот факт при создании разделов. При этом (например, с помощью cfdisk) вам необходимо установить / dev / sdX1 как EFI, а затем отформатировать его в файловую систему FAT32 (с помощью команды mkfs.vfat -F32 / dev / sdX1
в процессе установки). Только тогда grub будет распознан.
Я полагаю, что Syslinux может работать с вашим разделом ext2, если вам захочется его попробовать.
Если вы не устанавливаете Arch как EFI, вы, вероятно, сможете проверить что-нибудь в вики. Я не могу больше помочь в этом случае.
Я знаю, что этот пост старый, но на тот случай, если кто-то придет сюда и надеется найти решение.
grub-install
: это сказало, что не будет никакого раздела начальной загрузки BIOS на/dev/sda
, в то время как на самом деле существует тот. – brgr 02.04.2013, 11:59