LINUX.ORG.RU

Что то пошло не так

 ,


0

1

При загрузке системы получаю Kernel panic. По данной ошибке гуглятся проблемы initramfs/init. Initramfs собирается с ядром через make menuconfig. Busybox собран с ключем static.

Логи dmesg. Моя План-схема установки генты. Собственно, в какую сторону копать? Буду благодарен за инофрмацию.

Пожалуйста не надо писать про то, что не относится к данному вопросу - Genkernel, ненуженый initramfs, проблемы systemd.....

★★

Последнее исправление: QIQuJIunn (всего исправлений: 3)
Ответ на: комментарий от boowai

тем, что не хочу плодить лишнее сущности. Зачем нужны всякие менеджеры, гемморой с их настройкой, когда в менюконфиг можно просто собрать initramfs с ядром, собрав вместе с ядром необходимые модули.

QIQuJIunn ★★
() автор топика

Ну типично нужно добавлять rootfstype=ext4 или подобное чтобы ядро вообще грузилось, особенно без initramfs. хотя по-моему у тебя проблемы с systemd, ничего не могу подсказать.

anonymous
()

Initramfs не нужен, пока тебе не приспичит собрать что-то, что очень нужно, но в ядре нет (ZFS, драйвер какой-нибудь глубоко-проприетарной железки или чего-то ещё, чего у тебя наверняка нет или оно тебе не нужно), для остального достаточно собрать модули (кроме iscsi, ext4, которые обязательно надо вкомпилить в ядро, иначе получишь тыкву).

тем, что не хочу плодить лишнее сущности.

Модули-то в систему всё равно устанавливать придётся.

Зачем нужны всякие менеджеры, гемморой с их настройкой, когда в менюконфиг можно просто собрать initramfs с ядром, собрав вместе с ядром необходимые модули.

В большинстве случаев настраивать ничего не нужно, оно просто работает (с дефолтом).

Ты ищешь проблему там, где её нет. Не долби мозг, делай как проще, а что не понравится или захочешь изменить — переделаешь позже.

r3lgar ★★★★★
()
Ответ на: комментарий от boowai

genkernel

Говно этот genkernel. Недавно захотел потыкать, но в итоге я обратно свалил на dracut.

Genkernel может рандомно собрать тыкву и поганит конфиг ядра. Если с dracut что-то не работает — виноват тот, кто конфигурял ядро, а не тулза.

r3lgar ★★★★★
()
Последнее исправление: r3lgar (всего исправлений: 1)

А зачем тебе вообще initramfs? Собери без него

XMs ★★★★★
()
Ответ на: комментарий от QIQuJIunn

Ну и не плоди, я не вижу у тебя lvm, шифрования или безумной разбивки. initramfs вообще тогда не нужен. C NVMe не грузится без него?

Посмотрел в /var/tmp/genkernel/initramfs-*.cpio. Почти ничего нет. Весь размер от busybox, lvm, dmsetup.

гемморой с их настройкой

Всего десяток-другой опций можно и прочитать, и пару поменять. Вручную потом запарит собирать.

boowai ★★★★
()

А зачем тебе initramfs? Меня, конечно, смутили названия вида /dev/nvme0n1, но если ядро это поддерживает, и grub с этим может работать, может выбросить initrd?

Забекапь конфиг ядра, потом сделай make defconfig. Потом зайди в make menuconfig и сделай 3 вещи:
1) General setup > Local version
2) File systems > ... включи НЕ МОДУЛЕМ поддержку рутовой файловой системы.
3) Включи НЕ МОДУЛЕМ то, что создает тебе /dev/nvme* (если это что-то особенное, а не обычное блочное устройство)

Компиль, устанавливай, загружайся.
Если успешно загрузится, будешь остальное доворачивать.

Kroz ★★★★★
()
Последнее исправление: Kroz (всего исправлений: 3)

Initramfs ненужно, проблема в ядре

deity ★★★★
()

И юзы какие-то странные, гомосексуальные. Не, парниша, сам себя загнал таким странным процессом установки, там и разбирайся теперь.

Учитывая что у тебя даже make localmodconfig нет и конфигурацией ядра ты особо не заморачивался, проблема скорее всего в нём. Возьми генкернел-некст с генерик конфигом и не парься (хотя честно не понимаю зачем тебе тут initramfs и всё остальное).

