无法在AWS EC2 ubuntu 16.04实例中使用snd-aloop音频驱动程序
在snd-aloop上运行modprobe
$modprobe snd-aloop
modprobe: FATAL: Module snd-aloop not found in directory /lib/modules/4.4.0-1052-aws
AWS matchine中的内核是 -
/lib/modules/4.4.0-1049-aws
/lib/modules/4.4.0-1052-aws
/lib/modules/4.4.0-116-generic
当前内核加载
$uname -r
4.4.0-1052-aws
“/ lib / modules / 4.4.0-116-generic”内核。 location - /lib/modules/4.4.0-116-generic/kernel/sound/drivers/snd-aloop.ko
我已经阅读了以下文档
1. https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/UserProvidedKernels.html - Aws doc指南更改内核。
我不记得其他链接,但我搜索了很多。
请指出正确的方向。如何在AWS EC2 Ubuntu 16.04实例中使用音频驱动程序sdn-aloop?
答案 0 :(得分:5)
更新默认内核启动项的步骤(不修改 /boot/grub/menu.lst ):
在 grub.cfg 中查找所需的菜单和子菜单项:
cat /boot/grub/grub.cfg
例如,您可以使用这样的菜单结构( AWS Ubuntu 16.04 的默认设置):
在这种情况下,如果你需要加载“Ubuntu,Linux 4.4.0-116-generic”,你的默认启动设置将是“1> 2”
编辑默认grub文件:
vim /etc/default/grub
并设置
GRUB_DEFAULT=“1>2”
运行update-grub
reboot now
生效uname -a
进行测试,这应该是 4.4.0-116-generic 此modprobe snd-aloop
之后应该可以正常工作。
答案 1 :(得分:5)
esto me funciono en ubuntu 18
$ update-grub
0: Found linux image: /boot/vmlinuz-5.3.0-1017-aws
1: Found initrd image: /boot/initrd.img-5.3.0-1017-aws
2: Found linux image: /boot/vmlinuz-4.15.0-1057-aws
3: Found initrd image: /boot/initrd.img-4.15.0-1057-aws
4: Found linux image: /boot/vmlinuz-4.15.0-99-generic
5: Found initrd image: /boot/initrd.img-4.15.0-99-generic
seleciona los drive通用文件4 es通用文件编辑/ etc / default / grub
GRUB_DEFAULT =“ 1> 4”
update-grub
reboot now
lsmod | grep snd_aloop
exito朋友。
答案 2 :(得分:0)
我是如何做到的
grep-A100 submenu /boot/grub/grub.cfg |grep menuentry
其中列出了类似
submenu 'Advanced options for Ubuntu' $menuentry_id_option 'gnulinux-advanced-6156ec80-9446-4eb1-95e0-9ae6b7a46187' {
menuentry 'Ubuntu, with Linux 5.3.0-1017-aws' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-5.3.0-1017-aws-advanced-6156ec80-9446-4eb1-95e0-9ae6b7a46187' {
menuentry 'Ubuntu, with Linux 5.3.0-1017-aws (recovery mode)' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-5.3.0-1017-aws-recovery-6156ec80-9446-4eb1-95e0-9ae6b7a46187' {
menuentry 'Ubuntu, with Linux 4.15.0-1065-aws' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-4.15.0-1065-aws-advanced-6156ec80-9446-4eb1-95e0-9ae6b7a46187' {
menuentry 'Ubuntu, with Linux 4.15.0-1065-aws (recovery mode)' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-4.15.0-1065-aws-recovery-6156ec80-9446-4eb1-95e0-9ae6b7a46187' {
menuentry 'Ubuntu, with Linux 4.15.0-99-generic' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-4.15.0-99-generic-advanced-6156ec80-9446-4eb1-95e0-9ae6b7a46187' {
menuentry 'Ubuntu, with Linux 4.15.0-99-generic (recovery mode)' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-4.15.0-99-generic-recovery-6156ec80-9446-4eb1-95e0-9ae6b7a46187' {
因此,选择了第一个菜单项,即gnulinux-advanced-6156ec80-9446-4eb1-95e0-9ae6b7a46187和通用ID gnulinux-4.15.0-99-generic-advanced-6156ec80-9446-4eb1-95e0-9ae6b7a46187
与他们一起加入>,这看起来像这样
gnulinux-4.15.0-99-generic-recovery-6156ec80-9446-4eb1-95e0-9ae6b7a46187> gnulinux-4.15.0-99-generic-advanced-6156ec80-9446-4eb1-95e0-9ae6b7a46187
并将其设置为如上所述的GRUB_DEFAULT值,然后执行update-grub并重新启动。您应该获得所需的输出。
答案 3 :(得分:0)
Jibri在AWS上获得以下问题。
org.jitsi.jibri.capture.ffmpeg.FfmpegCapturer.onFfmpegProcessUpdate()Ffmpeg突然退出。最后输出线:plug:bsnoop:输入/输出错误
解决方案::将内核启动设置从Linux 4.4.0-xxxx-aws更改并更新到Linux 4.4.0-xxxx-generic,然后重新启动实例。
我已通过以下步骤解决了该问题:
$ grep -A200子菜单/boot/grub/grub.cfg | grep菜单项
输出:
submenu 'Advanced options for Ubuntu' $menuentry_id_option 'gnulinux-advanced-e6dc6474-8016-46c6-8ab0-0a871bae4cd1' {
menuentry 'Ubuntu, with Linux 4.4.0-1107-aws' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-4.4.0-1107-aws-advanced-e6dc6474-8016-46c6-8ab0-0a871bae4cd1' {
menuentry 'Ubuntu, with Linux 4.4.0-1107-aws (recovery mode)' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-4.4.0-1107-aws-recovery-e6dc6474-8016-46c6-8ab0-0a871bae4cd1' {
menuentry 'Ubuntu, with Linux 4.4.0-1106-aws' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-4.4.0-1106-aws-advanced-e6dc6474-8016-46c6-8ab0-0a871bae4cd1' {
menuentry 'Ubuntu, with Linux 4.4.0-1106-aws (recovery mode)' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-4.4.0-1106-aws-recovery-e6dc6474-8016-46c6-8ab0-0a871bae4cd1' {
menuentry 'Ubuntu, with Linux 4.4.0-1105-aws' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-4.4.0-1105-aws-advanced-e6dc6474-8016-46c6-8ab0-0a871bae4cd1' {
menuentry 'Ubuntu, with Linux 4.4.0-1105-aws (recovery mode)' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-4.4.0-1105-aws-recovery-e6dc6474-8016-46c6-8ab0-0a871bae4cd1' {
menuentry 'Ubuntu, with Linux 4.4.0-179-generic' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-4.4.0-179-generic-advanced-e6dc6474-8016-46c6-8ab0-0a871bae4cd1' {
menuentry 'Ubuntu, with Linux 4.4.0-179-generic (recovery mode)' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-4.4.0-179-generic-recovery-e6dc6474-8016-46c6-8ab0-0a871bae4cd1' {
Ubuntu的“高级”选项的菜单条目ID为gnulinux-advanced-e6dc6474-8016-46c6-8ab0-0a871bae4cd1 适用于Linux 4.4.0-179-generic的Ubuntu的菜单项是gnulinux-4.4.0-179-generic-advanced-e6dc6474-8016-46c6-8ab0-0a871bae4cd1
编辑Grub ,并将GRUB_DEFAULT替换为上述值
$ nano / etc / default / grub
GRUB_DEFAULT="gnulinux-advanced-e6dc6474-8016-46c6-8ab0-0a871bae4cd1>gnulinux-4.4.0-179-generic-advanced-e6dc6474-8016-46c6-8ab0-0a871bae4cd1"
GRUB_HIDDEN_TIMEOUT=0
GRUB_HIDDEN_TIMEOUT_QUIET=true
GRUB_TIMEOUT=0
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT="console=tty1 console=ttyS0"
GRUB_CMDLINE_LINUX=""
更新并重新启动
$ sudo update-grub $ sudo重新启动
重启后,您可以使用uname -a对其进行测试,该参数应为4.4.0-179-generic
$ uname -a
Linux 4.4.0-179-通用
在此modprobe snd-aloop之后应该可以正常工作。