为什么“ dd”对于创建可启动USB不起作用?


36

最近,我想创建Linux Mint的可启动USB。我发现关于“ dd”命令是否可用于创建可引导USB的建议/经验存在很多矛盾。我决定下载一个ISO并尝试。尽管dd确实将映像放在USB记忆棒上,但它不是可引导的。所以我的问题是,什么才能使这项工作奏效?或者,如果这种方法行不通,为什么还要坚持下去呢?

这是我使用的命令

dd if=/mint/iso/image of=/dev/sdb1 oflag=direct 

@sawdust指出发布的答案是“不可行”时,本文(community.linuxmint.com/tutorial/view/744)指出这是正确的过程。
Dave G

1
@DaveG-有趣的是,如果源文件是“混合ISO映像”,则显然'dd'是可用命令。但这不是每个iso的通用过程。也许这种区别是jdowner遇到冲突的建议的原因。
锯末2012年

@sawdust感谢您对此进行其他说明。
Dave G

您可能有一个应在EFI引导系统中使用的棒上系统-但您的计算机配置为使用“经典”引导。因此可以用Linux Mint USB记忆棒看到。
David Tonhofer '16

这是顽固的iso映像(基于Ubuntu Live ISO)的一种简单/有效的解决方法:1)格式化记忆棒,以便在(例如)“ / dev / sdX1”上有一个文件系统,2)将记忆棒安装为“ / mnt / usb” “例如,3)在stick上安装grub2 :grub2-install --boot-directory /mnt/usb/boot/ /dev/sdX, 4)将以前下载的ISO映像(例如“ foolinux.iso”)复制到stick:cp foolinux.iso /mnt/usb/5)创建“ /mnt/usb/boot/grub2/grub.cfg”文件从棍子上显示的ISO映像引导Linux(续)
David Tonhofer

Answers:


32

您正在将映像写入/ dev / sdb的分区1

将此更改为以下命令:

dd if=/mint/iso/image of=/dev/sdb oflag=direct

此信息是从这里获取的


2
我正在做:sudo dd if =。/ debian-8.4.0-powerpc-DVD-1.iso of = / dev / rdisk3 bs = 1m并且它不可启动,有什么想法吗?
Yusufk

我要rdisk3分区还是原始磁盘?您正在尝试将映像写入特定分区
Dave G

1
我正在执行/ dev / sdb,但仍无法启动
holms,

rdisk3是mac afaik上的第三个磁盘。我和优素福有同样的问题。需要检查其是否与UEFI有关。
gavit

11

您已将映像复制到第一个分区。尝试复制到/ dev / sdb而不是/ dev / sdb1。

实际的机制会根据所使用映像的类型而有所不同,但是对于简单的DOS / MBR映像,您需要获取正确的分区表(可启动分区标记为可启动分区,而MBR-不是分区表的初始512字节-包含初始启动代码。


我会注意到,与其尝试再次将整个ISO复制到另一个分区,不如直接在您最初复制映像的分区上设置启动标志就足够了(如此答案所暗示)
GrayedFox


1

您可能需要将BPB写入引导加载程序。参见Dex从2009年4月24日星期五上午9:06发布的帖子,网址http://f.osdev.org/viewtopic.php?f=1&t=19681

要点是:“如果[您的USB固件]用户使用软盘仿真,而您没有BPB,它将无法启动”

有了这些建议,我得以解决此问题。我使用linux,所以我的dd命令是:

sudo dd bs=512 count=2880 if=IMG.bin of=/dev/sdb

您将要用USB设备替换sdb。您可以通过运行找到它

ls -l /dev/ | grep sd

在linux运行时插入USB之前和之后。如果得到例如sdb1和sdb,请选择非索引选项。


0

您确定在尝试从HDD引导之前将主板设置为从USB设备引导吗?我想这可能是您唯一的问题- dd正如您所看到的,使用没有太多。


1
这是我一直在考虑的问题,尤其是因为我正在使用旧计算机。因此,当它在我的目标计算机上不起作用时,我在妻子的笔记本电脑上设置了启动顺序(嘘,不要告诉她),并且也不能从该笔记本电脑启动。

0

我也遇到过几次这个问题。

我发现大多数时候对我有用的是先将驱动器填满零。

  1. 将X更改为您的驱动器号或数字,即可找到它:

    • 苹果电脑: diskutil list
    • Linux: lsblk
  2. 零填充驱动器

    • 苹果电脑: dd if=/dev/zero of=/dev/rdiskX bs=4m
    • Linux: dd if=/dev/zero of=/dev/sdX bs=4M
  3. dd再次显示您的图片

(对我来说4meg块大小似乎是最快的)

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.