anonymous
()
Ответ на: комментарий от Kroz

efistub, грузится быстро и не переключая режим экрана несколько раз (граб так и не получилось нормально завести на актуальном железе) и поддерживает secure boot.

anonymous
()
Ответ на: комментарий от anonymous

Неплохая мысль пересобрать ядро с конфигом на основе генкернеловского. Может взлетит.

make localmodconfig make localyesconfig

Пересобрал ядро с этими оциями. На панику не повлияло.

QIQuJIunn ★★
() автор топика
Последнее исправление: QIQuJIunn (всего исправлений: 4)
Ответ на: комментарий от RazrFalcon

ибо дефолт

Где оно дефолт-то? У генты вообще нет дефолта.

УМВР.

Это ты не собирал initrd со сторонними модулями, наверное.

Хз как там можно накосячить.

Я не косячил. Косячил genkernel. Или как объяснить, что dracut с тем же конфигом собрал initrd, который запустился с первого раза?

Уточняю на всякий случай: я тыкал genkernel-next.

r3lgar ★★★★★
()
Ответ на: комментарий от XMs

lilo

Не умеет в UEFI, требует переустановки в MBR при любом изменении конфига. Зато не зависит от раздела с конфигом.

Но, да, он прост, как бревно, свою задачу на Legacy/BIOS выполняет исправно. Сам когда-то юзал.

r3lgar ★★★★★
()
Ответ на: комментарий от XMs

Ну я, например, lilo использую, где возможно, у него хоть конфиги не наркоманские. В отличие от

Я grub1 еще недавно использовал. Там тоже не наркоманские.
Но grub2 пофичастее будет. Например, загрузка с LVM.

Kroz ★★★★★
()
Ответ на: комментарий от anonymous

efistub, грузится быстро и не переключая режим экрана несколько раз (граб так и не получилось нормально завести на актуальном железе) и поддерживает secure boot

grub2 тоже не переключает, если установить GRUB_TERMINAL=console
Фич у grub2 поболе будет.

secure boot - зачем нужно?

Kroz ★★★★★
()

В dmesg написано что у тебя валится драйвер nvidia
И да, рекомендую dracut. Можно много и умно рассуждать про лишние сущности, но если тебе шашечки вместо ехать, то вопросов больше нет.

imul ★★★★★
()
Ответ на: комментарий от r3lgar

Где оно дефолт-то?

В handbook указан как основная альтернатива ручной сборке.

Уточняю на всякий случай: я тыкал genkernel-next.

А виноват genkernel?

RazrFalcon ★★★★★
()
Ответ на: комментарий от r3lgar

genkernel-next

умвр уже несколько лет, наверное ты накосячил с дефолтами (которые не обязаны быть рабочими для твоего конфига)

anonymous
()
Ответ на: комментарий от RazrFalcon

В handbook указан как основная альтернатива ручной сборке.

А нужен ли тебе initrd?

А виноват genkernel?

Ну так в PATH они оба — genkernel.

r3lgar ★★★★★
()
Ответ на: комментарий от anonymous

наверное ты накосячил с дефолтами

А нафиг мне дефолт, когда у меня есть определённый юзкейс, под который я заточил конфиг, и мне нужно только добавить busybox и размешать собрать?

Собирать initrd средствами самого ядра не вариант, так как у меня zfs, который для нового ядра нужно перекомпилять и переустановить, иначе ядро запихает не актуальную версию, которая работать не будет.

r3lgar ★★★★★
()
Ответ на: комментарий от Kroz

grub1
Там тоже не наркоманские

Я бы поспорил

XMs ★★★★★
()

Меня отсюда выгнали админы , но я знаю твою беду у тебя в etc за место конкретно текстового фаила образовалась ссылка и ты должен эту ссылку открыть скопировать оттуда текст , затем эту ссылку удалить и создать с точно таким же именем как у ссылки документ куда вставишь скопированное. Далее update-initramfs -u Griggorii

anonymous
()

Ошибка потому что видимо они с моего там крутятся , а я все дебажу и нужна помощь и была бы уже готова замена андроида и летала бы со скоростью звука

anonymous
()
Ответ на: комментарий от RazrFalcon

