2009-11-25 2 views
4

Je crée un package d'installation OS X pour un produit. Lors de son exécution, le volet "Sélectionner une destination" comporte l'étiquette "Installation de ce logiciel requiert X Mo d'espace". Mais je peux exécuter le même paquet deux fois sur la même machine, et voir l'utilisation revendiquée varier de, à savoir de 85 à 127 Mo, dont aucune n'est l'utilisation réelle de ~ 65 Mo du produit.Comment un package d'installation OS X calcule-t-il l'espace requis?

Comment l'installateur calcule-t-il l'espace requis?

Répondre

5

Le fichier d'installation .pkg contient plusieurs composants:

  • l'archive des fichiers à installer
  • une nomenclature (métadonnées listant tous les installable fichiers)
  • ressources pour l'installation elle-même (images, scripts, etc)
  • une Info.plist contenant la version dans formation et valeurs par défaut

La nomenclature, ou "nomenclature", contient des informations telles que les autorisations, la taille des fichiers, la somme de contrôle, etc. Lorsque le programme d'installation exécute un package pour la toute première fois, le total des tailles de fichier répertoriées dans la nomenclature est utilisé pour estimer la taille requise. (S'il existe des composants partagés, cela affectera évidemment le total.)

Une fois l'installation terminée, la nomenclature est enregistrée dans le dossier des réceptions de colis (/Library/Receipts/boms) en tant qu'enregistrement de ce qui a été installé. L'utilitaire lsbom peut être utilisé pour inspecter le contenu de ces fichiers. Sur les installations suivantes du même package (déterminées par l'identificateur de package), les tickets de nomenclature sont consultés pour déterminer les fichiers déjà installés et leur taille totale. Les fichiers inchangés existants sont totalisés et soustraits des nouveaux fichiers à installer, tandis que les fichiers mis à jour qui doivent remplacer les anciens fichiers sont également pris en compte. L'outil pkgutil peut être utilisé pour afficher des informations sur les packages installés. C'est pourquoi l'estimation de la taille de l'installation peut varier d'une installation à l'autre. Les fichiers nouveaux et existants s'ajoutent au total, tandis que les fichiers existants non modifiés sont soustraits des exigences d'installation.

0

Je peux me tromper, mais je suppose que c'est un jeu d'aproxamation par le développeur. Vous devez mettre quelque chose comme "Installer ce logiciel nécessite 120 Mo d'espace"

Je sais que lorsque j'installe un produit sur mon mac, je vois ce qu'il dit qu'il va prendre, et je vois ce qui est actuellement disponible, mais je N'entrez JAMAIS et vérifiez réellement que le logiciel utilisé EXACTEMENT ce qu'il a dit qu'il le ferait. surtout si c'est seulement environ 50MB.

1

Le programme d'installation peut-il inclure d'autres fichiers (Frameworks, StartupItems, Drivers, etc.) que votre programme utilise dans la taille du fichier? Si oui, alors les changements dans les tailles que vous rencontrez peuvent être dus à vous ne pas avoir ces fichiers à un moment donné, et les avoir à un autre?

Bien sûr, je peux me tromper =]

Questions connexes