Ubuntu Customization

Kit

 VS

 

Customizer


가끔 여러분들은 나만의 OS를 만들고 싶다는 생각이 들었던 적이 있으셨나요? 저는 졸업작품을 만들 때 제 작품 구동용 전용 OS를 우분투를 이용해서 만든 적이 있습니다. 거의 임베디드화 했다고 생각하시면 되는데요. 사실 PC기반이었기에 그냥 기존의 우분투를 고쳐서 쓰는 수준에 불과한 물건이었습니다. 하지만, 아무도 그것이 우분투였는지 모르더군요. 어쨌건 저는 저만의 OS를 하나 만든 셈이었고, 이리저리 고쳐가며 만든 것이 상당히 재미있었습니다.


우분투를 이용하여 할 수 있는 많은 것 중에서 나만의 OS만들기는 상당히 짜릿한 느낌이었습니다. 제가 사용한 방법은 2가지가 있었는데, 이 두 가지를 비교하며 이야기 해보도록 하겠습니다. (사실 한 가지 더 있었는데, 프로젝트가 문을 닫아버렸습니다. Remastersys라고 상당히 특이한 물건이었는데 아쉽더군요.)


1. Ubuntu Customization Kit


 Ubuntu Customization Kit (이하 UCK)는 공식 우분투 커스터마이징 도구입니다. 우분투에서 공식적으로 지원하는 물건이기 때문에 간단한 언어설정+추가 패키지를 하실 생각이라면 이 도구 만큼 좋은 것은 없습니다. 또한 대화상자 형태로 동작하기 때문에 차근차근 묻는대로만 하면 정말 쉽습니다. 


사실 이 도구가 나오게 된 계기는 기존 우분투 배포버전은 무조건 영문 라이브 환경으로 들어가다보니 다른 언어권 사람들이 자신의 언어를 기본으로 하는 배포판을 만들어 내기 시작했습니다.(특히 일본이 가장 열성이었다고 하지요. 우리나라에서도 부러워 할 정도로 거의 완벽한 일본어 로컬라이징을 보여줬다고 합니다. 8.04시절이야기 입니다.) 그런데 어차피 영문배포판에 해당 언어를 기본으로 넣어주는 것에 불과한데도 삽질을 하는 것이 안 쓰러웠던 것인지 이러한 물건이 탄생하게 됩니다. 이것을 이용해서 데스크탑 환경도 바꾸고, 기본 언어도 바꾸고 할 수 있는 것이지요.


그런데 이 물건은 한 가지 문제를 가지고 있었습니다. 바로 우분투에서 배포한 iso를 기본 바탕으로 사용해야만 했다는 것입니다. 사실 우분투 데스크탑 환경에 언어설정만 하고 몇가지 추가 패키지만 설치하는 정도면 이것만큼 좋은 것도 없습니다. 그런데 그 이상이라면 이야기가 달라지지요. Wayland나 리눅스민트 수준의 마개조를 필요로 한다면 UCK가지고 커스터마이징 하는 것은 많이 어려워 보입니다. 즉, UCK는 공식 커스터마이저라서 호환성도 확보되었고, 사용도 쉽지만 그만큼 제약도 심하다는 의미지요.


2. Customizer (통칭 U-customizer)


