grub2, с помощью переменных для передачи записи Linux

У меня есть следующая переменная в grub.cfg файле.

BOOT_PARAMETERS="rootwait rootfstype=ext4 rootimage=$BOOT_ROOT_IMAGE_NAME root=$ROOT_DEVICE console=none intel_idle.max_cstate=1 quiet"
BOOT_ROOT_INITRD=(hd0,gpt2)/boot1/initrd
BOOT_ROOT_KERNEL=(hd0,gpt2)/boot1/bzImage

Я хочу передать эти параметры в запись меню.

menuentry 'pc'{
linux $BOOT_ROOT_KERNEL $BOOT_PARAMETERS
initrd $BOOT_ROOT_INITRD
}

BOOT_ROOT_KERNEL и BOOT_ROOT_INITRD хорошо работает, но параметры не работают. Я не уверен, как это повреждает начальную загрузку, но эта запись меню не загрузится. Если я заменяю $BOOT_PARAMETERS с фактическим содержанием переменной (без кавычек, это работает).

Кроме того, следующие работы также:

linux $BOOT_ROOT_KERNEL "$BOOT_PARAMETERS"

Однако /proc/cmdline включает те кавычки, и я не хочу повреждать приложения, которые читают этот вывод.

Как я заставляю это работать?

linux $BOOT_ROOT_KERNEL $BOOT_PARAMETERS

Править: В командной строке личинки, если я делаю echo $BOOT_PARAMETERS, перезагрузки флэш-памяти машины. Если я делаю echo "$BOOT_PARAMETERS", это обычно печатает.

Edit2: Это, кажется, имеет отношение к переменным крупной среды. Выполнение set TEST="SFSFESFSEFDFUIHI rg s rjg sreuigsrgi sig isdfjgs dfkgd", сопровождаемый echo $TEST будет иногда вызывать его. Это происходит в определенной длине/комбинации, и я не могу указать на него. Если этого не происходит на первой попытке, продолжайте добавлять материал к TEST, затем echo $TEST в конечном счете вызовет перезагрузку флэш-памяти.

1
задан 17 November 2017 в 18:15

0 ответов

Другие вопросы по тегам:

Похожие вопросы: