从Mac将.img文件写入SD卡


28

我想从Mac OS X将Wheezy OS的.img文件刻录到我的8GB SD卡中,但不知道如何。

任何帮助,将不胜感激。


您正在使用OSX的操作系统?
ikku 2012年

是的@ikku-是的。

在这里查看我的答案。问题是备份SD卡,但是过程是相同的,请参见还原映像。或者,此Wiki可能会有所帮助。
Alex Coplan 2012年

1
您可以使用开源图形应用程序Etcher来执行此操作,它可以在Mac,Windows和Linux上运行。
布拉德·帕克斯

Answers:


25

有一个常见问题解答/方法手册,讨论了所有各种OS-es。对于Mac,(几乎)与其他各种类型的Unix版本相同。使用dd。

简而言之,您输入:

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

注意:of = / rdev / diskn必须是SD卡,如果操作不正确,可能会破坏Mac系统!小心!

确保使用/dev/rdiskn而不是/dev/diskn。这样,您就不会写入缓冲的设备,它将更快地完成

有关此过程的逐步指导,请查阅以下说明。本文档中有3章适用于Mac。

最简单的方法在Mac上的第一章中进行了介绍(将图像复制到Mac OS X中的SD卡(仅具有图形界面)),它涉及一个可以为您做所有事情的应用程序,完整地说,我将链接复制到此应用程序在这里


这并不困难,实际的复制只是一个命令,剩下的就是确保您将写入正确的设备。第一章指出:RPi-sd卡生成器实用程序是一个应用程序,它将引导您完成安装到SD卡的过程。这听起来像是一个不错的应用程序,只要单击几下,您就可以完成所需的操作...该应用程序的链接在文档中。
ikku 2012年

1
无法使它正常工作。:(

哦,应用程序不断崩溃。

然后,我猜您需要切换到选项2,主要是GUI
ikku 2012年

哪个应用程序不断崩溃?dd?:-D
XTL 2012年

70

首先,验证SD卡的路径。您可以通过从终端运行以下命令来执行此操作:

diskutil list

输出显示了系统上当前安装的磁盘的列表。这是我的输出中的相关行:

/dev/disk3
#:                       TYPE NAME                    SIZE       IDENTIFIER
0:     FDisk_partition_scheme                        *8.0 GB     disk3
1:                 DOS_FAT_32 RPISDCARD               8.0 GB     disk3s1

在这种情况下,/dev/disk3因为TYPE,NAME和SIZE值正确,所以我可以验证是我的SD卡。

如果磁盘上已有分区,则可能需要将其卸载,否则在尝试写入映像时会收到“资源繁忙”错误消息。

diskutil unmount /dev/disk3s1

现在将映像文件写入磁盘。请注意,添加的“ r” rdisk3通过告诉dd以原始磁盘模式运行可大大提高写入性能:

sudo dd if=RetroPieImage_ver2.3.img of=/dev/rdisk3 bs=1m

根据SD卡的大小,这可能需要一段时间。您可以按CTRL+T查看的当前状态dd。以我的三星8GB SD卡为例,写入速度为12MB / s,该命令花了11分钟才能完成。


如果有人遇到错误,Resource busy请转到“磁盘工具”,卸载SD卡,然后重试。会的。
atulkhatri

4

试试这个:ApplePi-Baker

它是免费的,可以将IMG文件写入SD卡,可以准备NOOBS卡,还可以备份SD卡的IMG。


1
请勿尝试!!!!它冻结,然后如果您取消,则卡在卡上的某些分区上,这些分区实际上拒绝删除。磁盘工具已使我所有的格式/擦除选项均变灰。
boulder_ruby

@boulder_ruby:由于OS X的身份验证要求,某些用户似乎在v1.6上存在身份验证问题。但是,您的问题对我来说是全新的。您是否取消了“强制退出”(也许这导致“ dd”在后台变得怪异)?
Hanzaplastique 2015年


0

您也可以尝试:dd实用程序

特征:

  • 将IMG文件写入存储卡和硬盘驱动器。
  • 将IMG文件备份和还原到存储卡和硬盘驱动器。
  • 快速安装和还原压缩磁盘映像文件。支持的文件格式:IMG,Zip,GZip和XZ。
  • 即时备份和压缩ZIP格式的磁盘映像文件,以大大减少备份的文件大小。
  • 非常适合将IMG文件闪存到SD卡,以与Raspberry Pi,Arduino,BeagleBoard和其他ARM板一起使用。
  • 支持Mac Retina显示器。

视网膜支持有什么?
加纳玛


0

是的,简单的答案就是dd,但是您可能需要通过将dd封装在脚本中来实施一些安全预防措施。

#!/bin/bash

#
# copy_img_to_sd.sh
#

ME=$( id | grep root | wc -l | perl -p -e 's/[^0-9]+//g');
if [ "$ME" != "1" ] ;then
    echo "must be root"
    exit 1;
fi
IMG=$1
if [ ! -f $IMG ] ;then
    echo "can not find $IMG";
    exit 2;
fi 
DISK=$(ls -l /dev/disk? | wc -l |perl -p -e 's/[^0-9]//g')
if [ $DISK -lt 3 ] ; then
    echo "can not find sdcard";
    ls -l /dev/disk?
    exit 2;
fi
DISK=$(ls -1 /dev/disk? | tail -1);
R_DISK=$(ls -1 /dev/rdisk? | tail -1);
echo "we are about to do this:"
echo $(diskutil information $DISK | grep Total)
ls -1 /dev/disk?s* | grep "$DISK" | perl -p -e 's/^(.*)$/diskutil unmount $1;/g'
echo dd bs=1m if=$IMG of=$R_DISK
echo sync
echo diskutil eject $R_DISK
echo "Press [enter] to continue or [Ctrl]+[C] to cancel";
read YNM;
ls -1 /dev/disk?s* | grep "$DISK" | perl -p -e 's/^(.*)$/diskutil unmount $1;/g' | bash 2>/dev/null
dd bs=1m if=$IMG of=$R_DISK
sync
diskutil eject $R_DISK

不小心将映像写入内部驱动器将需要重新安装OS X才能更正。备份并保留一个install.log,这样,如果发生这种情况,您可以大笑它。


0

找到了一个非常好的链接:http : //www.tweaking4all.com/hardware/raspberry-pi/install-img-to-sd-card/#macosx,用于在SD卡上安装file.img,非常详细的步骤!


您可以在答案中添加更多详细信息吗?链接事物并不像解释它那样有帮助...
Kachamenus

我会做的,但是我会再次将网站上的所有内容复制并粘贴到此处。它概述了从下载软件包并将.img文件传输到SD卡的步骤。它的细节。
Karbon62 2015年

-2

使用df查找设备路径,在这种情况下/dev/disk2

$ df -h

Filesystem      Size   Used  Avail Capacity   iused    ifree %iused  Mounted on
/dev/disk1     465Gi  414Gi   51Gi    90% 108573777 13263821   89%   /
devfs          214Ki  214Ki    0Bi   100%       741        0  100%   /dev
map -hosts       0Bi    0Bi    0Bi   100%         0        0  100%   /net
map auto_home    0Bi    0Bi    0Bi   100%         0        0  100%   /home
/dev/disk2s1   3.7Gi  2.3Mi  3.7Gi     1%         0        0  100%   /Volumes/UNTITLED

4
然后...?这只是答案的一半。
Bex 2015年
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.