Linux修改開機logo

2021-08-21 02:55:40 字數 3549 閱讀 7824

預設開機logo會在液晶屏的左上腳顯示乙隻小企鵝,解析度為80*80,具體在kernel/drivers/video/logo下logo_linux_clut224.ppm這幅影象,程式會根據這幅影象生成logo_linux_clut224.c和logo_linux_clut224.o兩個檔案,最終將小企鵝顯示在液晶屏上。

簡單修改方法 ——只修改logo,不新增任何新資料

一:製作lcd解析度的ppm影象

二:將製作的ppm影象命名為logo_linux_clut224.ppm;

三:刪除kernel/drivers/video/logo下的logo_linux_clut224.c和 logo_linux_clut224.o兩個檔案;

四:重新make生成新的核心映像。

其中1,2的詳細操作如下:

步驟:1.1 利用畫圖軟體將修改尺寸,儲存為.png

1.2 將png轉換成pnm:pngtopnm name2.png > name3.pnm(注意轉換前後的名字不能一樣

)1.3 將pnm的顏色限制在224:pnmquant 224 name3.pnm > name4.pnm (注意轉換前後的名字不能一樣

)1.4 將pnm轉換成我們需要的ppm格式:pnmtoplainpnm name4.pnm > logo_linux_clut224.ppm

複雜修改方法:另外再新增一組資料用於顯示全屏

在drivers/video/logo/目錄下的makefile中有這麼一句:extra-y    +=$(call logo-cfiles,_clut224,ppm)它的意思是在當前找到以"_clut224"結尾的ppm,然後根據它生成.c檔案,所以新增新的名可以類似這樣:logo_linux_sullg_clut224.ppm

第一步:kernel/drivers/video/logo/kconfig中新增配置檔案:

#lqm added for xgd bootup logo.

config logo_xgdlinux_clut224

bool "xgd 224-color linux logo"

default y

#end added.

第二步:make menuconfig 這時,在bootup logo一欄就會多乙個xgd 224-color linux logo配置選項供選擇。取消所有其它logo選項,選中xgd 224-color linux logo,退出

第七步:將上面製作的重新命名為logo_xgdlinux_clut224.ppm,並放在/kernel/drivers/video/logo目錄下。確保該目錄下沒有 logo_xgdlinux_clut224.c和logo_xgdlinux_clut224.o兩個檔案,如果有就刪掉。

第八步:修改kernel/drivers/video/logo下的logo.c檔案:

// lqm added for g300.

#ifdef config_logo_xgdlinux_clut224

logo = &logo_xgdlinux_clut224;

#endif

// end added.

第九步:修改kernel/include/linux/linux_logo.h 檔案:

extern const struct linux_logo logo_xgdlinux_clut224;// lqm added for g300

第十步:修改kernel/drivers/video/logo下的makefile檔案:

obj-$(config_logo_xgdlinux_clut224) += logo_xgdlinux_clut224.o #lqm added

第十一步:make生成新的kernel映像

經以上步驟完成自己定義的logo影象修改。

核心配置:

device drivers ->

graphics support ->

[*] support for frame buffer devices

[*] vesa vga graphics support

console display driver support ->

[*] video mode selection support

[*] framebuffer console support

[*]select compiled-in fonts

[*]vga 8x16 font

logo configuration->

[*]bootup logo

[*] standard 224-color linux logo

重新編譯核心

4.logo居中:

1、設定logo在螢幕中的位置

vi drivers/video/fbmem.c

找到"fb_show_logo_line"函式,把

image.dx = 0;

image.dy = y;

改為image.dx = (info->var.xres/2) - (610/2);

image.dy = (info->var.yres/2) - (206/2);

[注]:

info->var.xres和info->var.yres是解析度大小

610和206是logo的大小

2、vi drivers/video/console/fbcon.c

找到"fbcon_prepare_logo"函式,在

logo_height = fb_prepare_logo(info, ops->rotate);

後面加上

logo_height += (info->var.yres/2) - (206/2);

5.新增新:

在makefile中有這麼一句:extra-y += $(call logo-cfiles,_clut224,ppm)

它的意思是在當前找到以"_clut224"結尾的ppm,然後根據它生成.c檔案,所以新增新的名可以類似這樣:logo_linux_sullg_clut224.ppm

1.makefile,加入一行

obj-$(config_logo_linux_sullg_clut224)  += logo_linux_sullg_clut224.o

2.kconfig,加入

config logo_linux_sullg_clut224

bool "standard 224-color linux logo for sullg"

default y

3.logo.c,加入

extern const struct linux_logo logo_linux_sullg_clut224;

在"fb_find_logo"中找到"#ifdef config_logo_linux_clut224",在其後加入:

#ifdef config_logo_linux_sullg_clut224

logo = &logo_linux_sullg_clut224;

#endif

參考:

Linux開機LOGO修改

第一種方法 首先需要製作一張 png的,該格式的可以用ps進行另存為即可。然後在linux系統下執行以下命令 pngtopnm linux logo.png linux logo.pnm pnmquant 224 linux logo.pnm linux logo 224.pnm ppmquant ...

修改linux開機logo

編者 linux的開機預設logo是乙隻可愛的小企鵝。這裡我們可以把它換成我們自己喜愛的,只要將linux 2.6.32.2 drivers video logo linux logo clut224.ppm替換成自己的即可。方法很簡單,照著操作基本就沒問題。以下按照手冊介紹兩種方法。注意在進行的轉...

linux開機logo製作

pngtopnm,pnmquant,pnmtoplainpnm pngtopnmlinuxlogo.png linuxlogo.pnm pnmquant 224 linuxlogo.pnm linuxlogo224.pnm pnmtoplainpnm linuxlogo224.pnm linuxlo...