После Дуги установка Linux это просто показывает текст “Никакое загрузочное найденное устройство”

Существует несколько причин избежать пространства пользователя FreeBSD:

  • Отсутствие многих пакетов, которые может обеспечить debian
  • Легко доступная поддержка флэш-памяти без любой эмуляции
  • Осведомленность о приложениях Linux является, в целом, больше, чем осведомленность о bsd приложениях.

Никоим образом я не критикую ни одну из операционных систем. Оба служат их цели хорошо. kfreeBSD является попыткой объединиться лучший из обоих миров.

8
14.04.2019, 12:15
3 ответа

У меня была та же проблема, и путем поиска я нашел, что uuid корня / раздел является неправильным в grub.cfg, можно попробовать это:

  1. Начальная загрузка от живых archlinux медиа
  2. mount /dev/sdxx /mnt (sdxx Ваш корневой раздел),
  3. arch-chroot /mnt
  4. grub-mkconfig -o /boot/grub/grub.cfg
  5. grub-install

конец.

4
27.01.2020, 20:12
  • 1
    я уже сделал все это при первой попытке. Однако я пытался сделать это снова, как Вы объяснили и надели ошибку grub-install: это сказало, что не будет никакого раздела начальной загрузки BIOS на /dev/sda, в то время как на самом деле существует тот. –  brgr 02.04.2013, 11:59

Хорошо. Стал немного, жаждут комментария. Это непосредственно не связано, но только объяснить 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:

Что, если Вы делаете это:

  1. Резервный текущий MBR:

      dd if=/dev/sda of=/path/mbr-backup bs=512 count=1
    
  2. Создайте изображение из Code TEST ниже, сохраненный в файл test.s :

    as -o test.o test.s
    objcopy -O binary test.o test.img
    
  3. Скопируйте test.img файл к MBR:

    dd if=test.img of=/dev/sda bs=512 count=1
    
  4. Начальная загрузка

ТЕСТ кода:

    .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 бита.


2
27.01.2020, 20:12
  • 1
    В первую очередь, спасибо за Вашу справку. Вы могли объяснить мне, почему я должен установить sda5 как раздел начальной загрузки. Не sda1 более оптимальный вариант установить как раздел начальной загрузки, как это здесь только для этого? –  brgr 01.04.2013, 22:22
  • 2
    Хорошо, я попробовал это теперь, но печально с тем же результатом... –  brgr 01.04.2013, 23:09
  • 3
    Что это должно было перечислить? –  brgr 02.04.2013, 11:44
  • 4
    Хорошо, я теперь также попробовал Ваш второй совет, все еще без :( –  brgr 02.04.2013, 12:50
  • 5
    Да это перечислено. –  brgr 02.04.2013, 20:47

Я могу ошибаться и поступать неправильно, но сначала у меня была та же проблема, что и у вас. Через некоторое время я обнаружил здесь , что GRUB должен иметь раздел EFI объемом 512 МБ с файловой системой vfat . Это на случай, если вы устанавливаете свою систему как EFI:

Для EFI вам нужен небольшой (512 МБ или меньше) раздел с файловой системой vfat и включенным флагом загрузки.

Это означает, что вы должны учитывать этот факт при создании разделов. При этом (например, с помощью cfdisk) вам необходимо установить / dev / sdX1 как EFI, а затем отформатировать его в файловую систему FAT32 (с помощью команды mkfs.vfat -F32 / dev / sdX1 в процессе установки). Только тогда grub будет распознан.

Я полагаю, что Syslinux может работать с вашим разделом ext2, если вам захочется его попробовать.

Если вы не устанавливаете Arch как EFI, вы, вероятно, сможете проверить что-нибудь в вики. Я не могу больше помочь в этом случае.

Я знаю, что этот пост старый, но на тот случай, если кто-то придет сюда и надеется найти решение.

0
27.01.2020, 20:12

Теги

Похожие вопросы