come installare silenziosamente .dmg in MacOS?


8

Ho un pacchetto MacOS .dmg (con pulsanti 'continua', EULA ecc.) Che devo installare su più computer. È un modo per farlo in modo silenzioso tramite uno script bash / python / ruby ​​/ etc proprio come l'installazione MSI silenziosa in Windows? Posso automatizzare lo script di scrittura dell'installazione che farà clic sui pulsanti per me, ma sembra un po 'innaturale :).

Risposte:


14

per installare un DMG puoi farlo:

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/

In poche parole, questo

  1. va nella cartella del desktop
  2. prende DarwinPorts dal sito opendarwin
  3. monta il dmg
  4. passa al volume DarwinPorts appena montato
  5. installa il pacchetto, indirizzato al root, come utente root
  6. espelle l'immagine del disco montato.

allora puoi usare Automator per fare questo ...

codice preso da questa pagina


2
ahem ... potresti semplicemente commentare che hai copypasted codesnippets.joyent.com/posts/show/322 ? : D
Andor,

qual e il punto?
balexandre,

7
Dare credito all'autore originale?
Ceejayoz,

chi mi dice che non ha copiato da altri;)
balexandre,

1
Il link alla fonte è morto, quindi qual è il punto?
Mikael Dúi Bolinder,


2

È un DMG più un PKG?

Poiché DMG, così com'è, non può essere installato, è solo un volume, un'immagine, come una ISO. Quindi probabilmente quello che hai è un DMG più un PKG o un installatore all'interno ...

Se è un PKG, probabilmente può essere installato da remoto o in silenzio, ma se è un altro programma di installazione, può essere più complicato, nota subito in questo momento ...

Anche il desktop remoto, come dice adamvs, può distribuire pacchetti nelle tue installazioni ...


1
.dmg con all'interno un .pkg. .pkg può essere estratto prima dell'installazione, non c'è problema.
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

Ho scoperto che questo è un modo davvero pulito di installazione ed è quasi completamente silenzioso (Tranne per l'allegato iniziale)

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.