设置命令行控制台分辨率时出现问题。grub2 中的 vbeinfo 不会报告所有分辨率

设置命令行控制台分辨率时出现问题。grub2 中的 vbeinfo 不会报告所有分辨率

我有一台华硕 EEE PC 1005P,我使用 Ubuntu Lucid Lynx 的备用安装程序 CD 在其上安装了命令行系统。虽然我认为这是一般的 Linux 和 grub2 问题。我没有(或不想)安装 X Window 系统。

我想将控制台屏幕分辨率(不在 X 内)更改为 1024x600。但是当我在 grub 中使用 vbeinfo 时没有报告:

grub> vbeinfo
VBE info:   version: 3.0  OEM software rev: 1.0
            total memory: 8128 KiB
List of compatible video modes:
Legend: P=Packed pixel, D=Direct color, mask/pos=R/G/B/reserved
0x112:   640 x 480 x 32   Direct, mask: 8/8/8/8  pos: 16/8/0/24
0x114:   800 x 600 x 16   Direct, mask: 5/6/5/0  pos: 11/5/0/0
0x115:   800 x 600 x 32   Direct, mask: 8/8/8/8  pos: 16/8/0/24
0x101:   640 x 480 x 8    Packed
0x103:   800 x 600 x 8    Packed
0x111:   640 x 480 x 16   Direct, mask: 5/6/5/0  pos: 11/5/0/0
Configured VBE mode (vbe_mode) = ox101
grub> 

sudo lspci -v的相关部分:

...     ...

00:02.0 VGA compatible controller: Intel Corporation N10 Family Integrated Graphics Controller
        Subsystem: ASUSTeK Computer Inc. Device 83ac
        Flags: bus master, fast devsel, latency 0, IRQ 28
        ...
        Kernel driver in use: i915
        Kernel modules: i915

00:02.1 Display controller: Intel Corporation N10 Family Integrated Graphics Controller
        Subsystem: ASUSTeK Computer Inc. Device 83ac
        Flags: bus master, fast devsel, latency 0, IRQ 28
        ...

...     ...

关于如何按我想要的方式设置控制台结果,您有什么想法吗?

添加!

sudo fbset-i:

mode "1024x600"
    geometry 1024 600 1024 600 32
    timings 0 0 0 0 0 0 0
    rgba 8/16,8/8,8/0,0/0
endmode

Frame buffer device information:
    Name            : inteldrmfb
    Address         : 0xd0830000
    Size            : 2457600
    Type            : PACKED PIXELS
    Visual          : TRUECOLOR
    XPanStep        : 1
    YPanStep        : 1
    YWrapStep       : 0
    LineLength      : 4096
    MMIO Address    : 0xf7e00000
    MMIO Size       : 524288
    Accelerator     : No

这是否意味着我有驱动程序?关于如何在 grub2 中将其设置为 1024 x 600 有什么想法吗?

答案1

我最近遇到了一些与 Grub 的 VBE 类似的问题。不幸的是,Grub 无法访问您的信息命令。通过设置来设置 Grub 的图形模式GRUB_GFX模式并通过设置控制台帧缓冲区 GRUB_GFXPAYLOAD_LINUX, 在/etc/默认/grub并运行sudo 更新 grub来源)。

Linux 控制台显示在帧缓冲设备上;这就是英特尔® rmfb设备(显示在您的集合输出)。可能需要在 initrd 中启用帧缓冲区。如果是这样,请运行以下命令来启用它:

echo FRAMEBUFFER=y | sudo tee /etc/initramfs-tools/conf.d/splash
sudo update-initramfs -u

我看过几个关于在 Lucid 中配置控制台帧缓冲区的帖子。你可能需要研究一些类似的东西。这篇文章描述设置uvesafb通过在内核命令行上传递特定的帧缓冲区选项。如果你的情况需要这样做,你可以添加类似“nomodeset 视频=intelfb:mode_option=1024x600-24,mtrr=3,scroll=ywrap”GRUB_CMDLINE_LINUX_DEFAULT/etc/默认/grub。 (这“英特尔fb”在那条线上可能需要“inteldrmfb”,但我不确定。)您可能还需要在/etc/initramfs-tools/模块--“intelfb mode_option=1024x600-24 mtrr=3 scroll=ywrap”-- 然后重新运行更新-initramfs命令。

上一个链接中提到的另一个替代方案是删除内核选项(来自GRUB_CMDLINE_LINUX_DEFAULT), 环境GRUB_GFX模式GRUB_GFXPAYLOAD_LINUX并重新运行更新 grub

其他可能有帮助的资源:

相关内容