如何在Ubuntu上使用Hiren's Boot CD ISO为Windows创建可引导的USB?

尝试在USB上创建Hiren's BootCD。不需要其他任何东西,比如Ubuntu和Haren的双启动或者Window's和Haren的双启动。我能找到的所有程序要么告诉我如何在USB上创建Ubuntu引导,要么告诉我如何在Windows上创建。但是由于我要修复的是我的Windows电脑,所以我需要一个替代方案。请帮忙吗?

UNetbootin是完成这个任务的完美工具(稍微调整一下)。请查看此答案:http://askubuntu.com/a/582853/351841。 - shivams
9个回答

Unetbootin可以制作可启动的USB,但是要使最新版本的Hiren's CD正常工作,必须对菜单进行小修复
  • 打开软件中心并安装UNetbootin

  • 使用Diskimage选项创建可启动的USB,并选择下载的ISO文件。

  • 创建完USB后,在Nautilus中挂载它(只需点击USB驱动器图标),进入HBCD文件夹,将isolinux.cfg文件重命名为syslinux.cfg将其复制到USB的根目录,覆盖现有文件。将syslinux.cfg的第一行从DEFAULT /HBCD/Boot/menu.c32改为DEFAULT menu.c32

现在USB启动和菜单都正常工作 :)

这是2015年行之有效的答案。应该投票支持。 - shivams
有时候它不起作用...我得到相同的“无法加载menu.c32”的错误信息... - decvalts
在最新版本中,已经没有HBCD文件夹或isolinux.cfq了。可能是因为现在它是为UEFI设计的。 - anon

打开软件中心并安装UNetbootin 。然后你只需运行它,剩下的就会自己解释。

1按照这种方法,当我从USB启动时(使用Hiren的BootCD 15.2和UNetbootin v. 603-1),我只收到一个错误消息“无法加载COM32文件menu.c32”。 - Wonko
UNetbootin的解决方案需要进行一点微调,具体方法请参考这里:http://askubuntu.com/a/582853/351841 - shivams

以下方法都不起作用。 尽管你会得到一个可启动的USB,但它无法从Grub菜单中加载任何内容。这对于Hiren's Boot CD的“修订版”(带有迷你版Windows XP)尤其如此。
以下是正确的步骤:
将USB驱动器插入计算机并启动Ubuntu的分区管理器。将驱动器格式化为FAT32,主分区,并给它一个好的标签。 在进行操作时,请注意设备的挂载位置(例如/dev/sdb)。
完成后,关闭分区管理器并启动终端。
sudo grub-install /dev/device location

在这里,'设备位置'是您之前记录的USB驱动器的位置。

现在,在一个新文件夹中放置Hirens Boot CD iso文件。 右击文件,选择'解压到此处' 当完成后,删除iso文件并将其余的所有内容复制到USB驱动器的根目录。

现在,驱动器上应该有一个名为HBCD的文件夹,以及4个小文件。 现在打开名为HBCD的文件夹,并将文件'grldr'和'menu.lst'复制到驱动器的根目录。请确保复制它们,不要剪切

就这样,你完成了。 现在它应该作为可启动的USB驱动器工作,并且可以在MS Windows环境中使用。


这怎么能算作答呢?我们想知道什么有效,而不是什么无效。 - Warren Hill
我按照步骤尝试了,从USB启动盘启动时出现以下错误:没有找到设备:xxxxxxxxxxxxxxxx grub rescue> - Montaro
3grub-install: 警告:文件系统 fat' 不支持嵌入。然后,grub-install: 错误:无法进行嵌入,但这对于跨磁盘安装是必需的。叹气 - Yanick Rochon
@YanickRochon:我也遇到了同样的错误,无论是尝试将设备命名为/dev/sdd(USB驱动器本身)还是/dev/sdd1(它的第一个分区)。 - MestreLion
请注意,在基于UEFI的机器上,您可能需要安装grub-pc-bin软件包(不是 grub-pc)以使grub-install成功。 - Matteo Italia

好的,我找到了一个解决方案在这里

