在 Ubuntu 中启用系统蜂鸣声

在 Ubuntu 中启用系统蜂鸣声

我尝试让系统蜂鸣器工作,但没有成功。我使用了echo -e '\a'应用beep程序。

我尝试modprobe pcspkr在命令行中输入,并确保 pcspkr 未列在 modprobe 黑名单中。我还启用了

  • 从 Gnome 桌面:系统 → 声音 → 系统蜂鸣 → 启用蜂鸣声,
  • 从终端窗口:编辑 → 常规 → 终端铃声。

但这并没有解决问题。

我的电脑是 IBM Thinkpad iSeries 笔记本电脑。我知道我的硬件扬声器可以正常工作,因为如果在启动时电池电量不足,它就会发出哔哔声。

答案1

这可能是一个可行的解决方案

有时会发生的情况是,pcspkr可能会被添加到黑名单,将其从黑名单中删除

/etc/modprobe.d/blacklist如果存在,请编辑并删除这些行:(注意:您需要编辑/etc/modprobe.d/blacklist.conf

# get rid of system beep

blacklist pcspkr

重新启动以停用此线路。要禁用扬声器(发出哔声),请添加这些线路并重新启动。

这也许能解决您的问题。如果我们知道系统详细信息,可以提供更多信息。

如果这不能解决您的问题,请尝试运行sudo modprobe pcspkr

答案2

我的笔记本电脑没有 PC 扬声器,所以我需要一个纯软件解决方案。我找到了一篇关于设置 GNOME 的文章播放系统蜂鸣声的音频文件

这个想法是设置 xkbevd(1) 在发生某个事件时运行命令;在本例中为事件Bell。对于 Ubuntu 9.04 Jaunty(可能还有以前的版本),提供的许多声音文件都是 ogg vorbis 格式而不是 wave 格式,因此根据您想要在终端铃声上播放的声音,使用 aplay(1) 可能不起作用。如果您还没有安装 vorbis-tools 包,则需要安装它:

sudo aptitude install vorbis-tools

之后,您需要创建~/.xkb/xkbevd.cf(请注意拼写,文章这里有一个错别字)并插入以下内容:

soundDirectory="/usr/share/sounds/"
soundCmd="ogg123 -q"

Bell() "ubuntu/stereo/bell.ogg"

为了让守护进程在登录时运行,您可以按照文章的建议编辑您的配置文件,或者您可以将其添加到您的启动应用程序(系统 -> 首选项 -> 启动应用程序)。单击添加以创建一个新的启动程序,将名称设置为XKB Event Daemon,将命令设置为xkbevd -bg,将注释设置为Software terminal bell

答案3

我也遇到了同样的问题。对于我来说,通过在控制台上打开“alsamixer”并取消静音“Beep”滑块解决了这个问题。

答案4

  • 检查 pcspkr 模块当前是否已加载

    $ lsmod | grep pcspkr
    pcspkr 10496 0

  • 检查/var/log/dmesg中是否有相关错误

    $ sudo grep pcspkr /var/log/dmesg
    [ 15.620198] 输入:PC 扬声器为 /devices/platform/pcspkr/input/input8

如果仍然没有线索,请对 /var/log/dmesg 进行全面手动检查,以查找其他错误。使用今天的时间戳快速 grep /var/log/* 中的其他日志也可能会找到一些结果。

上述步骤仅帮助您缩小可能的问题范围。对于此类问题,很难立即猜出答案。

相关内容