给 debian 安装 BootSplash

发表于:2007-05-26来源:作者:点击数: 标签:
有一些发行版带有 BootSplash,也就是启动画面,有的是进度条的,有的是漂亮的背景加启动文字的。总之是很漂亮了。可惜 debian 默认安装完以后是不带这个东西的。不过我们可以自己安装这个东西,从网上看了一些这方面的介绍,大部分是都是介绍 Gentoo 和 Red
 有一些发行版带有 BootSplash,也就是启动画面,有的是进度条的,有的是漂亮的背景加启动文字的。总之是很漂亮了。可惜 debian 默认安装完以后是不带这个东西的。不过我们可以自己安装这个东西,从网上看了一些这方面的介绍,大部分是都是介绍 Gentoo 和 RedHat 的,安装起来都很麻烦,debian 安装这个东西比起那些发行版来说,可以算是简单多了,下面就来看看怎样安装 BootSplash 吧。
首先在你的 apt 源里加上这两行:
CODE:
deb http://debian.bootsplash.de unstable main
deb-src http://debian.bootsplash.de unstable main

然后用 apt-get update 更新一下软件列表。
接下来,先安装 bootsplash 的内核补丁
CODE:
apt-get install kernel-patch-bootsplash

然后重新编译内核:
CODE:
apt-get install debhelper modutils kernel-package libncurses5-dev
apt-get install linux-source-2.6.12
apt-get install fakeroot
vi /etc/kernel-pkg.conf # 输入我的名字和邮件地址
cd /usr/src # 创建目录
tar -xjvf linux-source-2.6.12.tar.bz2
cd linux-source-2.6.12 # 如果这是你的内核源码
../kernel-patches/all/apply/bootsplash # 给内核打补丁
cp /boot/config-2.6.12-1-686 .config # 将当前配置设定为默认配置
make menuconfig # 按自己的喜好来定制
make-kpkg clean # 必须执行这步
fakeroot make-kpkg --append_to_version -686 --initrd --revision=2.6.12-10 --stem linux kernel_image modules_image
cd ..
dpkg -i *.deb

注意:在上面定制内核选项时,要选择下列项目:
CODE:
Code maturity level options --->
[*] Prompt for development and/or incomplete code/drivers
Processor type and features --->
[*] MTRR (Memory Type Range Register) support
Device Drivers --->
Block devices --->
<*> Loopback device support
<*> RAM disk support
(4096) Default RAM disk size
[*] Initial RAM disk (initrd) support
Graphics support --->
[*] Support for frame buffer devices
[*] VESA VGA graphics support
Console display driver support --->
[*] Video mode selection support
<*> Framebuffer Console support
Bootsplash configuration --->
[*] Bootup splash screen

新内核编译并安装以后,就已经支持 BootSplash,下面就可以安装 BootSplash 的包和主题:
CODE:
apt-get install bootsplash bootsplash-theme-debian sysv-rc-bootsplash

注意:安装 sysv-rc-bootsplash 包时,要确定你的 sysv-rc 的包 2.86.ds1-1(stable) 版本的,如果是 testing 版本安装可能会失败。
配置 bootsplash 时,他会让你选择 initrd 的位置,你就选择你刚刚编译并安装好的那个 /boot/initrd.img-2.6.12-686 就可以了。
然后是配置 grub:
CODE:
title Debian GNU/Linux, kernel 2.6.12-686 (silent)
root (hd0,0)
kernel /boot/vmlinuz-2.6.12-686 root=/dev/hda1 ro vga=791 splash=silent
initrd /boot/initrd.img-2.6.12-686
savedefault
boot

title Debian GNU/Linux, kernel 2.6.12-686 (bootsplash)
root (hd0,0)
kernel /boot/vmlinuz-2.6.12-686 root=/dev/hda1 ro vga=791
initrd /boot/initrd.img-2.6.12-686
savedefault
boot

title Debian GNU/Linux, kernel 2.6.12-686 (recovery mode)
root (hd0,0)
kernel /boot/vmlinuz-2.6.12-686 root=/dev/hda1 ro single
initrd /boot/initrd.img-2.6.12-686.orig
savedefault
boot

好了,现在选择第一项 Debian GNU/Linux, kernel 2.6.12-686 (silent) ,将进入带进度条动画的启动画面,选第二项 Debian GNU/Linux, kernel 2.6.12-686 (bootsplash),将进入是漂亮的背景加启动文字的启动画面了。
安装不困难,只不过编译内核可能花的时间比较长一些,我编译内核花了 1 个多小时。呵呵。
下面是我编译好的内核(奔4超线程处理器版本)以及相关的 NVidia (显卡)模块和 pwc (摄像头)模块:
linux-image-2.6.12-p4_2.6.12-10_i386.deb
nvidia-kernel-2.6.12-p4_1.0.7174-4+2.6.12-10_i386.deb
pwc-modules-2.6.12-p4_10.0.7a-5+2.6.12-10_i386.deb
如果你的显卡支持特定的 framebuffer 驱动,你也可以不使用 vesafb,例如我的是 sis 显卡,所以我用的 sisfb,如果要使用 sisfb,那在编译内核是要把 sisfb 编译到内核里去,而不要编译成模块。
之后在加载内核时,用下面的方式来加载 sisfb:
CODE:
title Debian GNU/Linux, kernel 2.6.12-686 (silent)
root (hd0,0)
kernel /boot/vmlinuz-2.6.12-686 root=/dev/hda1 ro video=sisfb:mode:1024x768x16,rate:85,mem:32768 splash=silent
initrd /boot/initrd.img-2.6.12-686
savedefault
boot

这样就可以将 framebuffer 下的控制台改成 85Hz 的高刷新率了。
下面是我编译好的带有 sisfb 的内核(奔4超线程处理器版本)以及 pwc (摄像头)模块:
linux-image-2.6.12-sisfb-p4_2.6.12-10_i386.deb
pwc-modules-2.6.12-sisfb-p4_10.0.9-1+2.6.12-10_i386.deb

原文转自:http://www.ltesting.net