帧缓冲区不可用。如何在Ubuntu上安装设备/dev/fb/0?

Ale*_*yna 4 linux framebuffer ubuntu

我正在尝试在 2.6.31-14-generic #48-Ubuntu 上运行一个使用帧缓冲区的应用程序。

我需要做的就是安装一个帧缓冲设备来消除以下错误:

/dev/fb/0: No such file or directory
framebuffer not available.
FATAL: no framebuffer available
Run Code Online (Sandbox Code Playgroud)

我搜索了 Google,发现了一些指示在 Grub2 上执行此操作的资源 - 尽管我无缝地遵循了它们,但我什么也没得到。

有任何想法吗?

小智 5

您需要激活帧缓冲区驱动程序,默认情况下该驱动程序始终处于禁用状态。

我配置了这些:

echo "fbcon" | sudo tee -a /etc/initramfs-tools/modules
echo "vesafb" | sudo tee -a /etc/initramfs-tools/modules
Run Code Online (Sandbox Code Playgroud)

然后我注释掉了 vesafb (这适用于我听到的所有卡)

/etc/modprobe.d/blacklist-framebuffer.conf
Run Code Online (Sandbox Code Playgroud)

然后我们更新配置:

sudo update-initramfs -u -k all
Run Code Online (Sandbox Code Playgroud)

我们就快到了。现在我们需要在帧缓冲区中查找我们的卡支持的分辨率。您可能需要安装 hwinfo

sudo hwinfo --framebuffer
Run Code Online (Sandbox Code Playgroud)

您可以看到分辨率及其十六进制代码。

e现在,您可以在启动时按键并添加vga=[hexadecimalcode](ef vga=0x346) 或使更改永久保留在单词/boot/grub/menu.lst后面defoptions

我发现在接触 grub 配置之前尝试密钥e以确保其正常工作更安全。

稍后,当您切换到时,tty它将Alt+F1-6采用您指定的分辨率。您可以使用fbi和其他实用程序。