Сайт | Скачать | Видео | Wiki

Автор Тема: Ошибка в INIT "respawning too fast" при загрузке с флешки  (Прочитано 9807 раз)

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

Оффлайн GL

  • Новичок
  • *
  • Сообщений: 18
  • Репутация: +0/-0
  • Автор темы
Есть забавная машинка - тонкий клиент HP Thin Pro - процессор Via 1 ГГц, 1 Гб ОЗУ (-128 мб откусывает для видео, но расширяемая до 4 ГБ) 1 Гб флеш-память вместо HDD. Достался даром. Тихий, быстро грузятся лёгкие дистры.
При попытке загрузить DDR01 (хоть с флешки с Ventoy, хоть с флешки, сделанной через dd, хоть со флеш-памяти, которая sda1) ядро и initrd.xz находятся, но дальше вылезает сообщение INIT:
Код
INIT: ID "1" respawning too fast: disabled for 5 minutes
Код
INIT: ID "2" respawning too fast: disabled for 5 minutes
Код
INIT: no more processes left in this level

и после долгого ожидания эти строки повторяются.

Аналогичная фигня была на нетбуке EeePC 1001PX, там загрузил через уже установленный ранее GRUB2 от Runtu 16.04, скопировав на винт каталог ddr01 и передав ядру параметры DIR=/ddr01 noload='rox;intel'
noload, возможно, и не нужен был.

Что означают эти сообщения Init? И как это побороть?
Опыт обращения с Linux есть, с 2009 г сидел на сборках Ubuntu, пробовал Arch, Manjaro и другие дистры, но перекомпиляцией не занимался, в основном как пользователь / создатель контента

 На этой машинке с флешки нормально грузятся Runtu 18.04 (медленно, но со звуком и инетом), Antix (быстро, с инетом, без звука, хотя карта определяется), Porteus (аналогично, с инетом, без звука).
Хотелось бы всё же DDR01, т.к. очень понравился набор предустановленного софта, и что русский.
« Последнее редактирование: 19 Январь 2023, 22:56:39 от GL »

Оффлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 34032
  • Репутация: +231/-0
    • PuppyRus-A
Что означают эти сообщения Init?
Таких не встречал
другие наши ядра и инитрд пробовали?
Если не помогло - попробуйте взять ядро из рунту (где максимально определилось железо)

Оффлайн GL

  • Новичок
  • *
  • Сообщений: 18
  • Репутация: +0/-0
  • Автор темы
Цитата
другие наши ядра и инитрд пробовали?

Если честно, только сейчас догадался, что надо было попробовать подключить другой initrd, после того, как распаковал initrd-lf-pf-sf11.cpio, чисто чтобы посмотреть, что у него внутри и поискать в скрипте это сообщение об ошибке (не нашёл)
Пробовал грузить ядро 4.14.105  т.к. машинка старая, и initrd.xz, т.к. на нём загрузился на EeePC через GRUB2 от Runtu

