先贴几个参考文章。
1 HOWTO: Fancy Grub and fbsplash on a machine with Intel graphic chipsets
2 Fbsplash
这两个文章里面最重要是那些内核选项的支持,弄好了那些才有下面的内容。里面有个要注意的是 General Setup ---> Initial RAM filesystem and RAM disk (initramfs/initrd) support ---> Built-in initramfs compression mode 这个选项,好像是从 2.6.30 出来的。这个压缩模式选的是什么,关系到后面的工作。
安装 splashutils[fbcondecor] 和 media-gfx/splash-themes-gentoo 或 media-gfx/splash-themes-livecd 这两个都是提供一些 theme,在 /etc/splash 目录下面。
我的 kernel 没有 initrd 文件,是编译到内核的,所以这么做。
然后就是设置内核参数,下面是我的。那个 quiet 会让 kernel 不显示信息,如果你不想,那就去掉。
video=uvesafb:1024x768-32,mtrr:3,ywrap quiet splash=silent,theme:natural_gentoo console=tty1 fbcon=scrollback:64K
如果用的是 tuxonice 内核,那还可以给 sys-apps/tuxonice-userui 加上 fbsplash use,装好后会提示你 ln 一个 splash theme 为 tuxonice ,照做就是了。另外还需要在内核里面 Power management and ACPI options ---> Enhanced Hibernation (TuxOnIce) ---> Default userui program location 设置为 /sbin/tuxoniceui_fbsplash ,重编内核。。。
这么弄完之后会发现,休眠后再启动的时候会显示一个没找到 /sbin/tuoniceui_fbsplash 的错误,还有一些百分比,这些实际上不影响正常启动。不过好像有点影响美观。我琢磨了下,觉得那个错误可能是没有把那个文件弄到 initramfs 里面的缘故,弄进去之后果然没了,不过还是有那个百分比出来。
先 cp 一份这个文件 /usr/src/linux/usr/initramfs_data.cpio[看压缩设置] 到临时目录,file 看看属性,我的是 gzip 压缩的,那就解压一下。然后用 cpio 看下里面的文件。
ok, 这里你可以再看看文件里面的东西。没问题就可以复制过去了,要注意压缩格式。
回头录一个视频放上来玩玩,呵呵。
这两个文章里面最重要是那些内核选项的支持,弄好了那些才有下面的内容。里面有个要注意的是 General Setup ---> Initial RAM filesystem and RAM disk (initramfs/initrd) support ---> Built-in initramfs compression mode 这个选项,好像是从 2.6.30 出来的。这个压缩模式选的是什么,关系到后面的工作。
安装 splashutils[fbcondecor] 和 media-gfx/splash-themes-gentoo 或 media-gfx/splash-themes-livecd 这两个都是提供一些 theme,在 /etc/splash 目录下面。
我的 kernel 没有 initrd 文件,是编译到内核的,所以这么做。
cd /usr/src/linux && make && make install # recompile kernel, this is my way
然后就是设置内核参数,下面是我的。那个 quiet 会让 kernel 不显示信息,如果你不想,那就去掉。
video=uvesafb:1024x768-32,mtrr:3,ywrap quiet splash=silent,theme:natural_gentoo console=tty1 fbcon=scrollback:64K
如果用的是 tuxonice 内核,那还可以给 sys-apps/tuxonice-userui 加上 fbsplash use,装好后会提示你 ln 一个 splash theme 为 tuxonice ,照做就是了。另外还需要在内核里面 Power management and ACPI options ---> Enhanced Hibernation (TuxOnIce) ---> Default userui program location 设置为 /sbin/tuxoniceui_fbsplash ,重编内核。。。
这么弄完之后会发现,休眠后再启动的时候会显示一个没找到 /sbin/tuoniceui_fbsplash 的错误,还有一些百分比,这些实际上不影响正常启动。不过好像有点影响美观。我琢磨了下,觉得那个错误可能是没有把那个文件弄到 initramfs 里面的缘故,弄进去之后果然没了,不过还是有那个百分比出来。
先 cp 一份这个文件 /usr/src/linux/usr/initramfs_data.cpio[看压缩设置] 到临时目录,file 看看属性,我的是 gzip 压缩的,那就解压一下。然后用 cpio 看下里面的文件。
$ file initramfs_data.cpio initramfs_data.cpio: gzip compressed data, was "initramfs_data.cpio", from Unix, last modified: Sat Jul 25 19:26:29 2009 $ mv initramfs_data.cpio initramfs_data.cpio.gz $ gzip -d initramfs_data.cpio.gz $ file initramfs_data.cpio initramfs_data.cpio: ASCII cpio archive (SVR4 with no CRC) $ cpio --list < initramfs_data.cpio . lib lib/splash lib/splash/sys lib/splash/proc sbin sbin/v86d sbin/fbcondecor_helper sbin/splash_helper root dev dev/mem dev/tty1 dev/fb dev/tty0 dev/zero dev/misc dev/null dev/vc dev/console etc etc/splash etc/splash/luxisri.ttf etc/splash/natural_gentoo etc/splash/natural_gentoo/1024x768.cfg etc/splash/natural_gentoo/images etc/splash/natural_gentoo/images/silent-1024x768.jpg etc/splash/natural_gentoo/images/verbose-1024x768.jpg xxx blocks $ cat f sbin/tuxoniceui_fbsplash $ ls sbin tuxoniceui_fbsplash $ cpio -ov --format=newc -A -O initramfs_data.cpio < f sbin/tuxoniceui_fbsplash xxx blocks $ gzip -c initramfs_data.cpio initramfs_data.cpio.gz $ mv initramfs_data.cpio.gz /usr/src/linux/usr/initramfs_data.cpio
ok, 这里你可以再看看文件里面的东西。没问题就可以复制过去了,要注意压缩格式。
回头录一个视频放上来玩玩,呵呵。