如何在苹果Macbook上创建可启动的USB闪存驱动器

如何在苹果Macbook上创建一个可启动的Ubuntu USB驱动器,然后将其用于我的Windows PC以替换原有系统?
6个回答

新方法使用Etcher 确保您有一个至少4GB的可用空间的USB闪存驱动器。 从这里获取您的Ubuntu ISO文件。 从“应用程序>实用工具”中打开“磁盘工具”。 选择USB闪存驱动器并选择“抹掉”(这将删除USB驱动器上存储的所有数据)。 选择格式:“MS-DOS(FAT)”和方案:“GUID分区图”。 点击“抹掉”。 下载、安装并打开Etcher(默认情况下,MacOS会阻止运行未经认证的开发者应用程序。如果您在此过程中遇到问题,请按照本教程进行操作)。 选择映像并导航到您在第2步中下载的Ubuntu ISO文件保存位置。 选择您在第3-6步中格式化的USB驱动器。 点击“刷写”。 恭喜!您现在拥有了一台可启动的Ubuntu USB闪存驱动器!

旧方法使用UNetbootin(可能仍然有效)

确保您有一个至少有4GB可用空间的USB闪存驱动器。 下载并安装UNetbootin USB安装程序。 下载您选择的Ubuntu桌面ISO文件。 启动UNetbootin,并允许osascript进行更改。 authentication 选择“Diskimage”单选按钮,然后点击“...”按钮。 unetbootin interface 选择您下载的Ubuntu ISO文件,然后点击“打开”。 selecting iso file 然后在底部行中选择您的闪存驱动器,并点击“确定”。 当Unetbootin完成后,点击“退出”,现在您就拥有了一个Ubuntu USB驱动器。

来源


1在执行这个步骤之前,是否需要格式化USB闪存驱动器? - erikvimz
@Eric 不,Unetbootin会为你格式化驱动器。 - Cyber_Star
你不需要使用Etcher格式化驱动器,它会直接将ISO文件刷写到驱动器上。 - Andrea Lazzarotto
在Mac OS Catalina上,您不能再选择“GUID分区图”。它在哪里呢? - Wouter

1)使用以下方法找到您的USB驱动器文件路径
diskutil list external

你正在寻找 /dev/diskN。它很可能是 /dev/disk2,但请仔细检查 NAMESIZE 列是否合理。稍后你将运行的 dd 命令将有效地删除驱动器上的所有数据,所以不要搞错了。如果该命令没有输出,那么你的 USB 驱动器可能没有插入。
2) 卸载设备以便你可以覆盖它(将 N 更改为前一步骤中得到的数字)
diskutil unmountDisk /dev/diskN

3)使用 dd 将 .iso 镜像复制到 USB 上

sudo dd if=/path/to/your/iso-file.iso of=/dev/diskN

那个步骤需要一些时间。当它完成时,你可能会收到一个错误提示说无法读取磁盘,你可以点击“弹出”按钮,然后就完成了;使用你的USB闪存驱动器来启动Ubuntu。如果你没有收到那个错误提示,你应该使用第4步弹出它。
diskutil eject /dev/diskN

你可以通过添加bs=1m(如果你遇到invalid number: ‘1m’错误,将“m”改为大写的“M”(这可能发生在你安装了更新版本的coreutilshomebrew)),并使用/dev/rdiskN而不是/dev/diskN(但对于diskutil命令,请使用/dev/diskN)。你可以使用status=progress让dd报告进度。整个过程看起来会像这样:
sudo dd bs=1m status=progress if=ubuntu-19.10-desktop-amd64.iso of=/dev/rdiskN

使用我的廉价USB 2.0驱动器,通过这些选项我可以达到3.6 MB/s(9分钟),而没有这些选项只能达到0.8 MB/s(40分钟)。

这对我来说很好用,使用18.04 iso文件没有问题。我能够使用制作的USB启动盘在MacBook上启动。 - rogerdpack

将您的USB闪存驱动器格式化为FAT32,然后打开终端并输入以下命令。
dd if=/path/to/file.iso of=/path/of/mounted/usb

将等号后面的字符串替换为您的真实路径。

这比其他方法真的更快!


sudo dd if=/path/to/file.iso of=/dev/disk3

其中disk3是您的USB设备。 在执行此操作之前,您需要卸载USB设备。

dd是一个危险的命令,可能会完全擦除您的磁盘。of=/dev/diskx 这个x绝不能是您的内部磁盘。请确保您没有将您的内部磁盘放在"of=/dev/"之后。



这是为了创建一个Windows启动盘,但他想要一个Ubuntu启动盘。 - Cyber_Star
误解。我读到的是“升级Windows电脑”,所以我以为“他想将他的Windows 8升级到Windows 10”,因为没有提到“Ubuntu”。只是没有理解清楚。谢谢您的纠正。 - GTRONICK
1是的,我也是这么想的,所以我才评论了它 :) - Cyber_Star

m.apple.disk.iso.create() {
        local iso="${1}" disk="${2}" # example -> /dev/disk6
        sudo dd if="${iso}" of="${disk}"
}

示例调用:
m.apple.disk.iso.create ~/Downloads/ubuntu-18.04.3-live-server-amd64.iso /dev/disk6

1你能解释一下这些命令行是如何工作的吗? - damadam
@damadam 这个有效吗? - mjs
我不知道,我无法测试它。 - damadam
我不明白为什么要将这个一行的bash函数与已经建议的dd命令调用分开。 - user677955
如果你有一堆可用的代码...在某些情况下使用dd命令,在其他时间使用其他命令。哪个更容易记住?是全部都记住还是通过一个一致的API来获取你所需的内容?m.apple.disk.format。显然应该选择后者,否则你不会通过谷歌找到这个答案;)现在把它记下来...或者试着在一年后再次使用记忆中的dd命令!你会如何记下来?用一个笔记文件吗?还是通过在上面声明那个方法,就像这个例子中只是一个命令一样。但是你的问题在这个例子中是有效的。对于所有超过两行的代码,这种方法就不适用了。我只是保持一致。 - mjs