Ошибка error 13 invalid or unsupported executable format

  • Печать

Страницы: [1]   Вниз

Тема: не работает мультизагрузка grub4dos  (Прочитано 4824 раз)

0 Пользователей и 1 Гость просматривают эту тему.

разделы на диске:
sda1 500Мб
sda2 400 с лишним Гб — Windows + puppy roll
sda3 30 Гб — данные
sda4 10 Гб — linux ext4 (установлен antiX)

В menu.list добавил пункт
title antiX
root (hd0,3)
kernel (hd0, 3)/boot/vmlinuz-4.9.126-anti.1-amd64-smp root=(hd0,3)
initrd (hd01,3)/boot/initrd.img-4.9.126-anti.1-amd64-smp

При загрузке после выбора этого пункта появляется ошибка:
Error13: Invalid or unsupported executable format


Записан


Error13: Invalid or unsupported executable format

Слишком много ошибок:
(hd01,3) — лишняя цифра
(hd0, 3) — лишний пробел
kernel ….. root=(hd0,3) — нет такого параметра

Правильно:

title antiX
root (hd0,3)
kernel (hd0,3)/boot/vmlinuz-4.9.126-anti.1-amd64-smp root=/dev/sda4
initrd (hd0,3)/boot/initrd.img-4.9.126-anti.1-amd64-smp

Еще, нет ли ошибок в названии файла —> initrd.img-4.9.126-anti.1-amd64-smp


Записан


kernel ….. root=(hd0,3) — нет такого параметра

Для full есть, только без скобок: root=sda4


Записан

Моноблок Lenovo IdeaCentre c200 (Intel Atom D525, Intel GMA 3150, 2 Gb RAM) Richy64
Nettop Acer Aspire Revo R3610 (Atom N330, nVidia GeForce 9400, 3 Gb RAM) Richy64


Дело не в указанных ошибках.

файл menu.lst
title antiX
root (hd0,3)
kernel (hd0,3)/boot/vmlinuz-4.9.126-anti.1-amd64-smp root=/dev/sda4
initrd (hd0,3)/boot/initrd.img-4.9.126-anti.1-amd64-smp

Текст сообщения после выбора пункта меню grub4dos:
Booting AntiX linux
Filesistem tipe is ext2fs, partition type 0x83
kernel (hd0,3)/boot/vmlinuz-4.9.126-anti.1-amd64-smp root=/dev/sda4
Error 13: Invalid or unsupported executable format
Press any key to continue…

Может надо снести grub4dos и поставить grub2?


Записан


попробуйте

itle antiX
find --set-root --ignore-floppies --ignore-cd /boot/vmlinuz-4.9.126-anti.1-amd64-smp
kernel /boot/vmlinuz-4.9.126-anti.1-amd64-smp root=/dev/sda4
initrd /boot/initrd.img-4.9.126-anti.1-amd64-smp


Записан


Спасибо.
Доступ к данной машине один раз в неделю.
Напишу что получилось 13 января во второй половине дня.


Записан


Error 13: Invalid or unsupported executable format

Файлы точно не битые? Контрольные суммы проверяли? Загрузочный носитель аппаратно без проблемный?


Записан


1

Файлы точно не битые? Контрольные суммы проверяли? Загрузочный носитель аппаратно без проблемный?

Проверял md5sum iso-файла образа antiX (после его скачивания).
На жестком диске при создании раздела и форматировании в ext4 ошибок не было.

2
команда:
$ sudo fdisk -l

вывод:
Диск /dev/sda: 465.8 GiB
тип метки диска: dos
устройство   загрузочн.   размер     тип
/dev/sda1      *                   500M        7 HPFS/ NTFS/ exFAT
/dev/sda2                           424.6 G    7 HPFS/ NTFS/ exFAT
/dev/sda3                           30 G         7 HPFS/ NTFS/ exFAT
/dev/sda4                           10.8 G      83 Linux
Элементы таблицы разделов упорядочены не так, как на диске.

