LINUX.ORG.RU

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

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

Параметры ядра описаны вот здесь: https://www.kernel.org/doc/Documentation/admin-guide/kernel-parameters.txt

Всё то, чего здесь нет, но передаётся в строке параметров ядра, обрабатывается уже не ядром, а стартовыми скриптами в initramfs или скриптами системы инициализации.

При своём запуске ядро ищет параметр root, который указывает где находится корневая файловая система, далее ядро её монтирует и вызывает процесс init, обычно /sbin/init, ну либо указанный в параметрах ядра.

Далее уже сценарий init, который является стартовым сценарием системы инициализации читает файл /etc/fstab и монтирует указанные там файловые системы, ну и выполняет другие действия.

Указать что-то для монтирования через параметры ядра помимо параметра root можно, но в таком случае тебе надо внести правки либо с сценарии в initramfs, что бы скрипт в Initramfs искал в /proc/cmdline какое-то определённое слово и выполнял некоторые действия, либо внести правки в скрипты системы инициализации на корневой файловой системе, в твоём случае в squashfs, либо просто добавив соответствующую строку в /etc/fstab.

Если тебе лень распаковывать squashfs, т.к. это всё же займёт некоторое немалое время, то можешь распаковать initramfs.

Поищи в Internet, ну или в моих комментариях на форуме по строке

cpio -i -d -H newc
там я описавал как распаковать initrafms и запаковать обратно.

Например, вот: Не подхватывается фирмварь (комментарий)

Но алогоритм сжатия может быть и gzip, и xz, и любой другой.

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

Добавь его и запакую обратно. Заодно изучишь как в действительности обрабатываются параметры ядра и чем.

Удачи.

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

Параметры ядра описаны вот здесь: https://www.kernel.org/doc/Documentation/admin-guide/kernel-parameters.txt

Всё то, чего здесь нет, но передаётся в строке параметров ядра, обрабатывается уже не ядром, а стартовыми скриптами в initramfs или скриптами системы инициализации.

При своём запуске ядро ищет параметр root, который указывает где находится корневая файловая система, далее ядро её монтирует и вызывает процесс init, обычно /sbin/init, ну либо указанный в параметрах ядра.

Далее уже сценарий init, который является стартовым сценарием системы инициализации читает файл /etc/fstab и монтирует указанные там файловые системы, ну и выполняет другие действия.

Указать что-то для монтирования через параметры ядра помимо параметра root можно, но в таком случае тебе надо внести правки либо с сценарии в initramfs, что бы скрипт в Initramfs искал в /proc/cmdline какое-то определённое слово и выполнял некоторые действия, либо внести правки в скрипты системы инициализации на корневой файловой системе, в твоём случае в squashfs, либо просто добавив соответствующую строку в /etc/fstab.

Если тебе лень распаковывать squashfs, т.к. это всё же займёт некоторое немалое время, то можешь распаковать initramfs.

Поищи в Internet, ну или в моих комментариях на форуме по строке

cpio -i -d -H newc
там я описавал как распаковать initrafms и запаковать обратно.

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

Добавь его и запакую обратно. Заодно изучишь как в действительности обрабатываются параметры ядра и чем.

Удачи.