小智 182
好的,在尝试了这里提到的所有方法都失败后,我终于让它起作用了。基本上,缺少的步骤是将正确的引导扇区写入 USB 记忆棒,这可以从 Linux 使用ms-sys或lilo -M. 这适用于 Windows 7 零售版。
这是完整的纲要:
安装 ms-sys - 如果它不在您的存储库中,请在此处获取。或者,确保 lilo 已安装(但不要在本地机器上运行 liloconfig 步骤,例如,如果那里安装了 Grub!)
检查分配给您的 USB 媒体的设备 - 这里我们假设它是/dev/sdb。删除所有分区,创建一个占用所有空间的新分区,将类型设置为NTFS(7),并记住将其设置为可引导:
# cfdisk /dev/sdb 或 fdisk /dev/sdb (分区类型 7和可引导标志)
创建一个 NTFS 文件系统:
# mkfs.ntfs -f /dev/sdb1
在 U 盘上写入 Windows 7 MBR(也适用于 Windows 8),这里有多个选项:
# ms-sys -7 /dev/sdbsudo lilo -M /dev/sdb mbr(信息)sudo dd if=/usr/lib/syslinux/mbr/mbr.bin of=/dev/sdb挂载 ISO 和 USB 媒体:
# mount -o loop win7.iso /mnt/iso # 挂载 /dev/sdb1 /mnt/usb
复制所有文件:
# cp -r /mnt/iso/* /mnt/usb/ ...或使用系统的标准 GUI 文件浏览器
调用sync以确保所有文件都已写入。
打开gparted,选择U盘,右击文件系统,然后点击“Manage Flags”。选中引导复选框,然后关闭。
......你就完成了。
毕竟,您可能想要备份您的 USB 媒体以供进一步安装并删除 ISO 文件...只需使用 dd:
# dd if=/dev/sdb of=win7.img
请注意,这会复制整个设备!— 通常(远)比复制到它的文件大。所以我建议
# dd count=[(size of the ISO file in MB plus some extra MB for boot block) divided by default dd blocksize] if=/dev/sdb of=win7.img
Run Code Online (Sandbox Code Playgroud)
因此,例如使用 8 M 额外字节:
# dd count=$(((`stat -c '%s' win7.iso` + 8*1024*1024) / 512)) if=/dev/sdb of=win7.img status=progress
Run Code Online (Sandbox Code Playgroud)
与往常一样,在使用dd.
上面介绍的创建可启动 USB 的方法也适用于 Win10 安装程序 iso。我尝试运行 Ubuntu 16.04,将 Win10_1703_SingleLang_English_x64.iso(大小为 4,241,291,264 字节)复制到 8 GB USB 记忆棒上 - 仅在非 UEFI [非安全] 启动中。执行后 dd 报告:8300156+0 记录中的 8300156+0 记录已复制 4249679872 字节(4.2 GB,4.0 GiB),412.807 s,10.3 MB/s
下次您想将 Windows 7 安装程序放到 USB 上时,请反转 if/of。
Tru*_*ity 13
如果您的 PC 支持 UEFI,并且通过扩展支持 GPT 磁盘,您可以使用 dd 完成此操作。
打开一个终端,你需要找到你的随身碟是什么设备。如果您安装了驱动器,您可以通过键入“mount”并查看它的条目来找到设备的名称。类似于以下内容:
/dev/sdb1 on /media/USBDISK type vfat (rw,nosuid,nodev,uhelper=hal,uid=1000,utf8,shortname=mixed)
Run Code Online (Sandbox Code Playgroud)
在这种情况下,/dev/sdb 的第一部分安装在 /media/USBDISK。打开 root shell 并卸载驱动器。
umount /dev/sdb1
Run Code Online (Sandbox Code Playgroud)
转到您的 ISO 存储在 root shell 中的目录并键入以下内容:(将 windows7.iso 替换为调用的任何 ISO,并将 /dev/sdb 替换为您的 U 盘的设备 ID)。
dd if=windows7.iso of=/dev/sdb
Run Code Online (Sandbox Code Playgroud)
如果您的主板支持从 Pendrive 启动,它应该能够从它启动。这将在 Pendrive 上安装安装程序,而不是操作系统本身。
小智 5
PCambell 的建议很好,但您还需要清除 MBR,Linux 等效项如下
我试过了,它奏效了(我不确定为什么 dd 方法失败,但似乎分区必须是 ntfs?):