使用 bootsplash 配置内核支持图形化启动界面。网站http://www.bootsplash.org/有详细介绍。为了支持图形化启动界面,我们需为内核打补丁。到http://www.bootsplash.de/files/下载与内核对应的补丁文件bootsplash-3.1.6-2.6.8.diff。
$ cd ~/
$ mkdir bootsplash
$ cd bootsplash
$ wget http://www.bootsplash.de/files/bootsplash-3.1.6-2.6.8.diff
$ sudo cp bootsplash-3.1.6-2.6.8.diff /usr/src
$ cd /usr/src/linux
$ sudo patch –p1 < ../bootsplash-3.1.6-2.6.8.diff |
接着配置内核,选中以下选项,以下所有选项不能以内核模块形式编译,都要直接编译进内核:
Device Drivers —>
Block devices —>
<*> RAM disk support
(4096) Default RAM disk size (kbytes) (NEW)
[*] Initial RAM disk (initrd) support
Graphics support —>
<*> VGA 16-color graphics support
[*] VESA VGA graphics support
Console display driver support —>
<*> Framebuffer Console support
Logo configuration —>
[ ] Bootup logo #该选项一定不要选中
Bootsplash configuration —> #该选项在打了内核补丁后才会出现。
[*] Bootup splash Screen
File systems —>
Miscellaneous filesystems —>
<*> Compressed ROM file system support |
配置内核后要重新编译内核
$ sudo make
$ sudo cp /usr/src/linux/arch/i386/boot/bzImage /boot/bzImage-bootsplash
l 用apt安装bootsplash |
接下来要安装bootsplash工具。把下面这句加到/etc/apt/source.list里。
deb http://www.bootsplash.de/files/debian/ unstable main
$ sudo apt-get update
$ sudo apt-get install bootsplash
$ sudo apt-get install sysv-rc-bootsplash #该软件包启用进度条和动画 |
在配置bootsplash时会问你是否安装一个新的bootsplash主题替换已存在的主题。如果是第一次安装,请选择none,这样将会自动生成一个/boot/initrd.splash映像,并设置一个默认的newlinux主题。
安装sysv-rc-bootsplash时,会询问是否patch系统启动脚本,一定要选“Yes”,否则进度条等动画不会起作用。
l 从源码安装bootsplash
$ sudo apt-get install libmng-dev #需要安装mng库
$ cd ~/bootsplash
$ wget http://www.bootsplash.de/files/splashutils/bootsplash-3.1.tar.bz2
$ tar zxvf bootsplash-3.1.tar.bz2
$ cd bootsplash-3.1
$ make |
修改bootloader,举例如下
$ sudo vim /boot/grub/menu.lst
title Debian GNU/Linux, kernel 2.6.8.1-epia1-bootsplash
root (hd0,0)
kernel /boot/bzImage-bootsplash root=/dev/hdc1 ro splash=silent vga=0x317
initrd /boot/initrd.splash
savedefault
boot |
重启进入新内核,可看到开机画面。关机时也可看到关机画面。
安装其它主题的方法也很简单,用apt-cache search bootsplash查出主题的名称再用apt-get安装即可。比如:
$ sudo apt-get install bootsplash-theme-debblue
新的主题会被安装在/etc/bootsplash/theme目录下,需要利用splash工具重新生成新的initrd
$ splash -s -f /etc/bootsplash/theme/debblue/config/bootsplash-1024×768.cfg
>> /boot/initrd.debblue |
注意:1、为内核打补丁的时候,一定要下载与内核版本完全一致的patch,比如不能为2.6.8.1的内核打2.6.8的patch,虽然也能操作成功,但在启动时会出现种种问题。
2、设置一个theme后,如果直接修改grub换成其它theme重启后新的设置不起作用。则可以将grub里的initrd注释掉,即不带splash启动一次,启动后再修改grub,initrd换成新的theme,再reboot即可。
3、修改bootloader的时候,vga的设置一定要和你生成的initrd一致,否则不会显示启动画面。