История изменений
Исправление HighMan, (текущая версия) :
А дальше, не знаю, может начинать вставлять отладочную печать в swich_root и пр. бинарники, то есть править исходники и перекомпилять. Так как не понято на каком этапе падает, там у вас 4 бинарника: runas, environ, swich_root, systemd и каждый, если завершается, а не превращается в другой через exec(), то это ″kill init!″…
Строка выпадения в основную систему взята из родного init скрипта.
Что интересно все работает нормально, если не вызывать: exec setsid bash -c ‘exec bash </dev/tty1 >/dev/tty1 2>&1’ Если же вызвать, посмотреть наличие смонтированного root раздела, то при выходе из bash все падает
UPD странная история…
После выхода из bash я добавил еще несколько строк, включая echo и, блин, они не срабатывают! Получается, что как только завершается сеанс вызванного bash, то он завершает и bash в котором крутится вызвавший его /init.
Еще: в порожденном процессе bash я посмотрел его PID и он 1. Т.е. это не породился новый процесс, а как-то он продолжает работать в основном! Его завершение приводит к завершению всго init процесса.
Что-то начало проясняться…
Исправление HighMan, :
А дальше, не знаю, может начинать вставлять отладочную печать в swich_root и пр. бинарники, то есть править исходники и перекомпилять. Так как не понято на каком этапе падает, там у вас 4 бинарника: runas, environ, swich_root, systemd и каждый, если завершается, а не превращается в другой через exec(), то это ″kill init!″…
Строка выпадения в основную систему взята из родного init скрипта.
Что интересно все работает нормально, если не вызывать: exec setsid bash -c ‘exec bash </dev/tty1 >/dev/tty1 2>&1’ Если же вызвать, посмотреть наличие смонтированного root раздела, то при выходе из bash все падает
UPD странная история…
После выхода из bash я добавил еще несколько строк, включая echo и, блин, они не срабатывают! Получается, что как только завершается сеанс вызванного bash, то он завершает и bash в котором крутится вызвавший его /init.
Еще: в порожденном процессе bash я посмотрел его PID и он 1. Т.е. это не породился новый процесс, а как-то он продолжает работать в основном! Его завершение приводит к завершению всго init процесса.
Честно говоря, не понимаю как это разрулить.
Исправление HighMan, :
А дальше, не знаю, может начинать вставлять отладочную печать в swich_root и пр. бинарники, то есть править исходники и перекомпилять. Так как не понято на каком этапе падает, там у вас 4 бинарника: runas, environ, swich_root, systemd и каждый, если завершается, а не превращается в другой через exec(), то это ″kill init!″…
Строка выпадения в основную систему взята из родного init скрипта.
Что интересно все работает нормально, если не вызывать: exec setsid bash -c ‘exec bash </dev/tty1 >/dev/tty1 2>&1’ Если же вызвать, посмотреть наличие смонтированного root раздела, то при выходе из bash все падает
UPD странная история…
После выхода из bash я добавил еще несколько строк, включая echo и, блин, они не срабатывают! Получается, что как только завершается сеанс вызванного bash, то он завершает и bash в котором крутится вызвавший его /init.
Исходная версия HighMan, :
А дальше, не знаю, может начинать вставлять отладочную печать в swich_root и пр. бинарники, то есть править исходники и перекомпилять. Так как не понято на каком этапе падает, там у вас 4 бинарника: runas, environ, swich_root, systemd и каждый, если завершается, а не превращается в другой через exec(), то это ″kill init!″…
Строка выпадения в основную систему взята из родного init скрипта.
Что интересно все работает нормально, если не вызывать: exec setsid bash -c ‘exec bash </dev/tty1 >/dev/tty1 2>&1’ Если же вызвать, посмотреть наличие смонтированного root раздела, то при выходе из bash все падает