原文:Installing Operating System Images on Mac OS

在Mac上你可以选择dd命令,也可以使用图形化的 ImageWriter 来写入镜像。

图形化方法(大部分)

  • 连接SD读卡器内的SD卡。注意:SD卡需是 FAT32 格式。
  • 从苹果菜单中选择 About This Mac,然后点击 More info;如果你使用 Mac OS X 10.8.x Mountain Lion 或更新版本,点击 System Report。
  • 点击 USB 标签(如果你使用内建SD读卡器,点击Card Reader)在窗口右边的区域中找到SD卡,点击选择SD卡并查找BSD name字段,你将会看到类似diskn这样的值(例如:disk4)。

    译者注:经测试, Mac OS X 10.10.4 上应该点击Storage标签来查看SD卡信息。
  • 打开Disk Utility工具,unmountSD卡上的分区(不是 eject,否则你需要重新拔插SD卡)。注意:在 Mac OS X 10.8.x 以及之后的版本,点击"Verify Disk"(umount之前)可以看到形如 "/dev/disk1s1" 的 BSD name,这样你可以省去前面的两个步骤。
  • 在控制台中输入:

    sudo dd bs=1m if=path_of_your_image.img of=/dev/rdiskn

    注意替换n为你自己的SD卡设备名。
    如果上面的命令失败,可尝试使用disk替换rdisk:

    sudo dd bs=1m if=path_of_your_image.img of=/dev/diskn

命令行方法

  • 如果你更习惯使用命令行,你可以不使用任何额外的工具写入SD卡。运行:

    diskutil list

  • 确认SD卡的设备号,例如:disk4(不是disk4s1)
  • 用下面的命令 umount SD卡:

    diskutil unmountDisk /dev/disk<disk# from diskutil>

    例如:diskutil unmountDisk /dev/disk4

  • 往SD卡写入镜像

    sudo dd bs=1m if=image.img of=/dev/rdisk<disk# from diskutil>

    例如:sudo dd bs=1m if=2015-05-05-raspbian-wheezy.img of=/dev/rdisk4

    • 如果你安装了GNU coreutils ,上面的命令可以产生dd: invalid number '1m'这样的错误。这时候你需要使用1M:

    sudo dd bs=1M if=image.img of=/dev/rdisk<disk# from diskutil>

    根据镜像文件的大小,整个过程需要持续几分钟。你可以使用Ctrl+T向控制台发送SIGINFO指令来查看写入进度。

    • 如果上的命令依然不成功,尝试使用disk来替代rdisk:

    sudo dd bs=1m if=2015-05-05-raspbian-wheezy.img of=/dev/disk4

    sudo dd bs=1M if=2015-05-05-raspbian-wheezy.img of=/dev/disk4

替代方法

注意:部分用户反应在Mac OS X上写入SD卡遇到困难。

下面的命令需要使用管理员身份运行

  • 在控制台输入df -h
  • 连接插入SD卡的读卡器。
  • 再次运行df -h查看新出现的设备。记录下设备的文件系统分区名称,例如:/dev/disk3s1
  • 卸载分区以便可以覆盖磁盘

    sudo diskutil unmount /dev/disk3s1

    或者打开Disk Utility工具,unmountSD卡(不是 eject,否则你需要重新拔插SD卡

  • 从分区名称中分离出设备名:去掉末尾的s1,并用"rdisk"替换"disk"。这非常重要,如果你提供了错误的设备名,你将丢失硬盘上的所有数据。确保设备名描述整个SD卡,而不是其中的一个分区(例如:rdisk3,而不是rdisk3s1)。相似地,你的另一张SD卡设备名可能是rdisk2 或 rdisk4;在插入SD之前以及插入之后使用df -h命令,找出新增加的设备,分离出设备名。例如:/dev/disk3s1变为/dev/rdisk3
  • 在控制台使用下面的命令来向SD卡写入镜像,记住使用刚才获取的设备名。请咨询检查上面的步骤以确保设备名正确。

    sudo dd bs=1m if=2015-05-05-raspbian-wheezy.img of=/dev/rdisk3

    如果命令出现错误:dd: bs: illegal numeric value,请用bs=1M替换bs=1m

    如果命令出现错误:dd: /dev/rdisk3: Permission denied,表明SD卡上的分区被MacOS保护,你需要使用下面的命令来抹掉分区:

    sudo diskutil partitionDisk /dev/disk3 1 MBR "Free Space" "%noformat%" 100%

    这个命令同时为设备添加了可写权限。现在你可以使用dd命令了。

    注意:dd不会有任何的反馈,除非遇到错误或写入完成;一旦完成,dd会显示信息而SD卡将被重新加载。当然你也可以使用ctrl-T来查看进度;它发送SIGINFO信号到tty,然后进度信息将显示出来。

  • dd执行完成,推出SD卡:

    sudo diskutil eject /dev/rdisk3

    (或者打开 Disk Utilit 来推出 SD卡)

本文由u0u0翻译于2015.7.25

标签: 树莓派, dd

添加新评论