Tài nguyên bận bị lỗi Lỗi khi sử dụng `dd` để sao chép đĩa img vào thẻ SD


31

Tôi đã tải xuống Raspbian wheezy từ trang tải xuống Raspberry Pi và theo trang wiki Cài đặt thẻ SD RPi Easy .

Tôi đã định dạng thẻ SD và cded vào thư mục chứa tệp img Raspbian, nhưng khi tôi chạy sudo dd if=2013-07-26-wheezy-raspbian.img of=/dev/disk2s1 bs=1m, đây là đầu ra tôi nhận được:

dd: /dev/disk2s1: Resource busy

Tôi đã thử lại với /dev/disk2tư cách là tệp đầu ra, nhưng gặp lỗi tương tự. Tôi không chắc mình đang làm gì sai / tại sao img không được sao chép.

Đây là đầu ra (có liên quan) của $ 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

Cũng như $ df -h:

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

Và đây là những gì tôi thấy trong 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

cái này nên được gắn thẻ với OSX hoặc tương tự
Andre Holzner

Câu trả lời:


43

Tôi tìm thấy câu trả lời của mình trong phần tiếp theo của wiki ; tôi ngớ ngẩn quá. Tôi thấy rằng giải pháp không đi sâu vào chi tiết về loại thông báo hoặc loại lỗi mà bạn nhìn thấy, và nghĩ rằng nó có thể hữu ích để có thông báo lỗi chính xác "có thể hiểu được". Tôi cũng thấy các hướng dẫn hơi không rõ ràng (đặc biệt là vào khoảng ngày 8/9; tôi không chắc liệu phân vùng có bị bỏ sót không), vì vậy tôi đã cố gắng viết lại một số trong đó:

[điều này giả định rằng thẻ SD của bạn đã được định dạng]

  1. Chạy df -hđể xác định vị trí phân vùng của thẻ SD, sẽ có trong mẫu /dev/diskns1, trong đó nlà một số nguyên. Trong trường hợp này, đó là /dev/disk2s1(hai cái còn lại là ổ cứng USB ngoài). Và vâng, tôi biết tôi đã đặt cho nó một cái tên kỳ lạ ...

    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. Ngắt kết nối phân vùng:

    ysim:/Volumes/Elements 1/Operating Systems/Raspberry Pi$ sudo diskutil unmount /dev/disk2s1
    Volume YQFORKLIFT on disk2s1 unmounted
    
  3. Kiểm tra xem nó chưa được kết nối / nó không còn hiển thị khi bạn chạy df -h(nếu không đó là nguyên nhân gây ra Resource busylỗi ở trên - xem tại đây ).

    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. Trong khi nó vẫn chưa được kết nối , hãy chạy sudo dd bs=1m if=/path/to/extracted/raspberry-pi-img.img of=/dev/rdiskn, thay thế nbằng từ Ntrong /dev/diskNs1bước 1. Đảm bảo ghi vào /dev/rdiskN(đĩa) và KHÔNG /dev/diskNs1 (phân vùng), đây là một thứ khác gây ra Resource busylỗi.

    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. Thẻ SD hiện được gắn lại và được đặt tên 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
Siêu hữu ích cảm ơn. Tôi đã phải sử dụng sudo diskutil unmountDisk /dev/disk2thay thế (thực tế là bước duy nhất tôi cần thực hiện để chạy lại lệnh dd)
geotheory

Tôi chỉ ngắt âm lượng và sau đó sử dụng ddresTHER / dd trực tiếp trên đĩa, và nó hoạt động tốt. Tôi không nghĩ các bước khác, thực sự cần thiết.
RoyS

Bạn có thể giải thích tại sao nó nói /dev/rdisk2thay vì /dev/disk2? Nơi nào rđến từ đâu?
oschlueter
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.