Bei mir war jahrelang die App psst.app im Einsatz. Diese wird nun unter MacOS Mojave (MacOS 10.14) angemeckert, dass sie bald nicht mehr funktionieren wird (vermutlich beim nächsten Major-Upgrade).
Ungetestet:

$ sudo nvram SystemAudioVolume=%80

Weitere Möglichkeiten, wenn die oben angeführte nicht funktioniert (offenbar Hardware-abhängig):

$ sudo nvram SystemAudioVolume=%01
$ sudo nvram SystemAudioVolume=%00
$ sudo nvram SystemAudioVolume=" "

Wieder aktivieren:

$ sudo nvram -d SystemAudioVolume

Quellen:

Die Apps psst.app und StartNinja.app werden nicht mehr weiterentwickelt (Hersteller-Links sind tot). Mit StartupSound.prefPane habe ich keine Erfahrung, ist aber noch über http://www5e.biglobe.ne.jp/~arcana/StartupSound/BETA/index.en.html erreichbar.

Alle ungetestet:
Im Mac AppStore gibt es die Apps Silent Boot, Silent Start, Calm und StilleOpstart.
Die App beQUIET simple hat noch ein paar zusätzliche Sound-Features.

Update 1.1.2019:

Ich habe bei contolc.de und später in diesem Thread bei Apple folgende Vorgehensweise per Skript gefunden. Die Skripte werden beim Starten (Login) und Ausschalten (eigenltich ausloggen – Logout) ausgeführt. Lege als root 2 Dateien mit folgendem Inhalt an (Pfad habe ich für mich so gewählt, vermutlich muss man das Directory bash noch anlegen):
/Library/scripts/bash/mute-on.sh:

#!/bin/bash
osascript -e 'set volume with output muted'

/Library/scripts/bash/mute-off.sh:

#!/bin/bash
osascript -e 'set volume without output muted'

Die beiden Skriptdatein müssen dann noch lauffähig gemacht werden:

$ sudo chmod u+x /path/to/mute-on.sh
$ sudo chmod u+x /path/to/mute-off.sh

Überprüfe, ob es bereits Login- oder Logout-Hooks gibt, die möglicherweise überschrieben werden:

$ sudo defaults read com.apple.loginwindow LoginHook
$ sudo defaults read com.apple.loginwindow LogoutHook

Wenn es keine gäbe, würde das übrigens so aussehen:

$ defaults read com.apple.loginwindow LogoutHook
2019-01-01 20:49:54.796 defaults[6951:865614] 
The domain/default pair of (com.apple.loginwindow, LogoutHook) does not exist
$ defaults read com.apple.loginwindow LoginHook
2019-01-01 20:50:09.502 defaults[6955:866535] 
The domain/default pair of (com.apple.loginwindow, LoginHook) does not exist

Bei mir sind da offenbar die Skripte der StartNinja.app hinterlegt!

$ sudo defaults read com.apple.loginwindow LogoutHook
/Applications/StartNinja.app/Contents/Resources/muteOn.sh
$ sudo defaults read com.apple.loginwindow LoginHook
/Applications/StartNinja.app/Contents/Resources/muteOff.sh

Und siehe da … die NinjaApp macht eigentlich auch nichts anderes:
/Applications/StartNinja.app/Contents/Resources/muteOn.sh:

#!/bin/bash

osascript -e 'set volume with output muted'

/Applications/StartNinja.app/Contents/Resources/muteOff.sh:

#!/bin/bash

osascript -e 'set volume without output muted'

Will man die oben angelegten Skripte jetzt selbst aktivieren, geht man folgendermaßen vor (bei mir würde das die Hooks durch die StartNinja.app überschreiben):

$ sudo defaults write com.apple.loginwindow LogoutHook Library/scripts/bash/mute-on.sh 
$ sudo defaults write com.apple.loginwindow LoginHook Library/scripts/bash/mute-off.sh 

Löschen kann man die Hooks wieder über:

$ sudo defaults delete com.apple.loginwindow LoginHook
$ sudo defaults delete com.apple.loginwindow LogoutHook

BTW: was jetzt wirklich by mir den Ton mutet, Psst.app oder StartNinja.app, weiß ich jetzt eigentlich gar nicht. Werde ich in Zukunft wohl ausmisten müssen …