何為GRUB背景(Splash)?
GRUB背景(Splash)只不過(guò)是一張圖像,在Linux系統(tǒng)啟動(dòng)的時(shí)候顯示為背景。你可能知道Grub (GRand Unified Bootloader 的簡(jiǎn)寫(xiě)) 是主流 Linux 發(fā)行版中廣泛使用的啟動(dòng)裝載程序 。以 RedHat 為例,你會(huì)發(fā)現(xiàn)它在系統(tǒng)啟動(dòng)之時(shí)顯示為空白或者是一個(gè)黑色背景。
GRUB背景(Splash)的相關(guān)定義在 grub.conf 文件中,并且 splash 背景圖像應(yīng)該存儲(chǔ)在 /boot 分區(qū)中。如果你覺(jué)得默認(rèn)的空白屏相當(dāng)無(wú)趣,同時(shí)又想按照自己的意愿來(lái)修改它,那么趕緊閱讀下方的每個(gè)步驟吧。
開(kāi)始前需要哪些準(zhǔn)備工作
1.ImageMagick (僅在命令行中使用) 或者 GIMP (GUI 中使用)
2.一個(gè)樣例圖像
使用GUI修改Grub的Splash背景
首先然我們來(lái)使用 GUI 來(lái)進(jìn)行操作吧,這里我們使用 GIMP 來(lái)作為圖像編輯器。
步驟 1、使用 GIMP 打開(kāi)圖像 (路徑為:應(yīng)用 --> 圖像 --> GIMP 程序 )
步驟 2、現(xiàn)在我們需要按實(shí)際情況將圖像縮放到 640x480 大小。為此,需要點(diǎn)擊 圖像 --> 縮放圖像。記住,要如下圖參數(shù)進(jìn)行設(shè)置。修改寬度為 640,高度為 480。其他保持不變。
點(diǎn)擊 縮放 按鈕
步驟 3、然后,我們需要索引圖像,讓它僅使用 14 色。為此,點(diǎn)擊 圖像 --> 模式 --> 索引 。點(diǎn)選 生成最優(yōu)調(diào)色板 選項(xiàng),并設(shè)置顏色最大值 為 14 (如下)。
點(diǎn)擊 轉(zhuǎn)換 按鈕
步驟 4、保存文件。這里以文件名為 “UxTechno.xpm” 來(lái)保存。
步驟 5、以 Zip 方式壓縮文件。為此,轉(zhuǎn)到文件的保存位置 --> 右擊并選擇 壓縮 選項(xiàng),選擇 gzip 方法來(lái)壓縮。
步驟 6、現(xiàn)在復(fù)制或移動(dòng) "UxTechno.xpm.gz" 到 /boot/grub/UxTechno.xpm.gz。
步驟 7、這一步,打開(kāi) /boot/grub/grub.conf 文件編輯 splashimage 參數(shù)如下,并保存文件。
最后,文件的內(nèi)容應(yīng)該是像這樣的:
# grub.conf
generated by anaconda
#
# Note that you do not have to rerun grub after making changes to this file
# NOTICE: You have a /boot partition. This means
that # all kernel and initrd paths are relative to /boot/, eg. # root
(hd0,0) # kernel /vmlinuz-version ro root=/dev/sda2 # initrd
/initrd-[generic-]version.img #boot=/dev/sda default=0 timeout=5
splashimage=(hd0,0)/grub/UxTechno.xpm.gz
hiddenmenu
title Red Hat Enterprise Linux (2.6.32-220.el6.x86_64)
root (hd0,0)
kernel /vmlinuz-2.6.32-220.el6.x86_64 ro root=UUID=1d8c5075-1a5b-4fdc-ba15-0458b65c6012 rd_NO_LUKS rd_NO_LVM LANG=en_US.UTF-8 rd_NO_MD quiet SYSFONT=latarcyrheb-sun16 rhgb
crashkernel=auto KEYBOARDTYPE=pc KEYTABLE=us rd_NO_DM initrd
/initramfs-2.6.32-220.el6.x86_64.img
當(dāng)你重啟服務(wù)器之后,你講看到如下效果的 splash 背景圖像:
使用命令行修改Grub的Splash背景
如果說(shuō)你是命令行的超級(jí)粉絲,那就使用如下方法吧。
步驟 1、開(kāi)始之前,我們需要修改圖像的像素分辨率。為此,我們還需要在 Linux 系統(tǒng)上安裝好 ImageMagick。在 CentOS / RHEL 上使用如下命令來(lái)進(jìn)行交叉檢查。
# rpm -qa|grep -i ImageMagick
如果命令沒(méi)有返回輸出 (即空白),這意味這你的系統(tǒng)上還沒(méi)有安裝 ImageMagick。你必須運(yùn)行下面的命令來(lái)安裝它。
# yum install ImageMagick
安裝好了重新復(fù)核一下,你會(huì)得到類似如下的輸出:
# rpm -qa|grep -i ImageMagick
ImageMagick-6.5.4.7-5.el6.x86_64
然后,繼續(xù)接下來(lái)的配置。這里我使用 UxTechno 的 logo 來(lái)做 splash 背景圖像。
步驟 2、使用如下命令來(lái)轉(zhuǎn)換像素深度。
# convert -depth 8 -colors 14 -resize 640x480 uxtechno_logo.jpg uxtechno_logo.xpm
上述選項(xiàng)的意義如下:
1.最大使用 14 色
2.分辨率為 640x480
3.使用 xpm 格式
步驟 3、以 Zip 方式壓縮文件。
# gzip uxtechno_logo.xpm
步驟 4、復(fù)制文件到 /boot 分區(qū)。
# cp uxtechno_logo.xpm.gz /boot/grub/
步驟 5、在 /boot/grub/grub.conf 文件中修改 splashimage 參數(shù)如下,并保存文件。
splashimage=(hd0,0)/grub/uxtechno_logo.xpm
步驟 6、最后,使用 reboot 命令重啟服務(wù)器。啟動(dòng)界面將顯示使用 GUI 方式第 7 步中的圖像。