我想创建一个恢复闪存驱动器。我有8 GB闪存驱动器[Kingston data traveller]。我还具有a> Ubuntu 13.10 b>引导修复盘c> AVG Rescue CD所需的.iso文件
我希望创建4个分区(每个可启动的.iso分别创建3个分区,并为数据存储创建一个分区。此外,我希望有一种方法可以选择每次从USB启动时要启动哪个操作系统。
那么,有没有办法在USB以及其他三个现场发行版上安装GRUB?以及如何创建这样的设置?
我想创建一个恢复闪存驱动器。我有8 GB闪存驱动器[Kingston data traveller]。我还具有a> Ubuntu 13.10 b>引导修复盘c> AVG Rescue CD所需的.iso文件
我希望创建4个分区(每个可启动的.iso分别创建3个分区,并为数据存储创建一个分区。此外,我希望有一种方法可以选择每次从USB启动时要启动哪个操作系统。
那么,有没有办法在USB以及其他三个现场发行版上安装GRUB?以及如何创建这样的设置?
Answers:
我没有使用MultiSystem,但是我看到了推荐的一种以及其他几种。MultiBootUSB-从Pendrive /闪存驱动器/带有grub2的USB磁盘安装并引导多个Linux
https://help.ubuntu.com/community/InstallAndBootMultipleLinuxFromPendriveFlashDriveUSBDisk
有关多启动版本,请参见yumi
但是,为了更好地理解它,您可以将grub2安装到闪存驱动器,使用启动节创建自己的grub.cfg,然后将ISO复制到闪存驱动器。类似于此链接的硬盘安装。
https://help.ubuntu.com/community/Grub2/ISOBoot
要将grub2安装到闪存驱动器中,默认的/ media现在根据版本而有所不同。新版本将用户添加到路径。还假定sdb为闪存驱动器,如果不确定,请确认正确。标签分区-如果标签是grub2并安装:
sudo grub-install --root-directory=/media/grub2 /dev/sdb
较新的版本也会自动以$ USER名称挂载,该标签为MC4GB,带有用户fred
sudo grub-install --root-directory=/media/fred/MC4GB /dev/sdb
在创建grub.cfg时,引导驱动器始终为hd0,因此,如果直接从闪存驱动器设置引导为hd0,Y,其中Y通常是分区1。
loopback loop (hd0,1)$isofile
否则,示例如下所示:
https://help.ubuntu.com/community/Grub2/ISOBoot/Examples
MC4GB中我的grub.cfg中的第一个条目
set default=0
set menu_color_normal=cyan/blue
set menu_color_highlight=white/blue
set gfxpayload=800x600
menuentry "Ubuntu 13.04" {
set isofile="/boot/iso/ubuntu-13.04-desktop-amd64.iso"
loopback loop (hd0,1)$isofile
linux (loop)/casper/vmlinuz.efi boot=casper iso-scan/filename=$isofile nomodeset
initrd (loop)/casper/initrd.lz
}
menuentry " " {
set root=
}
注意我将nmodedia添加到所有条目中,因为我有nVidia。同样,新版本现在也将vmlinuz.efi用于BIOS和UEFI引导。旧版本只是vmlinuz。其他发行版可能需要不同的引导参数。在上述示例线程或安装中查找示例,并检查ISO的引导参数是什么。
grub.cfg
文件被放置在USB驱动器内?它是否应该在根目录中,作为boot/
目录的替代?
对我来说,创建Multi-OS live USB的最佳工具是MultiSystem,可以在此处找到。有很多的操作系统,可以通过安装多系统。您可以使用该项目的官方仓库轻松地将其安装在Ubuntu上:
sudo apt-add-repository 'deb http://liveusb.info/multisystem/depot all main'
wget -q -O - http://liveusb.info/multisystem/depot/multisystem.asc | sudo apt-key add -
sudo apt-get update
sudo apt-get install multisystem
尽管该网站是法语网站,但可以通过右列中的“ Google翻译”功能强大的下拉列表框(或直接通过Google Chrome浏览器)将其令人满意地翻译为英语,但您也可以在此处使用分步说明。
对于您的设置,在启动MultiSystem之前,可以首先使用GParted创建2个分区:
用于MultiSystem的4GB FAT32分区,包括ISO文件等,以及用于存储Ubuntu设置等的空白持久文件,可以稍后在MultiSystem中创建。
用于数据的4GB NTFS分区。
W: GPG error: http://liveusb.info/multisystem/depot all Release: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 4E940D7FDD7FB8CC .... E: The repository 'http://liveusb.info/multisystem/depot all Release' is not signed. .... N: Updating from such a repository can't be done securely, and is therefore disabled by default.
这是用于在多重引导闪存驱动器的第二个分区上引导iso的菜单项(如sudodus向我建议的那样)。
menuentry "ubuntu-12.04-desktop-i386 Partition 2" {
set isofile="/ubuntu-12.04-desktop-i386.iso"
set root='(/dev/sda,msdos2)'
search --no-floppy --fs-uuid --set=root XXXX-XXXX
loopback loop ($root)$isofile
linux (loop)/casper/vmlinuz boot=casper iso-scan/filename=$isofile noprompt noeject
initrd (loop)/casper/initrd.lz
}
将您的第二,第三和第四分区的UUID替换为XXXX-XXXX。Boot-repair磁盘和AVG Rescue CD的菜单项可能与Ubuntu的格式不同。MultiBootUSB脚本应告诉您如何编写这些脚本。
自从首次提出此问题以来,闪存驱动器的大小已经增加。现在使用完全系统安装来制作多启动驱动器是非常合理的。
完全安装比持久性安装更稳定和安全,但安装速度不那么快。由于不需要固定大小的casper-rw文件或分区,它们更善于利用磁盘空间。它们在安装操作系统方面用处不大,因为安装引导ISO的操作系统效果很好。
使用GParted在大型闪存驱动器上创建GPT分区表。
根据您的操作系统创建尽可能多的ext4分区。每个文件的大小应约为8GB。
在UEFI模式下启动Live驱动器,然后插入大目标驱动器。
在分区中选择“其他”。
为/选择sdc1。
将引导程序安装到USB驱动器的根目录。
保留所有其他分区的格式框未选中。
如果需要,选择安装主目录加密,全盘加密对我的闪存驱动器不起作用。
对sdc2,sdc3等重复此操作,然后选择要安装的OS。
在最后一次安装后,启动闪存驱动器并执行update-grub。这会将所有操作系统添加到grub.cfg
您可以为希望进行实时引导或持久引导的任何ISO保留一个分区,以制作安装程序闪存驱动器,然后使用grub.cfg循环挂载这些驱动器。