我试图从一个虚拟机(VirtualBox)中的硬盘驱动器内的ISO启动Alpine Linux。
对于这个任务,我决定使用GRUB2,因为它应该具有完成此任务所需的全部function。
第一。 我用alpine-virt-3.6.2-x86_64.iso ISO引导一个virtualbox虚拟机。
我启用SSH,我格式化硬盘驱动器,我复制虚拟机(/ mnt / storage / iso)内的alpine-virt-3.6.2-x86_64.iso 。
我的/etc/fstab是
/dev/sda1 /boot vfat defaults 1 1 /dev/sda2 /mnt/storage ext4 defaults 1 1
以root用户身份,我创build启动文件夹为/ boot(它不存在于CD上
mkdir /boot # Copying boot images to / mount /dev/sda1 /boot cp -av /media/cdrom/boot / # Installing GRUB grub-install --recheck --boot-directory=/boot /dev/sda
我用下面的命令创build一个快速的bash脚本
# cat create_menuentry.sh isofile="/iso/alpine-virt-3.6.2-x86_64.iso" echo " default=menu_entry_1 timeout=30 boot=/dev/sda GRUB_TERMINAL=console menuentry \"Test Menu Entry" --id menu_entry_1 { loopback loop (hd0,2)$isofile linux (hd0,1)/vmlinuz-virthardened iso-scan/filename=$isofile alpine_dev=sda2:ext4 modules=loop,squashfs,sd-mod,ext4 BOOT_IMAGE=/vmlinuz-virthardened initrd (hd0,1)/initramfs-virthardened } " > /boot/grub/grub.conf
请注意
(hd0,1) is /dev/sda1 - /boot (hd0,2) is /dev/sda2 - /mnt/storage
安装grub后,在控制台模式下启动。
grub> ls (hd0) (hd0, msdos1) (hd1, msdos2)` configfile /grub/grub.conf
这将显示菜单,但试图启动grub停止/sbin/init不存在。
请检查这个video的全面演练。 https://youtu.be/G9BSffq-jmE
如果我在虚拟机中插入ISO,并从CD启动,我可以自动启动我的系统。 根密码和motd是我在我的安装中设置的。 https://youtu.be/cqKun7qoJxQ
想法是非常感激。 谢谢。