¿Cómo instalar silenciosamente .dmg en MacOS?

8

Tengo un paquete .dmg MacOS (con botones 'continuar', EULA, etc.) que necesito instalar en varias computadoras. ¿Es una manera de hacerlo silenciosamente a través de un script bash / python / ruby ​​/ etc como la instalación silenciosa de MSI en Windows? Puedo automatizar la instalación del script de escritura que hará clic en los botones para mí, pero parece un poco antinatural :).

grigoryvp
fuente

Respuestas:

14

para instalar un DMG puedes hacer esto:

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 pocas palabras, esto

  1. va a la carpeta de tu escritorio
  2. toma DarwinPorts del sitio opendarwin
  3. monta el dmg
  4. va al volumen DarwinPorts recién montado
  5. instala el paquete, dirigido a la raíz, como usuario root
  6. expulsa la imagen del disco montado.

entonces puedes usar Automator para hacer esto ...

código tomado de esta página

balexandre
fuente
2
ejem ... ¿podrías comentar que copiaste codenippets.joyent.com/posts/show/322 ? : D
Andor
¿Cuál es el punto de?
balexandre
77
¿Dar crédito al autor original?
ceejayoz
que me dice que no copiado de otra;)
balexandre
1
El enlace fuente está muerto, ¿cuál es el punto?
Mikael Dúi Bolinder
4

Si está administrando múltiples Macs, le recomiendo invertir en una copia de ARD : estoy seguro de que hay una respuesta de scripting a su pregunta, pero he estado usando ARD durante tanto tiempo, me temo que no ¡Lo sé!

avstrallen
fuente
1
para responder la pregunta, y usando ARD, vea este enlace: apple.com/remotedesktop/softwaredistribution.html
balexandre
2

¿Es eso un DMG más un PKG?

Debido a que DMG, tal como está, no se puede instalar, es solo un volumen, una imagen, como un ISO. Entonces, probablemente lo que tienes es un DMG más un PKG o un instalador dentro ...

Si se trata de un PKG, probablemente se pueda instalar de forma remota o silenciosa, pero si se trata de otro instalador, puede ser más complicado, tenga en cuenta ahora mismo ...

El escritorio remoto también, como dice adamvs, puede implementar paquetes en sus instalaciones ...

Andor
fuente
1
.dmg con un .pkg adentro. .pkg se puede extraer antes de la instalación, no hay problemas.
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

He encontrado que esta es una forma muy limpia de instalación y es casi completamente silenciosa (excepto el archivo adjunto inicial)

matthew.bassett
fuente