hiệu suất dd trên Mac OS X so với Linux


18

Tôi đã cố gắng sao chép một iso của trình cài đặt windows vào ổ cứng để tránh ghi đĩa. Lần đầu tiên tôi đã thử chức năng khôi phục của Disk Utility, tuy nhiên vì lý do nào đó nó không giống ISO. Sau đó, tôi đã thử sử dụng dd:

dd if=/path/to/image.iso of=/dev/disk3

Tôi nhận ra rằng nó đang sao chép tệp với tốc độ của ốc sên, khoảng 160 KB / giây. Tôi khởi động lại vào bản cài đặt linux của mình và chạy lại lệnh, gần như nguyên văn:

dd if=/path/to/image.iso of=/dev/sdc

Lần này lệnh được thực thi trong vòng một phút, với tốc độ trung bình là 57 MB / giây. Trong cả hai trường hợp, nguồn và đích là cùng một ổ cứng vật lý. Chuyện gì đang xảy ra vậy?

Tôi đang chạy OSX 10.7.3 và Linux 2.6,38-13.


1
Hmm, tôi hy vọng linux sẽ chạy chậm như vậy mà không có bstham số. Bạn có bí danh để ddthiết lập trên linux (gõ aliastại dấu nhắc) không?
Paul

Câu trả lời:


28

Đối với OS X, sử dụng /dev/rdisk3.

Vì một số lý do rdisknhanh hơn disk. Tôi tin rằng nó phải làm với bộ đệm.

Ngoài ra nói chung sử dụng bscờ với sự ddgiúp đỡ với tốc độ.

dd if=/path/to/image.iso of=/dev/sdc bs=1M

Các byteize là 1M giúp chuyển nhanh hơn. Trên OS X, bạn phải sử dụng 1m(chữ thường) thay vì 1M.


Cảm ơn bạn ! Tôi đã quên để thêm bs=1mvà nó chậm như địa ngục!
LoremIpsum

4
Nhận xét về chữ thường m trên OS X là một cứu cánh. Cảm ơn rât nhiều!
Jonathan Komar

0

Đĩa thô BSD

BSD nói chung có 2 loại thiết bị đĩa: đệm và không có bộ đệm (thô). Từ hdutil(1)trang người đàn ông:

DEVICE SPECIAL FILES
     Since any /dev entry can be treated as a raw disk image, it is worth
     noting which devices can be accessed when and how.  /dev/rdisk nodes
     are character-special devices, but are "raw" in the BSD sense and
     force block-aligned I/O. They are closer to the physical disk than
     the buffer cache. /dev/disk nodes, on the other hand, are buffered
     block-special devices and are used primarily by the kernel's
     filesystem code.

     It is not possible to read from a /dev/disk node while a filesystem
     is mounted from it, ...

Do đoạn thứ 2, đĩa phải được ngắt kết nối để có thể sử dụng ddnó trong "chế độ thô".

dd chặn

Từ dd(1)trang nam:

     Where sizes are specified, a decimal, octal, or hexadecimal number of bytes
     is expected.  If the number ends with a ``b'', ``k'', ``m'', ``g'', or ``w'',
     the number is multiplied by 512, 1024 (1K), 1048576 (1M), 1073741824 (1G) or
     the number of bytes in an integer, respectively.  Two or more numbers may be
     separated by an ``x'' to indicate a product.

Kích thước khối mặc định là 512 byte ...

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.