`dd`를 사용하여 디스크 img를 SD 카드에 복사 할 때“리소스 사용 중”오류


31

Raspberry Pi 다운로드 페이지에서 RPi Easy SD Card Setup wiki 페이지에 따라 Raspbian wheezy를 다운로드했습니다 .

SD 카드를 포맷하고 cdRaspbian 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

그리고 이것은 System Profiler- > Card Reader에서 볼 수 있습니다 .

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 또는 이와 유사한 태그로 태그되어야합니다
Andre Holzner

답변:


43

나는 위키의 다음 섹션 에서 답을 찾았다 . 바보 나. 이 솔루션은 어떤 종류 또는 오류 메시지에 대해 자세히 설명하지 않았으며 정확한 오류 메시지를 "googleable"로 만드는 것이 도움이 될 수 있다고 생각했습니다. 또한 지침이 약간 명확하지 않은 것으로 나타났습니다 (특히 8/9 단계 정도; 파티션을 마운트 해제해야하는지 확실하지 않았습니다).

[이것은 SD 카드가 이미 포맷되었다고 가정합니다]

  1. 실행 df -h패턴에있을 것입니다 SD 카드의 파티션을 찾을 수 /dev/diskns1, n정수입니다. 이 경우에 해당합니다 /dev/disk2s1(다른 두 개는 외장 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하여 1 단계 nNin으로 대체 /dev/diskNs1하십시오 /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 명령을 다시 실행하는 데 필요한 유일한 단계 인 실제로 사용해야 했습니다.
geotheory

방금 볼륨을 마운트 해제 한 다음 디스크에서 직접 ddrescue / dd를 사용했는데 정상적으로 작동했습니다. 다른 단계는 필요하지 않다고 생각합니다.
RoyS

/dev/rdisk2대신 말하는지 설명해 주 /dev/disk2시겠습니까? 어디에서 r왔습니까?
oschlueter
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.