我一直在阅读有关如何从linux创建Windows 7安装USB介质(安装Windows 7)的一些网页和帖子(在这里和在其他论坛中)。
我在TechNet中询问了此问题,并且得到了有关如何执行此操作的一般信息的回复:
“我个人对linux并不很熟悉,但是基本上您需要做的所有事情……以任何方式进行的工作如下:
格式化usb闪存驱动器,fat32或ntfs会创建一个足以容纳Windows安装的分区(给64GB分配3GB的空间,为32bit分配2.5GB的空间),并将该分区标记为活动/可启动。由于可以使用Windows完成此操作,但也可以使用gparted之类的工具完成此操作,因此您应该能够在debian中执行相同的操作。
创建该分区后,请安装下载的iso,然后将所有文件从根目录复制到USB闪存驱动器的根目录中。
这就是全部。”
我在各个地方发现了另一种方法,该方法几乎与TechNet中提到的方法相同。但是,此方法似乎缺少一个步骤,并且/或者我不确定该步骤是否必要。
dd
并不总是有效。基本上,缺少的步骤是将适当的引导扇区写入USB记忆棒,这可以在Linux中使用来完成ms-sys
。这适用于的零售版Windows 7
。
这是完整的概要,请参阅serverfault问题以获取更多详细信息:
- 安装ms-sys。
- 检查您的USB媒体分配了什么设备(
fdisk -l
),在这里我们将假定是/dev/sdb
。 删除所有分区,创建一个占用所有空间的新分区,将类型设置为NTFS,并将其设置为可启动:
cfdisk /dev/sdb
创建NTFS文件系统:
mkfs.ntfs -f /dev/sdb1
挂载ISO和USB介质:
mount -o loop win7.iso /mnt/iso
mount /dev/sdb1 /mnt/usb
复制所有文件:
# cp -r /mnt/iso/* /mnt/usb/
在USB记忆棒上写入Windows 7 MBR:
# ms-sys -7 /dev/sdb
确保写操作已刷新(请耐心等待几分钟):
# sync
打开gparted,选择USB驱动器,右键单击文件系统,然后单击“管理标志”。选中“启动”复选框,然后关闭
...您就完成了。
问题
如果不做最后一步,usb是否应该工作
# ms-sys -7 /dev/sdb
?还是让USB可启动?是否仅将分区标记为可引导?使用rsync而不是更好
cp -r
吗?是否所有步骤都必须这样做
root
?如果没有,我是否需要将chmod
所有文件664
以及chown
用于挂载USB设备和ISO映像的所有目录?我想将数据复制为root
这样更容易,并且不会影响数据。有没有人尝试过这种方法或类似的用iso复制iso的方法
dd
?