“UbuntuHelp:ConsoleFramebuffer/zh”的版本间的差异
来自Ubuntu中文
第1行: | 第1行: | ||
− | {{ | + | {{Copyedit translation}} {{From|https://help.ubuntu.com/community/ConsoleFramebuffer}} {{Languages|UbuntuHelp:ConsoleFramebuffer}} {{Translator|杏林小草}} |
== 序 == | == 序 == | ||
第19行: | 第19行: | ||
blacklist gxfb<br> | blacklist gxfb<br> | ||
− | + | 以後,我的系统不再尝试转换到frame buffer控制台。 | |
== 增加控制台的可见行和可见列 == | == 增加控制台的可见行和可见列 == | ||
第52行: | 第52行: | ||
echo vesafb >> /etc/initramfs-tools/modules | echo vesafb >> /etc/initramfs-tools/modules | ||
echo fbcon >> /etc/initramfs-tools/modules | echo fbcon >> /etc/initramfs-tools/modules | ||
− | </pre> | + | </pre> |
杏林小草注:粗略地讲,vesafb和fbcon是两种显卡驱动。 | 杏林小草注:粗略地讲,vesafb和fbcon是两种显卡驱动。 | ||
=== 重建内核镜像(Rebuild the kernel image) === | === 重建内核镜像(Rebuild the kernel image) === | ||
− | + | 这一步是必须的,以便内核在下次引导的时候加载上述两个模块。升级内核後也需要重复这一步。 | |
<pre>sudo update-initramfs -u | <pre>sudo update-initramfs -u | ||
− | </pre> | + | </pre> |
− | + | ||
=== 编辑/etc/modprobe.d/blacklist-framebuffer === | === 编辑/etc/modprobe.d/blacklist-framebuffer === | ||
− | + | 在某些时候,Framebuffers会将计算机从睡眠状态中唤醒,然後自动失效(to wake up the computer from suspend mode and are hence disabled by default)。此时,可以找到''blacklist vesafb''这一行,在前面加上“#”(注释符)重现载入模块。 | |
<pre># blacklist vesafb | <pre># blacklist vesafb | ||
− | </pre> | + | </pre> |
− | + | ||
=== 编辑/etc/modules === | === 编辑/etc/modules === | ||
虽然,我们已经将vesa framebuffer从黑名单中剔除,但还是要在'''''/etc/modules'''''中追加一行:'''vesafb''' | 虽然,我们已经将vesa framebuffer从黑名单中剔除,但还是要在'''''/etc/modules'''''中追加一行:'''vesafb''' | ||
<pre>echo vesafb >> /etc/modules | <pre>echo vesafb >> /etc/modules | ||
− | </pre> | + | </pre> |
− | + | ||
=== 重启 === | === 重启 === | ||
− | + | 希望你在重启後看到引导过程中出现的字体都变小了。 | |
=== 链接 === | === 链接 === |
2008年6月9日 (一) 19:44的最新版本
点击翻译: |
English • 中文 |
目录
序
如果你的嵌入式系统给出这样的信息:“控制台:正在将显卡切换至80x30模式(Console: switching to colour frame buffer device 80x30)“,那么下面内容将能帮助你。
方案:加入黑名单(The Blacklist Solution)
控制台切换至frame buffer设备,是因为引导期间加载了frame buffer设备驱动。查看哪个frame buffer设备驱动被加载,可以运行命令:
#lsmod
在我的系统中,我注意到这样的一行:
gxfb 8832 1
那么,我该如何阻止加载这个驱动呢?Ubuntu提供了一个阻止自动加载驱动的方法。在/etc/modprobe.d中存在着一个黑名单。对我来说,我只要简单地在黑名单文件中加入
blacklist gxfb
以後,我的系统不再尝试转换到frame buffer控制台。
增加控制台的可见行和可见列
选择喜欢的控制台分辨率
由于历史原因,控制台的默认大小为25x80字符,使用vga(640x480)模式。为了充分利用现代显示设备的分辨能力,你可以修改引导过程的设置。请注意,内核控制台驱动暂时还不能支持宽屏格式。从下表中选择一个合适的值,如0x31A(代表16位深1280x1024)。
Colours 640x400 640x480 800x600 1024x768 1152x864 1280x1024 1600x1200 --------+-------------------------------------------------------------- 4 bits | ? ? 0x302 ? ? ? ? 8 bits | 0x300 0x301 0x303 0x305 0x161 0x307 0x31C 15 bits | ? 0x310 0x313 0x316 0x162 0x319 0x31D 16 bits | ? 0x311 0x314 0x317 0x163 0x31A 0x31E 24 bits | ? 0x312 0x315 0x318 ? 0x31B 0x31F 32 bits | ? ? ? ? 0x164 ? ?
在kernel行的末尾增加 vga=0x31A 。注意,root=UUID 在不同的机器上是不一样的,请不要编辑它,以免导致无法启动。将选项splash 删掉,不然在切换分辨率时可能导致液晶显示器进入睡眠模式,虽然这不是什么大问题,但却很烦人。
title Ubuntu 7.10, kernel 2.6.22-14-generic root (hd0,0) kernel /vmlinuz-2.6.22-14-generic root=UUID=98c2b6c5-4f08-4fbf-bd9c-c470b286f614 ro vga=0x31A initrd /initrd.img-2.6.22-14-generic quiet
- 小贴示:如果你只想暂时测试一下,那么可以在系统引导到grub的时候按下ESC键,进入引导菜单(boot menu),将vga=0x31A追加到kernel行末,继续引导Linux
编辑/etc/initramfs-tools/modules
字符在传递到显示器之前,先寄存在帧缓存(framebuffer)中。我们需要告诉操作系统,我们修改了控制台的分辨率,以便显卡驱动程序做出相应调整。要做到这一点,只需将 vesafb 和 fbcon 加入到/etc/initramfs-tools/modules中
sudo bash echo vesafb >> /etc/initramfs-tools/modules echo fbcon >> /etc/initramfs-tools/modules
杏林小草注:粗略地讲,vesafb和fbcon是两种显卡驱动。
重建内核镜像(Rebuild the kernel image)
这一步是必须的,以便内核在下次引导的时候加载上述两个模块。升级内核後也需要重复这一步。
sudo update-initramfs -u
编辑/etc/modprobe.d/blacklist-framebuffer
在某些时候,Framebuffers会将计算机从睡眠状态中唤醒,然後自动失效(to wake up the computer from suspend mode and are hence disabled by default)。此时,可以找到blacklist vesafb这一行,在前面加上“#”(注释符)重现载入模块。
# blacklist vesafb
编辑/etc/modules
虽然,我们已经将vesa framebuffer从黑名单中剔除,但还是要在/etc/modules中追加一行:vesafb
echo vesafb >> /etc/modules
重启
希望你在重启後看到引导过程中出现的字体都变小了。
链接
本节综述了不同来源的信息。