Есть ли способ использовать каталог в качестве initrd при загрузке QEMU?
Я знаю, как использовать флаги -kernel
и -initrd
для QEMU для загрузки ядра и initrd без необходимости сначала создавать загрузочное устройство, содержащее эти два файла. Теперь мне интересно, есть ли способ пропустить шаг использования cpio
для создания файла initrd.
Обычно при внесении изменений в каталог, содержащий все файлы для моего initrd. Я бы проверил их, запустив
(cd initrd ; find . | cpio --quiet -R 0:0 -o -H newc) | gzip >initrd.gz
qemu-system-i386 -kernel /boot/vmlinuz -initrd initrd.gz
Можно ли как-то добиться того же, не создавая файл initrd в файловой системе?
До сих пор я пробовал следующее:
qemu-system-i386 -kernel /boot/vmlinuz -initrd initrd
в результате ядро запускается, но при попытке смонтировать корневую файловую систему.
qemu-system-i386 -kernel /boot/vmlinuz -initrd <(
cd initrd ; find . | cpio --quiet -R 0:0 -o -H newc)
в результате QEMU умирает с:
qemu: error reading initrd /dev/fd/63: Illegal seek