|
大神,mydracut-new/ubuntu-kloop/readme-ubuntu-kloop里面第五段生成initrd.img文件说四个文件
把这里生成的文件 initrd.img-3.16.0-30-generic 与 /boot/下两个文件 vmlinuz-3.16.0-30-generic
和vhd文件UBUNTU-14041.vhd一共四个文件拷贝或移动到一个NTFS分区根目录下一个名叫ubuntu子目录中。
如果没有ubuntu目录就手动建立一个。
没想出来是哪四个,我就把生成的initrd.img和boot下的vmlinuzxxxxx和vhdx文件放到移动硬盘ubuntu目录下,我的移动硬盘是gpt格式的只有efi分区和一个主分区。
引导这样子
- if search --no-floppy -f /ubuntu/vubt.vhdx; then
- menuentry "vubt_archbang.vhdx " --class ubuntu {
- insmod gzio
- insmod part_msdos
- insmod part_gpt
- insmod ext2
- insmod ntfs
- insmod probe
- set vhdfile="/ubuntu/vubt.vhdx"
- ##set root=(hd0,1)
- search --no-floppy -f --set=aabbcc $vhdfile
- set root=${aabbcc}
- probe -u --set=ddeeff ${aabbcc}
- loopback lp0 $vhdfile
- linux /ubuntu/vmlinuz-4.13.0-36-generic root=UUID=${ddeeff} kloop=$vhdfile kroot=/dev/loop0p1
- initrd /ubuntu/initrd.img-4.13.0-36-generic
- }
- fi
复制代码
这可以成功引导论坛里一位兄弟的archLinux-vhd
最后输出一大段,有一句 no working init found
也测试了readme里面的引导,试了好几个值,都失败了。
最后把boot里的initrad.imgxxxx文件换成定制的,试这段引导
- menuentry " UBUNTU-1604.vhdx 5" --class ubuntu {
- insmod gzio
- insmod part_msdos
- insmod part_gpt
- insmod ext2
- insmod ntfs
- insmod probe
- set vhdfile="/ubuntu/vubt.vhdx"
- set root=(hd0,1)
- search --no-floppy -f --set=aabbcc $vhdfile
- set root=${aabbcc}
- probe -u --set=ddeeff ${aabbcc}
- loopback loop0 $vhdfile
- linux (loop0,1)/vmlinuz-4.13.0-36-generic root=/dev/sda5 rw kloop=$vhdfile kroot=/dev/mapper/loop0p1
- initrd (loop0,1)/initrd.img-4.13.0-36-generic
- }
复制代码
这就直接提示disk 'loop0, 1' not found
试了从0到5都不行,又改root=(hd0, 1),0试到3也不行((loop0,1)),同样提示not found
我用的ubuntu是16.04,还更换外部的initrd和vmlinuz文件,用了你的和那位兄弟的,也不行。
请大神指导一下,感谢。
|
|