本文记录grub的一些进阶配置html
事实上,你的 tty1~tty6 除了 80x24 的解析度外,还可以有其余解析度的支持喔!但前提之下是你的核心必须支持 FRAMEBUFFER_CONSOLE 这个核心功能选项才行。如何肯定有没有支持呢?你能够查阅 /boot/config-2.6.18-92.el5 这个文件,而后这样搜寻:shell
[root@www ~]# grep 'FRAMEBUFFER_CONSOLE' /boot/config-2.6.18-92.el5 CONFIG_FRAMEBUFFER_CONSOLE=y # 这个项目若是出现 y 那就是有支持啦!若是被注解或是 n ,那就是没支持啦!
彩度\解析度 | 640x480 | 800x600 | 1024x768 | 1280x1024 | bit |
256 | 769 | 771 | 773 | 775 | 8 bit |
32768 | 784 | 787 | 790 | 793 | 15 bit |
65536 | 785 | 788 | 791 | 794 | 16 bit |
16.8M | 786 | 789 | 792 | 795 | 32 bit |
那么如何调整 tty1 ~ tty6 终端机的解析度呢?先参考底下的表格再说 (此为十进位数值):vim
假设你想要将你的终端机萤幕解析度调整到 1024x768 ,且色彩深度为 15bit 色的时候,就得要指定 vga=790 那个数字! 举例来讲,鸟哥的 tty1 就想要这样的解析度时,你能够这样作:测试
[root@www ~]# vim /boot/grub/menu.lst ....(前面省略).... title CentOS (2.6.18-92.el5) root (hd0,0) kernel /vmlinuz-2.6.18-92.el5 ro root=LABEL=/1 rhgb quiet vga=790 initrd /initrd-2.6.18-92.el5.img ....(后面省略)....
从新启动并选择此菜单进入 Linux,你跑到 tty1 去看看,嘿嘿!就已是 1024x768 的解析度罗! 只是字会变的很小,可是画面的范围会加大就是了。不过,某些版本支持的是 16 进位制,因此还须要修改一下格式呢! 通常使用上表当中的值应该就能够了。不过,由於不一样的操做系统与硬件可能会有不同的状况,所以, 上面的值不见得必定能够在您的机器上面测试成功,建议您能够分别配置看看哩~以找出可使用的值! ^_^ui
现今的硬盘容量愈来愈大,若是你使用旧的主板来安插大容量硬盘时,可能由於系统 BIOS 或者是其余问题, 致使 BIOS 没法判断该硬盘的容量,此时你的系统读取可能会有问题。为何呢?编码
咱们在本章一开始的启动流程讲过,当进入 Linux 核心功能后,他会主动的再去侦测一下整个系统, 所以 BIOS 捉不到的硬件在 Linux 核心反而可能会能够捉到而正常使用。举例来讲,过去不少朋友经常会发现, 『个人系统使用 DVD 启动安装时,能够顺利的安装好 Linux ,可是第一次启动时, 萤幕只出现黑压压的一片,且出现 grub> 的字样,而没法进入 Linux 系统中』,这又是怎么一回事?加密
更多 grub 错误的代码查询能够到底下的连结查阅:spa
如今你知道问题所在啦!那就是 BIOS 没法读取大容量磁碟内的 kernel 与 initrd 文件。 那如何解决呢?很简单啦!就让 kernel 与 initrd 文件放置在大硬盘的最前头,由於 BIOS 至少能够读到大磁碟的 1024 磁柱内的数据,所以就可以读取核心与虚拟文件系统的文件罗。那如何让 kernel 与 initrd 放置到整颗硬盘的最前面呢?简单的要命吧!就建立 /boot 独立分割槽,并将 /boot 放置到最前面便可!操作系统
万一你已经安装了 Linux 且发生了上述的问题,那该怎办?你能够这样做的:code
不过,鸟哥仍是建议您能够从新安装,而且制做出 /boot 这个 partition 啦! ^_^!这也是为啥此次更版中, 鸟哥特别强调要分割出 /boot 这个分割槽的缘由啊!
想像一个环境,若是你管理的是一间计算机教室,这间计算机教室由于可对外开放,可是你又担忧某些 partition 被学生不当心的弄乱,所以你可能会想要将某些启动菜单做个保护。这个时候,为每一个菜单做个加密的口令就是个可行的方案啦! 那如何在启动的过程里面提供口令保护呢?首先,你必需要建立口令,并且还须要是加密事后的喔! 不然人家跑到 /boot/grub/menu.lst 不就能够探查到你的启动口令了?那如何建立加密的口令呢? 咱们能够透过 grub 提供的 md5 编码来处理的,以下所示:
[root@www ~]# grub-md5-crypt Password: <==输入口令 Retype password: <==再输入一次 $1$kvlI0/$byrbNgkt/.REKPQdfg287. <==这就是产生的 md5 口令!
上表的案例中,咱们两个菜单进入的口令并不相同,能够进行同窗的分类啦!不过这样也形成一个问题, 那就是必定要输入口令才可以进入启动流程,若是你在远程使用 reboot 从新启动,而且主机前面并无任何人的话.... 你的主机并不会主动进入启动程序喔! ^_^上面产生的最后一行,由 $ 开始到 . 结束的那行,就是你的口令通过 md5 编码事后的咚咚! 将这个口令复制下来吧!假设咱们要将第一个选项加入这个口令,而第四个选项加入另外的口令, 那你应该要这样作:
[root@www ~]# vim /boot/grub/menu.lst ....(前面省略).... title CentOS (2.6.18-92.el5) password --md5 $1$kvlI0/$byrbNgkt/.REKPQdfg287. root (hd0,0) kernel /vmlinuz-2.6.18-92.el5 ro root=LABEL=/1 rhgb quiet vga=790 initrd /initrd-2.6.18-92.el5.img ....(中间省略).... title single user mode password --md5 $1$GFnI0/$UuiZc/7snugLtVN4J/WyM/ root (hd0,0) kernel /vmlinuz-2.6.18-92.el5 ro root=LABEL=/1 rhgb quiet single initrd /initrd-2.6.18-92.el5.img
你必需要注意的是:password 这个项目必定要在 title 底下的第一行。 不过,此项功能仍是可能被破解的,由于使用者能够透过编辑模式 (e) 进入菜单,并删除口令栏位并按下 b 就可以进行启动流程了!真糟糕!那怎办?只好透过总体的 password (放在全部的 title 以前) , 而后在 title 底下的第一行配置 lock ,那使用者想要编辑时,也得要输入口令才行啊!配置有点像这样:
[root@www ~]# vim /boot/grub/menu.lst default=0 timeout=30 password --md5 $1$kvlI0/$byrbNgkt/.REKPQdfg287. <==放在总体配置处 splashimage=(hd0,0)/grub/splash.xpm.gz #hiddenmenu title CentOS (2.6.18-92.el5) lock <==多了锁死的功能 root (hd0,0) kernel /vmlinuz-2.6.18-92.el5 ro root=LABEL=/1 rhgb quiet vga=790 initrd /initrd-2.6.18-92.el5.img
那么从新启动后,画面会像这样:
你能够看到最下方仅出现 p 的功能,由於 2, 3, 4 菜单并无使用 lock ,所以这三个菜单使用者仍是能够运行启动程序, 可是第一个菜单由於有 lock 项目,所以除非你输入正确的口令,不然第一个菜单是没法被加载运行的。 另外,这个项目也可以避免你的 menu.lst 在启动的过程当中被乱改,是具备保密 menu.lst 的功能啦! 与刚刚的菜单口令功能不一样。
转自