이 물건은 UCK가 나오기 전부터 만들어졌던 물건입니다. (https://github.com/clearkimura/Customizer) 그런데 중간에 업데이트가 중단 된 듯하여서 조금 걱정을 했는데, 다행히도 github에서 소스를 커밋할 수 있더군요. 최근 업데이트가 3월...이라서 조금 걸리기는 하지만 아직까지는 14.04도 되는 듯 합니다. 


설치방법이 바뀌었군요. 그냥 컴파일 삽질입니다!!! (PPA가 중단되었습니다!)

아래 주소로 소스코드를 우선 다운로드 받습니다.


https://github.com/clearkimura/Customizer/archive/master.zip


sudo apt-get install git build-essential fakeroot make binutils g++ python python-dev python-qt4 pyqt4-dev-tools squashfs-tools xorriso x11-xserver-utils xserver-xephyr qemu-kvm dpkg-dev debhelper qt4-dev-tools qt4-linguist-tools qttools5-dev-tools --no-install-recommends


위의 명령어로 필요한 패키지를 설치합시다.

그리고 다음 명령어를 씁시다.


make deb

이러면 여러분의 소스폴더 바로 상위폴더에 새로운 deb이 생기는데요. 이놈을 보통 deb 설치하듯이 설치하면 됩니다. GUI가 gambas에서 QT로 바뀌었습니다...


특히 다른 것보다 이 도구가 좋은 것이 우분투 배포판 중에서 Ubuntu Mini Remix (http://www.ubuntu-mini-remix.org/)라는 것이 있는데, 이 배포판은 특징이 Debian처럼 가장 최소한의 구동부분만 들어있어서 GUI도 없고 다른 패키지도 존재하지 않습니다. 오로지 구동에 필요한 패키지만 있는 것이지요. 이 mini-remix를 이용해서 커스터마이징하기 아주 좋다는 것입니다. README.md에 이 mini-remix가 언급이 되어있을 정도로 이 도구는 최적화된 가벼운 OS를 만들기에 정말 좋습니다.


정말 Advanced한 커스터마이징 도구이다. 졸업작품도 이 물건 없었으면 조금 힘들었을지도?

또 QEMU 버튼을 달아서 QEMU를 설치 했다면 바로 QEMU를 통해 만들어진 라이브OS를 확인 가능하게 했다는 것도 큰 특징입니다. UCK와 비교했을 때 커스터마이징의 범위가 상당히 넓어 진것도 상당히 점수를 많이 딴 항목입니다.


그런데 이 물건도 상당히 큰 단점이 있습니다. 바로 Gambas로 만들어진 GUI입니다. Gambas는 현재 약간의 버그로 인하여 GTK-3.0을 이용할 시 클릭이 한번에 먹히지 않는 버그가 있습니다. 이 버그가 상당히 사람 짜증나게 하는데, 보통 ISO를 여는데 버튼을 두세번 누르고, 배포판 이름을 바꾸는데 클릭 두세번, LiveCD User name 바꾸는데 클릭 두세번, 그리고 커스터마이징되는 OS의 파일을 확인하려면 또 클릭 두세번(Directories메뉴를 클릭 하면 됩니다.) 하다보면 짜증이 당연히 밀려옵니다. 한번에 입력이 되면 좋을 텐데, 그게 전혀 되지를 않고 있는 것입니다. 이 버그가 gambas의 버그인지 GTK-3.0의 버그인지는 잘 모르겠지만, 작업중에 혈압상승을 동반하게 됩니다.


보통 이 도구를 이용해서 커스터마이징을 하는데에는 순서가 있습니다.(굳이 똑같이 할 필요는 없지만)


1) Select ISO 버튼으로 수정할 배포판 iso선택( 우분투 공식 배포판이나 우분투 미니리믹스 iso를 선택하시면 됩니다.)


2) Distribution Name 수정 (그냥 Ubuntu로 두셔도 됩니다.)

3) LiveCD User name 수정(live도 나쁘지는 않습니다. 아니면 root를 쓰시는 분도 계십니다. 버전에 따라 안 된다고 하지만)

4) Hostname 수정 (보통 바꾸지 않습니다.)

5) Release notes URL 보통 바꾸지 않지만 만약 리눅스민트 수준으로 전혀 다른 수정을 하시고 공식 홈페이지를 만드셨다면 여기에 적으셔도 됩니다.


6) Terminal 버튼을 누르고, CLI작업 시작(apt-get 으로 추가 패키지 설치 및 기타 설정 파일 수정)

(6의 작업이 제일 중요합니다.)


7) Desktop버튼은 보통 이용하지 않고 Terminal에서 일련의 작업을 마칩니다. (Install DEB은 apt-get 이나 dpkg -i 명령을 이용하여 처리힙니다.)

8) ReBuild ISO 버튼으로 커스터마이징된 ISO 생성 기본으로 /home 안에 있습니다. 찾아보세요.

9) QEMU로 확인


