LINUX.ORG.RU

История изменений

Исправление Pinkbyte, (текущая версия) :

если ядро не видит /sbin/v86d, initrd тут каким боком? ведь для работы инитрд тоже корень нужен

Фишка в том, что initrd и есть этот корень. Погугли как происходит загрузка ядра с initrd.

Загрузчик передает управление ядру -> ядро подгружает initrd как корневую ФС -> грузится v86d из initrd(тут экран в традиционных FB моргает), другие действия необходимые для поиска настоящего корня(lvm, рэйд, внешние драйвера для ФС - например zfs) -> switch_root/pivot_root в новый, «настоящий» корень, указанный как root= в опциях ядра.

Чтобы экран вообще не моргал, нужно чтобы поддержка фрэймбуффера была сквозной в загрузчике и ядре. Такое достигается, например с помощью efi fb, когда фрэймбуффер инициализируется еще в загрузчике(или даже еще раньше) и управлением им просто передается дальше

Копать в сторону grub gfx payload keep

Исправление Pinkbyte, :

если ядро не видит /sbin/v86d, initrd тут каким боком? ведь для работы инитрд тоже корень нужен

Фишка в том, что initrd и есть этот корень. Погугли как происходит загрузка ядра с initrd.

Загрузчик передает управление ядру -> ядро подгружает initrd как корневую ФС -> грузится v86d из initrd(тут экран в традиционных FB моргает), другие действия необходимые для поиска настоящего корня(lvm, рэйд, внешние драйвера для ФС - например zfs) -> switch_root/pivot_root в новый, «настоящий» корень, указанный как root= в опциях ядра.

Чтобы экран вообще не моргал, нужно чтобы поддержка фрэймбуффера была сквозной в загрузчике и ядре. Такое достигается, например с помощью efi fb, когда фрэймбуффер инициализируется еще в загрузчике(или даже еще раньше) и управлением им просто передается дальше

Исправление Pinkbyte, :

если ядро не видит /sbin/v86d, initrd тут каким боком? ведь для работы инитрд тоже корень нужен

Фишка в том, что initrd и есть этот корень. Погугли как происходит загрузка ядра с initrd.

Загрузчик передает управление ядру -> ядро подгружает initrd как корневую ФС -> грузится v86d из initrd(тут экран в традиционных FB моргает), другие действия необходимые для поиска настоящего корня(lvm, рэйд, внешние драйвера для ФС - например zfs) -> switch_root/pivot_root в новый, «настоящий» корень, указанный как root= в опциях ядра.

Чтобы экран вообще не моргал, нужно чтобы поддержка фрэймбуффера была сквозной в загрузчике и ядре. Такое достигается, например с помощью efi fb

Исходная версия Pinkbyte, :

если ядро не видит /sbin/v86d, initrd тут каким боком? ведь для работы инитрд тоже корень нужен

Фишка в том, что initrd и есть этот корень. Погугли как происходит загрузка ядра с initrd.

Загрузчик передает управление ядру -> ядро подгружает initrd как корневую ФС -> грузится v86d из initrd(тут экран в традиционных FB моргает), другие действия необходимые для поиска настоящего корня(lvm, рэйд, внешние драйвера для ФС - например zfs) -> switch_root/pivot_root в новый корень.

Чтобы экран вообще не моргал, нужно чтобы поддержка фрэймбуффера была сквозной в загрузчике и ядре. Такое достигается, например с помощью efi fb