Neden yazılımı `ddg` dosyaları ile yüklüyoruz?


28

Yazılım yüklemek istediğimde, genellikle bir .dmg(Disk iMaGe) dosyası indiririm. Açtığımda, bu .dmgdosya "sanal disk" olarak adlandırdığım (dolayısıyla sanırım adı) dediğim gibi görünüyor ve Finderaltında listeleniyor devices. Ayrıca Disk Utilityaltında listelenmiştir Disk Imagesve diğer diskler gibi silinebilir veya çıkarılabilir.

  • Böyle bir "sanal disk" ile hangi yazılımın kurulması gerektiği mantığı nedir?
  • Neden basit bir ikili dosya olarak gelmiyor ya da ne olduğunu bilmiyorum?

12
Yükleme yazılımı her zaman neden olabilir d bir kutle bir g , e.
tatlılar

1
Basit bir ikili dosya bir yükleyici olacaktır. DMG ile uygulamayı bir yükleyici çalıştırmadan kopyalayabilirsiniz.
Thorbjørn Ravn Andersen

10
Mac uygulamalarının çoğu tekli dosyalara benzer, ancak gerçekte içinde "birçok dosya bulunan" uygulama paketleridir. Finder onu tek varlık olarak görüntüler, ancak üzerlerine sağ tıklayıp içindeki dosyaları incelemek için "İçeriği aç" ı seçebilirsiniz. Yani, "basit ikili" işe yaramaz.
el.pescado


Son paragraf ayrı bir soru olmalıdır çünkü ayrı cevaplara yol açmaktadır
user151019

Yanıtlar:


34

DMG'lerin onları eski fermuarlardan üstün kılan birkaç temel özelliği vardır

  • Onlar tam bir dosya sistemidir (yani dosya izinlerini saklayabilir, özel klasör arka planlarına sahip olabilirler vb.)
  • Montajdan önce yasal zorunluluklara uygun “zorunlu” EULA'ları destekliyorlar
  • Daha güvenilir bir yürütme ortamı sağlayın. Kurulum için mutlak yol çalışmaları yapmanız gerekiyorsa (ki bu yapmamanız gereken) DMG'yi hazırlayabilir, salt okunur olarak işaretleyebilir ve bunu yüklemek için kullanabilirsiniz

Gerçekten de temel özellik, tam HFS + dosya sistemini desteklemeleridir. Zip (genellikle, Linux sürümleri bazen izinleri destekler) aptalcadır ve sadece birlikte verilen dosya ve klasörleri destekler. Meta veri yok, sadece dosyalar var.


14
Ek noktalar: 10.12'den başlayarak, .dmg dosyaları bütünlük için kod imzalı olabilir (.zip dosyaları imzalı kod içerebilir , ancak kendilerini indirmeyi sürdürecek şekilde imzalanamazlar). Ayrıca, "basit ikili" seçeneği hiç çalışmaz, çünkü çoğu macOS yazılımı düz dosyalar yerine paketler (karmaşık (gizli) iç yapıya sahip klasörler) gelir.
Gordon Davisson

9
"Zip aptalca ve sadece destekliyor ..." - Bu değerlendirmeye katılmıyorum. Sadece bir şeyin basit olması aptalca olduğu anlamına gelmez. Sadelik bir erdemdir ve nadiren dağıtılmış bir yükleyicideki herhangi bir değerin (genellikle görünmez) dosya meta verileridir.
Dai,

14
@Dai o aptal gibi aptal anlamına gelir; program ne yaptığını bilmiyor - işe yaramaz değil.
Tim

3
Bence ZIP iyi bir kıyaslama değildir. Neden örneğin sıkıştırılmış TAR gibi değil tar.gz? Mağaza izinlerini yapar.
Ruslan

2
@Dai, "dağıtık bir yükleyicideki herhangi bir değerin nadiren (genellikle görünmez olduğu) dosya meta verileridir" - diğer birçok platformda geçerlidir, ancak Apple'ın "kaynak çatalları" nda (yani simgeler!) Kritik içeriği saklama konusunda uzun bir geçmişi vardır. bu günlerde, xattrs).
Charles Duffy

3

Mac yazılımı, bir .appuygulama paketi (temelde tüm program kaynaklarını içeren bir klasör) veya .pkguygulamaları Windows'a benzer şekilde yükleyen bir program olan bir yükleyici olarak sunulabilir .

Sadece komut satırı araçları daha sonra kullanıcının içinde bir yere kopyalanmış olacaktır düz ikili olarak mevcuttur PATHgibi /usr/local/bin.

Bunlar bir OS X / MacOS disk görüntüsü (paketlenebilir .dmggibi) ya da geleneksel bir arşiv biçimi .zipveya .tar.


Böyle bir "sanal disk" ile hangi yazılımın kurulması gerektiği mantığı nedir?

Bu büyük ölçüde geliştiriciye kalmış. A .dmg, yalnızca sanal bir sabit sürücü değil, yükleyicidir. A'yı kullanma tercihi .dmgkurulumdan ziyade paketleme ile ilgilidir.

Bir uygulama basit bir .appdemet ise, kendine özgüdür ve çift tıklatarak çalıştırılabilir. Genellikle /Applicationskolaylık sağlamak için kopyalanır .

Şifrelemeye ve açılışta EULA'lara ek olarak, .dmgarşiv türünden daha fazla yararlanma markalaşmadır. .dmgÖzel simgeler, özel arka plan resimleri verilebilir ve içeriklerin düzeni düzeltilebilir. .dmgs genellikle yalnızca okunur, böylece içerik tam olarak geliştiricinin istediği şekilde kalır.

Ayrıca kullanıcıyı nerede uygulama isteyeceklerini seçmeye zorlarlar; Bir arşivi açtığınızda, içerik genellikle arşivin bulunduğu yere çıkartılır. Buna karşılık, .dmgs dosya sistemine bağlanır ve ardından .apppaket açıkça kopyalanmalıdır.


Neden basit bir ikili dosya olarak gelmiyor ya da ne olduğunu bilmiyorum?

Bir Mac uygulaması sadece bir ikiliden daha fazlasıdır. İkili dosyaya ek olarak (bulunan <appname>.app/Contents/MacOS/) bir .appiçinde bir dizi kaynak içerir <appname>.app/Contents/Resources/. Bu kaynaklar simgeler, grafikler ve yerelleştirme dosyalarını içerir en.lproj.


2

Yazılım kurulumundan başka .dmg dosyaları için başka bir kullanım var mı?

DMG'lerle ilgili başka bir yararlı özellik (diğer kullanımlar hakkında sorduğunuzdan beri) şifreli bir depolama alanı oluşturma ve dosyaları bu korunan alanda saklama yeteneğidir. Bazı dosyaları korumak ancak tüm ana sabit diskinizi şifrelemek istemiyorsanız kullanışlıdır.

MacOS Sierra için Disk Yardımcı Programına bakınız : Şifrelenmiş .dmg dosyaları oluşturma hakkında daha fazla bilgi için Disk Yardımcı Programını kullanarak bir disk görüntüsü oluşturun.


Şifreleme, ancak zaten gerek kalmadan yapılabilir .dmg. Unix şifrelemiyor mu?
Pacerier

@ Pacerier - Tabii ki - Linux / Unix ile her şey gibi, bir şeyler yapmanın birden fazla yolu var.
Ken,
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.