Si-Linux Wiki

カーネル起動時のロゴ(Tuxくん)の差し替えについて。


ロゴの差し替えは、カーネルにパッチをあてて再コンパイルが必要となる。

参考→カーネルパッケージの作成

ロゴ関連は drivers/video/logo/ に全てのファイルが集められている。

画像関連ツール

  • windows用 irfanview など (*.ppm形式での保存に使用する)
  • Linux用 netpbm
    # apt-get install netpbm

画像の準備

  1. 任意の大きさの(たとえば640x480サイズの)画像を用意する
  2. ファイル形式 .ppm 形式で保存する
    (Windows用フリーソフト irfanviewなどが便利)
  3. Linux上で224色に減色する(例 ファイル名 hoge.ppm の場合)
    $ ppmquant 224 hoge.ppm | pnmnoraw > logo_hoge_clut224.ppm
    ファイル名は logo_hoge_clut224.ppm とし、drivers/video/logo/ にコピーする。 (hogeの部分は使用内容に応じて適宜変更する。ただし *_clut224.ppm でなければならない)

パッチを当てる

次の3ファイルについてパッチを当てる。 (HOGEおよびhogeの部分は使用内容に応じて適宜変更する)

drivers/video/logo/Kconfig

--- 82,90 ----
        depends on M32R
        default y

+ config LOGO_HOGE_CLUT224
+       bool "224-color HOGE Linux logo"
+       depends on LOGO
+       default y
+
  endif # LOGO

drivers/video/logo/Makefile

--- 15,21 ----
  obj-$(CONFIG_LOGO_SUPERH_VGA16)       += logo_superh_vga16.o
  obj-$(CONFIG_LOGO_SUPERH_CLUT224)     += logo_superh_clut224.o
  obj-$(CONFIG_LOGO_M32R_CLUT224)       += logo_m32r_clut224.o
+ obj-$(CONFIG_LOGO_HOGE_CLUT224)       += logo_hoge_clut224.o

  obj-$(CONFIG_SPU_BASE)                += logo_spe_clut224.o

video/logo/logo.c

--- 35,41 ----
  extern const struct linux_logo logo_superh_vga16;
  extern const struct linux_logo logo_superh_clut224;
  extern const struct linux_logo logo_m32r_clut224;
+ extern const struct linux_logo logo_hoge_clut224;

  static int nologo;
  module_param(nologo, bool, 0);
--- 116,125 ----
                /* M32R Linux logo */
                logo = &logo_m32r_clut224;
  #endif
+ #ifdef CONFIG_LOGO_HOGE_CLUT224
+               /* M32R Linux logo */
+               logo = &logo_hoge_clut224;
+ #endif
        }
        return logo;
  }

make menuconfig

$ make menuconfig
    Device Drivers  --->
     Graphics support  --->
      Logo configuration  --->
       [*] Bootup logo  --->

Bootup log を有効にする

 x x    --- Bootup logo                                                  x x
 x x    [ ]   Standard black and white Linux logo                        x x
 x x    [ ]   Standard 16-color Linux logo                               x x
 x x    [ ]   Standard 224-color Linux logo                              x x
 x x    [*]   224-color HOGE Linux logo                                  x x

224-color HOGE Linux log を有効にする。(ほかの項目は念のため無効にする)

make

以上で準備は終了のため、このあとmake-kpkg等でカーネルを再コンパイル、インストールをおこなう。

起動オプション

フレームバッファが有効になるよう、カーネルの起動オプションを指定する。
/boot/grub/menu.lst

title           Debian GNU/Linux, kernel 2.6.26-alvix1
root            (hd0,0)
kernel          /boot/vmlinuz-2.6.26-hoge1 root=/dev/hda1 ro quiet vga=0x31b
initrd          /boot/initrd.img-2.6.26-hoge1

関連