「dd」を使用してディスクimgをSDカードにコピーすると、「リソースビジー」エラーが発生する


31

Raspberry PiのダウンロードページからRaspbian wheezyをダウンロードしRPi Easy SD Card Setup wikiページに従っています。

SDカードをフォーマットしcd、Raspbian imgファイルを含むフォルダーにedしましたが、実行するとsudo dd if=2013-07-26-wheezy-raspbian.img of=/dev/disk2s1 bs=1m、これが出力されます:

dd: /dev/disk2s1: Resource busy

/dev/disk2出力ファイルとしてもう一度試しましたが、同じエラーが発生しました。何が間違っているのか、なぜimgがコピーされないのかわかりません。

これは、次の(関連する)出力です$ diskutil list

/dev/disk2
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:     FDisk_partition_scheme                        *32.5 GB    disk2
   1:             Windows_FAT_32 YQFORKLIFT              32.5 GB    disk2s1

同様に$ df -h

ysim:~$ df -h
Filesystem      Size   Used  Avail Capacity  Mounted on
...
/dev/disk2s1    30Gi  1.7Mi   30Gi     1%    /Volumes/YQFORKLIFT

そして、これは私がシステムプロファイラ -> カードリーダーの下に見るものです:

Built in SD Card Reader:

  Vendor ID:    0x05ac
  Product ID:   0x8403
  Revision: 1.00
  Serial Number:    000000009833

SDHC Card:

  Capacity: 32.48 GB (32,479,641,600 bytes)
  Removable Media:  Yes
  BSD Name: disk2
  Partition Map Type:   MBR (Master Boot Record)
  S.M.A.R.T. status:    Not Supported
  Volumes:
YQFORKLIFT:
  Available:    32.47 GB (32,465,321,984 bytes)
  Capacity: 32.48 GB (32,475,447,296 bytes)
  Writable: Yes
  File System:  MS-DOS FAT32
  BSD Name: disk2s1
  Mount Point:  /Volumes/YQFORKLIFT

これにはOSXまたは同様のタグを付ける必要があります
アンドレホルツナー

回答:


43

wikiの次のセクションで答えを見つけました。愚かな私。しかし、このソリューションでは、表示される種類やエラーメッセージについて詳しく説明していなかったため、正確なエラーメッセージ「googleable」を表示することが役立つと考えました。また、手順がやや不明瞭であることがわかりました(特にステップ8/9前後。パーティションをマウント解除したままにしておく必要があるかどうかはわかりませんでした)。

[これは、SDカードが既にフォーマットされていることを前提としています]

  1. を実行df -hして、SDカードのパーティションを見つけます。これは、パターンになります/dev/diskns1n整数)。この場合、それは/dev/disk2s1(他の2つは外付けUSBハードドライブです)。ええ、変な名前を付けたのはわかっています...

    ysim:/Volumes/Elements 1/Operating Systems/Raspberry Pi$ df -h
    Filesystem      Size   Used  Avail Capacity  Mounted on
    /dev/disk0s2   233Gi  125Gi  108Gi    54%    /
    devfs          114Ki  114Ki    0Bi   100%    /dev
    map -hosts       0Bi    0Bi    0Bi   100%    /net
    map auto_home    0Bi    0Bi    0Bi   100%    /home
    /dev/disk1s1   466Gi  351Gi  115Gi    76%    /Volumes/Elements
    /dev/disk3s1   466Gi  276Gi  189Gi    60%    /Volumes/Elements 1
    /dev/disk2s1    30Gi  1.7Mi   30Gi     1%    /Volumes/YQFORKLIFT
    
  2. パーティションをアンマウントします。

    ysim:/Volumes/Elements 1/Operating Systems/Raspberry Pi$ sudo diskutil unmount /dev/disk2s1
    Volume YQFORKLIFT on disk2s1 unmounted
    
  3. マウント解除されているか、実行時に表示されていないことを確認してくださいdf -h(そうでない場合、Resource busy上記のエラーが発生します- こちらを参照)。

    ysim:/Volumes/Elements 1/Operating Systems/Raspberry Pi$ df -h
    Filesystem      Size   Used  Avail Capacity  Mounted on
    /dev/disk0s2   233Gi  125Gi  108Gi    54%    /
    devfs          114Ki  114Ki    0Bi   100%    /dev
    map -hosts       0Bi    0Bi    0Bi   100%    /net
    map auto_home    0Bi    0Bi    0Bi   100%    /home
    /dev/disk1s1   466Gi  351Gi  115Gi    76%    /Volumes/Elements
    /dev/disk3s1   466Gi  276Gi  189Gi    60%    /Volumes/Elements 1
    
  4. それはまだアンマウントですが、実行してsudo dd bs=1m if=/path/to/extracted/raspberry-pi-img.img of=/dev/rdiskn交換する、nNして/dev/diskNs1への書き込みに1を確認してくださいステップから/dev/rdiskN(ディスク)と、NOT /dev/diskNs1原因となる何か他のものである(パーティション)Resource busyのエラーを。

    ysim:/Volumes/Elements 1/Operating Systems/Raspberry Pi$ sudo dd bs=1m if=2013-07-26-wheezy-raspbian.img of=/dev/rdisk2
    1850+0 records in
    1850+0 records out
    1939865600 bytes transferred in 151.663501 secs (12790590 bytes/sec)
    
  5. SDカードが再マウントされ、名前が付けられましたboot

    ysim:/Volumes/Elements 1/Operating Systems/Raspberry Pi$ df -h
    Filesystem      Size   Used  Avail Capacity  Mounted on
    /dev/disk0s2   233Gi  125Gi  108Gi    54%    /
    devfs          115Ki  115Ki    0Bi   100%    /dev
    map -hosts       0Bi    0Bi    0Bi   100%    /net
    map auto_home    0Bi    0Bi    0Bi   100%    /home
    /dev/disk1s1   466Gi  351Gi  115Gi    76%    /Volumes/Elements
    /dev/disk3s1   466Gi  276Gi  189Gi    60%    /Volumes/Elements 1
    /dev/disk2s1    56Mi   18Mi   37Mi    34%    /Volumes/boot
    

3
とても助かりました。sudo diskutil unmountDisk /dev/disk2代わりに使用する必要がありました(実際には、ddコマンドを再実行するために必要な唯一の手順です)
地理理論14

ボリュームをアンマウントしてから、ディスク上でddrescue / ddを直接使用したところ、問題なく動作しました。他のステップは本当に必要だとは思いません。
-RoyS

/dev/rdisk2代わりにそれが言う理由を説明してもらえます/dev/disk2か?どこrから来たの?
oschlueter
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.