Blacklist your pc speaker to disable system beeps
I hate the internal beep speaker. I hate it, I hate it, I hate it. Okay, maybe not that much hate, but I really don’t like having it enabled. It beeps anytime the terminal cursor goes in the wrong direction. Or if the sound isn’t working quite right when I’m setting things up. Or if it’s time to put another quarter in the dryer. It’s just a nuisance.
On some machines I’m fine — Dell’s BIOS, for example, sometimes includes the option to mute the darn thing. But on others I’m not so lucky.
The easiest way I know of — short of popping the case and yanking the cord to the case speaker — is to blacklist the pcspkr module. In Ubuntu, you can do that like this.
sudo nano -w /etc/modprobe.d/blacklist
At the end of the file, add this line.
blacklist pcspkr
Hopefully, that should keep it from ever mouthing off again.
In Arch, the same idea is handled in that lovely rc.conf file, where all the good stuff happens. Open your rc.conf. …
sudo nano -w /etc/rc.conf
(Yes, I use sudo in Arch. I’m a wimp.) Now find this line.
MOD_BLACKLIST=()
And change it to this.
MOD_BLACKLIST=(pcspkr)
Bingo. Silence. Now maybe I can get some work done.








I had a different solution to the problem. I found a HOWTO on the Gentoo wiki that says how to convert the PC speaker beeps into commands to play a sound file.
It worked too, until I dist-upgraded my system. Even before I did, the computer seemed to forget itself and resume the PC speaker beeps after an hour or two. But still, it’s a great concept, because I’d rather have a nicer method of notification than no notification at all.
Some speakerless MBs, such as my thinkpad, use the sound card for the pcspkr – somewhere around 2.6.24->25 or ->26, my long-time blacklist of pcspkr did not work and I discovered that the new module being used was snd_pcsp! One more addition to my blacklist rules ;)
$ tail -2 /etc/modprobe.d/blacklist
blacklist pcspkr
blacklist snd_pcsp
Kind Regards.