用Grub启动ISO镜像

用Grub启动ISO镜像

如果你想要使用多个Linux发行版,你没有那么多的选择。你要么安装到你的物理机或虚拟机中,要么以live模式从ISO文件启动。第二个选择,对硬盘空间需求较小,只是有点麻烦,因为你需要将ISO文件写入到U盘或CD/DVD中来启动。不过,这里还有另外一个可选的折中方案:把ISO镜像放在硬盘中,然后以live模式来启动。该方案比完全安装更省空间,而且功能也完备,这对于缓慢的虚拟机而言是个不错的替代方案。下面我将介绍怎样使用流行的Grub启动加载器来实现该方案。

很明显,你将需要使用到Grub,这是几乎所有现代Linux发行版都使用的。你也需要你所想用的Linux版本的ISO文件,将它下载到本地磁盘。最后,你需要知道启动分区在哪里,并怎样在Grub中描述。对于此,请使用以下命令:


  1. # fdisk -l

带有‘*’的就是启动分区。对于我,就是/dev/sda1,用Grub语言描述就是(hd0,1)。

作为参考,sda2就是(hd0,2),sdb1就是(hd1,1),以此类推。(你明白了吧。)

我们需要编辑什么?

首先,打开/etc/default/grub并检查以下行:


  1. #GRUB_HIDDEN_TIMEOUT=0

需要在此行前添加‘#’进行注释。

保存,然后打开/etc/grub.d/40_custom。

在该文件中,你将添加启动到ISO的参数。结构如下:


  1. menuentry "[Entry's title in the grub screen]" {
  2. set isofile="[path to ISO file]"
  3. loopback loop [boot partition in Grub language]$isofile
  4. [some specific] arguments
  5. }

例如,如果你想要从ISO文件启动Ubuntu,那么你就是想要添加如下行到40_custom文件:


  1. menuentry "Ubuntu 14.04 (LTS) Live Desktop amd64" {
  2. set isofile="/boot/ubuntu-14.04-desktop-amd64.iso"
  3. loopback loop (hd0,1)$isofile
  4. linux (loop)/casper/vmlinuz.efi boot=casper iso-scan/filename=${isofile} quiet splash
  5. initrd (loop)/casper/initrd.lz
  6. }

如果你想要启动Gparted:


  1. menuentry "GParted Live amd64" {
  2. set isofile="/boot/gparted-live-0.18.0-2-amd64.iso"
  3. loopback loop (hd0,1)$isofile
  4. loopback loop $isofile
  5. linux (loop)/live/vmlinuz boot=live config union=aufs noswap noprompt ip=frommedia toram=filesystem.squashfs findiso=${isofile}
  6. initrd (loop)/live/initrd.img
  7. }

或者甚至是Fedora:


  1. menuentry "Fedora 20 Live Desktop x86_64" {
  2. set isofile="/boot/Fedora-Live-Desktop-x86_64-20-1.iso"
  3. loopback loop (hd0,1)$isofile
  4. loopback loop $isofile
  5. linux (loop)/isolinux/vmlinuz0 root=live:CDLABEL=Fedora-Live-Desktop-x86_64-20-1 rootfstype=auto ro rd.live.image quiet rhgb rd.luks=0 rd.md=0 rd.dm=0 iso-scan/filename=${isofile}
  6. initrd (loop)/isolinux/initrd0.img
  7. }

注意,参数可根据发行版进行修改。幸运的是,有许多地方你可以查阅到。我喜欢这个发行版,但是还有很多其它的发行版你可以启动。同时,请注意你放置ISO文件的地方。如果你的家目录被加密或者无法被访问到,你可能更喜欢将这些文件放到像例子中的启动分区。但是,请首先确保启动分区有足够的空间。

最后,不要忘了保存40_custom文件并使用以下命令来更新grub:


  1. # sudo update-grub

以便在下次启动时看到修改。

接下来做什么?

想要更多东西?好吧,那就修改下参数来玩玩。你可以启动一个ISO文件,并让它持续做一些事情。例如,如果你是个彻头彻尾的妄想症患者,想要有个可以快速清除硬盘的选项,那么可以使用DBAN来进行一些设置。现在,真的要当心啊,因为此设置会清除你的硬盘,而且在启动时也没有恢复选项:


  1. menuentry "Darik's Boot and Nuke" {
  2. set isofile="/boot/dban.iso"
  3. loopback loop (hd0,1)$isofile
  4. linux (loop)/dban.bzi nuke="dwipe" silent
  5. }

另外一个选择


  1. menuentry "Darik's Boot and Nuke" {
  2. set isofile="/boot/dban.iso"
  3. loopback loop (hd0,1)$isofile
  4. linux (loop)/dban.bzi
  5. }

可以显示DBAN选项,让你选择清除驱动器。当心,因为它仍然十分危险。

小结一下,对于ISO文件和Grub有很多事情可做:从快速live会话到一键毁灭,都可以满足你。之后,你也可以试试启动一些针对隐私方面的发行版,如Tails

你认为从Grub启动一个ISO这个主意怎样?这是不是你想要做的呢?为什么呢?请在下面留言。

原文发布时间:2015-01-15

本文来自云栖合作伙伴“linux中国”

时间: 2024-09-18 04:41:53

用Grub启动ISO镜像的相关文章

直接从硬盘启动Linux ISO镜像

