如果安装了 Linux 的图形界面,则使用图形界面修改分辨非常方便也很简单。但是如果只安装了字符界面,难道就不能修改分辨率了吗?
如果安装了 Linux 的图形界面,则使用图形界面修改分辨非常方便也很简单。但是如果只安装了字符界面,难道就不能修改分辨率了吗?
当然是可以的,只要利用 GRUB 的配置文件就可以完成。当然需要确定内核是否支持 CONFIG_FRAMEBUFFER_CONSOLE 功能,如果没有开启这项功能,则需要重新编译内核。査询方法如下:
[root@localhost ~]# grep "CONFIG_FRAMEBUFFER_CONSOLE" /boot/ config-2.6.32-279.el6.i686 #还记得/boot/config*2.6.32-279.el6.i686文件吗?这个文件中保存的是内核编译时选择的功能和模块。我们在这个文件中査找 CONFIG_FRAMEBUFFER_CONSOLE=y #出现了=y,当然是支持了
在字符界面界支持的分辨率列表如表 1 所示。
色 深 | 640像素x480像素 | 800像素x600像素 | 1024像素x768像素 | 1280像素x1024像素 |
---|---|---|---|---|
8位 | 769 | 771 | 773 | 775 |
15位 | 784 | 787 | 790 | 793 |
16位 | 785 | 788 | 791 | 794 |
32位 | 786 | 789 | 792 | 795 |
如果想把字符界面的分辨率设置为 1024 像素x 768 像素,色深为 16 位,则只需要修改 GRUB 的配置文件,在 kernel 行最后加入下面的内容:
[root@localhost ~]#vi /boot/grub/gmb.conf default:0 timeout=5 splashimage=(hd0,0)/gmb/splash.xpm.gz hiddenmenu title CentOS (2.6.32-279.el6.i686) root (hd0,0) kemel/vmlinuz-2.6.32-279.el6.i686 ro root=UUID=b9a7a1 a8-767f-4a87-8a2ba535edb362c9 rd_NO_LUKS KEYBOARDTYPE=pc KEYTABLE=us rd_NO_MD crashkernel=auto LANG=zh_CN.UTF-8 rd_NO_LVM rd_NO_DM rhgb quiet vga=791 initrd/initramfs-2.6.32-279.el6.i686.img
然后重新启动系统,就会发现分辨率已经改变了。有些 Linux 的版本需要将 vga 的值写成十六进制的,可以先试试表 1 中的数字,如果不行则可以尝试十六进制数。