2012-01-10 29 views
7

Tôi hiện đang sử dụng hdiutil để tạo DMG của mình.Tạo DMG mà không cần thêm không gian

Lệnh tôi sử dụng là hdiutil create -size xxxg myImage.dmg -fs HFS+. Tôi luôn bị bỏ lại xung quanh với kích thước cho đến khi tôi nhận được nó đủ gần.

Có phương pháp nào tốt hơn để thu nhỏ DMG thành kích thước hoặc tạo kích thước không?

+0

câu hỏi này không nằm trong chủ đề. –

+1

@ DanielA.White: Tạo hình ảnh đĩa thường là một nhiệm vụ là một phần của việc đóng gói phần mềm OS X để phân phối. Trong khi nó không phải là lập trình * cho mỗi *, nó liên quan chặt chẽ! – duskwuff

+0

@ DanielA.White, tôi có xu hướng đồng ý với duskwuff, điều này có thể nằm trong "các công cụ phần mềm thường được các lập trình viên sử dụng" – CNeo

Trả lời

2

Bạn có thể tạo một dmg lớn hơn, thêm các tập tin, sau đó thay đổi kích thước:

hdiutil resize -size xxxg myImage.dmg 

hoặc tạo một sparseimage, và sau đó chuyển đổi nó

hdiutil convert -format UDZO Source.sparseimage -o myImage.dmg 

Tôi chưa bao giờ cố gắng sau này, không chắc chắn nếu nó sẽ chọn đúng kích cỡ cho dmg.

Nguồn: http://nickcharlton.net/post/converting-a-sparseimage-to-a-dmg

Lưu ý rằng sparseimages cần phải được đầm nếu các tập tin bị xóa khỏi họ, vì họ không giải phóng không gian từ các tập tin bị xóa tự động:

hdiutil compact Source.sparceimage 
+0

Tạo một hình ảnh quá khổ và nén nó không phải là một giải pháp tuyệt vời, vì có một số lượng đáng kể phí FS trên các hình ảnh lớn. – duskwuff

+0

Đúng, mặc dù khi đóng gói một bản nhị phân nhỏ để phân phối, điều này sẽ ít vấn đề hơn. Sparceimage nhỏ gọn sẽ không mất nhiều thời gian (có lẽ sẽ không có nhiều không gian lãng phí), và thay đổi kích thước sẽ khá nhiều sao chép toàn bộ dmg. Điều đó đang được nói, tôi không biết về giải pháp của bạn, mà chắc chắn là sạch hơn và nhanh hơn :) +1. – CNeo

+0

Huh, chi phí thực sự không phải là xấu như tôi nghĩ ... một hình ảnh 1GB nén xuống 164 KB. – duskwuff

4

Có:

hdiutil create myImage.dmg -srcfolder SourceDir 

Điều này sẽ tự động định kích thước hình ảnh cho vừa.

+0

Tôi đã thử điều này mà tôi nghĩ rằng sẽ là hoàn hảo. Tôi chỉ nó vào ~ 7 GB giá trị của dữ liệu và nó tạo ra một DMG với 212,5 MB có sẵn. Nếu tôi thay đổi kích thước hoặc chỉ định kích thước khi tôi tạo nó, tôi có thể làm cho nó gần hơn. Có lẽ tôi đang chia nhỏ lông cuối cùng nó sẽ là một tải về 7 GB cho người dùng một cách này hay cách khác. Cảm ơn. – user870130

+0

hoàn hảo, đã hoạt động. –

Các vấn đề liên quan