我是靠谱客的博主 强健长颈鹿,最近开发中收集的这篇文章主要介绍虚拟机的 Ubuntu 没有 /dev/fb0 的解决办法一、概述二、没有/dev/fb0的可能原因三、解决过程四、vesafb:mtrr,ywrap vga=0x315的解释,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

目录
一、概述
二、没有/dev/fb0的可能原因
三、解决过程
四、vesafb:mtrr,ywrap vga=0x315的解释

一、概述

近期在学习FrameBuffer相关内容,想在Vmware虚拟机打开Ubuntu 12.04的系统使用一下,发现没有/dev/fb0的文件,于是上网搜索解决办法,在此记录一下解决过程。下图是使用的 Ubuntu版本以及找不到/dev/fb0的打印。
在这里插入图片描述

二、没有/dev/fb0的可能原因

1、有些文章说,是因为安装在 VMware虚拟机 才会出现这种情况,直接安装到电脑上,就不会出现 “找不到/dev/fb0的情况”。
2、有可能是Ubuntu的版本比较旧,我用了另一台电脑的虚拟机安装了Ubuntu 14.04的版本,里面有 /dev/fb0 文件。
在这里插入图片描述

三、解决过程

我试过的有效的解决办法就是修改/boot/grub/grub.cfg 文件,修改后重启就可以了,首先输入这个命令打开文件 :

sudo vi /boot/grub/grub.cfg 

然后,搜索splash,可以看到原本splash后面是一个变量vt_handoff的值,如图:
在这里插入图片描述

现在,把splash后面的值注释掉,改为vesafb:mtrr,ywrap vga=0x315,如下图:
在这里插入图片描述

修改后,保存退出。然后执行sudo reboot重启,重启后就可以看到/dev/fb0文件。
在这里插入图片描述

四、vesafb:mtrr,ywrap vga=0x315的解释

vesafb是英特尔盒子上图形帧缓冲区的通用驱动程序,使用vga=…boot参数切换模式。mtrrywrapvesafb的设置选项;vga=后面的0x315是Linux内核的视频模式编号。完整的编号如下图:
在这里插入图片描述
关于vesafb的更多信息可以参见这个内核文档:
https://www.kernel.org/doc/html/latest/fb/vesafb.html


最后,说一下,修改内核文件会有风险,要做好备份,不同的环境可能不一样,最好可以先在没用的系统试一下没问题再到开发的机器使用。


如果文章对你有帮助的话 ,点个赞让我知道一下 ^_*

最后

以上就是强健长颈鹿为你收集整理的虚拟机的 Ubuntu 没有 /dev/fb0 的解决办法一、概述二、没有/dev/fb0的可能原因三、解决过程四、vesafb:mtrr,ywrap vga=0x315的解释的全部内容,希望文章能够帮你解决虚拟机的 Ubuntu 没有 /dev/fb0 的解决办法一、概述二、没有/dev/fb0的可能原因三、解决过程四、vesafb:mtrr,ywrap vga=0x315的解释所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(48)

评论列表共有 0 条评论

立即
投稿
返回
顶部