The Ubuntu startup/login sound can be very loud, but I do like having it. I wrote a script that uses amixer to set the volume to 25%. This is the level I like to have it at, but when I use TV out or headphones I have to turn up the volume. I cannot seem to get the script to run before the login sound plays. I have tried a cron @reboot, and putting a symlink to the script in /etc/rc3.d/, and in my .bash_profile script. Only the 3rd method actually sets the volume correctly, but after the login sound plays.
Ideally I want to have the script run when I am logging out for the night, or just before the ubuntu login screen displays.
Here is the command to set the volume:
`/usr/bin/amixer -c 0 sset Master,0 25% > /dev/null`
Suggestions for other methods to try are appreciated.
You might want to try adding that line to your like to /etc/rc.local
This may not be soon enough though, since rc.local will be called after gdm.
Also note, the default runlevel on Ubuntu is 2, not 3. Your link in rc3.d probably didn't work simply because you where not using runlevel 3. The default runlevel is setup by /etc/event.d/rc-default