这种方法使用grub2,所以如果你想要做一个多启动的USB非常方便

  1. 在USB驱动器上安装grub 2(grub-install --force --no-floppy --boot-directory=[PATH_TO_USB] /dev/sd[X]
  2. 在USB上提取Hiren iso文件(你应该在USB的根目录下有一个/HBCD文件夹)
  3. 将grub.exe复制到USB上(可以在hbcd\dos\dos.gz中找到,位于.img文件内部)
  4. 将hbcd文件夹中的menu.lst复制到USB驱动器的根目录下
  5. 在USB上的grub.cfg中添加以下菜单项:

这是菜单项:

menuentry "HBCD" {  
    linux16 /grub.exe --config-file="find --set-root /HBCD/menu.lst; configfile /HBCD/menu.lst"  
}

一旦完成,您可以重新启动或使用qemu进行测试:
qemu-system-x86_64 -hda /dev/sd[X]


把Hiren的ISO文件复制到你的硬盘里。插入你的USB闪存驱动器或者其他设备,下载Rufus(链接1:http://rufus.akeo.ie/),然后开始将Hiren的ISO文件烧录到USB上。 一旦成功完成,你需要重启电脑并检查BIOS配置,确保启动顺序中硬盘是最后一个。 同时,重新启动电脑时请确保已经烧录了Hiren的ISO文件并插入USB,不要让电脑从其他设备启动。 希望对你有所帮助(顺便说一下,我就在30分钟前做过这个...)祝好!

1Rufus适用于Windows操作系统...(.exe) - user56673


1WINE 不是一个模拟器。 - user6039980

另一种在这种情况下拯救了我并且应该在这里提到的不寻常的方法是,GRUB2可以直接引导ISO映像!Ubuntu帮助文件对此进行了描述:
1. 安装grml-rescueboot。 2. 将ISO文件放置在/boot/grml/目录下。 3. 运行sudo update-grub。
这将自动为该目录中的每个ISO创建一个引导项,使用回环和链式加载。
只要您有任何类型的工作Linux分区,并且安装了GRUB2(这更容易和可靠实现),您就可以引导任何ISO,即使它是有问题的。
这样甚至可以使普通的Linux用户无需任何外部介质。(尽管回环也可以从其他分区/媒体引导ISO,如果您愿意不使用grml-rescueboot并手动配置GRUB2。)

来源:https://help.ubuntu.com/community/Grub2/ISOBoot#grml-rescueboot - anon

Grub 2 - 教程
使用FAT32格式化您的USB闪存驱动器,并且:
  1. 打开终端并输入 sudo su // 或者 su 以获取 root 权限

  2. 输入 fdisk -l (并记下你的 USB 设备是哪个)

  3. 输入 mkdir /mnt/USB && mount /dev/sdx1 /mnt/USB(将 x 替换为你实际的 USB 设备)

  4. 输入 grub-install --force --removable --boot-directory=/mnt/USB/boot /dev/sdx(将 x 替换为你实际的 USB 设备)

  5. 输入 cd /mnt/USB/boot/grub

  6. 创建一个文件 /mnt/USB/boot/grub/grub.cfg,内容如下:

    set default=0
    
    menuentry "HBCD" {  
        linux16 /grub.exe --config-file="find --set-root /HBCD/menu.lst; configfile /HBCD/menu.lst"  
    }
    
  7. 将 hirens.iso 的内容复制到你的 USB-Stick 的根目录中(例如 /mnt/USB/)

你好,汤姆。

grub.exe源文件未指定。请参考以下解决方案:复制grub.exe(可以在hbcd\dos\dos.gz中找到,位于.img文件内部)。 - iFred
现代Hirens中没有名为HBCD的目录。 - anon

你可以使用Ubuntu上的dd命令从任何(可引导).ISO镜像制作一个可引导的USB。
dd if=./someisofile.iso of=/dev/sdb

然而,我想警告你,dd 是一个非常危险的命令,只有在你完全理解其参数的含义,特别是 of 参数时才应继续操作。
如果你在谷歌上搜索类似 "dd iso usb" 的内容,你会找到相当多的教程,例如来自 Fedora 的 这个教程,Linux Mint 的 这个教程,或者 ArchLinux 的 这个教程

6这仅适用于"混合"ISO。对于具有标准ISO9660引导扇区的任何旧可启动ISO都不起作用。请注意,Hiren的网站本身表示您需要安装Grub4DOS才能从USB启动。 - ish