Ошибка при установке grub (Решено)

anode
В его, ТС, собственном дистрибутиве загрузчик просто не рабочий.
рабочий не рабочий, хрен его знает ... НО настораживает/не нравится то, что если сравнить расположение e_entry (точки входа), точнее ее упоминание (ссылка) в выводах od -A d -t x1 /usr/lib/grub/i386-pc/kernel.img для нормального и не нормального файлов, то расхождение (расположение секций) довольно значительное.
Если бы расположение было хотя бы одинаково, то можно было бы попробовать просто изменить в бинарнике значение e_entry и посмотреть, что будет. ... просто ради интереса, но а так не вижу смысла .... хотя если делать нечего можно и попробовать (правда придется отсеять случайно попавшие строки, методом проб и ошибок).

PS - я хоть немного вспомнил формат elf ... так что не жалею потраченного времени.
Ошибки не исчезают с опытом - они просто умнеют
Chips
уже прихожу к выводу что нужно было собирать LFS и от неё отталкиваться прикручивая пакетный менеджер…
похоже это самое разумное, а то получилась сборная солянка и трудно искать ошибки.
Chips
решил попробовать свои силы если ничего не делать то и ничему и не научишься
С этим согласен - ничего не делая, ничего не узнаешь .... а здесь даже на решении проблем много узнаешь. Так что дерзай дальше.
Ошибки не исчезают с опытом - они просто умнеют
anode
для сборщика своего дистрибутива вы предлагаете даже не костыль.
Причина этого та, что мое ... хоби не созидать, а ломать, на это я и заточен ... даже тогда когда читаю DOC, мысли сами смотрят только в этом направлении.

PS - созиданием занимаюсь, точнее занимался раньше, только при восстановлении ... утраченной информации ... и то с какой стороны на это посмотреть.
Ошибки не исчезают с опытом - они просто умнеют
Chips
за основу взял старенькую слаку выкинув всё по максимум и вот её "насилую" хотя я уже прихожу к выводу что нужно было собирать LFS и от неё отталкиваться прикручивая пакетный менеджер…
Вы ведь говорили, что пытаетесь собрать свой дистр основываясь на Арче? Так почему за основу не был взят Арч? Мне кажется, что у вас в системе винегрет, в котором ни вы , ни кто-то другой не разберется уже.
Да, еще один вопрос. Как по вашему, что определяет дистрибутив? Чем один дистрибутив отличается от другого? ИМХО, системой создания, распространения и управления пакетами. Все остальное: выпуски или роллинг, свежие или не очень пакеты и т.д. и т.п. - вторично. Системдэ понятно, но пакмэн чем вам не угодил-то?
vasek
Впервые вижу, чтобы програ при запуске считывала, сверяла точки входа и при не совпадении выдавла error.
Я тут подумал возможно это какой-то механизм защиты от злоумышленников
Глупость вы подумали.
ЗЫ. Точнее, главный злоумышленник сейчас - вы )))
Заголовочные файлы ядра какой версии? От старенькой слаки? gcc, glibc, binutils, linux в каком порядке компилируются? При смене версии glibc надо перекомпилировать binutils или нет? Вы четко знаете ответы на такие вопросы? Их еще тьма.
Artix! Без systemd,на выбор три системы инициализации,на базе Арча,совместимый с АУР :))
А еще xbps с Void прикрутить....красотища!!!
Ядро, binutils, glibc... Пересобранны первым собирался glibc затем binutils, gcc с его свитой.
Так народ кажется найден виновник или ещё одна жертва это "lvm2 device-mapper" решил его пересобрать и получил вот такую бяку

/usr/bin/ld.gold: error: cannot find -laio
../lib/liblvm-internal.a(bcache.o):bcache.c:function _async_wait: error: undefined reference to 'io_getevents'
../lib/liblvm-internal.a(bcache.o):bcache.c:function _async_issue: error: undefined reference to 'io_submit'
../lib/liblvm-internal.a(bcache.o):bcache.c:function _async_destroy: error: undefined reference to 'io_destroy'
../lib/liblvm-internal.a(bcache.o):bcache.c:function create_async_io_engine: error: undefined reference to 'io_setup'
collect2: ошибка: выполнение ld завершилось с кодом возврата 1
make[1]: *** [Makefile:143: lvm] Ошибка 1
make[1]: *** Ожидание завершения заданий…
/usr/bin/ld.gold: error: cannot find -laio
collect2: ошибка: выполнение ld завершилось с кодом возврата 1
make[1]: *** [Makefile:177: liblvm2cmd.so] Ошибка 1
make[1]: выход из каталога «/home/chip/BUILD/lvm2/lvm2.src/lvm2-2_02_187/tools»
make: *** [make.tmpl:361: tools] Ошибка 
Пока это говорит о том, что линкер не нашел библиотеку libaio, может она у вас не установлена. Ведь гадать, что там у вас старенькая слака, новенький арч, собственный винегрет, в котором вы уже окончательно запутались после компиляции более 200 пакетов становится все труднее. По названиям каталогов, так вообще что-то в шляпе Марка Эвинга )))
 
Зарегистрироваться или войдите чтобы оставить сообщение.