Не понимаю в чём смысл этого сообщения.

3
файл menu.lst
title antiX
find —set-root —ignore-floppies —ignore-cd /boot/vmlinuz-4.9.126-anti.1-amd64-smp
kernel /boot/vmlinuz-4.9.126-anti.1-amd64-smp root=/dev/sda4
initrd /boot/initrd.img-4.9.126-anti.1-amd64-smp

вывод:
Booting AntiX linux

(hd0,3)
kernel /boot/vmlinuz-4.9.126-antix.1-amd64-smp root=/dev/sda4
Error 13: Invalid or unsupported executable format
Press any key to continue…

4
На англоязычном форуме прочитал, что grub4dos работает не со всеми дисками. И об этом оказывается народ давно знает. Поэтому я вместо него поставлю grub2.
Всем спасибо. Тему можно закрывать.


Записан


Не понимаю в чём смысл этого сообщения.

Ничего страшного. Просто уведомление о том, что физически на винте разделы расположены в одном порядке, а в таблице разделов в другом. Это ни на что не влияет.

Error 13: Invalid or unsupported executable format

Только с antiX так?


Записан


Ничего страшного. Просто уведомление о том, что физически на винте разделы расположены в одном порядке, а в таблице разделов в другом. Это ни на что не влияет.

Скопировал файлы vmlinuz-4.9.126-anti.1-amd64-smp, initrd.img-4.9.126-anti.1-amd64-smp в корень раздела Windows (sda2).
Изменил файл menu.lst:

title antiX
find —set-root —ignore-floppies —ignore-cd /vmlinuz-4.9.126-anti.1-amd64-smp
kernel /vmlinuz-4.9.126-anti.1-amd64-smp root=/dev/sda4
initrd /initrd.img-4.9.126-anti.1-amd64-smp

И всё заработало. AntiX успешно загрузился.
Поэтому grub2 не стал ставить.


Записан


ставил  «для порядка — в каталог»:
сначала устанавливал на флэшку, потом копировал «результат» в каталог + соответственная правка в 3-х местах в путях загрузчика.(вроде можно проще, но пока не до того)

p.s.
для МагОс можно ли что-то «вроде того» ? :)


Записан

Gr4D, Grub2; HP Mini 210 VT — Intel Atom N470  @ 1.83GHz, Intel GMA3150, RAM=2 ГБ ;
Sams-n110: N270 — 1,6 ГГц, Intel GMA 950, RAM=2 ГБ.


Скопировал файлы vmlinuz-4.9.126-anti.1-amd64-smp, initrd.img-4.9.126-anti.1-amd64-smp в корень раздела Windows (sda2).

И всё заработало. AntiX успешно загрузился.

Была у нас похожая тема, вроде с ArchBang. Там тоже все заработало после переноса vmlinuz и initrd на fat32.
В той теме железо было с UEFI, здесь похоже тоже.


Записан


Error 13: Invalid or unsupported executable format

Тут копировал содержимое ddr01-1908-i686.iso/ddr01/ в пустую папку ddr01 и никак не мог запуститься, постоянно Error 13. Все перепроверил, никак.
В итоге полностью все удалил, и копировал уже всю папку ddr01 из iso. Запустилось.

Это я вспомнил ситуации, когда при поддержке и помощи всего форума так и не смогли решить проблемы с Error 13 в нескольких темах.

upd. Т.к. проверял в qemu, то скорее всего это ‘шутки’ cache.

« Последнее редактирование: 08 Август 2019, 13:30:18 от krasnyh »


Записан


  • Печать

Страницы: [1]   Вверх

0 / 0 / 0

Регистрация: 18.12.2013

Сообщений: 8

1

27.06.2015, 16:31. Показов 20007. Ответов 3


Студворк — интернет-сервис помощи студентам

Сегодня ни с того ни с сего комп выдал:
chainloader /bootmgr
Error 13: Invalid or unsupported executable format

