|
还有几个问题
1. 是不是制作好的initrd.img需要复制到/boot里面,删除里面自带的initrd.img
2. 我看您做的UBT_Small.vhd中 /boot/grub.cfg里面还有引导代码,我的是不是也需要写这些引导代码呢
3. 我使用的是U盘引导 同样的引导代码 引导UBT_Small.vhd ,同样的文件夹、放置从您的百度云下载的 vmlinux 和 initrd.img 引导没有问题
我觉得问题可能就出在 initrd.img 文件上了
附上 UBT_Small.vhd 中 grub.cfg 的代码
- #
- # DO NOT EDIT THIS FILE
- #
- # It is automatically generated by grub-mkconfig using templates
- # from /etc/grub.d and settings from /etc/default/grub
- #
- ### BEGIN /etc/grub.d/00_header ###
- if [ -s $prefix/grubenv ]; then
- set have_grubenv=true
- load_env
- fi
- if [ "${next_entry}" ] ; then
- set default="${next_entry}"
- set next_entry=
- save_env next_entry
- set boot_once=true
- else
- set default="0"
- fi
- if [ x"${feature_menuentry_id}" = xy ]; then
- menuentry_id_option="--id"
- else
- menuentry_id_option=""
- fi
- export menuentry_id_option
- if [ "${prev_saved_entry}" ]; then
- set saved_entry="${prev_saved_entry}"
- save_env saved_entry
- set prev_saved_entry=
- save_env prev_saved_entry
- set boot_once=true
- fi
- function savedefault {
- if [ -z "${boot_once}" ]; then
- saved_entry="${chosen}"
- save_env saved_entry
- fi
- }
- function recordfail {
- set recordfail=1
- if [ -n "${have_grubenv}" ]; then if [ -z "${boot_once}" ]; then save_env recordfail; fi; fi
- }
- function load_video {
- if [ x$feature_all_video_module = xy ]; then
- insmod all_video
- else
- insmod efi_gop
- insmod efi_uga
- insmod ieee1275_fb
- insmod vbe
- insmod vga
- insmod video_bochs
- insmod video_cirrus
- fi
- }
- if [ x$feature_default_font_path = xy ] ; then
- font=unicode
- else
- insmod part_msdos
- insmod ext2
- if [ x$feature_platform_search_hint = xy ]; then
- search --no-floppy --fs-uuid --set=root a72e218c-b44f-4e06-8f22-bd6180c2193e
- else
- search --no-floppy --fs-uuid --set=root a72e218c-b44f-4e06-8f22-bd6180c2193e
- fi
- font="/usr/share/grub/unicode.pf2"
- fi
- if loadfont $font ; then
- set gfxmode=auto
- load_video
- insmod gfxterm
- set locale_dir=$prefix/locale
- set lang=zh_CN
- insmod gettext
- fi
- terminal_output gfxterm
- if [ "${recordfail}" = 1 ] ; then
- set timeout=30
- else
- if [ x$feature_timeout_style = xy ] ; then
- set timeout_style=menu
- set timeout=10
- # Fallback normal timeout code in case the timeout_style feature is
- # unavailable.
- else
- set timeout=10
- fi
- fi
- ### END /etc/grub.d/00_header ###
- ### BEGIN /etc/grub.d/05_debian_theme ###
- set menu_color_normal=white/black
- set menu_color_highlight=black/light-gray
- if background_color 44,0,30,0; then
- clear
- fi
- ### END /etc/grub.d/05_debian_theme ###
- ### BEGIN /etc/grub.d/10_linux ###
- function gfxmode {
- set gfxpayload="${1}"
- if [ "${1}" = "keep" ]; then
- set vt_handoff=vt.handoff=7
- else
- set vt_handoff=
- fi
- }
- if [ "${recordfail}" != 1 ]; then
- if [ -e ${prefix}/gfxblacklist.txt ]; then
- if hwmatch ${prefix}/gfxblacklist.txt 3; then
- if [ ${match} = 0 ]; then
- set linux_gfx_mode=keep
- else
- set linux_gfx_mode=text
- fi
- else
- set linux_gfx_mode=text
- fi
- else
- set linux_gfx_mode=keep
- fi
- else
- set linux_gfx_mode=text
- fi
- export linux_gfx_mode
- menuentry 'Ubuntu' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-a72e218c-b44f-4e06-8f22-bd6180c2193e' {
- recordfail
- load_video
- gfxmode $linux_gfx_mode
- insmod gzio
- if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi
- insmod part_msdos
- insmod ext2
- if [ x$feature_platform_search_hint = xy ]; then
- search --no-floppy --fs-uuid --set=root a72e218c-b44f-4e06-8f22-bd6180c2193e
- else
- search --no-floppy --fs-uuid --set=root a72e218c-b44f-4e06-8f22-bd6180c2193e
- fi
- linux /boot/vmlinuz-4.4.0-65-generic root=UUID=a72e218c-b44f-4e06-8f22-bd6180c2193e ro quiet splash $vt_handoff
- initrd /boot/initrd.img-4.4.0-65-generic
- }
- submenu 'Ubuntu 高级选项' $menuentry_id_option 'gnulinux-advanced-a72e218c-b44f-4e06-8f22-bd6180c2193e' {
- menuentry 'Ubuntu,Linux 4.4.0-65-generic' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-4.4.0-65-generic-advanced-a72e218c-b44f-4e06-8f22-bd6180c2193e' {
- recordfail
- load_video
- gfxmode $linux_gfx_mode
- insmod gzio
- if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi
- insmod part_msdos
- insmod ext2
- if [ x$feature_platform_search_hint = xy ]; then
- search --no-floppy --fs-uuid --set=root a72e218c-b44f-4e06-8f22-bd6180c2193e
- else
- search --no-floppy --fs-uuid --set=root a72e218c-b44f-4e06-8f22-bd6180c2193e
- fi
- echo '载入 Linux 4.4.0-65-generic ...'
- linux /boot/vmlinuz-4.4.0-65-generic root=UUID=a72e218c-b44f-4e06-8f22-bd6180c2193e ro quiet splash $vt_handoff
- echo '载入初始化内存盘...'
- initrd /boot/initrd.img-4.4.0-65-generic
- }
- menuentry 'Ubuntu, with Linux 4.4.0-65-generic (upstart)' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-4.4.0-65-generic-init-upstart-a72e218c-b44f-4e06-8f22-bd6180c2193e' {
- recordfail
- load_video
- gfxmode $linux_gfx_mode
- insmod gzio
- if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi
- insmod part_msdos
- insmod ext2
- if [ x$feature_platform_search_hint = xy ]; then
- search --no-floppy --fs-uuid --set=root a72e218c-b44f-4e06-8f22-bd6180c2193e
- else
- search --no-floppy --fs-uuid --set=root a72e218c-b44f-4e06-8f22-bd6180c2193e
- fi
- echo '载入 Linux 4.4.0-65-generic ...'
- linux /boot/vmlinuz-4.4.0-65-generic root=UUID=a72e218c-b44f-4e06-8f22-bd6180c2193e ro quiet splash $vt_handoff init=/sbin/upstart
- echo '载入初始化内存盘...'
- initrd /boot/initrd.img-4.4.0-65-generic
- }
- menuentry 'Ubuntu, with Linux 4.4.0-65-generic (recovery mode)' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-4.4.0-65-generic-recovery-a72e218c-b44f-4e06-8f22-bd6180c2193e' {
- recordfail
- load_video
- insmod gzio
- if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi
- insmod part_msdos
- insmod ext2
- if [ x$feature_platform_search_hint = xy ]; then
- search --no-floppy --fs-uuid --set=root a72e218c-b44f-4e06-8f22-bd6180c2193e
- else
- search --no-floppy --fs-uuid --set=root a72e218c-b44f-4e06-8f22-bd6180c2193e
- fi
- echo '载入 Linux 4.4.0-65-generic ...'
- linux /boot/vmlinuz-4.4.0-65-generic root=UUID=a72e218c-b44f-4e06-8f22-bd6180c2193e ro recovery nomodeset
- echo '载入初始化内存盘...'
- initrd /boot/initrd.img-4.4.0-65-generic
- }
- }
- ### END /etc/grub.d/10_linux ###
- ### BEGIN /etc/grub.d/20_linux_xen ###
- ### END /etc/grub.d/20_linux_xen ###
- ### BEGIN /etc/grub.d/20_memtest86+ ###
- menuentry 'Memory test (memtest86+)' {
- insmod part_msdos
- insmod ext2
- if [ x$feature_platform_search_hint = xy ]; then
- search --no-floppy --fs-uuid --set=root a72e218c-b44f-4e06-8f22-bd6180c2193e
- else
- search --no-floppy --fs-uuid --set=root a72e218c-b44f-4e06-8f22-bd6180c2193e
- fi
- knetbsd /boot/memtest86+.elf
- }
- menuentry 'Memory test (memtest86+, serial console 115200)' {
- insmod part_msdos
- insmod ext2
- if [ x$feature_platform_search_hint = xy ]; then
- search --no-floppy --fs-uuid --set=root a72e218c-b44f-4e06-8f22-bd6180c2193e
- else
- search --no-floppy --fs-uuid --set=root a72e218c-b44f-4e06-8f22-bd6180c2193e
- fi
- linux16 /boot/memtest86+.bin console=ttyS0,115200n8
- }
- ### END /etc/grub.d/20_memtest86+ ###
- ### BEGIN /etc/grub.d/30_uefi-firmware ###
- ### END /etc/grub.d/30_uefi-firmware ###
- ### BEGIN /etc/grub.d/40_custom ###
- # This file provides an easy way to add custom menu entries. Simply type the
- # menu entries you want to add after this comment. Be careful not to change
- # the 'exec tail' line above.
- ###############################William themes setup
- insmod gfxmenu
- loadfont ${prefix}/themes/ubuntu/DejaVuSans-Bold14.pf2
- loadfont ${prefix}/themes/ubuntu/DejaVuSans10.pf2
- loadfont ${prefix}/themes/ubuntu/DejaVuSans12.pf2
- loadfont ${prefix}/themes/ubuntu/ascii.pf2
- insmod png
- set theme=${prefix}/themes/ubuntu/grub-theme-small.txt
- export theme
- ##################################William themes setup
- if search --no-floppy -f /vmlinuz; then
- menuentry 'UBUNTU 硬盘系统' --class ubuntu {
- insmod gzio
- insmod part_msdos
- insmod part_gpt
- insmod ext2
- insmod ntfs
- insmod probe
- set root=(hd0,1)
- search --no-floppy -f --set=aabbcc /vmlinuz
- set root=${aabbcc}
- probe -u --set=ddeeff ${aabbcc}
- linux /vmlinuz root=UUID=${ddeeff} quiet splash
- initrd /initrd.img
- }
- fi
- if search -s -f /bootmgr; then
- menuentry "启动硬盘Windows7,8 " --class windows {
- insmod part_msdos
- insmod ntfs
- insmod fat
- set root=(hd0,1)
- search -s -f /bootmgr
- ntldr /bootmgr
- }
- fi
- if search -s -f /ntldr; then
- menuentry "启动硬盘Windowsxp" --class windows {
- insmod part_msdos
- insmod ntfs
- insmod fat
- set root=(hd0,1)
- search -s -f /ntldr
- ntldr /ntldr
- }
- fi
- if search -s -f /grldr; then
- menuentry "启动grub4dos" --class windows {
- insmod ntfs
- insmod fat
- set root=(hd0,1)
- search -s -f /grldr
- ntldr /grldr
- }
- fi
- menuentry "REBOOT " --class reboot {
- reboot
- }
- menuentry "HALT " --class halt {
- halt
- }
- ### END /etc/grub.d/40_custom ###
- ### BEGIN /etc/grub.d/41_custom ###
- if [ -f ${config_directory}/custom.cfg ]; then
- source ${config_directory}/custom.cfg
- elif [ -z "${config_directory}" -a -f $prefix/custom.cfg ]; then
- source $prefix/custom.cfg;
- fi
- ### END /etc/grub.d/41_custom ###
复制代码
|
|