ทำไมเราถึงติดตั้งซอฟต์แวร์ผ่านไฟล์ ".mgmg"


28

เมื่อฉันต้องการติดตั้งซอฟต์แวร์ฉันมักจะดาวน์โหลดไฟล์.dmg(Disk iMaGe) เมื่อเปิดมันนี้.dmgไฟล์ดูเหมือนว่าสิ่งที่ผมจะเรียกว่า "ดิสก์เสมือน" (เพราะฉะนั้นชื่อฉันเข้าใจ) และเป็น บริษัท จดทะเบียนใน ภายใต้Finder devicesมันอยู่ในรายการDisk Utilityภายใต้Disk Imagesและดูเหมือนว่าสามารถลบหรือ unmount เหมือนกับดิสก์อื่น ๆ

  • เหตุผลใดที่ต้องติดตั้งซอฟต์แวร์ด้วย "ดิสก์เสมือน" เช่นนี้
  • ทำไมมันไม่มาเป็นไฟล์ไบนารีอย่างง่ายหรือฉันไม่รู้อะไรเลย?

12
การติดตั้งซอฟต์แวร์สามารถทำให้เกิดการd a m a g e ได้
ของหวาน

1
ไฟล์ไบนารีอย่างง่ายจะเป็นตัวติดตั้ง ด้วย DMG คุณเพียงแค่คัดลอกแอปพลิเคชันโดยไม่เรียกใช้ตัวติดตั้ง
Thorbjørn Ravn Andersen

10
แอพ Mac ส่วนใหญ่มีลักษณะเป็นไฟล์เดียว แต่ในความเป็นจริงแล้วคือ "แอปพลิเคชันมัด" ซึ่งโดยทั่วไปจะเป็นโฟลเดอร์ที่มีไฟล์มากมาย Finder จะแสดงเป็นเอนทิตี้เดียว แต่คุณสามารถคลิกขวาแล้วเลือก "เปิดเนื้อหา" เพื่อตรวจสอบไฟล์ภายใน ดังนั้น "ไบนารีง่าย" จะไม่ทำงาน
el.pescado


ย่อหน้าสุดท้ายควรเป็นคำถามแยกต่างหากเนื่องจากมันก่อให้เกิดคำตอบแยกต่างหาก
user151019

คำตอบ:


34

DMGs มีคุณสมบัติที่สำคัญบางประการซึ่งทำให้เหนือกว่าซิปแบบเก่าทั่วไป

  • เป็นระบบไฟล์แบบเต็ม (หมายถึงพวกเขาสามารถจัดเก็บการอนุญาตไฟล์มีพื้นหลังโฟลเดอร์ที่กำหนดเอง ฯลฯ )
  • พวกเขาสนับสนุน EULAs“ จำเป็น” ก่อนการติดตั้งซึ่งดีสำหรับวัตถุทางกฎหมาย
  • จัดเตรียมสภาพแวดล้อมการดำเนินการที่เชื่อถือได้มากขึ้น หากคุณต้องทำสิ่งที่แน่นอนสำหรับการติดตั้ง (ซึ่ง tbh คุณไม่ควร) คุณสามารถเตรียม DMG ทำเครื่องหมายว่าอ่านอย่างเดียวและใช้เพื่อติดตั้ง

ฟีเจอร์หลัก ๆ คือสนับสนุนระบบไฟล์ HFS + แบบเต็ม Zip (โดยทั่วไปแล้วเวอร์ชัน Linux บางครั้งรองรับการอนุญาต) นั้นโง่และสนับสนุนเฉพาะไฟล์และโฟลเดอร์ที่บันเดิลเท่านั้น ไม่มีข้อมูลเมตาเพียงไฟล์


