snd-aloop 去哪儿了?

snd-aloop 去哪儿了?

snd-aloop我使用的是 arch linux,一年来一直在使用它创建虚拟音频设备,没有出现任何问题。4.18.3但是,自从昨天系统升级到新的 Linux 内核 () 后,该模块似乎不再存在:

$ sudo modprobe snd-aloop
modprobe: FATAL: Module snd-aloop not found in directory /lib/modules/4.18.3-arch1-1-ARCH
$ sudo modprobe snd_aloop
modprobe: FATAL: Module snd_aloop not found in directory /lib/modules/4.18.3-arch1-1-ARCH
$ modinfo snd-aloop
modinfo: ERROR: Module alias snd-aloop not found.
$ modinfo snd_aloop
modinfo: ERROR: Module alias snd_aloop not found.

我已经尝试alsactl restore -P建议,但它并没有改变任何事情。

我不想使用 pulseaudio,module-null-sink因为它会消耗更多的 CPU 电量。

snd-aloop模块是否已被弃用并被删除,还是我只是错过了其他内容?我尝试谷歌搜索"snd-aloop"并设置时间范围last month,但 8 个结果与我的问题无关,也没有任何迹象表明该模块已被删除。

答案1

我刚刚写完问题才发现原因。希望它能帮助别人:

虽然uname -a告诉我我使用的内核是4.18.3- 但实际上我已升级到4.18.5。我通过运行以下命令发现了这一点:

$ ls /lib/modules
4.18.5-arch1-1-ARCH  extramodules-ARCH

文件夹前缀4.18.5显示新内核版本是4.18.5,但直到重新启动后才会生效,这就是为什么modprobe在一个不再存在的文件夹中寻找内核模块的原因。

重新启动解决了该问题。

答案2

近 10 年的经验告诉我,大多数 Linux 用户最终都会明白的一件事:-

Linux 中很少有系统“操作”需要重新启动才能执行(Windows 似乎对所有操作都这样做)。内核升级(或任何与内核相关的操作)是相对较少的需要重新启动的操作之一。

哦,当然还有另外一个:你必须非常精确地了解你要求系统做什么!

相关内容