I have four sound cards: two that I use (on-board HDA and a creative live card) and two that I don't (HDA on the video card and USB audio in the monitor). /etc/modprobe.conf is set up correctly:

# Card 0 - Live
options snd-emu10k1 index=0
install /bin/modprobe --ignore-install snd-emu10k1-synth; /usr/bin/asfxload  /share  /SoundFonts/8mbgmsfx.sf2
alias snd-card-0 snd-emu10k1
alias sound-slot-0 snd-emu10k1

# Card 1 - HDA on-board
options snd-hda-intel index=1,3 id="HDA,HDMI" enable=1,0
alias snd-card-1 snd-hda-intel
alias sound-slot-1 snd-hda-intel

# Card 2 - monitor via USB
options snd-usb-audio index=2 enable=0

On every reboot the two wrong modules get loaded, and the two right ones fail to load because their slots are already taken. If I rmmod the modules by hand and restart alsa everything works. The snd_usb_audio module is blacklisted in /etc/modprobe.conf but it still gets loaded. How can I persuade the system to do the right thing when it boots?


You should blacklist the modules you do not want to get loaded. This means the kernel will not try to load these at boot.

I think you do this on gentoo via the /etc/modules.d/blacklist.conf file. Open up this file and add the names of the modules that shouldn't be loaded, save and reboot.

  • The file to edit is /etc/modprobe.d/blacklist.conf and then run update-modules. The snd_usb_audio module is already blacklisted but it still gets loaded – PiedPiper Sep 2 '09 at 8:51
  • Yes a lot of configuration files have a .conf in the newer installations. I'll modify my answer. I didn't want to include update-modules since I'm not sure of its status on Gentoo (it's an obsolete command on Debian systems - cs.drexel.edu/cgi-bin/manServer.pl/usr/share/man/man8/…). The alternative is to reboot. If the module is blacklisted but still being loaded, try running sudo update-initramfs -u and then rebooting. Also check for any other boot process manually loading this module. – nagul Sep 2 '09 at 9:20
  • I don't use initramfs so that's not the problem. Obviously some boot process is loading the modules (dbus? hald?) but the system logs don't say which one – PiedPiper Sep 2 '09 at 22:28
  • Do you get any ideas from the order in which the modules are loaded as per dmesg or the /var/log/syslog output? – nagul Sep 2 '09 at 23:36

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.