我想将可引导CD映像的内容(例如Ubuntu Surre Remix)安装到硬盘驱动器的分区上。
因此,我可以在Grub中有一个条目来启动该磁盘的内容,http://www.linuxquestions.org/questions/linux-general-1/boot-iso-image-from-hard-disk-294744/,详细介绍了用于Knoppix CD的类似过程。有没有办法对Ubuntu磁盘执行此操作。
我想将可引导CD映像的内容(例如Ubuntu Surre Remix)安装到硬盘驱动器的分区上。
因此,我可以在Grub中有一个条目来启动该磁盘的内容,http://www.linuxquestions.org/questions/linux-general-1/boot-iso-image-from-hard-disk-294744/,详细介绍了用于Knoppix CD的类似过程。有没有办法对Ubuntu磁盘执行此操作。
Answers:
尽管我相当怀疑是否可以将某些内容装载到分区上,但是有一个ubuntuforums.org线程解释了如何使用Grub2引导ISO映像。
http://ubuntuforums.org/showthread.php?t=1549847
基本上,您可以/etc/grub.d/40_custom
通过复制/粘贴帖子#1中提供的示例之一来进行编辑(版本名称/ ISO可能已过时),然后根据您的ISO位置和分区布局修改条目,然后运行update-grub
。
这是条目的示例(对于版本14.04):
menuentry 'ISO Trusty ' {
isofile=ubuntu-14.04.1-desktop-amd64.iso
loopback loop (hd0,1)/iso/$isofile
linux (loop)/casper/vmlinuz boot=casper iso-scan/filename=/iso/$isofile noprompt noeject
initrd (loop)/casper/initrd.lz
}
对于那些想要细节的人..这里有点帮助别人
1-首先,我创建了分区以存储我在20Gb上确定的.iso文件,调整了原始分区的大小,并使用gnome-disk-utility 创建了一个新分区,然后使用“获取文件系统的所有权”复选框将其格式化为ultult格式”这解决了将文件放在驱动器上的问题,因为gparted使分区归root拥有。
还要记下该分区的设备名称,您需要使用它来告诉grub分区在哪里。
2-接下来,我将.iso文件放入现在应该挂载在桌面上的驱动器中,
3-然后我遵循了编辑步骤/etc/grub.d/40_custom
(请注意,您需要以root用户身份进行编辑,或使用sudo),对于系统救援cd,提供的代码为
menuentry "SystemRescue CD ISO" {
set isofile="/boot/iso/systemrescuecd-x86-1.5.8.iso"
loopback loop (hd0,1)$isofile
linux (loop)/isolinux/rescue64 setkmap=us isoloop=/systemrescuecd-x86-1.5.8.iso
initrd (loop)/isolinux/initram.igz
}
但这需要根据您的配置进行更改,请注意,硬盘驱动器信息需要更改,因此(hd0,1)
它表示/ dev / sda1 0为sda,而1为分区,因此对于我的分区,我将(hd0,3)
其更改为,因为sda3。我也注意到它rescue64
实际上是64位版本名称,因此该代码在我的32位系统上不起作用,以解决此更改rescuecd
,并将所有.iso名称更改为与您的iso文件匹配,我的是称为“ sysrcd.iso”,以便为我们提供匹配设置的自定义条目。
menuentry "SystemRescue CD ISO" {
set isofile="/sysrcd.iso"
loopback loop (hd0,3)$isofile
linux (loop)/isolinux/rescuecd setkmap=us isoloop=/sysrcd.iso
initrd (loop)/isolinux/initram.igz
}
更改文件以使其运行update-grub
后,请重新引导并键入grub以找到自定义的iso引导(请注意,这是grub 2)。非常感谢mikewhatever找到了这正是我开始需要的东西。这将为我节省一堆正在刻录的活动磁盘。