comment installer silencieusement .dmg dans MacOS?


8

J'ai un package MacOS .dmg (avec des boutons «continuer», EULA, etc.) que je dois installer sur plusieurs ordinateurs. Est-ce un moyen de le faire en silence via un script bash / python / ruby ​​/ etc, tout comme l'installation silencieuse de MSI dans Windows? Je peux automatiser le script d'écriture de l'installation qui cliquera sur les boutons pour moi, mais cela ne semble pas naturel :).

Réponses:


14

pour installer un DMG, vous pouvez faire ceci:

cd ~/Desktop

curl -O http://darwinports.opendarwin.org/downloads/DarwinPorts-1.2-10.4.dmg

hdiutil attach DarwinPorts-1.2-10.4.dmg

cd /Volumes/DarwinPorts-1.2/

sudo installer -pkg DarwinPorts-1.2.pkg -target "/"

hdiutil detach /Volumes/DarwinPorts-1.2/

En un mot, cette

  1. va dans votre dossier Desktop
  2. saisit DarwinPorts du site opendarwin
  3. monte le dmg
  4. passe au volume DarwinPorts nouvellement monté
  5. installe le package, ciblé sur la racine, en tant qu'utilisateur root
  6. éjecte l'image du disque monté.

vous pouvez ensuite utiliser Automator pour ce faire ...

code extrait de cette page


2
ahem ... pourriez-vous simplement commenter que vous avez copypasté codesnippets.joyent.com/posts/show/322 ? : D
Andor

à quoi ça sert?
balexandre

7
Donner du crédit à l'auteur d'origine?
ceejayoz

qui me dit qu'il n'a pas copié des autres;)
balexandre

1
Le lien source est mort, alors à quoi ça sert?
Mikael Dúi Bolinder


2

Est-ce un DMG plus un PKG?

Parce que DMG, tel quel, ne peut pas être installé, c'est juste un volume, une image, comme un ISO. Donc probablement ce que vous avez est un DMG plus un PKG ou un installateur à l'intérieur ...

S'il s'agit d'un PKG, il peut probablement être installé à distance ou en silence, mais s'il s'agit d'un autre programme d'installation, cela peut être plus délicat, notez bien maintenant ...

Le bureau à distance peut également, comme le dit adamvs, déployer des packages dans vos installations ...


1
.dmg avec un .pkg à l'intérieur. .pkg peut être extrait avant l'installation, ce n'est pas un problème.
grigoryvp


0
echo "mounting server"
  mount_afp afp://username:password@yourserver
  hdiutil attach /Volumes/yourserver/pathtodmg.dmg
  /usr/sbin/installer -pkg /Volumes/pathtopkgfile.pkg -target / -verboseR
echo "umounting the repository"
  umount /Volumes/yourserver
  status=$?
    if [ $status != 0 ]
    then
        echo "Something went wront unmounting the server... no problem... we'll just remove the directory"
        rmdir /Volumes/yourserver
    fi

J'ai trouvé que c'était une façon très propre d'installer et était presque entièrement silencieux (à l'exception de l'attachement initial)

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.