In /etc/init.d/alsasound, the lines if [ -w $asoundcfg -o ! -e $asoundcfg ] ; then $alsactl -f $asoundcfg store appear to provide the option of only storing the current mixer settings if the $asoundcfg file is writable (or has not yet been created). However, since the script is run as root, the -w check succeeds even if $asoundcfg (/etc/asound.state) is set chmod 444. As a work-around I've changed the check to -x and simply not made the file executable, but this is an obvious abuse of the executable bit. Reproducible: Always Steps to Reproduce: 1. chmod 444 /etc/asound.state 2. /etc/init.d/alsasound stop Actual Results: The mixer levels were actually stored, overwriting the read-only /etc/asound.state file. Expected Results: The message "Storing ALSA Mixer Levels... Skipping" should have been displayed, and the /etc/asound.state file should have been left untouched.
this is not a bug.