Пробовал запустить установщик винды с флешки (не уверен что все правильно делал, запускал с биос), выводит абсолютно то же самое. В безопасный режим войти нельзя, до него дело даже не доходит. Есть шансы вылечить?



0



киберпаразит

Эксперт Windows

9719 / 2783 / 188

Регистрация: 14.06.2011

Сообщений: 9,586

27.06.2015, 16:50

2

Цитата
Сообщение от Antimorkovka
Посмотреть сообщение

Пробовал запустить установщик винды с флешки

уверены в загрузочности флешки? secure boot и иже с ним отключен в bios? и правильный ли приоритет устройств там же, в bios?

надо
Bootrec.exe /FixMbr
Bootrec.exe /FixBoot

Добавлено через 11 минут

Цитата
Сообщение от Antimorkovka
Посмотреть сообщение

chainloader /bootmgr

ой. так это ж вроде grub …
с чего началось? что-нибудь пытались установить?



0



0 / 0 / 0

Регистрация: 18.12.2013

Сообщений: 8

27.06.2015, 16:52

 [ТС]

3

secure bios отключил, ничего не меняется..
А вот на флешку файлы винды тупо скопированы с iso образа. Может в этом проблема?

Проверил комп авастом, перезаргузил и всё. Не знаю каким раком это могло повлиять



0



киберпаразит

Эксперт Windows

9719 / 2783 / 188

Регистрация: 14.06.2011

Сообщений: 9,586

27.06.2015, 16:54

4

Лучший ответ Сообщение было отмечено Antimorkovka как решение

Решение

Цитата
Сообщение от Antimorkovka
Посмотреть сообщение

Может в этом проблема?

может.
FAQ по созданию загрузочной флешки



1



IT_Exp

Эксперт

87844 / 49110 / 22898

Регистрация: 17.06.2006

Сообщений: 92,604

27.06.2015, 16:54

4

I wrote a kernel. Here is my kernel start up file:

.text
    .globl start
start:
jmp main

mboot:
 .set ALIGN,    1<<0
.set MEMINFO,  1<<1
.set FLAGS,    ALIGN | MEMINFO
.set MAGIC,    0x1BADB002
.set CHECKSUM, -(MAGIC + FLAGS)

.section multiboot
.align 4
.long MAGIC
.long FLAGS 
.long CHECKSUM
main:
call kernel_main
    cli
    hlt

Here is my first C file:

void print(char *message, int line,int ch){
     char *vm=(char *)0xb8000;
     int i=(line*80*2);
     i=i+(ch*2);
     while(*message!=0){
     if (*message=='n'){line++;
     i=(line*80*2);}
     else {vm[i]=*message;
     i++;
     vm[i]=0x07;
     i++;} *message++;}}

Based on that I wrote a second C file:

#include "ESfunctions.c" //this is the previous C file 
kernel_main(){
print("Hi!nHow do you like my OS?",0,0);}

Edit: Here is my linker script:

OUTPUT_FORMAT("binary")
ENTRY(start)
SECTIONS
{
  .text  0x100000 : {
    code = .; _code = .; __code = .;
    *(.text)
    . = ALIGN(4096);
  }
  .data  : {
    data = .; _data = .; __data = .;
    *(.data)
    . = ALIGN(4096);
  }
  .bss  :
  {
    bss = .; _bss = .; __bss = .;
    *(.bss)
    . = ALIGN(4096);
  }
  end = .; _end = .; __end = .;
}

Edit: I am not using a cross-compiler. I am using gcc on Ubuntu.

I compiled the C code and assembled the assembly code and linked them together. Then I turned it into a bootable image and together with grub I burned it all onto a disc. After grub started I entered the command «kernel KERNEL.BIN» (KERNEL.BIN is my kernel) and grub said «Error 13: Invalid or unsupported executable format. What is wrong? Can anybody help me?

Grub can not find this kernel

This could be for several reasions.

  1. The name of the kernel is wrong (since this is a xen kernel this would not supprise me). Try editing the line in the grub boot loader and remove the «xen» from the end of it.

  2. Grub is looking in the wrong place on the file system for the kernel.
    Again there is a good chance that this was caused by the V2V, possibly changing the partition numbers.

