天天看點

如何修改 Linux 的 GRUB 啟動背景

何為 grub 背景( splash )?

grub 背景( splash )隻不過是一張圖像,在 linux 系統啟動的時候顯示為背景。你可能知道 grub (grand unified bootloader 的簡寫) 是主流 linux 發行版中廣泛使用的啟動裝載程式bootloader。以 redhat 為例,你會發現它在系統啟動之時顯示為空白或者是一個黑色背景。

grub 背景( splash )的相關定義在 <code>grub.conf</code> 檔案中,并且 splash 背景圖像應該存儲在 <code>/boot</code> 分區中。如果你覺得預設的空白屏相當無趣,同時又想按照自己的意願來修改它,那麼趕緊閱讀下方的每個步驟吧。

<a target="_blank"></a>

imagemagick (僅在指令行中使用) 或者 gimp (gui 中使用)

一個樣例圖像

首先然我們來使用 gui 來進行操作吧,這裡我們使用 gimp 來作為圖像編輯器。

步驟 1、 使用 gimp 打開圖像 (路徑為:應用applications --&gt; 圖像graphics --&gt;gimp 程式gnu image manipulation program)

步驟 2、 現在我們需要按實際情況将圖像縮放到 640x480 大小。為此,需要點選 圖像image --&gt; 縮放圖像scale image。記住,要如下圖參數進行設定。修改寬度為 640,高度為 480。其他保持不變。

如何修改 Linux 的 GRUB 啟動背景

縮放 image

點選 縮放scale按鈕

步驟 3、 然後,我們需要索引圖像,讓它僅使用 14 色。為此,點選 圖像image --&gt; 模式mode --&gt; 索引indexed。點選 生成最優調色闆generate optimum palette 選項,并設定顔色最大值maximum number of colors 為 14 (如下)。

如何修改 Linux 的 GRUB 啟動背景

最優調色闆限制為 14 色

點選 轉換convert按鈕

步驟 4、 儲存檔案。這裡以檔案名為 “uxtechno.xpm” 來儲存。

如何修改 Linux 的 GRUB 啟動背景

儲存圖像檔案

步驟 5、 以 zip 方式壓縮檔案。為此,轉到檔案的儲存位置 --&gt; 右擊并選擇壓縮compress 選項,選擇 gzip 方法來壓縮。

如何修改 Linux 的 GRUB 啟動背景

步驟 6、 現在複制或移動 "uxtechno.xpm.gz" 到 <code>/boot/grub/uxtechno.xpm.gz</code>。

步驟 7、 這一步,打開 <code>/boot/grub/grub.conf</code> 檔案編輯 <code>splashimage</code> 參數如下,并儲存檔案。

最後,檔案的内容應該是像這樣的:

<code># grub.conf</code>

<code>generated by anaconda</code>

<code>#</code>

<code># note that you do not have to rerun grub after making changes to this file</code>

<code># notice: you have a /boot partition. this means</code>

<code>that # all kernel and initrd paths are relative to /boot/, eg. # root</code>

<code>(hd0,0) # kernel /vmlinuz-version ro root=/dev/sda2 # initrd</code>

<code>/initrd-[generic-]version.img #boot=/dev/sda default=0 timeout=5</code>

<code>splashimage=(hd0,0)/grub/uxtechno.xpm.gz</code>

<code>hiddenmenu</code>

<code>title red hat enterprise linux (2.6.32-220.el6.x86_64)</code>

<code>root (hd0,0)</code>

<code>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</code>

<code>crashkernel=auto keyboardtype=pc keytable=us rd_no_dm initrd</code>

<code>/initramfs-2.6.32-220.el6.x86_64.img</code>

當你重新開機伺服器之後,你講看到如下效果的 splash 背景圖像:

如何修改 Linux 的 GRUB 啟動背景

如果說你是指令行的超級粉絲,那就使用如下方法吧。

步驟 1、 開始之前,我們需要修改圖像的像素分辨率。為此,我們還需要在 linux 系統上安裝好 imagemagick。在 centos / rhel 上使用如下指令來進行交叉檢查。

<code># rpm -qa|grep -i imagemagick</code>

如果指令沒有傳回輸出 (即空白),這意味這你的系統上還沒有安裝 imagemagick。你必須運作下面的指令來安裝它。

<code># yum install imagemagick</code>

安裝好了重新複核一下,你會得到類似如下的輸出:

<code></code>

<code>imagemagick-6.5.4.7-5.el6.x86_64</code>

然後,繼續接下來的配置。這裡我使用 uxtechno 的 logo 來做 splash 背景圖像。

步驟 2、 使用如下指令來轉換像素深度。

<code># convert -depth 8 -colors 14 -resize 640x480 uxtechno_logo.jpg uxtechno_logo.xpm</code>

上述選項的意義如下:

最大使用 14 色

分辨率為 640x480

使用 xpm 格式

步驟 3、 以 zip 方式壓縮檔案。

<code># gzip uxtechno_logo.xpm</code>

步驟 4、 複制檔案到 <code>/boot</code> 分區。

<code># cp uxtechno_logo.xpm.gz /boot/grub/</code>

步驟 5、 在 <code>/boot/grub/grub.conf</code> 檔案中修改 <code>splashimage</code> 參數如下,并儲存檔案。

<code>splashimage=(hd0,0)/grub/uxtechno_logo.xpm</code>

步驟 6、 最後,使用 <code>reboot</code> 指令重新開機伺服器。啟動界面将顯示使用 gui 方式第 7 步中的圖像。

原文釋出時間為:2017-03-14

本文來自雲栖社群合作夥伴“linux中國”

繼續閱讀