(참 쉽죠?)


보통 이런 식으로 작업해서 어느정도 끝내면 충분히 작업이 완료 됩니다. 남은 것은 혹시나 모를 버그에 대비해서 준비를 하는 것 뿐입니다. UCK에 비해 조금 어렵기는 하지만 커스터마이징 할 수 있는 것이 워낙 넓으니 약간 전문적인 느낌이 들기는 합니다.


그나저나 느린 반응이 참 안타깝기는 합니다. gambas로 되어있는 것을 PyGTK로 포팅이라도 하면 이 문제가 해결 될 것 같기는 합니다만, 아무도 그럴 생각이 없는 것 같아서 안타깝네요. 심지어 이 도구는 공식저장소에서 퇴출 되었습니다. 더더욱 안타깝습니다. 아마도 Gambas가 업데이트 되는 동안 정작  Customizer가 업데이트 되지 않아서 작동이 안 되자 없애버린 것이 지금까지 남은 듯 합니다. 어쩔수 없습니다. 그냥 github에서 받아서 따로 복사해서 쓰는 수 밖에요. chroot기능을 이용하기 때문에 GUI.gambas 파일을 관리자 권한으로 실행하는 것은 필수입니다.


3, 비운의 Customizer 하지만 그만큼 특이했던 Remastersys

사실 위의 UCK나 Customizer는 모두 별도의 ISO를 이용해서 만드는 커스터마이저였습니다. 그래서 14.04에서 12.04의 커스터마이징도 가능했고, 반대로 다른 버전의 ISO를 이용하는 것이 가능했습니다. 하지만, GUI의 혜택은 전혀 받지 못했습니다. 터미널 작업은 필수였지요. 하지만 Remastersys는 좀 달랐습니다. 괜찮은 방법이라고 생각하면서 애용하기 했던 물건입니다.


더 이상 포럼에 글이 올라오지 않아서 프로젝트를 중단했다는 글이다. 사실 나도 이 프로그램을 쓰면서 포럼에 글 한번 올리지 않아서 좀 찔리는 감이 있다.

Remastersys는 사실 Customizer라기 보다는 Norton Ghost같은 백업 프로그램에 가까운 물건입니다. 즉, 지금 사용하는 시스템을 그대로 라이브DVD화 한다는 것이 특징이었습니다. 여러분이 지금까지 쓰면서 이리저리 끼워넣고 삽질하고 했던 시스템을 라이브DVD(혹은 라이브USB)화 해서 쓸 수 있도록 한 것입니다. 여기에 설치프로그램도 넣어서 그대로 설치하듯이 복구 가능하도록 한 것도 독특한 물건이었습니다. 게다가 사용자 환경도 같이 가져가서 설정도 함께 설치 된다는 것도 특이한 사항이었습니다. (백업이 완벽하게 되어서 기본 옵션으로 하면 그냥 사용자이름과 패스워드까지 백업이 됩니다. -dist옵션을 넣어야 비로소 기존 라이브 환경이 됩니다.)


하지만 이 프로그램은 12.04까지만 지원하고 이후 개발을 중단 했습니다. 만약 소스를 원한다면 기부금을 보내달라고 하네요. 특이하고 마음에 들었지만, 제가 필요로 할 정도는 아니었습니다. Customizer나 UCK로도 어느정도 가능한 작업이었으니까요. 만약 복잡한 OS설치 및 수정이 싫었다면 샀을 지도 모를 일이기는 합니다. 2년이나 지나도록 다시 개발이 되지 않는 것으로 봐서는 그냥 이렇게 사라지는 듯 합니다. 비슷한 컨셉의 오픈소스가 나오기를 희망합니다.


이상 우분투 커스터마이징 도구들을 살펴보았습니다. 초보자에게도 친절하면서 사용하기도 쉬운 UCK, 조금 불편하지만, 커스터마이징 범위가 상당히 많은 Customizer 저는 특성 상 Customizer를 이용했지만, UCK도 상당히 좋은 도구임에는 분명합니다. 여러분들도 나만의 OS 하나 만들어 보시는 것은 어떠신가요?

,