winusb 给我错误“无法将文件移动到其自身的子目录”。我该如何调试和修复?

winusb 给我错误“无法将文件移动到其自身的子目录”。我该如何调试和修复?
$ sudo winusb --install win7-pro-x64.iso /dev/sde1
Mounting...
mount: block device /media/Ubuntu-Data/ISOs/win7-pro-x64.iso is write-protected, mounting read-only
Copying...
mv: cannot move ‘/media/winusb_target_1415893348_22764/BOOT’ to a subdirectory of itself, ‘/media/winusb_target_1415893348_22764/boot/BOOT’
Error occured !
Syncing...
Cleaning...
Umounting and removing '/media/winusb_iso_1415893348_22764'...
Umounting and removing '/media/winusb_target_1415893348_22764'...

以上就是我的闪存驱动器所发生的情况。

我已根据以下说明将驱动器格式化为 Fat16:http://encoded.eternicode.com/creating-a-uefi-bootable-win7-usb-stick-from-linux

winusb 有问题吗?

注意:我有一个可用于此 iso 的合法密钥,但我要安装它的笔记本电脑没有 CD 驱动器。

我正在使用 Ubuntu 14.04 我的笔记本电脑有 UEFI,也有 Ubuntu 14.04 Windows 将运行在它自己的 SSD 上(我的笔记本电脑有两个)

更新:Fat32 分区也会出现这种情况

答案1

我遇到了同样的问题。我查看了/usr/bin/winusb脚本并找到了以下几行:

#boot dir should be lower case

if [ -d "$partitionMountPath/BOOT" ]; then mv "$partitionMountPath/BOOT" "$partitionMountPath/boot"; fi

因此它想将“BOOT”重命名为“boot”,但 FAT16 和 FAT32 不区分大小写,因此它们是同一个目录。

我已通过将行更改为以下内容在本地修复了此问题:

if [ -d "$partitionMountPath/BOOT" ]; then mv "$partitionMountPath/BOOT" "$partitionMountPath/boot_" && mv "$partitionMountPath/boot_" "$partitionMountPath/boot"; fi

相关内容