쉘에서 명령어로 jpg 파일을 xpm.gz 그림 포멧으로 바꾸기
먼저 이미지매직이 깔려있는지 알아보기.
rpm -qf /usr/bin/convert
ImageMagick-5.5.7.15-1.3
Grub 부트로더를 사용할 때 splash 이미지 바꾸기
<? $eMail = "indra"."\x40"."linux.co.kr"; ?>
http://indra.linuxstudy.pe.kr
grub 부트로더를 사용할 때 백그라운드에는 xpm 포멧의 파일이 사용된다.
사용되는 xpm 포멧 파일은 gz 형식으로 압축되어 있으며, /boot/grub/splash.xpm.gz 의 경로로 되어 있다.
xpm 파일의 앞 부분을 잠시 보면 comment 와 같이 되어 있어 그 구조를 짐작 할 수 있다.
…
/* columns rows colors chars-per-pixel */
"640 480 14 1",
…
가로: 640, 세로: 480, 색: 16색.
그리고 chars-per-pixel 은 미루어 짐작 컨대 한 캐릭터(character) 를 표현하기 위해
사용되는 pixel 의 크기 지정인것 같다.
일반 jpg,gif 의 파일을 linux 의 convert 명령으로 splash 파일을 만드는것이 가능하다.
convert 의 옵션에는 다음과 같은 옵션들이 있다.
option: -geomatry, -colors
-geomatry 는 이미지를 변환할때 가로x세로 에 대한 값을 지정해주어,
이미지 리사이징을 가능케 한다.
-colors 는 이미지를 변환 할 때 사용되는 색의 수를 지정 할 수 있게 한다.
이를 이용하여, 일반 이미지를 다음과 같이 xpm 포멧으로 변환한다.
# convert -geometry 640×480 -colors 14 indra-splash.xpm splash.jpg
# gzip indra-splash.xpm
일반 splash.jpg 라는 jpg 포멧의 파일을 convert 명령으로 xpm 파일로 바꾸었다.
그 후, gz 형태로 xpm 을 압축 한 후 이를 적용시키기 위해 파일을 /boot/grub 으로 복사 한 후,
/boot/grub/grub.conf 파일을 수정하여야 한다.
grub.conf 파일을 보면
…
splashimage=(hd0,6)/grub/splash.xpm.gz
…
위와 같이 splash 이미지를 적용하기 위해 설정된 것을 볼 수 있다.
이를 주석처리 하여 주고 다음과 같이 새로운 경로로 재 설정 하여 준다.
…
# splashimage=(hd0,6)/grub/splash.xpm.gz
splashimage=(hd0,6)/grub/hiphop.xpm.gz
…
일반적으로 lilo를 부트로더로 사용했던 경우 lilo 의 내용을 적용하기 위해
/sbin/lilo 명령을 사용했지만 grub 의 경우는 reboot 만 하면 새로운 내용이 적용 된다.
reboot 을 했을 경우 새로운 백그라운드가 grub 으로 설정 되어 있을 것이다.
아래는 김프 툴을 이용해서 바꾸는 것을 설명
리눅스 부팅시 보여지는 여러 화면들을 개개인의 취향에 따라 알맞게 변경하여 사용할 수 있다. 부팅시 보여지는 대표적인 화면들을 찾아보면 아래와 같다.
이제부터 위의 화면들을 사용자에 맞게 변경하는 방법에 대해 알아보도록 하자. |
부트매니저(Grub) 배경 바꾸기 |
부트매니저라 함은, 컴퓨터 부팅시 여러 운영체제들 중에서 어느 것으로 부팅할지를 결정하게 해주는 것으로 리눅스에서는 Grub이라는 프로그램을 사용한다. 이 Grub의 배경으로 들어가는 이미지를 자신이 원하는 이미지로 바꾸어 보도록 하자. 먼저 grub의 설정파일을 열어서 어떤 배경화면 이미지를 불러오는지 확인해보자. # vi /boot/grub/grub.conf
위 예제에서는 hda1파티션(hd0,0)의 /boot/grub/ 경로에 있는 splash.xpm.gz 파일을 지정하고 있다. 그럼 위의 splash.xpm.gz 파일을 내가 원하는 파일로 교체하면 간단히 수정되는 것이다.
gnome(또는 kde) 디자인 관련 사이트를 방문하면 부트매니저(grub)의 배경이미지들을 쉽게 구할 수 있다. (검색어: grub) 원하는 이미지를 다운받아 위의 경로에 넣어주기만 하면 부팅시 해당 이미지가 적용된 모습을 확인할 수 있다.
위의 디자인 관련 사이트에서 제공하는 이미지를 사용하지 않고 나만의 이미지를 활용하고자 한다면, *.xpm.gz 포맷의 이미지를 직접 만들어야 한다. 그럼 지금부터 아래의 내용을 하나하나 따라하며 직접 만들어 보도록 하자. ① 먼저 *.xpm.gz 포맷은 리눅스의 Gimp라는 프로그램에서 지원한다. 내 시스템에 gimp가 설치되어 있는지 확인하자. (시작 > 응용 프로그램 > 그래픽 > gimp) ② 그리고 gimp 프로그램에 grub 이미지 제작을 지원할 수 있는 플러그인이 설치되어 있어야 한다. 일반적으로 리눅스 배포판에 포함되어 있는 gimp에는 이러한 플러그인을 기본 탑재하지 않는다. 플러그인은 www.gimp.org 개발 사이트에서 구해야 하는데, 필자가 구해보려고 여기저기 뒤져본 결과 구하기가 쉽지 않았다. 그래서 필자가 구한 플러그인 파일을 공유하니 이를 받아 사용하자.
만약 위의 플러그인이 동작하지 않거나 설치되지 않는다면, 아래와 같이 수동작업도 가능하다.
|
# 위에서 언급된 grub-image.scm 플러그인의 내용은 아래와 같다.
다운로드가 안될 경우 아래 내용을 담은 grub-image.scm 텍스트 파일을 만들면 된다.
(define (script-fu-grub-pixmap img drw filename)
(gimp-undo-push-group-start img)
(gimp-image-scale img 640 480)
(gimp-convert-indexed img 1 0 14 0 0 "")
(gimp-undo-push-group-end img)
(gimp-file-save 0 img drw filename filename)
)
(script-fu-register "script-fu-grub-pixmap"
"<Image>/File/Grub Boot Image…"
"Save this image in the format used by the Grand Unified
Boot Loader. (http://www.gnu.org/software/grub/)"
"Mark Moss"
""
"January 31, 2002"
"*"
SF-IMAGE "Input Image" 0
SF-DRAWABLE "Input Layer" 0
SF-FILENAME "Output File" "splash.xpm.gz"
)