การเปลี่ยนรูปภาพที่แสดงใน gurb menu และ splash image ของ linux opensuse 10.3


grub menu image splash image

วันนี้ลองเปลี่ยนmenu image background grub boot loader ที่แสดงก่อนจะบูตเครื่องและ splash image ขณะกำลังบูต มีขั้นตอนดังนี้

ก่อนอื่นดูก่อนว่าตอนนี้ config ไว้อย่างไรโดยดูจาก file /boot/grub/menu.lst

#เปิด console
sudo cat /boot/grub/menu.lst

โดยเราจะสนใจในส่วนของ gfxmenu และ vga

เช่น

gfxmenu (hd0,5)/boot/message

###Don't change this comment - YaST2 identifier: Original name: linux###
title openSUSE 10.3 - 2.6.22.17-0.1
    root (hd0,5)
    kernel /boot/vmlinuz-2.6.22.17-0.1-default          root=/dev/disk/by-id/scsi-SATA_FUJITSU_MHY2120_K404T812NKAM-part6 vga=0x31b resume=/dev/sda5 showopts acpi=off noapic
    initrd /boot/initrd-2.6.22.17-0.1-default
..........

ซึ่ง gfxmenu (hd0,5)/boot/message หมายถึงให้ grubแสดงรูปภาพในไฟล์ /boot/message เป็น menu image background

vga=0x31b หมายถึง splash screen resolution  ขณะบูตเท่ากับ 1280x768

จากนั้นแตก /boot/message ออกมาเพื่อทำการแทนที่รูปที่เราต้องการ

#เปิด console
mkdir gmenu
cd gmenu
cpio -i < /boot/message
ls -l

-rw-r--r-- 1 manop users 101965 2008-03-19 00:05 16x16.fnt
-rw-r--r-- 1 manop users  59277 2008-03-19 00:05 back.jpg
-rw-r--r-- 1 manop users   3093 2008-03-19 00:05 en.hlp
-rw-r--r-- 1 manop users   1518 2008-03-19 00:05 en.tr
-rw-r--r-- 1 manop users     69 2008-03-19 00:05 gfxboot.cfg
-rw-r--r-- 1 manop users  79431 2008-03-19 00:05 init
-rw-r--r-- 1 manop users      6 2008-03-19 00:05 lang
-rw-r--r-- 1 manop users      3 2008-03-19 00:05 languages
-rw-r--r-- 1 manop users    229 2008-03-19 00:05 pabout.txt
-rw-r--r-- 1 manop users  29857 2008-03-19 00:05 panim_a.jpg
-rw-r--r-- 1 manop users  39431 2008-03-19 00:05 panim.jpg
-rw-r--r-- 1 manop users  87451 2008-03-19 00:05 pback.jpg
-rw-r--r-- 1 manop users   2124 2008-03-19 00:05 phead.jpg
-rw-r--r-- 1 manop users   1719 2008-03-19 00:05 timer_a.jpg
-rw-r--r-- 1 manop users    312 2008-03-19 00:05 translations.en

ก็ง่ายๆแล้วครับ เลือกรูปที่ต้องการ ตกแต่งด้วย The GIMP ตามสะดวก resize ให้สอดคล้องกับ resolution จากตัวอย่างก็ 1280x768 แล้ว saveแทนที่ไฟล์ back.jpg แล้วก็ทำการ pack เข้าไปใหม่อย่างนี้

#เปิด console
#backup
sudo mv /boot/message /boot/message.old
cd gmenu
ls | cpio -o > ../message
sudo mv ../message /boot/message

เสร็จไปหนึ่ง มาต่อกันกันด้วย splash image ซึ่งจะเป็น theme โดยเก็บอยู่ที่ /etc/bootsplash/themes/SuSE เพราะผมใช้ theme SuSE 

ls -l /etc/bootsplash/themes/SuSE

drwxr-xr-x 2 root root 4096 2007-09-17 15:47 animations
drwxr-xr-x 2 root root 4096 2008-03-10 13:41 bootloader
drwxr-xr-x 2 root root 4096 2008-03-18 22:42 config
drwxr-xr-x 2 root root 4096 2008-03-18 22:28 images

ไฟล์ที่เราสนใจคือรูปที่อยู่ใน folder images เพราะเป็นที่เก็บรูปเพื่อแสดงระหว่างบูตโดยมี 2 ส่วนคือ bootsplash-wresxhres.jpg และ silent-wresxhres.jpg โดย wresและhresจะสอดคล้องกับ kernel option vga ในที่นี้ wres=1280 hres=768 ดังนั้นเราต้องเอารูปที่เราต้องการมาแทนที่ไฟล์ทั้ง 2 ไฟล์ และ silent-wresxhres.jpg จะแสดงเมื่อ kernel option ในส่วน splash=silent ถูกกำหนด แต่ผมชอบให้มันแสดงรายละเอียดระหว่างบูตผมเลยไม่ไส่ option นี้
เมื่อแทนที่ไฟล์ทั้งสองแล้ว

#เปิด console
#backup
sudo mv /boot/initrd-2.6.22.17-0.1-default /boot/initrd-2.6.22.17-0.1-default.old
sudo mkinitrd

เรียบร้อย bootเครื่องทดสอบ

 

คำสำคัญ (Tags): #boot#grub#linux#loader#menu#splash
หมายเลขบันทึก: 171567เขียนเมื่อ 19 มีนาคม 2008 01:05 น. ()แก้ไขเมื่อ 21 มิถุนายน 2012 18:39 น. ()สัญญาอนุญาต: จำนวนที่อ่านจำนวนที่อ่าน:


ความเห็น (0)

ไม่มีความเห็น

พบปัญหาการใช้งานกรุณาแจ้ง LINE ID @gotoknow
ClassStart
ระบบจัดการการเรียนการสอนผ่านอินเทอร์เน็ต
ทั้งเว็บทั้งแอปใช้งานฟรี
ClassStart Books
โครงการหนังสือจากคลาสสตาร์ท