Цитата
Если не помогло - попробуйте взять ядро из рунту (где максимально определилось железо)
:o
А что, так можно было?   :o  :(
Всегда думал, что ядро  и модули должны компилироваться совместно и грузиться вместе. Возможно, был не прав. Попробую. Спасибо за идею.
А initrd брать из Runtu или от DDR01?

Оффлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 34032
  • Репутация: +231/-0
    • PuppyRus-A
Всегда думал, что ядро  и модули должны компилироваться совместно и грузиться вместе.
Да
Надо взять vmlinuz , сделать 000-kernel*.pfs с модулями ядра и выдрать из инитрд рунту модули ядра и пересадить их в initrd-lf-pf-sf11.cpio
Про пересборку инитрд - см вики
initrd брать из Runtu или от DDR01?
лучше initrd-lf-pf-sf11.cpio. В старых initrd.xz нет udev

Оффлайн GL

  • Новичок
  • *
  • Сообщений: 18
  • Репутация: +0/-0
  • Автор темы
Цитата
Да
Надо взять vmlinuz , сделать 000-kernel*.pfs с модулями ядра и выдрать из инитрд рунту модули ядра и пересадить их в initrd-lf-pf-sf11.cpio

Выглядит немного сложновато для непрограммиста, попробую, если не получится загрузиться с готовым initrd и/или более новым  ядром DDR01

Цитата
Про пересборку инитрд - см вики

Нашёл. С виду там не супер сложно.

Цитата
лучше initrd-lf-pf-sf11.cpio. В старых initrd.xz нет udev

О как... принято, буду пробовать. Спасибо.

Оффлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 34032
  • Репутация: +231/-0
    • PuppyRus-A
немного сложновато для непрограммиста
Разберите 000-kern из ДДР - поймете что надо сделать
Навыки программиста не понадобятся

Оффлайн GL

  • Новичок
  • *
  • Сообщений: 18
  • Репутация: +0/-0
  • Автор темы
Цитата

Разберите 000-kern из ДДР - поймете что надо сделать
Навыки программиста не понадобятся

Спасибо! Попробую.
Это хорошо. Мои "навыки программиста" сводятся к написанию shell-скриптов и построению blueprint'ов в Unreal Engine.
Если найду что-то интересное или получится загрузиться - опишу, как что делал, для сообщества, может, кому ещё пригодится.

Оффлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 34032
  • Репутация: +231/-0
    • PuppyRus-A
Если найду что-то интересное или получится загрузиться - опишу, как что делал, для сообщества, может, кому ещё пригодится.
Было бы очень интересно. Был положительный опыт, но уже подустарело

Оффлайн GL

  • Новичок
  • *
  • Сообщений: 18
  • Репутация: +0/-0
  • Автор темы
Попробовал грузить оба ядра с initrd-lf-pf-sf11.cpio. К сожалению, получил те же ошибки вида

Код
INIT: ID "1" respawning too fast: disabled for 5 minutes

До ID "2" не дождался, на этот раз повторно вылезла та же строка:

Код
INIT: ID "1" respawning too fast: disabled for 5 minutes

Пересборкой Init попробую заняться на выходных. Возможно, ядро от Ubuntu подцепит звук, но сначала надо понять, почему останавливается Init. Подозреваю, что простая замена модулей на убунтовские будет недостаточна, если причина, скажем, в слишком быстрой или слишком медленной инициализации какого-то устройства - строка "respawning too fast" намекает, что какое-то событие произошло слишком быстро. Возможно, нужна какая-то задержка в исполнении самого скрипта INIT.

Оффлайн krasnyh

  • Ветеран
  • *****
  • Сообщений: 5356
  • Репутация: +140/-1
Аналогичная фигня была на нетбуке EeePC 1001PX, там загрузил через уже установленный ранее GRUB2 от Runtu 16.04, скопировав на винт каталог ddr01 и передав ядру параметры DIR=/ddr01 noload='rox;intel'
А как полностью выглядела эта запись в grub.cfg? Или уже не восстановить за давностью?

Просто ситуация странная. Вроде думаешь на древний initrd.xz, который sfs уже не использует в других своих сборках. Но тут же оказывается, что все прекрасно стартует из-под grub2 (в DDR01 grub4dos), а значит дело в загрузчике, а не в initrd?
Или там и ядра подхватывалиcь от Runtu?
« Последнее редактирование: 19 Январь 2023, 23:21:34 от krasnyh »

Оффлайн GL

  • Новичок
  • *
  • Сообщений: 18
  • Репутация: +0/-0
  • Автор темы
Цитата
А как полностью выглядела эта запись в grub.cfg? Или уже не восстановить за давностью?

Вот так:
Код
menuentry "ddr01" {
 insmod part_msdos
 insmod ext2
 set root='hd0,msdos6'
 d=ddr01
 search --no-floppy --file /$d/initrd.xz --set=root
 linux /$d/vmlinuz-4.14.105-pf10-le9eb dir=$d noload='rox;intel'
 initrd /$d/initrd.xz
}
Модифицировал копию одного из пунктов убунтовского GRUB.cfg и поместил в 40custom

Ядро использовалось от ddr01, пробовал и 4 и 5 версии, о возможности взять ядро от другого дистра я узнал только вчера.
Более того, пробовал грузить из-под Ventoy, в котором тоже GRUB2. Выходил в консоль Ventoy'евского GRUB2 и вводил вручную эти строки в командах. Загрузка DDR01 останавливалась на одном и том же месте, с сообщением из 1го поста.
На подопытной машинке с флешки Vеntoy грузятся Runtu 18.04, Antix, Porteus (Mate и Openbox версии). Не грузятся DDR01, Slax и Slitaz
Пробовал делать флешку с DDR01 через dd - тоже не грузится

На EeePC с флешки Ventoy не грузилось ничего. Он понимает только флешку, сделанную dd или загрузку из образа на винте
Но со скопированного на винт каталога DDR01 он загрузился через пункт меню выше. Из образа на винте тоже загрузился

Такое ощущение, что дело в очень специфическом железе на HP ThinPro, под которое не заточен Init в DDR01. Потому что Init начинает грузиться и зависает.
Но при этом грузятся из образов Antix, Porteus и Runtu. Если бы Runtu был сделан как Frugal, и в нём не тормозил браузер, я бы его воткнул и успокоился. В DDR01 мне очень подходит набор софта, там инет на нетбуке работает с минимальными тормозами. Доводить Porteus до уровня DDR01 - выглядит сложновато. В DDR01 есть всё, что мне нужно.

Я пытался в распакованном Init из initrd-lf-pf-sf11.cpio найти эту строку сообщения, но не нашёл. Возможно, она выдаётся другим скриптом, вызываемым из INIT.

Сама строка INIT: ID "1" respawning too fast: намекает, что что-то отрабатывает слишком быстро. Возможно, флеш-накопитель. Попробую подключить к машинке винт через переходник USB-SATA и с него загрузиться. Но это будет очень неудобно, кучу проводов втыкать и таскать, занимая две розетки. Чисто  для эксперимента попробовать только.

Оффлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 34032
  • Репутация: +231/-0
    • PuppyRus-A
с флешки Vеntoy грузятся Runtu 18.04, Antix, Porteus (Mate и Openbox версии). Не грузятся DDR01
from= для initrd.xz (pra-porteus) не забыли? Подробнее в вики про вентой
со скопированного на винт каталога DDR01 он загрузился через пункт меню выше
Т.е. проблема с груб или носителем? Раз остальное так же и работает
Если бы Runtu был сделан как Frugal, и в нём не тормозил браузер
Тут дело наверное в ядре. У них обычное у нас с uksm и прочее

Оффлайн GL

  • Новичок
  • *
  • Сообщений: 18
  • Репутация: +0/-0
  • Автор темы
Цитата
from= для initrd.xz (pra-porteus) не забыли? Подробнее в вики про вентой

Пробовал и from= прописывать, но пробовал не с Ventoy, а когда грузил со встроенного флеш-диска.  Попробую ещё раз загрузить с Ventoy-флешки c этим параметром, но:
1. Файлы дистрибутива уже скопированы на встроенный флеш, загрузка с Ventoy флешки не особо актуальна. Мне бы со встроенного флеш-диска загрузиться.
2. initrd находится и грузится, и старый initrd.xz и более новый initrd-lf-pf-sf11.cpio  но останавливает работу уже в процессе загрузки.
Со встроенного флешдиска не хочет грузить ни grub4dos, ни syslinux, хотя с последним я незнаком и мог напортачить. Пробовал его только потому, что через syslinux грузится Porteus, который на этой машинке запускается без проблем. (это если я правильно понял, какой там загрузчик), но проблема, как мне представляется, именно в одном из скриптов initrd, который то ли не успевает за устройством (что вряд ли), то ли наоборот, срабатывает раньше, чем оно инициализировалось (более вероятно)

Потому и хочу попробовать подоткнуть к подопытному кролику обычный HDD через переходник USB-SATA, чтобы исключить встроенный накопитель вообще как фактор. Но таскать кучу проводов и болтающийся на них HDD точно не вариант. Это чисто для пробы. 
Покупка ноутбучного HDD сильно кусается. С машинкой ковыряюсь больше ради интереса, вкладываться в неё не планировал, максимум - докупить за 900 руб модуль RAM на 4 Гб. Покупать HDD 2.5 (за 3250 самый дешёвый в DNS) - ну... как-то дороговато just for fun. Купить SSD - а если с него тоже не заведётся? Хотелось бы сначала запустить на ней очень понравившийся мне DDR01 - любовь с первой загрузки на EeePC  :D чтобы уже понимать, как оно работать будет и будет ли вообще.
Ну и импортный дистр вроде Porteus или Antix - это экзотика и англоязычный форум. Здесь хоть спросить можно по-русски и ответят понятно.

UPD:
Почитал в wiki про Ventoy, возникла мысль отформатить в него внутренний флеш-накопитель и попробовать.  :) Там Grub2, с которым как-то привычнее. Только бы не убить внутренний флеш.
« Последнее редактирование: 20 Январь 2023, 10:36:50 от GL »

