如何在 Ubuntu Server 22.04.3 LTS 上使板载 PC 扬声器发出蜂鸣声?

Sim*_*gma 9 server command-line 22.04

我有两台旧机器用作文件服务器。第一个配备GIGABYTE GA-G41M-Combo(版本 2.0),配备Intel Core 2 Duo 处理器 E7400(3M 缓存,2.80 GHz,1066 MHz FSB),第二个配备ASRock 4Core1600Twins-P35,配备Intel Core 2 Quad处理器 Q9550(12M 高速缓存,2.83 GHz,1333 MHz 前端总线)。当然,两台机器都有板载音频板载 PC 扬声器!在两台机器上,我都安装了“ Ubuntu Server 22.04.3 LTS ”和“ CasaOS ”,并且我正在尝试创建一项服务或类似的服务,当 CasaOS 运行时,它将使用板载 PC 扬声器不是板载音频)发出蜂鸣声。已加载。但在我到达那里之前,我的问题是当我测试“beep”程序时。在两台机器上,我都无法通过板载 PC 扬声器发出蜂鸣声。

我通过键入安装了“beep” sudo apt-get install beep,但是当我键入时beep收到此消息beep: Error: Could not open any device

我读过一些旧的类似文章和问题,其中提到了一些解决方案,例如sudo modprobe pcspkr,或将行注释blacklist pcspkr/etc/modprobe.d/blacklist.conf文件中,但它们都没有帮助我解决这个问题。


编辑

  1. 当我运行时sudo modprobe pcspkr,它只是等待下一个输入,没有任何错误。
  2. 运行的输出lsmod | grep pcspkrpcspkr 16384 0.
  3. 的输出sudo grep -R pcspkr /etc/modprobe.d//etc/modprobe.d/blacklist.conf:# blacklist pcspkr.
  4. 的输出paplay /usr/share/sounds/freedesktop/stereo/bell.ogaCommand 'paplay' not found, but can be installed with: sudo apt install pulseaudio-utils.
  5. 但当我运行这个时,我可以听到简单的蜂鸣声sudo sh -c "echo -e '\\a' > /dev/console"

Sim*_*gma 14

经过几个小时的研究,我最终得到了这个解决方案......

  1. 通过运行安装“ beepsudo apt-get install beep ” 。

  2. 运行sudo nano /etc/modprobe.d/blacklist.conf编辑blacklist.conf位于/etc/modprobe.d文件夹和注释blacklist snd_pcspblacklist pcspkr行的文件,以便将它们从黑名单中删除。

    # low-quality, just noise when being used for sound playback, causes
    # hangs at desktop session start (Ubuntu: #246969)
    # blacklist snd_pcsp
    
    # ugly and loud noise, getting on everyone's nerves; this should be done by a
    # nice pulseaudio bing (Ubuntu: #77010)
    # blacklist pcspkr
    
    Run Code Online (Sandbox Code Playgroud)
  3. 运行sudo usermod -aG input $USER此命令将当前用户添加到输入组,这将授予访问设备所需的权限。

  4. 重启。

  5. 要测试,只需输入beepCLI 并点击enter

有关如何使用的更多信息,beep请访问此链接

  • 只需输入“beep”并按 Enter 键即可。另一个例子`beep -f 3500 -l 250 -d 250 -r 3`。有关更多信息,请查看此处 https://manpages.ubuntu.com/manpages/xenial/en/man1/beep.1.html 。 (3认同)