Linux命令行屏幕分辨率(console resolution)调整

来源:互联网 发布:p2p理财安全吗 知乎 编辑:程序博客网 时间:2024/05/01 09:04
Linux命令行屏幕分辨率(console resolution)调整
(2010-07-23 16:26:13)
转载
    
在grub.conf(Debian或Ubuntu下是menu.lst)文件的kernel /vmlinuz-2.6.11-EL roroot=LABEL=/行后面添加vga=791,可以改变命令行下的屏幕分辨率。vga后面的数字并不是随意的,其与屏幕分辨率及色深的对应关系如下:

Colours 640x400 640x480 800x600 1024x768 1152x864 1280x10241600x1200
--------+--------------------------------------------------------------
4 bits  |  ?       ?     0x302     ?       ?       ?         ?
8 bits  | 0x300  0x301   0x303   0x305    0x161   0x307     0x31C
16 bits |  ?      0x311  0x314    0x317   0x163    0x31A     0x31E
24 bits |  ?      0x312  0x315   0x318     ?      0x31B     0x31F
32 bits |  ?      ?      ?        ?      0x164     ?        ?

将上述16进制转换为十进制之后可以得到如下对应关系:
Colours 640x400 640x480 800x600 1024x768 1152x864 1280x10241600x1200
--------+--------------------------------------------------------------
4 bits  |  ?       ?     770      ?       ?       ?         ?
8 bits  | 768    769     771     773      353     775      796
16 bits |  ?     785     788     791      355     794       798
24 bits |  ?     786     789      792      ?      795       799
32 bits |  ?       ?      ?       ?      356      ?         ?

对于宽屏显示器上述的数字并不使用,想要正确调整宽屏显示器在console下的分辨率首先得获得显卡在console下所支持分辨率对应的vga值,该值可以通过命令hwinfo--framebuffer来获取。
需要注意的是该命令的使用必须获得root权限,通常hwinfo并非默认安装Debian或Ubuntu用户可以通过apt-getinstall hwinfo来安装,Rethat及Novell的用户可以通过相应的rpm包或yum来安装。
该命令的输出如下:

[xxx@01:45:43 ~]$ sudo hwinfo--framebuffer
[sudo] password for xxx:
02: None 00.0: 11001 VESAFramebuffer                          
  [Created at bios.447]
  Unique ID: rdCR.pM4x9oRqolF
  Hardware Class: framebuffer
  Model: "Intel(r)Crestline Graphics ChipAccelerated VGA BIOS Intel(r)Crestline Graphics Controller"
  Vendor: "Intel Corporation"
  Device: "Intel(r)Crestline GraphicsController"
  SubVendor: "Intel(r)Crestline Graphics ChipAccelerated VGA BIOS"
  SubDevice:
  Revision: "Hardware Version 0.0"
  Memory Size: 7 MB + 448 kB
  Memory Range: 0xe0000000-0xe076ffff(rw)
  Mode 0x0360: 768x480 (+768), 8 bits
  Mode 0x0361: 768x480 (+1536), 16 bits
  Mode 0x0362: 768x480 (+3072), 24 bits
  Mode 0x0363: 960x600 (+960), 8 bits
  Mode 0x0364: 960x600 (+1920), 16 bits
  Mode 0x0365: 960x600 (+3840), 24 bits
  Mode 0x0366: 1280x800 (+1280), 8 bits
  Mode 0x0367: 1280x800 (+2560), 16 bits
  Mode 0x0368: 1280x800 (+5120), 24 bits
  Mode 0x0369: 1440x900 (+1472), 8 bits
  Mode 0x036a: 1440x900 (+2880), 16 bits
  Mode 0x036b: 1440x900 (+5760), 24 bits
  Mode 0x036c: 1680x1050 (+1728), 8 bits
  Mode 0x036d: 1680x1050 (+3392), 16bits
  Mode 0x036e: 1680x1050 (+6720), 24bits
  Mode 0x0307: 1280x1024 (+1280), 8 bits
  Mode 0x031a: 1280x1024 (+2560), 16bits
  Mode 0x031b: 1280x1024 (+5120), 24bits
  Mode 0x0305: 1024x768 (+1024), 8 bits
  Mode 0x0317: 1024x768 (+2048), 16 bits
  Mode 0x0318: 1024x768 (+4096), 24 bits
  Mode 0x0312: 640x480 (+2560), 24 bits
  Mode 0x0314: 800x600 (+1600), 16 bits
  Mode 0x0315: 800x600 (+3200), 24 bits
其中Mode后的十六进制数字就是所需的vga值,紧随其后的是分辨率和色深。将所对应的十六进制值填入vga后即可,不要将其换算成十进制有时候可能会不起作用。
原创粉丝点击