Оффлайн RoDoN

  • Активный участник
  • Ветеран
  • ****
  • Сообщений: 6287
  • Репутация: +141/-0
Пробовал делать флешку с DDR01 через dd - тоже не грузится
А если сделать, как написано здесь https://wiki.puppyrus.org/setups/ddr2usb ?
Lenovo G500 (i3-3110M, 8 Гб, Intel + Radeon HD 8570)
PRA 16.12 JWM, Runtu 22.04 x64 XFCE

Оффлайн GL

  • Новичок
  • *
  • Сообщений: 18
  • Репутация: +0/-0
  • Автор темы
Цитата
А если сделать, как написано здесь https://wiki.puppyrus.org/setups/ddr2usb ?

Практически так и делал. Копировал содержимое образа и оттуда уже запускал скрипт установки Grub4Dos. Все эти меню появляются, работают, начинается загрузка, отрабатывают скрипты, вызываемые из INIT (возможно, не все). Потом появляется надпись

Код
INIT: ID "1" respawning too fast: disabled for 5 minutes
Код
INIT: ID "2" respawning too fast: disabled for 5 minutes
Код
INIT: no more processes left in this level
И затык. Я даже не могу найти, из какого скрипта эти сообщения выдаются. Потому что в скриптах в распакованном initrd этих фраз нет - распаковал и в каждом скрипте искал поиском.
Пробовал включать параметр Debug - получил кучу сообщений от всех скриптов, но картину не прояснило. Могу разве что попробовать весь вывод перенаправить в файл и этот файл сюда выложить. Возможно, удастся понять, на каком этапе и в каком скрипте тормоз происходит.

Syslinux тоже пробовал, вообще даже меню не появилось.