笔记本的响铃声真是超大声,有意思的是在Gnome中和在控制台中响铃声音是不同的,按Tab键补全和到行首行尾总是响铃,在登录界面输错密码也响,真的很烦人,于是想把它关掉,本文记录折腾过程。
先Google一下,找到archlinux的维基,挺详细的,如果你是搜进来也是找关掉响铃的方法,先看这个维基,不行在继续看本文,还是没功夫看长篇大论的直接跳到“成功的方法”,不过还是建议留意一下其它方法,或许可能我用笔记本情况比较特殊。
脚本选项设置
维基说有几种方法,每种方法都有不同效果,我的目的就是,把那该死的响铃完全禁用!出现响铃会有这几个地方:
- 控制台(CTRL+ALT+FN),
- 虚拟终端(就是X里的gnome-terminal)
- 登录窗口 (输入用户和密码的gdm)
- 其它X程序(如gedit删掉所有内容后继续按退格键)
下面的方法都是单独设置的,每一个步骤试过后会恢复原值。
- 网上论坛比较多的是修改“~/inputrc”,不过我没在家目录下找到这个文件,因为有时也在控制台用root账号,避免每个账号都设置一下,所以干脆修改全局配置,用文本编辑器打开“/etc/inputrc”,把第二行的“#”删掉然后重新登录,即
# do not bell on tab-completion
set bell-style none
控制台,虚拟终端不响了。其它X程序,登录窗口依然响,控制台运行了vim。
- 登录进X后,在终端运行
xset -b
X中所有程序不响了。控制台,登录界面依然响。这可条命令写进gdm登录后运行的脚本里,不过gdm还是会响的。如果写进“/etc/X11/xinit/xinitrc”末尾还是会响
- 在菜单“系统”>>“首选项”>>“音效”,“音效”选项卡,取消勾选“播放报警声音”,其它X程序不响,虚拟终端响。
- 在菜单“系统”>>“系统管理”>>“登录窗口”,“辅助功能”选项卡,取消勾选“启用辅助功能登录”,登录窗口依然响,没任何效果。
卸载模块
上面第个合用1、2个方法可解决第除了登录窗口外的响铃,于是我想干脆把喇叭(是主板的喇叭)模块给禁用,按维基的说法,修改“/ect/rc.conf”,改一行
MODULES=(!pcspkr)
重启,没效,按维基说法,运行
lsmod | grep snd_pcsp
有输出,所以我改成
MODULES=(!snd_pcsp)
重启没效,改成
MODULES=(!pcspkr !snd_pcsp)
都没效,用
rmmod !snd_pcsp
即时卸载,还是没效,这是笔记本问题吗,用“lsmod”看了一下,没有“pcsker”这个模块。
成功的方法
有些泄气了,维基中最后一个方法,这么复杂的命令不抱希望,不过还是运行了一下
amixer set 'PC Speaker' 0% mute
很可惜,出现
amixer: Unable to find simple control 'PC Speaker',0
没找到“PC Speaker”,于是我抱着准备上论坛求助的绝望之心(我总是想先自己解决)看了一下“amixer”的帮助,运行
amixer scontrols
结果发现这么一行
Simple mixer control 'PC Beep',0
立马把“Speaker”换成“Beep”,运行,即
amixer set 'PC Beep' 0% mute
出现
Capabilities: pvolume pvolume-joined pswitch pswitch-joined
测试一下,所有情况都不响铃了!成功鸟,娃哈哈。重启后依然不响,那么就不用找启动脚本写入这个命令了,可能是我安装了“alsa-ultis”这个包后,alsa把声音管理给接管了。
Playback channels: Mono
Limits: Playback 0 - 3
Mono: Playback 0 [0%] [-18.00dB] [off]
整个世界清静晒~