Réponse courte: oui.
Réponse longue: Oui, mais… une réponse complète à cette question comprend une réponse technique et une préoccupation pratique.
Tout d'abord, la réponse technique
Vous pouvez installer un .pkg ou .mpkg à l'aide de cette syntaxe:
sudo installer -verboseR -pkg "/path/to/pkg/foo.mpkg"
Si le programme d'installation n'est pas «signé» correctement, vous devrez ajouter -allowUntrusted
sudo installer -allowUntrusted -verboseR -pkg "/path/to/pkg/foo.mpkg"
Vous devrez peut-être également spécifier où vous souhaitez l'installer, en utilisant -target /
(je ne suis pas sûr à 100% que cela soit nécessaire , mais c'est une bonne idée):
sudo installer -allowUntrusted -verboseR -pkg "/path/to/pkg/foo.mpkg" -target /
Maintenant, le problème est qu'il sudo
va vous demander votre mot de passe administrateur lorsque vous essayez de l'exécuter installer
. Si vous souhaitez automatiser cela, vous devez indiquer à votre Mac de ne pas exiger votre sudo
mot de passe lors de l'exécution du programme d'installation. Pour ce faire, vous pouvez ajouter cette ligne à votre /etc/sudoers
fichier:
%admin ALL=NOPASSWD: /usr/sbin/installer
Voir man visudo
pour obtenir des instructions sur la modification de ce fichier.
Deuxièmement, la préoccupation pratique
Si vous êtes la seule personne à utiliser votre Mac, l'ajout de la ligne ci-dessus /etc/sudoers
n'est pas un problème.
Cependant, s'il s'agit d'un Mac partagé, les autres personnes du groupe «admin» pourront s'exécuter /usr/sbin/installer
sans être invité à entrer leur mot de passe.
De plus, évidemment, si quelqu'un entre dans votre compte «administrateur», il pourrait aussi, théoriquement, causer des méfaits avec /usr/sbin/installer
. Bien que je ne sache pas exactement ce qu'ils feraient, c'est un compromis entre sécurité et commodité.
Troisièmement, un script github
J'ai écrit pkginstall.sh pour faire de belles choses comme journaliser le processus, ainsi que pour vous dire si vous êtes censé redémarrer ou non après avoir installé le paquet.
Dernier point mais non le moindre: automatiser le "comment?"
En ce qui concerne la façon dont vous souhaitez automatiser l'installation, cela dépend de plus de détails sur ce que vous essayez de faire. Vous pouvez, par exemple, créer un dossier tel que ~ / Action / AutoInstallPKG / et indiquer launchd
d'installer tous les fichiers .pkg ou .mpkg qui sont ajoutés à ce dossier, puis le déplacer de côté après.
J'avais l'intention de faire quelque chose comme ça depuis longtemps, et donc je l'ai finalement mis en place. Vous pouvez le trouver sur https://github.com/tjluoma/autopkginstall . Les instructions d'installation sont incluses dans Github, donc je ne les répéterai pas ici.