Не было времени разобраться.

По сути генерация initrd для тех случаев, когда не нужен какой-то модуль, который по каким-то причинам нельзя (или не хочется) вкомпиливать в ядро, нужен до того, как файловая система (и уж тем более — блочное устройство) с этим модулем (то есть rootfs) доступна для чтения, смысла не имеет. То есть, если ты хочешь вынести iscsi модулем — тебе нужен initrd, если ты хочешь вынести модуль bluetooth или alsa — не нужен, так как на этапе до запуска PID1 (/sbin/init//lib/systemd/systemd) они никуда не упёрлись, система прекрасно загрузится без них.
Ну вот щаз разобрались. Иди, переделывай. xD

Ну так в PATH они оба — genkernel.

WTF?

Да, чот меня уже упороло.
При установке sys-kernel/genkernel ИЛИ sys-kernel/genkernel-next (так как они не могут быть установлены одновременно по обозначенной ниже причине), устанавливается ${PREFIX}/usr/bin/genkernel, то есть у последнего нет суффикса -next на исполняшке.

r3lgar ★★★★★
()
Ответ на: комментарий от r3lgar

Initramfs не нужен, пока тебе не приспичит собрать что-то, что очень нужно, но в ядре нет (ZFS, драйвер какой-нибудь глубоко-проприетарной железки или чего-то ещё, чего у тебя наверняка нет или оно тебе не нужно)

Это экзотический кейс, а вот LVM, dm-crypt и MDRAID — частые.

anonymous
()

Пропиши в начале скрипта

set -ex
trap rescue_shell EXIT
Тогда хотя бы в шелл будешь вываливаться и лог выполняемых команд увидишь.

deadNightTiger ★★★★★
()
Ответ на: комментарий от RazrFalcon

я наоборот ни разу с ним не собирал, ничего дополнительно для этого не предпринимал.

grem ★★★★★
()
Ответ на: комментарий от imul

Гуглил ошибки nvidia из лога и вдруг понял, что пакет с драйверами nvidia-drivers вообще не установлен. пока что.

Т.к. я решил установить и сконфигурировать все сразу, я уже выставил в make.config видеокарту VIDEO_DRIVER=«nvidia», мир пересобрал и ядро сконфигуророванно под пропиетарные драйвера, хотя их пока нет. Из всего только базовая cистема, ядро и initramfs. Установка всех пакетов и драйверов идет следующим шагом. На этом этапе гружусь в систему. Может есть какие то противоречия в такой последовательности действий, которые приводят к панике?

Установил nvidia-drivers и xorg. Вроде ошибки влоге пропали

QIQuJIunn ★★
() автор топика
Ответ на: комментарий от anonymous

Шифрование для корня использовать там можно?

Вроде уже можно, но я чот ссу.

r3lgar ★★★★★
()

Проблему нашел. Банально отсутствовала директория /mnt/root в initramfs.

QIQuJIunn ★★
() автор топика
Ответ на: комментарий от spijet

Нельзя.
При создании, или включении свапа были какие то ошибки. Я не обратил особого внимания и продолжил установку. Дальше, при сборке софта не хватало оперативной памяти, видимо как раз из-за отсутствия свапа(4Gb оперативы). Отформатировал раздел в ext4, создал swap. Все собралось нормально.
Может потом перейду на какую то более модную фс, но мне кажется в этом смысла не много для домашнего пк.

QIQuJIunn ★★
() автор топика
Последнее исправление: QIQuJIunn (всего исправлений: 2)
Ответ на: комментарий от QIQuJIunn

Я пошёл по пути OpenSuSE и сделал себе btrfs для корня и XFS для хомяка. Работает отлично. Swap держу на отдельном разделе (для гибернации).

spijet ★★★
()
Ответ на: комментарий от r3lgar

Initramfs не нужен

Смелое заявление. Особенно учитывая что gentoo не может в нормальный initramfs хотя бы для того чтобы максимально все ядерные модули сделать M а не Y.

anonymous
()
CLFLAGS="-march=skylake -O2 -pipe -mmmx -msse -msse2 -msse3 -mssse3 -msse4.1 -msse4.2 -mavx -mavx2 -mfma -aes"

Должно же быть CFLAGS?

Deleted
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.