To fix this one try running the following at the grub prompt:
grub > find /vmlinuz. This should display the something like the following.
(hd0,0)

Note that if it is different use what grub shows, it should be in the format (hd,X,Y)

Next to get the full name of the kernel type
grub > null (hd0,0) /vmli and press TAB
This should output something like the following:

Possible files are: vmlinuz vmlinuz-2.6.18-194.17.4.el5, vmlinuz-2.6.18-194.17.4.el5xen

Let’s say for this segment that the kernel is called (again use the grub output from the prevous line to guide you):
/vmlinuz-2.6.18-194.17.4.el5

Now that you know the full name try typing the following:

grub > root (hd0,0)
grub > kernel = /vmlinuz-2.6.18-194.17.4.el5 root=/dev/VolGroup00/LogVol00
grub > boot

This should boot the system (hopefully as long as nothing else is wrong).

Once you are up and running you will need to reconfigure grub.
There is plenty of data on google showing how to do this.


0

2

1. Собрал новое ядро с незначительными изменениями конфига. Скопировал его в /boot, прописал в /boot/grub/menu.lst. Перезагружаюсь — получаю:

Error 13: Invalid or unsupported executable format

Это происходит с ядром 4.9.16. Старое ядро 4.4.6 грузится нормально.

file ядра опознаёт как:

/boot/kernel-4.4.6:                               Linux kernel x86 boot executable bzImage, version 4.4.6-gentoo (root@jet) #1 SMP PREEMPT Mon Jul 4 22:52:11 MSK 2016, RO-rootFS, swap_dev 0x4, Normal VGA
/boot/kernel-4.9.16:                              Linux kernel x86 boot executable bzImage, version 4.9.16-gentoo (root@jet) #2 SMP PREEMPT Tue Jun 6 23:40:29 MSK 2017, RO-rootFS, swap_dev 0x5, Normal VGA

Версия GRUB 0.97 (sys-boot/grub-static-0.97-r12). Gentoo. Своп не используется.

Дополнение: С GRUB 2 загрузиться удалось. С использованием BIOS.

2. Предположив, что дело в каких-то фичах нового ядра, попробовал поставить более новый GRUB, sys-boot/grub-2.02_beta3-r1. Сгенерировал /boot/grub/grub.cfg. Создал FAT-раздел, прописал в /etc/fstab, смонтировал как /boot/efi, запустил

# LC_ALL="C" grub2-install --target=x86_64-efi /dev/sda
Installing for x86_64-efi platform.
EFI variables are not supported on this system.
EFI variables are not supported on this system.
Installation finished. No error reported.

Перезагружаюсь — получаю меню старого GRUB.

Дополнение: как выяснилось, материнская плата ASUS M5A78L LE не поддерживает UEFI.

На всякий случай — разметка диска:

# LC_ALL="C" parted /dev/sda print
Model: ATA WDC WD40EFRX-68W (scsi)
Disk /dev/sda: 4001GB
Sector size (logical/physical): 512B/4096B
Partition Table: gpt
Disk Flags: 

Number  Start   End     Size    File system     Name  Flags
 1      1049kB  3947GB  3947GB  ext4            root  boot, esp
 2      3947GB  4001GB  53.7GB  linux-swap(v1)  swap
 3      4001GB  4001GB  2956kB                        boot, esp

Главный вопрос: как загрузиться с новым ядром?

Остался вопрос: почему Grub1 не работает с новым ядром.

Возможно, вам также будет интересно:

  • Ошибка error 126 не найден указанный модуль
  • Ошибка error 1146 table doesn t exist
  • Ошибка error 108 на котле аристон
  • Ошибка error 107 что это
  • Ошибка error 1045 28000 access denied for user

  • Понравилась статья? Поделить с друзьями:
    0 0 голоса
    Рейтинг статьи
    Подписаться
    Уведомить о
    guest

    0 комментариев
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии