Unix/Ubuntu

LiveCD 수정하기

ForceCore 2010. 12. 10. 11:28
https://help.ubuntu.com/community/LiveCDCustomization
https://help.ubuntu.com/community/ko/LiveCDCustomization (한국어)
https://help.ubuntu.com/community/LiveCDCustomizationMaverick 완전 최신판에 대한 정보.

공용 컴퓨터의 안전 상태를 신뢰하지 못하는 사람이 되면... LiveCD를 만들고 다녀야 한다 (ㄷㄷㄷㄷㄷ). 하지만 LiveCD 그 자체로는 그다지 쓸모있진 않다. 매번 필요한거 재설치를 해야 한다면 누가 쓰겠나. 일단 우분투의 LiveCD Creator를 쓰면 LiveUSB의 변화사항이 그대로 기록되어서 좋다. 하지만 그래도, 디폴트 유저가 ubuntu, host도 ubuntu인게 거슬린다 (-_-). 이를 아는지, 우분투 위키에도 그런 것을 바꿀 수 있는 방법을 알려준다.

http://uck.sourceforge.net/
UCK를 쓰면 간단하다. -0-a;;; 우분투 외 민트에도 되는지 테스트 해보는중.

한국어 지원은
http://mgggopssl.egloos.com/5084544
이곳에 의하면 패키지
$ sudo apt-get install language-pack-ko language-pack-ko-base language-pack-gnome-ko language-pack-gnome-ko-base
$ sudo apt-get install language-support-fonts-ko language-support-input-ko language-support-ko ttf-unfonts-core

language-support-translations-ko <- 이건 없어진듯.
를 설치해야 된다고 한다. 민트의 경우 unfonts-core를 수동으로 설치해야만 함.

결국 잘 되다가, 완성 직전에 우분투 버전인식 실패! 라면서 안 되는데...
Producing the CD image
이 단계부터 계속 하면 되는듯...

/etc/casper.conf 를 수정했다든지 하여튼 etc를 건드렸으면 아래 과정을 밟아야 함: ramfs 생성부분이다.
sudo chroot remaster-root
ls -l 로 커널 버전과 이름 확인 .  필자는 2.6.35-23-generic
mkinitramfs -o /initrd.gz 2.6.35-23-generic
exit
mv remaster-root/initrd.gz remaster-iso/casper/

cd remaster-iso/casper
sudo mv initrd.lz initrd.lz.orig
gzip -dc initrd.gz | sudo lzma -7 > initrd.lz
sudo rm initrd.lz.orig
cd ../..
커널도:

sudo cp remaster-root/boot/vmlinuz-2.6.35-23-generic remaster-iso/casper/vmlinuz
sudo cp remaster-root/boot/initrd.img-2.6.35-23-generic remaster-iso/casper/initrd.gz
이런 식으로 디스크의 커널과 squashfs안에 든 커널을 일치시켜줘야 함. 안 그러면 문제가 생긴다. 무선랜이 안 잡힌다든지 -_-...

/root/tmp 에서, manifest를 재생성하고,
chmod +w remaster-iso/casper/filesystem.manifest
sudo chroot remaster-root dpkg-query -W --showformat='${Package} ${Version}\n' > remaster-iso/casper/filesystem.manifest
sudo cp remaster-iso/casper/filesystem.manifest remaster-iso/casper/filesystem.manifest-desktop
sudo sed -i '/ubiquity/d' remaster-iso/casper/filesystem.manifest-desktop
sudo sed -i '/casper/d' remaster-iso/casper/filesystem.manifest-desktop
파일시스템 압축...
sudo rm remaster-iso/casper/filesystem.squashfs
sudo mksquashfs remaster-root remaster-iso/casper/filesystem.squashfs

md5sum 내기
cd remaster-iso
sudo rm md5sum.txt
find -type f -print0 | sudo xargs -0 md5sum | grep -v isolinux/boot.cat | sudo tee md5sum.txt
ISO 이미지 생성
sudo mkisofs -D -r -V "XXX" -cache-inodes -J -l -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -o /xxx.iso .

XXX는 iso 이미지명 (-_- 아무거나 공백 없이?)
xxx.iso는 최종 산물 iso파일명. 성공 했는데 시스템 전체의 키보드 설정이라든지... 이런건 좀 건드려야 하는듯.