从启动/登录时完全关闭所有声音?

从启动/登录时完全关闭所有声音?

我不希望我的系统播放声音,永远(开机自检蜂鸣声就可以了)。有没有办法在系统中执行此操作,最好可以在启动或登录时设置?或者如果有必要,编译一个自定义内核,尽管我在其他人的机器上工作时可以使用的东西将是最有用的。

这个问题是由这里的评论引起的https://ux.stackexchange.com/questions/104893/what-is-the-significance-of-the-start-up-sound-of-a-system来自一个认为我通常只移除扬声器的方法太过分的人。但我想不出另一种方法来做到这一点,或者通过谷歌搜索找到一种方法。将音量设置为零不起作用,至少根据我的经验,因为某些程序/网站似乎能够覆盖它。

编辑以添加一些信息来响应评论:

我有几个自己的系统。我用的最多的是联想T61 Thinkpad,所以我不太清楚它们内部的声音是怎样的。这两个塔式盒子是自制的(技嘉主板),我很确定它们没有声卡,因为我几乎只将它们用作计算和存储服务器 - 并且几乎总是通过 ssh 访问它们。

操作系统是 OpenSuSE 的各种迭代,从(我认为)13.1 到最近的 42.?我使用 FVWM 窗口管理器。

答案1

大多数声卡(您没有说您拥有哪一个)允许您通过静音“Master”或类似的混音器控制来完全禁用 ALSA 中的声音。大多数发行版(您没有说您使用哪一个)允许在启动过程中相对较早地加载默认 ALSA 设置(例如,alsa-utils在 Debian 中),并且在某些应用程序实际上想要以这种方式播放任何声音之前应该将声音静音。

如果您还想禁用内置 PC 扬声器,那就有点困难了:我可能会尝试将该pcspkr模块列入黑名单,但我不确定这是否有效。

这两项修改不应被软件包更新覆盖。

答案2

您可以进入操作系统并找到启动过程中使用的音频文件。但这样做的缺点是,每次更新时它们都会被替换,您可能可以制作一个 bash 脚本来为您删除它们。

相关内容