14
คะแนนเพิ่มเติม: เริ่มต้นที่ 10.12, ไฟล์. dmg สามารถลงรหัสเพื่อความสมบูรณ์ (ไฟล์. zip สามารถมีรหัสที่เซ็นชื่อได้ นอกจากนี้ตัวเลือก "แบบง่ายไบนารี" ก็ใช้งานไม่ได้เพราะซอฟต์แวร์ macOS ส่วนใหญ่มาเป็นแพ็คเกจ - โฟลเดอร์ที่มีโครงสร้างภายในที่ซับซ้อน (ซ่อนอยู่) - แทนที่จะเป็นไฟล์ธรรมดา
Gordon Davisson

9
"Zip โง่และสนับสนุน ... เท่านั้น" - ฉันไม่เห็นด้วยกับการประเมินนั้น เพียงเพราะบางสิ่งที่เรียบง่ายไม่ได้แปลว่าโง่ ความเรียบง่ายเป็นคุณธรรมและมักจะเป็นเมทาดาทาไฟล์ (มักมองไม่เห็น) ของค่าใด ๆ ในตัวติดตั้งแบบกระจาย
Dai

14
@ ไดเขาหมายถึงคนโง่เหมือนคนโง่ โปรแกรมไม่รู้ว่ามันกำลังทำอะไรอยู่ - ไม่ใช่ว่ามันไร้ประโยชน์
ทิม

3
ฉันคิดว่า ZIP ไม่ใช่การเปรียบเทียบที่ดีเกินไป ทำไมไม่เช่นบีบอัด TAR เช่นtar.gz? มันจัดเก็บสิทธิ์
Ruslan

2
@Dai "ข้อมูลเมตาดาต้าไฟล์" มักไม่ค่อยปรากฏ (มักมองไม่เห็น) ของค่าใด ๆ ในตัวติดตั้งแบบกระจาย "- จริงในแพลตฟอร์มอื่น ๆ แต่ Apple มีประวัติอันยาวนานของการจัดเก็บเนื้อหาที่สำคัญ (เช่นไอคอน!) ใน" ทรัพยากรส้อม "( วันนี้ xattrs)
Charles Duffy

3

ซอฟต์แวร์ Mac สามารถจัดส่งเป็นชุดรวม.appแอปพลิเคชัน (เป็นโฟลเดอร์ที่มีทรัพยากรโปรแกรมทั้งหมด) หรือเป็นตัว.pkgติดตั้งซึ่งเป็นโปรแกรมที่ติดตั้งแอปพลิเคชันในลักษณะคล้ายกับ Windows

เครื่องมือบรรทัดคำสั่งเท่านั้นมีอยู่เป็นธรรมดาไบนารีซึ่งก็จะถูกคัดลอกไปที่ไหนสักแห่งในของผู้ใช้เช่นPATH/usr/local/bin

เหล่านี้สามารถบรรจุใน OS X / ภาพดิสก์ MacOS ( .dmg) หรือรูปแบบที่เก็บแบบดั้งเดิมเช่นหรือ.zip.tar


เหตุผลใดที่ต้องติดตั้งซอฟต์แวร์ด้วย "ดิสก์เสมือน" เช่นนี้

นี่ขึ้นอยู่กับนักพัฒนาเป็นส่วนใหญ่ A .dmgเป็นเพียงฮาร์ดไดรฟ์เสมือนไม่ใช่ตัวติดตั้ง ทางเลือกในการใช้งาน a .dmgเป็นเรื่องของบรรจุภัณฑ์มากกว่าการติดตั้ง

หากแอปพลิเคชันเป็นชุดที่เรียบง่าย.appมันจะมีอยู่ในตัวเองและสามารถรันได้โดยดับเบิลคลิก มันถูกคัดลอกโดยทั่วไปเพื่อ/Applicationsความสะดวก

นอกเหนือจากการเข้ารหัสและ EULAs เมื่อเปิดข้อดีของ.dmgการเก็บถาวรคือการสร้างแบรนด์ .dmgs สามารถได้รับไอคอนที่กำหนดเอง, ภาพพื้นหลังที่กำหนดเองและรูปแบบของเนื้อหาที่สามารถแก้ไขได้ .dmgs มักจะอ่านอย่างเดียวดังนั้นเนื้อหาจะยังคงตรงตามที่ผู้พัฒนาต้องการ

พวกเขายังบังคับให้ผู้ใช้เลือกตำแหน่งที่พวกเขาต้องการแอปพลิเคชัน เมื่อคุณเปิดเครื่องรูดไฟล์เก็บถาวรเนื้อหาโดยทั่วไปจะถูกแยกไปยังที่เก็บถาวร ในทางตรงกันข้าม.dmgs จะเมานต์ในระบบไฟล์จากนั้น.appบันเดิลต้องถูกคัดลอกอย่างชัดเจน


ทำไมมันไม่มาเป็นไฟล์ไบนารีอย่างง่ายหรือฉันไม่รู้อะไรเลย?

แอปพลิเคชั่น Mac เป็นมากกว่าไบนารี นอกจากไบนารี (อยู่ที่<appname>.app/Contents/MacOS/) แล้วยัง.appมีทรัพยากร<appname>.app/Contents/Resources/อีกหลายอย่างใน en.lprojทรัพยากรเหล่านี้รวมถึงไอคอนกราฟิกและไฟล์สำหรับท้องถิ่นเช่น


2

มีการใช้งานอื่น ๆ สำหรับไฟล์. dmg นอกเหนือจากการติดตั้งซอฟต์แวร์หรือไม่?

อีกคุณสมบัติที่มีประโยชน์เกี่ยวกับ DMGs (เนื่องจากคุณถามเกี่ยวกับการใช้งานอื่น ๆ ) คือความสามารถในการสร้างพื้นที่เก็บข้อมูลที่เข้ารหัสและจัดเก็บไฟล์ในพื้นที่ป้องกันนั้น มีประโยชน์ถ้าคุณต้องการปกป้องไฟล์บางไฟล์ แต่ไม่เข้ารหัสฮาร์ดไดรฟ์หลักทั้งหมดของคุณ

ดูDisk Utility สำหรับ macOS Sierra: สร้างภาพดิสก์โดยใช้ Disk Utilityสำหรับข้อมูลเพิ่มเติมเกี่ยวกับการสร้างไฟล์. dmg ที่เข้ารหัส


การเข้ารหัสลับ .dmgแต่มีอยู่แล้วไปได้โดยไม่จำเป็นต้องสำหรับ Unix ไม่เข้ารหัสหรือไม่
Pacerier

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