直接从硬盘启动Linux ISO镜像 Linux的GRUB2启动加载器可以直接从硬盘启动Linux ISO文件,可以启动Live CD的 ISO,而不用烧录到光盘来安装Linux到一个硬盘分区,或从USB驱动启动. 我们在Ubuntu 14.04上实施了该过程--Ubuntu及基于Ubuntu的Linux版本对此支持良好.其它Linux发行版上的工作原理也类似. 获取Linux ISO文件 这一密技需要你的硬盘驱动器上安装有Linux系统,你的计算机必须使用GRUB2启动加载器,这是大多数Lin

直接从硬盘启动Linux ISO镜像的图文教程

  Linux的GRUB2启动加载器可以直接从硬盘启动Linux ISO文件,可以启动Live CD的 ISO,而不用烧录到光盘来安装Linux到一个硬盘分区,或从USB驱动启动. 我们在Ubuntu 14.04上实施了该过程--Ubuntu及基于Ubuntu的Linux版本对此支持良好.其它Linux发行版上的工作原理也类似. 获取Linux ISO文件 这一密技需要你的硬盘驱动器上安装有Linux系统,你的计算机必须使用GRUB2启动加载器,这是大多数Linux系统的标准启动加载器.不好意思

在Linux系统下用DD命令制作ISO镜像U盘启动盘

  我的当前的系统是Linux(版本Xubuntu),之前是通过软通牒(UltraISO)在Windows系统下制作了这个Linux系统的U盘启动盘,然而在Linux系统下通过系统本身集成的DD命令,来实现在Linux系统下制作Linux系统的ISO系统U盘启动盘,一行简单的代码就可以搞定.可以顺利给没有系统或需要重装系统的电脑,通过这个制作的U盘来安装ISO镜像系统. 需要的工具:Linux系统.U盘.ISO镜像文件. 首先在Linux系统中打开终端,使用DD命令,格式如下: sudo dd

如何用ISO镜像文件引导Windows系统

对于那些未安装软驱的朋友来说,大多数都会选择虚拟软驱,但可惜的是虚拟软驱的容量毕竟太小,这样在功能上就不得不受到一些限制. ISOEMU是一款比较有趣的软件,安装后可以借助硬盘上的ISO镜像文件引导系统,这样在安装Linux时就不用刻盘了.其原理是利用GRUP引导硬盘上的ISO文件,当然仍是将这个ISO文件创建为虚拟光驱用来引导系统,支持FAT32.NTFS两种文件系统,不过只能支持纯DOS下的访问,即基于INT13h的磁盘访问. ISOEMU程序包中各个文件的作用 ISOEMU完全免费,需要的

win7原版系统iso镜像安装方法

  win7原版系统iso镜像安装方法 推荐二:萝卜家园ghost win7 32位旗舰官方原版 推荐理由:安装系统过程只需5-8分钟,适合新旧各种机型,集成常见硬件驱动,智能识别+预解压技术,绝大多数硬件可以快速自动安装相应的驱动.自带WinPE微型操作系统和常用分区工具.DOS工具,装机备份维护轻松无忧,集成最常用的办公,娱乐,维护和美化工具,常用软件一站到位. win7原版iso u盘安装步骤如下: 安装注意事项:在安装系统前,请注意备份C盘上的重要数据,系统重装会重置C盘,建议提前转移个

如何修改ISO镜像文件制作有自己的GHOST安装盘

  一. 下载一个ISO系统镜像,我们大多数用的是深度的,用md5验证一下文件的完整性. 二. 用WinISO打开下载ISO镜像,将WINXPSP2.GHO系统映像提取出来,放到新建文件夹里. 三. 用Ghost镜像浏览器(可以从ISO镜像里提取)打开WINXPSP3.GHO系统映像. 1. 打开C:WINDOWSWebWallpaper,将里边的Bliss图片替换成自己想要的图片.这个就是系统的默认桌面图片,要注意一下所用图片的象素为800*600格式为BMP . 2. 打开C:WINDOWS

借助ISO镜像文件引导系统的方法_WindowsXP

对于那些未安装软驱的朋友来说,大多数都会选择虚拟软驱,但可惜的是虚拟软驱的容量毕竟太小,这样在功能上就不得不受到一些限制. ISOEMU是一款比较有趣的软件,安装后可以借助硬盘上的ISO镜像文件引导系统,这样在安装Linux时就不用刻盘了.其原理是利用GRUP引导硬盘上的ISO文件,当然仍是将这个ISO文件创建为虚拟光驱用来引导系统,支持FAT32.NTFS两种文件系统,不过只能支持纯DOS下的访问,即基于INT13h的磁盘访问. ISOEMU程序包中各个文件的作用 ISOEMU完全免费,需要的

在Windows 7中直接刻录ISO镜像文件

Windows操作系统在以前的版本中总是不可避免缺少一些常用的功能,比如说 是光盘刻录,只要是经常刻录光盘的PC用户都知道,想要刻录ISO镜像文件必须 要先找一款好用又强大的刻录软件,Nero,Imgburn,CDBurner XP, InfraRecorder...都是一些大家常用的刻录工具.不过这次Windows 7完全不同 了,不仅拥有美观的界面,同时也新加入很多友好强大的功能,也许这也是为什 么Windows 7从一亮相就引起全球用户不断关注的原因吧! 微软已经意识到了Windows功能

Windows7怎么刻录ISO镜像

我们经常使用刻录软件来刻录iso镜像文件,其实并不需要这么麻烦,在win7系统中内置了一个专门的刻录小工具,下面我们就一起来看一下吧. 步骤方法 首先找到一个ISO镜像文件 双击ISO文件,会弹出刻录机选项,你可以选择你需要的刻录机 你可以选择刻录后验证光盘,此选项也可不选. 然后点击刻录,开始刻盘 进度条到头之后,光盘就刻录完成了,看,就这么简单 聪明的你,学会了么?