В qemu/kvm мы можем установить аргументы -kernel с путем к образу ядра, -initrd с путем к RAM-диску инициализации и -append с командной строкой для загрузки ядра. Будет ли это конфликтовать с образом ядра Linux, включенным в гостевую систему? Как он может пропустить повторяющуюся процедуру загрузки образа ядра при загрузке гостя? Спасибо
Использование qemu/kvm для загрузки ядра Linux с такими аргументами, как -kernel, -initrd, -append
Ответы (1)
Я предполагаю, что вы имеете в виду образ ядра vmlinuz с образом ядра /boot/vmlinuz, на котором находится ваш RAM-диск инициализации.
Процесс загрузки состоит из двух (в общем) шагов. а. Первоначальная загрузка (параметр -kernel), использующая двоичный файл qemu-kvm, заключается в загрузке ядра в оперативную память и диск initramfs. б. Затем ядро попытается идентифицировать ядро /boot/vmlinuz в вашем initramfs и выполнить поворот (или switch_root) к вашему ядру /boot/vmlinuz внутри вашего образа initramfs.
Таким образом, нет дублирующей процедуры и конфликта с гостевым (или хостовым) образом ядра.
Если вы хотите попробовать новый образ ядра для вашего образа initramfs, то я предлагаю загрузить ваш новый образ ядра и выполнить chroot к вашему образу initramfs (с привязкой монтирования к /sys, /dev и /proc).
Вы должны быть уверены, что ваш «новый» образ ядра может правильно читать initramfs.
В параметрах добавления - не забудьте добавить путь к ядру вашего образа initramfs.