ฉันจะสร้างไฟล์ DMG จากไดเรกทอรีได้อย่างไร


25

ฉันกำลังพยายามเพิ่มไฟล์ลงใน dmg ฉันจะสร้างไฟล์ DMG จากไดเรกทอรีได้อย่างไร


3
คุณจะแม่นยำมากขึ้น? คุณสามารถสร้าง DMG ด้วย Disk Utility ได้หรือไม่คุณต้องการบางสิ่งเพื่อทำให้เป็นอัตโนมัติ (bash scripting ... )?
Loïc Wolff

@ LoïcWolff Nope ไม่จำเป็นต้องเป็น ฉันไม่รู้ว่า Disk Utility อนุญาตสำหรับสิ่งนั้น
Moshe

คำตอบ:


7

ขั้นตอนบางอย่างโดยคำแนะนำขั้นตอนสามารถพบได้ที่นี่

หลังจากเปิด Disk Utility:

  1. คลิกไอคอนรูปภาพใหม่
  2. วางเนื้อหาของโฟลเดอร์ / ไดเรกทอรีลงในดิสก์อิมเมจที่สร้างขึ้นใหม่

หนึ่งจะสร้าง DMG ขนาดเล็กที่สุดสำหรับโฟลเดอร์ที่กำหนดได้อย่างไร ฉันหมายถึงทั้งขนาดของไฟล์. dmg และขนาดของระบบไฟล์เมื่อติดตั้งในภายหลัง หากฉันกำลังบีบอัดโฟลเดอร์ 73MB ฉันต้องการให้ทั้งสองอย่างเป็น 73MB + ค่าใช้จ่ายระบบไฟล์ขั้นต่ำ ฉันยังต้องการให้บีบอัด. dmg เพื่อให้ใช้พื้นที่น้อยลง เป็นไปได้เหล่านี้หรือไม่ ฉันไม่เห็นตัวเลือกสำหรับสองสิ่งนี้ใน Disk Utility บน Mavericks
Vaddadi Kartick

คุณหมายถึงอะไรโดย "สถานที่"? เมื่อฉันคลิกและลากโฟลเดอร์ไปยังดิสก์อิมเมจที่สร้างขึ้นใหม่ไม่มีอะไรเกิดขึ้น และฉันไม่เห็นตัวเลือกอื่นสำหรับการเพิ่มไฟล์
user124384

53

หากคุณต้องการทำจากบรรทัดคำสั่งคุณสามารถใช้ hdiutil ดังนี้:

hdiutil create -volname WhatYouWantTheDiskToBeNamed -srcfolder /path/to/the/folder/you/want/to/create -ov -format UDZO name.dmg

ผู้ชาย hdiutil สำหรับรายละเอียดเพิ่มเติม


สิ่งที่ฉันกำลังมองหา! สร้างสคริปต์ทุบตีเพื่อช่วยให้ดำเนินการอัตโนมัติเพื่อความสะดวก: gist.github.com/AlistairIsrael/5308455
Alistair A. Israel

คำตอบที่ยอมรับไม่ทำงานสำหรับฉันคนนี้ไม่ได้!
Ewout

เคล็ดลับเล็ก ๆ : ฉันใช้UDSBแทนUDZOเพื่อให้.dmgได้รับการสนับสนุนโดยชุดกระจัดกระจาย
Shaheen Ghiassy

7

ในโยเซมิตีสิ่งนี้ก็ทำเพื่อฉันเช่นกัน

ทำฟังก์ชั่นขนาดเล็ก:

dmg(){
  hdiutil create -fs HFS+ -srcfolder "$1" -volname "$2" "$2.dmg"
}

การใช้งานในเทอร์มินัล:

dmg /My/Source/Folder NameOfDmg

1
คุณต้องเพิ่มตำแหน่งที่จะบันทึกฟังก์ชัน (เช่น. bash_profile)
klanomath

1

ฉันวิ่งข้ามสิ่งนี้มาสายและฉันคิดว่าฉันจะประหยัดเวลาให้กับผู้คน
ฉันใช้เธรดนี้เพื่อสร้างไฟล์ dmg ของฉัน แต่ฉันต้องใช้พารามิเตอร์ "-fs" หรือ hdiutil จะเกิดข้อผิดพลาดด้วยข้อผิดพลาด -5341
เมื่อใช้โยเซมิตีฉันได้ดำเนินการดังนี้:

hdiutil create -fs HFS+ -srcfolder /Users/danlund/TestFolder/ -volname Test test.dmg

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.