요즘은 "우분투(Ubuntu)"라는 이름의 배포본을 사용하고 있는데 그럭저럭 맘에 든다. (라이브 CD로부터 ) 설치할 때 아무것도 묻지 않고 그냥 판박이를 만든다는 것이 일단 첫번째 불만이었고 그 외에는 그리 흠잡을 곳이 없는 것 같다. (물론 사용하기 편한 것은 이 배포본의 특성에 의한 부분도 있겠지만 한편 그만큼 리눅스 운영체계가 일반 데스크탑 사용자가 사용하기에 불편함이 없을 정도로 발전한 까닭이 클 것이다.)

프레임버퍼 기반의 시험 공간으로 버추얼박스(VirtualBox)에 게스트로 최신의 7.10 버전을 설치해 보았다. 건드리기 귀찮은 내 시스템을 유지한 채 새 버전을 맛보는 목적도 있지만 본래의 목적은 역시 프레임버퍼용 시험환경 구성이다. 그런데, 부팅 명령행에 "vga=0x315" 항목을 추가하는 것 만으로는 이 녀석이 꿈쩍도 하지 않는 것이 아닌가? 혹시 버추얼박스의 제한? 확인된 내용은 우분투의 뭐랄까... 안전설계에 의한 것인 듯 하다. 다음의 단계에 의하여 설정을 마칠 수 있었다.

1) 부팅 옵션 변경 (일반적인 이야기)

한가지 특기할 부분은, 예전에는 각 메뉴 라인을 편집했었는데 이것이 grub 새 버전의 추가된 기능인지 아니면 우분투의 변종인지는 모르겠으나 모든 메뉴 항목을 위한 기본값(defoptions)의 "한 줄" 지정이 가능하고 그것을 명령을 통하여 각각의 메뉴 항목에 적용하는 기법이 사용되고 있었다.

"defoptions"라는 이름을 찾아 "vga=0x315"라는 값을 추가해줬다. (해상도 800x600의 24bit 모드)

$ sudo vi /boot/grub/menu.list
        add 'vga=0x315' to 'defoptions'
$ sudo update-grub

2) 모듈 설정과 제한 풀어주기

시스템이 initramfs 방식을 사용하고 있으므로... (이건 언제부터 적용된 것인지는 모르겠으나 내가 처음 사용하기 시작한 지난 버전에도 적용되어 있었다. 이 것 이상의 가짜 파일시스템을 이용한 장난들이 재밌게 보이는데, 다음에 시간이 되면...) 다음과 같이 설정파일을 수정하여 필요한 모듈을 넣어줘야 한다. (그런데 이것들이 모듈로 되어있는지는 몰랐었네...)

$ sudo vi /etc/initramfs-tools/module
        add 'fbcon' and 'vesafb'

그러나 이 중 vesafb는 요주의 모듈 목록에 기본으로 들어있었다. 다음처럼, 설정파일을 편집하여 모듈 등록을 거부하지 않도록 해줘야 한다.

$ sudo vi /etc/modprobe.d/blacklist-framebuffer
        disable 'blacklist vesafb'

이제 initrd 이미지를 다시 만들어야 한다.

$ sudo update-initramfs -u

3) 다시 시작

$ sudo reboot

그런데 왠 일인지 이것으로는 모자람...

4) 부팅 스플래시 설정 바꾸기

이렇게 해놓으니 화면은 800x600으로 잡혀 올라오는데 부팅 스플래시와 진행막대가 엉뚱한 위치에 표시된다. 이전의 설정이 1024x768을 기준으로 되어있어서인데... 바로잡자.

$ sudo vi /etc/usplash.conf
        modify 'xres' and 'yres'

물론 램디스크를 다시 만들어줘야 하고, 다시 시작하면 부팅 화면도 깔끔하게 표시된다.

좀 복잡하다. 왜 복잡해졌나? 편의를 돕기 위한 이런 저런 유틸리티, 설정, 뭔가가 더해지다보니 건드려야 하는 부분도 많아지고 복잡해졌다. 일반 사용자도 편하게 사용할 수 있는 뭔가를 만들려면 그 만큼 속으로 복잡해질 수 밖에 없는... 공짜는 없다고나 할까?

리눅스 어렵다는 말이 여기서 나왔나보다.