2009년 10월 22일 목요일

stage3설치

stage3(gentoo)설치.


처음엔 그래픽화면으로 설치해서 써보려고하다가, 내PC의 랜카드가 On_Boarn(보드에 포함된)용

랜카드인 SIS900용이 인식불능으로, 인터넷을 못하는 바람에 하는수없이 커널컴파일을 하다가,

커널컴파일후에 부팅이 안되는 문제가 너무 많이 나와서, stage3로 설치하면 랜카드를 인식할수

있을까하다가,,, 웹에서 stage3설치기를 보려고했더니, 따라하면 곧 부팅불능되게 써놨더군요.

차라리 쓰지나 말든지, 아니면 제대로 쓰든지... 그래도 이해는 됩니다.

젠투설명서가 모두 영어로 돼있고, 어휘를 불필요하게 어려운 어휘를 써놔서,

쉬운어휘를 선택해도 됐을텐데,, 저도 사전 꽤나 봐야했습니다. 그런 그렇고,,


젠투를 아예 안쓰는 하드에 따로 설치하려고, 하드디스크를 찾아서, 젠투라이브를 걸어서,

부팅해보니, 전에 설치해봤던 리눅스버젼들이 남아있어서, 그런데, grub방식으로

부팅하는것들은 좀 질겨서, 잘 안씻어지므로, 먼저, HirenBootingCD로 부팅해서,

MBR만지는 툴로 잘 씻어줍니다. MBR툴중에는 MBR-WORK가 쓰기에 아주 편합니다.

MBR-WORK를 선택해 들어간후에, 모든 MBR을 지워버리는번호를 선택하고 Yes하고,

그다음은 표준MBR을 설치하는번호를 선택하고 Yes한후에 E를 누르고 재부팅합니다.

그리고 이젠 HirenBootingCD를 빼고, 젠투라이브시디를 넣어서 부팅합니다.

MBR을 께끗히 씻은 하드라서, MBR은 모두 0(zero)로 채워져 있습니다.

하드디스크를 fdisk로 파티션작업을 해야하는데, Gentu_LiveCD, Gentu_LiveDVD, 또,

다른라이브시디 KnoppixLiveCD 마다 /dev/를 잡는법을 조금씩 달라서,

/dev/sda로도 되고, /dev/hdc로 잡히더군요, 그런데, GeutuLiveCD에서는

/dev/sda로 잡혔습니다. 그래서, 여기서는 /dev/sda로 써나가겠습니다.

여기서 이 얘기를 하는 이유는, 나증에 /etc/fstab, /etc/mtab, /proc/mounts,

또 /boot/grub/grub.conf 안에 들어갈내용에 한번 정한 fdisk의 /dev/sda가 똑같이

나와야하기 때문이다. grub이 잠깐씩 미쳐서, 자동으로 아무렇게나 쓰는 때도 있어서입니다.

00 파티션작업하기

먼저 터미널을 띄운후에, 디폴트로 일반사용자로 돼있으므로, sudo su엔터로 root사용자로 바꾼다.
참고로 사용한 하드의 용량은 20GB 입니다.

livecdgentoo# fdisk -l

livecdgentoo# fdisk /dev/sda

밑에는 fdisk모드에서 실행한 명령어이다.

n > p > 1 > enter침 > +200M 엔터침,
n > p > 2 > enter침 > +2048M 엔터침,
n > p > 3 > enter침 > enter침,
t > 2 > 82 엔터침, 그리고는, w 엔터침
이렇게해서 파티션작업은 완료됐습니다.

00 포멧 하기.

mke2fs /dev/sda1 엔터침,
mkswap /dev/sda2 엔터침,
mke2fs -j /dev/sda3 엔터침,

00 마운트하기(기본마운트)

swapon /dev/sda2
mount /dev/sda3 /mnt/gentoo
mkdir /mnt/gentoo/boot
mount /dev/sda1 /mnt/gentoo/boot

00 stage3 다운로드

여기서 밑에 명령으로 현재 커서위치폴더에 받아지므로, 위치는 /mnt/gentoo/ 입니다.
livecdgentoo# wget http://ftp.daum.net/gentoo/releases/x86/2008.0/stages/stage3-i686-2008.0.tar.bz2
이젠 받아진 그위치에서 압축을 풉니다.
livecdgentoo# tar xvjf stage3*

00 portage 다운로드

다운받을곳으로 커서를 이동시켜놓고 하기위해서,
livecdgentoo# cd /mnt/gentoo/usr
livecd /usr# wget http://ftp.daum.net/gentoo/snapshots/portage-latest.tar.bz2
livecd /usr# tar xvjf portage-lat*

00 컴파일환경변수설정 들쳐보기

아직은 vi가 설치 안됐으므로, nano로 엽니다.
# nano /mnt/gentoo/etc/make.conf
참고로 사용중인 PC의 cpu는 amd2600Mhz one_core 입니다.
밑에는 make.conf의 내용입니다.

CFLAGS = " -O2 -march = i686 -pipe "
CXXFLAGS = " -O2 -march = i686 -pipe "
CHOST = " i686 - pc -Linux - gnu "

이렇게 3줄이 활성상태로 적혀있었다.
이것은 자동으로 생성된것인데, 수정할 필요도 없고,
수정하면 오히려 오류발생빈도가 높아보인다.

00 미러설정(다운받을 장소를 미리 정해놓는 작업)

livecdgentoo# mirrorselect -i -o >> /mnt/gentoo/etc/make.conf
이렇게하면, 조금있다가, 뭔 화면이 뜨는데, 스크롤을 제일 밑으로 내리면,
다운이 잘되는 한국서버들이 보일겁니다. space와 tab키를 이용해서,
*표시를 한후에 엔터합니다.

00 DNS정보를 복사하기(chroot명령전에 해야합니다)

# cp -L /etc/resolv.conf /mnt/gentoo/etc/

00 proc, dev를 마운트 한다,(마무리_마운트)

# mount -t proc proc /mnt/gentoo/proc
이것을 mount -t proc none /mnt/gentoo/proc 이렇게도 하는것같으나,
위에것이 더 좋아보인다.

# mount -o bind /dev /mnt/gentoo/dev

00 마운트돼있는 /mnt/gentoo/를 루트, 즉 / 로 전환시켜준다.
이름하야, chroot작업,

# chroot /mnt/gentoo /bin/bash
# env-update
#source /etc/profile

00 최근의 portage트리를 받는다.

# emerge --sync
이 작업을 한후에 메시지에서, emerge update 하라고 하는데,
안하는것이 좋은것같았다.

# emerge --oneshot portage

00 패키지설치를 위한 환경설정을 확인해본다.

/etc/make.conf 내용을 한번 들쳐본다.
# nano /etc/make.conf
# ls -FGg /etc/make.profile

00 한국어를 추가한다.

# nano /etc/locale.gen

밑에다 아래내용을 추가한다.

ko_KR.UTF-8 UTF-8
ko_KR.EUC-KR EUC-KR

00 커널을 설치한다.(고수분이 아니면 genkernel명령방식으로 설치한다)
컴파일중에 줄줄이 뜨는 메시지를 보니, portage까지 하나하나 들쳐보면서
컴파일하는것으로 봐서, genkernel로 하는게 좋아 보인다.

# emerge gentoo-sources
소스를 받고,풀고, 심볼릭링크까지 자동으로 진행돼서, 바로,,
# ls -l /usr/src/linux
# emerge genkernel
# cp /boot/config* /usr/src/linux버젼/.config
이것은 전에쓰던 재활용해보려는 방법인데, 아예 새로운방식으로
하려면 이작업은 필요없을수도 있다.

#genkernel --menuconfig all
이때 먼저, /etc/genkernel.conf 문장을 참고한다.
menuconfig화면에서, 원하는 항목을 골라서 선택하고는 저장하고, 끝내면,
/usr/src/linux버젼명/폴더안에 .config화일로 저장되는데,
그냥 ls 로는 안보이고, ls -al 로 해야 보인다.
이미 genkernel 이 실행되고 있을것이다.
여기서 2-3시간이 걸리므로, 아예 다른일을 하면서, 시간을 보낸다.

00 부팅될 이미지 확인 작업,
# ls /boot/kernel* /boot/initramfs*

00 부팅시에 마운트될 파티션설정및 확인,

# nano /etc/fstab
# nano /proc//mounts
# nano /etc/mtab

00 시스템이름을 정한다.

# nano /etc/conf.d/hostname
이것은 그냥 손을 안대면, 디폴트로 localhost 이다.

00 네트워크를 설정한다.

이것은 대부분 dhcp(자동으로, 또는 dhcpcd 라는 데몬으로 ip를 받아오므로
그냥 dhcp로 아래와 같이 정한다.

# nano /etc/conf.d/net
이렇게 화일을 열어서,
config_eth0 = ("dhcp") 를 적어주고, 저장한다.

여기서 nano 사용법은 아주쉽습니다. 수정한후에, 수정한것을 저장하고 나오려면,
ctrl+O를 한꺼번에 누르고는 뭐라고 물어보는 문장이 나오면, 엔터치고나서,
ctrl+X를 한꺼번에 누르면 저장하고는 나온것이다.

# rc-update add net.eth0 default
net문장을 수정한후에, 시스템에 적용시켜주는 문장입니다.

00 root의 암호를 정한다.
이 작업을 안하면 하드로 부팅후에 로그인을 할수없다.
# passwd

00 우선,, 시스템의 필수화일을 설치한다.
재부팅이 된후에 당장에 필요한것...

# emerge syslog-ng
# rc-update add syslog-ng default

00 DHCP를 설치한다 (dhcp_client)
dhcp로 ip를 받아와야 네트워킹을 할수있다. 그래서,

# emerge dhcpcd
# dhcpcd eth0

00 부트로더(BootLoader)인 Grub를 설치한다.
이부분이 웹상에 있는 설명들에 부팅불능이 나오게 써놔서, 훈련 많이 했습니다.

# emerge grub
grub를 다운합니다. 그리고 기본설치를 합니다.
# nano /boot/grub/grub.conf
이렇게 grub.conf를 한번 봐봅니다.

00 Grub을 다운받고, 기본설치는 됐으니,
Grub의 뒷마무리작업을 해야 합니다.
그렇치않으면 부팅불능사태가 납니다.

# grep -v rootfs /proc/mounts > /etc/mtab
# grub-install --no-floppy /dev/sda
# grub --no-floppy
이렇게 하고나면, grub의 내부명령상태를 진입합니다.
그러면서, 프롬프트가 grub>로 바뀝니다.

grub> find /boot/grub/stage1
PC의 응답화면 => (hd0,0)
응답화면을 보고는 밑에것을 타이핑합니다.

grub> root (hd0,0)
grub> setup (hd0)
grub> quit

00 응용프로그램들 설치,

# emerge vim
# emerge vixie-cron
# rc-update add vixie-cron default
# emerge cvs

00 genkernel과 grub이 자동으로 해주기는 하나,
다시 한번 필수화일들 점검,,

00 재부팅,

stage3설치기가 상당히 긴데, 다른분들은 저같이
헛고생 안했으면 하는 바램으로, 이렇게 글을 올립니다.

2009년 10월 8일 목요일

33


@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@

1. Minimal Install CD를 받아 굽는다.

2. CD를 넣고 부팅한다. 캐릭터 해상도는 80X25, 키보드 레이아웃은 기본으로 잡는다.

3. 네트워크를 잡는다. 안되면 잠 못잔다. -_-;

4. fdisk로 기존의 파티션을 알아서 적당히 날려먹는다.

- 메모리가 2GB 이상인 경우 스왑을 적게 잡거나 잡지 않는다 (시스템 성능에 문제 있을 수 있음)

- 기본적으로 루트와 부트 파티션을 만드는데 도움말을 보면 /opt 나 /usr /var 등을 만들라고 한다.

하드가 널럴하면 그렇게 하든가...



5. 잡은 파티션을 포맷한다. mke2fs -j 명령으로 ext3 타입의 파일시스템을 만들든지

mke2fs로 ext2 파일시스템을 만든다. 스왑파티션이 있다면 mkswap 을 만든다.

예) mke2fs -j /dev/hda1

mke2fs -j /dev/hda2

mkswap /dev/hda3



6. 스왑 파티션은 가동시키고 나머지 파티션은 마운트 한다. 마운트 타겟 기준 루트는 /mnt/gentoo 이다.

예) mkdir /mnt/gentoo/boot

mount /dev/hda1 /mnt/gentoo/boot

mount /dev/hda2 /mnt/gentoo

swapon /dev/hda3

mkdir /mnt/gentoo/dev

mkdir /mnt/gentoo/proc

mount -t proc proc /mnt/gentoo/proc

mount -o bind /dev /mnt/gentoo/dev

env-update

source /etc/profile



7. 우선 /mnt/gentoo 로 이동한 후에 다음 명령을 실행한다.

links http://www.gentoo.org/main/en/mirrors.xml



8. 어떤 Stage TarBall 을 받을 것인가... 를 결정하고 Page Down 키를 눌러서 카이스트 서버를 찾는다. Portage도 함께 받는다.

releases/x86/2007.0/stages/ 에 가면 스테이지 별로 파일들이 있다. 공식핸드북에서는 md5sum을 체크하라고 되어 있지만 사실 그럴 필요는 없다고 본다. Portage는 출시버전에만 맞춰서 받으면 된다. 이는 snapshots/ 에 가면 있다. 최신버전은 최신날자로 되어 있다.



9. tar xvjpf 명령을 사용해서 Stage TarBall 파일을 풀고 tar jxvf 명령으로 Portage 파일을 푼다. portage 파일을 풀 떄 경로문제로 인해 명령은 필히 다음과 같이 해야 한다.

tar xvjf /mnt/gentoo/portage-latest.tar.bz2 -C /mnt/gentoo/usr



10. /mnt/gentoo/etc/make.conf 파일을 손보라고 나와있지만 사실 우리가 건드릴 필요가 없다. 대부분 젠투 패키지 부팅시 알아서 설정된다.



11. 다음의 명령을 사용하여 젠투 미러를 설정한다. 컬러 박스 화면이 나오면 Default 서버를 선택하도록 하라. 다른 서버는 느리거나 먹통일 가능성이 많다.

mirrorselect -i -r -o >> /mnt/gentoo/etc/make.conf



12. 루트의 주체를 전환한다.

cp -L /etc/resolv.conf /mnt/gentoo/etc/


chroot /mnt/gentoo /bin/bash



13. 시스템 리빌드. ( Stage 1 Only ! ! )

cd /usr/portage/scripts

(중간에 /bin/perl 문제 때문에 멈춘다. 그러니 반드시 다음 명령 실행후 부트스트래핑 하고 시스템이머징 한다.)

emerge --nodeps gdbm libperl perl

./bootstrap.sh

emerge -e system



14. 커널 완성

좀 무식하게 하는 방법이라면 커널을 직접 생성해서 /boot에 복사하는 방법이 있지만 genkernel 스크립트가 존재하기 때문에 이따위 삽질은 안해도 된다.... 그런데 만약 이 방법으로 한 커널이 문제가 발생한다면 커널을 과감하게 새로 설정하고 컴파일 한후 (Architecture)/bzImage 를 /boot에 적당한 이름으로 바꾸어서 복사하도록 한다.



emerge genkernel

zcat /proc/config.gz > /usr/share/genkernel/x86/kernel-config-2.6

genkernel all



15. /etc/fstab 편집, /etc/mtab 복사

부팅시 올바른 디스크, 파티션 인식을 위해서는 반드시 FileSystem Table 을 올바로 기재해야 한다.

마운트 테이블을 /etc/mtab으로 복사한다.

grep -v rootfs /proc/mounts > /etc/mtab


16. GRUB, crontab 설치

부팅시 필요한 부트로더와 데몬 실행 관리자를 설치한다. 설명은 GentooDoc 에 잘 나와있다.



17. 재부팅 시험

커널 패닉 메세지를 보고 조금씩 수정하면 된다. 본인은 커널을 다시 설정하고 컴파일을 하여 /boot에 다시 심고 GRUB에 udev 옵션을 주고 램디스크를 뺐다.

PCG-SRC55TL은 PCMCIA와 ORINOCO 내장 랜카드 Intel e100, Intel 그래픽, Alps Pointing device... (거기까지 -_-) 등이 있으므로

이러한 것들을 고려하여 커널 설정을 해준다. 외장형 CD-ROM을 달고 있다면 OHCI1394와 SCSI 에 체크한다.



18. 마무리

처음부팅했을때 경우에 따라서는 /dev 가 제대로 설치되지 않았다는 둥 뭐라는 둥 하는 메세지가 뜬다. 그러면 다음 나온 것과 같이 뜰 것이다.

mkdir /mnt/fixit

mount --bind / /mnt/fixit

cp -a /dev/* /mnt/fixit/dev/

umount /mnt/fixit/dev

rmdir /mnt/fixit



완전 똑같다고 보긴 어렵겠지만 여하튼 스크린에 뜬대로 명령어 5줄을 실행한다.

그리고 다음 두줄을 실행한다. (역시 기억난대로 쓴 것이니 스크린 메세지를 참조할 것)

rm /etc/issue

mv /etc/issue.oldfix /etc/issue



19. 부팅메세지 확인

이제 vixie-cron이 잘 실행되는 모습을 볼 수 있을 것이다.

설치가 완전히 끝났으므로 Portage와 Stage 관련 파일을 루트에서 제거한다.

Enjoy! :)



마무리 : 2007/12/28 새벽 04:00
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@

젠투리눅스 설치하기 - Stage 0

0.준비과정
젠투의 설치과정은 시작하는 stage에 따라 3가지로 구분되며 준비과정은 stage에 상관없이 반드시 거쳐야 하는 설치과정이다.

0.1.VMware
Gentoo Linux를 VMware 에 설치하고자할 때 해야하는 일이다. 실제 머신에 설치할 경우에는 "0.2.CD받기"로 건너뛰어라.

0.1.1.가상머신만들기
File > New > Virtual Machine
Virtual machine configuration: Custom
Virtual machine format: New - Worksatation 5
Guest operationg system: Linux, Other Linux 2.6.x kernel
Virtual machine name: Gentoo Linux
Location: D:\VMware\Gentoo Linux
Processors: Two
Memory: 512MB
Network connection: Use host-only networking
I/O adapter types: IDE Adapter (ATAPI)
SCSI Adapters: BusLogic >> 꼭 기억하고 있어야 나중에 커널 컴파일할 때 커널패닉 안만납니다.
Disk: Create a new virtual disk
Virtual Disk Type: SCSI (Recommended)
Disk Size (GB): 36GB
Disk file: Gentoo Linux

0.1.2.네트워크설정

0.1.2.1.Host OS 설정
제어판 > 네트워크연결 > 인터넷에 직접 연결된 어댑터 > 속성 > 고급
인터넷 연결 공유, 다른 네트워크 사용자가 이 컴퓨터의 인터넷 연결을 통해 연결을 할 수 있도록 허용에 체크
홈 네트워킹 연결: VMware Network Adapter VMnet1
방화벽설정:
1.없애기
제어판 > 네트워크 연결 > 로컬 영역 연결 > 속성 > 고급 > Windows 방화벽 > 설정 > 고급 > 네트워크 연결 설정 > 로컬 영역 연결 > 체크해제
2.예외
포트추가: 22, SSH


0.1.2.2.VMware 설정
VM > Settings > Ethernet에서 Host-Only로 설정

0.1.2.3.Guest OS 설정
IP: 192.168.0.180
Subnet Mask: 255.255.255.0
Gateway: 192.168.0.1
DNS: 192.168.0.1

0.2.CD받기
젠투 시디는 아래의 주소에서 받을 수 있다.
http://www.gentoo.org/main/en/where.xml

0.3.네트워크설정
부팅을 한 후 ifconfig 혹은 net-setup을 통하여 네트워크설정을 한다.

0.3.1.ifconfig 이용
아래는 VMware를 이용할 경우의 네트워크 설정이다.

# ifconfig eth0 192.168.0.180 netmask 255.255.255.0 broadcast 192.168.0.255
# route add default gw 192.168.0.1
# echo nameserver 192.168.0.1 > /etc/resolv.conf

실제 머신을 이용할 경우에는 자신의 환경에 맞는 네트워크 설정을 하면 된다.

0.3.2.net-setup 이용

# net-setup eth0
아래는 net-setup eth0를 실행시켰을 때 설정해야할 값입니다.

ip address : 네트웍카드에 할당하려는 IP주소 = > ex) 192.168.0.180
broadcast address : 네트웍안의 모든 호스트에 브로트캐스트할 IP 주소 = > ex) 192.168.0.255
network mask : 호스트와 네트웍을 확인하기 위한 주소 범위를 보여주는 IP 주소와 함께 사용되는 마스크 => ex) 255.255.255.0
gateway : 외부로 나가는 패킷을 전송하기 위한 IP 주소 => ex) 192.168.0.1

0.4.원격설치환경설정
젠투의 강점중의 하나가 원격설치를 지원한다는 것이다.
VMware에 설치할 경우 ctrl+shift를 이용해서 가상머신과 실제머신을 왔다갔다해야 하는데
원격설치를 이용하면 가상머신은 켜두기만 하고 실제머신에서 ssh를 이용하므로 ctrl+shift를 이용할 필요가 없다.
또한 설치하는 머신이 가상머신이라는 것만 다르고, 나머지는 실제머신과 똑같다.

0.4.1.root 암호설정

livecd # passwd

암호를 묻는 프롬프트가 나오면 원하는 암호를 입력한다.
필자는 그냥 vmware라고 입력했다.

0.4.2.ssh

livecd # /etc/init.d/sshd start

이제 ssh client를 실행시켜서 vmware로 접속하도록 하자.

0.5.파티션설정
젠투에서 사용할 하드디스크의 파티션을 설정한다.

0.5.1.파티션 계획

/boot: 100MB
: 1024MB
/ : 나머지 MB


livecd ~ # fdisk /dev/sda :: fdisk 모드로 진입하는 명령어이다.



아래는 fdisk mode에서 실행하는 명령어이다.

n > p > 1 > [enter] > +100MB
n > p > 2 > [enter] > +1024MB
n > p > 3 > [enter] > [enter]
t > 2 > 82
w


0.5.2.포맷

livecd ~ # mke2fs /dev/sda1 :: boot 파티션 ext2으로 포맷
livecd ~ # mkswap /dev/sda2 :: swap 파티션으로 포맷
livecd ~ # mke2fs -j /dev/sda3 :: root 파티션 ext3으로 포멧


0.5.3.마운트

livecd root # swapon /dev/sda2 :: swap으로 잡은 파티션을 사용하도록 설정한다.
livecd root # mount /dev/sda3 /mnt/gentoo :: root로 잡은 파티션을 마운트한다.
livecd root # mkdir /mnt/gentoo/boot :: boot 디렉토리를 만든다. /boot 마운트 포인트 생성하기 livecd root # mount /dev/sda1 /mnt/gentoo/boot :: boot 파티션을 마운트 한다. /boot 파티셜을 활성화한다.

이제 준비과정이 모두 끝났다. 원하는 설치방법에 따라 Stage 1, Stage2, Stage 3 부터 설치를 시작한다.

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@

젠투리눅스 설치하기 - Stage 1


1.stage1 시작
stage1의 목적은 bootstrap이다.
bootstrap은 stage2의 system을 설치하기 위한 컴파일 환경을 만드는 작업이다.

1.1.Stage 1 타르볼 다운로드 및 압축해제

livecd ~ # cd /mnt/gentoo
livecd gentoo # wget http://ftp.jaist.ac.jp/pub/Linux/Gentoo/releases/x86/2007.0/stages/stage1-x86-2007.0.tar.bz2
livecd gentoo # tar -xvjf stage1-x86-2007.0.tar.bz2 :: 기본적으로 필요한 파일들이 생성된다.

1.2.네임서버정보 복사

livecd gentoo # cp /etc/resolv.conf /mnt/gentoo/etc/resolv.conf


1.3.미러설정

livecd gentoo # mirrorselect -i -o >> /mnt/gentoo/etc/make.conf


1.4.컴파일 환경 설정

livecd gentoo # vi /mnt/gentoo/etc/make.conf


아래는 필자의 컴파일 환경 설정이다.

# These settings were set by the catalyst build script that automatically
# built this stage.
# Please consult /etc/make.conf.example for a more detailed example.
CFLAGS="-O2 -mtune=i686 -pipe"
CXXFLAGS="${CFLAGS}"
# This should not be changed unless you know exactly what you are doing. You
# should probably be using a different stage, instead.
CHOST="i686-pc-linux-gnu"

GENTOO_MIRRORS="http://ftp.daum.net/gentoo/ http://ftp.jaist.ac.jp/pub/Linux/Gentoo/ ftp://ftp.jaist.ac.jp/pub/Linux/Gentoo/ http://ftp.iij.ad.jp/pub/linux/gentoo/ ftp://ftp.iij.ad.jp/pub/linux/gentoo/ http://ftp.kaist.ac.kr/pub/gentoo/ ftp://ftp.kaist.ac.kr/gentoo/ "
* 우리나라 미러는 심심하면 죽어 있으므로 가까운 나라 일본서버를 추가해놓았다.
* 다음미러가 요즘 괜찮다고 하네요.

1.5.proc 사용설정

livecd gentoo # mount -t proc proc /mnt/gentoo/proc

proc 의 용도는 아래와 같다.

따라서 proc를 마운트 한다는 것은 시스템상에서 생성되는 프로세스를 관리한다는 의미이며,
proc를 마운트하지 않고는 물리HDD로 이동할 수 없다.

1.6.물리HDD로 이동(chroot)

livecd gentoo # chroot /mnt/gentoo /bin/bash
livecd / # env-update
livecd / # source /etc/profile

1.7.portage tree 가져오기

livecd / # emerge --sync ::/usr/portage로 portage tree를 다운로드한다.

1.8.bootstrap

livecd / # cd /usr/portage/
livecd portage # scripts/bootstrap.sh

시스템에 맞게 gcc, gliblc 등의 C 컴파일러를 설치하는 과정이다.
이 과정을 bootstrap이라고 하며 이 과정을 마치게 되면 젠투를 시스템에 설치하기 위한 컴파일러 설치가 끝난 것이다.

VMware의 경우 스냅샷을 찍어두는 것이 좋다.
스냅샷이름: Stage1 완료

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@

젠투리눅스 설치하기 - Stage 2


2.stage 2 시작
stage2부터 시작한다는 것은 bootstrap과정은 이미 완료된 것이다.
stage2의 목적은 기본적인 젠투시스템을 설치하는 것이다.

2.1.System 설치

livecd / # env-update :: bootstrap하면서 설치한 패키지를 적용한다.
livecd / # source /etc/profile :: bootstrap하면서 설치한 패키지를 적용한다.
livecd / # emerge --nodeps gdbm libperl perl :: perl과 perl에 의존적인 패키지를 설치하기 위해서 필요하다... 이거 안해주면 두고 두고 골치아파진다. 꼭 해주자.
livecd / # env-update :: 위에서 설치한 패키지를 적용한다.
livecd / # source /etc/profile :: 위에서 설치한 패키지를 적용한다.
livecd / # emerge -e system :: system을 설치한다.
livecd / # emerge -epv system :: system 파일이 정상적으로 설치가 되었는지 확인
livecd / # env-update :: system을 설치하면서 설치한 패키지를 적용한다.
livecd / # source /etc/profile :: system을 설치하면서 설치한 패키지를 적용한다.

아래의 유틸리티는 필수 유틸리티이며 설치되어 있는지 확인할 것

livecd / # emerge sys-apps/util-linux :: mount 등의 필수 유틸 설치
livecd / # emerge sys-apps/shadow :: passwd 설치
livecd / # emerge sys-process/psmisc :: kill
livecd / # emerge sys-apps/module-init-tools :: lsmod 설치
livecd / # emerge sys-process/procps :: ps 설치
livecd / # emerge man :: man 설치
livecd / # USE="-zlib" emerge sys-apps/pciutils :: sys-apps/hal 에러방지

2.2.컴퓨터 이름 및 도메인 설정

# echo HOSTNAME=\"{YourComputerName}\" > /etc/conf.d/hostname :: 이제 /etc/hostname 은 사용하지 않는다.
# /etc/hosts :: 아래는 내용을 추가한다.


127.0.0.1 {YourComputerName}.{YourDomain} {YourComputerName} localhost

2.3.네트워크설정

# nano /etc/conf.d/net

아래는 필자의 네트워크설정이다.

config_eth0=( "192.168.0.180 netmask 255.255.255.0 brd 192.168.0.255" )
routes_eth0=( "default gw 192.168.0.1" )


# rc-update add net.eth0 default :: 컴퓨터 부팅시 자동시작 되도록 설정한다.

VMware의 경우 스냅샷을 찍어두는 것이 좋다.
스냅샷이름: Stage2 완료

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@

젠투리눅스 설치하기 - Stage 3


3.stage 3 시작
stage3의 목적은 커널 및 부트로더 설치이다.
stage3를 마치고 나면 기본적인 젠투시스템을 가지게 된다.

3.1.시스템 시간 설정

livecd portage # ln -sf /usr/share/zoneinfo/Asia/Seoul /etc/localtime


위의 명령어는 서울을 기준으로 시스템 시간을 설정하는 것이다.

3.2.파티션 정보 설정

livecd portage # nano -w /etc/fstab


아래는 필자의 파티션 정보 설정이며 자신의 시스템에 맞는 파티션 정보를 설정한다. 참고로 boot 파티션의 noauto는 꼭 빼준다.


proc /proc proc default 0 0
/dev/sda1 /boot ext2 noatime 1 2
/dev/sda3 / ext3 noatime 0 1
/dev/sda2 none swap sw 0 0
/dev/hdc /mnt/cdrom auto noauto,ro 0 0
shm /dev/shm tmpfs nodev,nosuid,noexec 0 0

3.3.kernel 설치
커널을 설치하는 방법에는 Gentoo전용으로 이미 컴파일된 커널을 설치하는 방법과 kernel.org에서 직접 받아다가 컴파일해서 사용하는 방법 2가지가 있다.

3.3.1.Gentoo 전용 Kernel 설치

livecd portage # emerge gentoo-sources :: 커널을 소스를 받는다. 준비과정을 끝내고 stage3 로 바로 왔을 경우 이 과정이 완료된 상태이다.
livecd portage # emerge genkernel
livecd portage # genkernel all


3.3.2.사용자 Kernel 설치

livecd portage # cd /usr/src
livecd src # wget http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.23.tar.bz2
livecd src # tar -xvjf linux-2.6.23.tar.bz2
livecd src # ln -sf linux-2.6.23 linux
livecd src # cd linux
livecd linux # make mrproper :: .config에 설정된 내용을 삭제
livecd linux # make menuconfig :: .config 파일을 편집해주는 GUI, 설정값은 아래를 참고하라.
livecd linux # make clean
livecd linux # make bzImage :: 커널이미지를 만든다.
livecd linux # cp arch/i386/boot/bzImage /boot/bzImage-2.6.23 :: 커널이미지를 부트파티션으로 이동시킨다.
livecd linux # make modules :: 커널에서 사용할 모듈을 만든다.
livecd linux # make modules_install :: 커널에서 사용할 모듈을 설치한다.

아래는 VMware에 설치할 경우의 커널설정이다. (kernel 2.6.23 기준)

Enable loadable module support --->
--- Enable loadable support
[*] Module unloading
[*] Forced module unloading
[*] Automatic kernel module loading
Processor type and features --->
+ Processor family (Core 2/newer Xeon)
(2) Maximum number of CPUs (2-255)
Device Drivers --->
+ SCSI device support --->
--- SCSI device support
<*> SCSI disk support
<*> SCSI generic support
++ SCSI Transports
[*] SCSI low-level drivers --->
+++ <*> BusLogic SCSI support
+++ [*] Omit FlashPoint support
+ Fusion MPT device support --->
++ <*> Fusion MPT ScsiHost drivers for SPI
++ <*> Fusion MPT ScsiHost drivers for FC
++ <*> Fusion MPT ScsiHost drivers for SAS
++ (128) Maximum number of scatter gather entries (16 - 128)
++ <*> Fusion MPT misc device (ioctl) driver
++ [*] Fusion MPT logging facility
+ Network device support --->
++ Ethernet (10 or 100Mbit) --->
+++ [*] EISA, VLB, PCI and on board controllers
+++ <*> AMD PCnet32 PCI support
+ Sound --->
++ Advanced Linux Sound Architecture --->
+++ <*> Advanced Linux sound Architecture
+++ <*> OSS Mixer API
+++ <*> OSS PCM (digital audio) API
++++ PCI devices --->
+++++ <*> (Creative) Ensoniq AudioPCI 1371/1373
File systems --->
+ DOS/FAT/NT Filesystems --->
++ (949) Default codepage for FAT
++ (EUC-KR) Default iocharset for FAT
++ <*> NTFS file system support
++ [*] NTFS debugging support
++ [*] NTFS write support
+ Native Language Support --->
++ (utf8) Default NLS Option
++ <*> Codepage 437 (United States, Canada)
++ <*> Korean charset (CP949, EUC-KR)
++ <*> NLS ISO 8859-1 (Latin 1; Western European Languages)
++ <*> NLS UTF8

3.3.3.Kernel Panic
커널패닉의 원인은 딱 3가지다.
1. 잘못된 커널 설정으로 커널컴파일
2. 부트로더가 설정파일
3. /etc/fstab

아래는 대표적인 커널패닉의 예이다.
Kernel Panic 1

메시지
VFS: Unable to mount root fs via NFS, trying floppy
VFS: Insert root floppy and press ENTER
원인
grub/grub.conf 설정이 잘못되어 있다. 특히 root=
해결책
grub/grub.conf 를 정확하게 설정한다.

Kernel Panic 2

메시지
Kernel panic - not syscing: VFS : Unable to mount root fs on unknown-block(0,0)
원인
리눅스가 부팅시SCSI 방식 의 하드 디스크를 마운트하지 못하는 것이다.
해결책
SCSI 방식의 하드 디스크상에서 부팅 할 수 있도록 커널 컴파일 환경을 설정한다.


3.4.필수 패키지 설치

3.4.1.SSH Daemon 설치

livecd linux #emerge openssh
livecd linux #rc-update add sshd default

3.4.2.Log Daemon 설치

livecd linux #emerge app-admin/syslog-ng
livecd linux #rc-update add syslog-ng default


3.4.3.Cron Daemon 설치

livecd linux #emerge vixie-cron
livecd linux #rc-update add vixie-cron default

vixie-cron, fcron, dcron 중의 하나를 설치할 수 있다.

3.4.4.reiserfsprogs 설치

livecd linux #emerge reiserfsprogs

3.4.5.Hotplug 설치

livecd linux # emerge hotplug
livecd linux # rc-update add hotplug default

3.4.6.vim 설치

livecd linux # emerge vim :: vi 에디터 설치

에러 메시지

Can't open perl script "/usr/lib/perl5/5.8.8/ExtUtils/xsubpp"
해결책
livecd linux # USE="-perl -libperl" emerge vim

3.5.사용자 설정

3.5.1.root 패스워드 설정

#passwd


3.5.2.일반 사용자 추가

# adduser {MyUser} -m -d /home/{MyUser} -G users,wheel,audio -s /bin/bash
# passwd {MyUser}

3.6.Bootloader 설치

3.7.1.lilo 설치

3.7.2.grub설치

# emerge grub
# grub :: grub모드로 진입
grub> root (hd0,0) :: boot 파티션 설정하기 , hd0 = 0번째 하드디스크, 0 = 첫번째 파티션
grub> setup (hd0) :: MBR이 올라갈 곳을 지정한다.
grub> quit



# nano /boot/grub/grub.conf

아래와 같이 편집

default 0
timeout 30
#background image
splashimage=(hd0,0)/boot/grub/splash.xpm.gz
title=Gentoo Linux (2.6.22)
root (hd0,0)
kernel /bzImage-2.6.22 root=/dev/sda3

VMware의 경우 스냅샷을 찍어두는 것이 좋다.
스냅샷이름: Stage3 완료

3.8.재부팅

# etc-update
# exit :: chroot 빠져나오기
livecd gentoo # cd /
livecd / # umount /mnt/gentoo/boot
livecd / # umount /mnt/gentoo/proc
livecd / # umount /mnt/gentoo
livecd / # reboot

이제 여러분은 해야할 일이 아직 많이 남은 뼈대만 있는 젠투 시스템(bare bone)을 가지게 되었다.
이제 부터는 자신에게 필요한 어플리케이션을 스스로 찾아서 설치해보기 바란다.
당신에게 man과 emerge의 가호가 함께 하기를...

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@

젠투리눅스 설치하기 - X Window 설치

Change History

2007.11.14
기본로케일을 eucKR로 했더니 요즘 대세가 UTF-8이라고 하시는 분이 있어서 변경했습니다.^^
2008.01.03
emerge gnome하면 잡다한 것이 너무 많이 설치되어서 emerge gnome-light으로 변경했습니다.

X Server 설치

{YourServerName} ~ # emerge xorg-x11 :: X-Server 설치
{YourServerName} ~ # env-update :: Update the system variables
{YourServerName} ~ # source /etc/profile
{YourServerName} ~ # Xorg -configure :: 자동으로 하드웨어 설정을 검색하고 root 홈 디렉토리에 xorg.conf.new 파일을 생성, 화면이 검어지면서 아무것도 안됨
{YourServerName} ~ # X -config /root/xorg.conf.new :: Xorg -configure가 자동으로 잡아준 설정을 테스트
X -config /root/xorg.conf.new를 실행하면 바둑판 무늬 배경에 마우스 커서만 보이는데 마우스가 잘 동작하는지 화면 해상도는 제대로 잡혔는지 확인하고 제대로 되었다 싶으시면 설정파일을 기본 위치로 복사해 준다. 원하는 설정이 제대로 나오지 않는다면 설정파일(/root/xorg.conf.new)을 직접 수정하거나 xorgcfg 혹은 xorgconfig 명령으로 수동설정해준다.
아래의 화면이 X -config /root/xorg.conf.new 를 실행했을때 나타나는 화면이다.




{YourServerName} ~ # mv /root/xorg.conf.new /etc/X11/xorg.conf :: X-Server 설정파일을 원래 위치로 이동
{YourServerName} ~ # startx :: X-Server 시작

아래의 화면이 startx했을때의 화면이다.



@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@

/bin, /usr/bin 과 /sbin, /usr/sbin의 차이

/bin, /usr/bin, /sbin, /usr/sbin 은 모두 명령어가 저장되는 디렉토리 입니다.

이 디렉토리에 차이가 있으니 그것은 아래의 표와 같습니다.

디렉토리 용도 사용권한
/bin 기본적인 명령어 일반 사용자
/sbin 시스템 관리를 위한 명령어 슈퍼유저(root)
/usr/bin /bin에 있는 명령을 제외한 기본적인 명령어
일반 사용자

/usr/sbin /sbin에 있는 명령을 제외한 시스템 관리를 위한 명령어 슈퍼유저(root)

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@

젠투에서 중요한 설정파일들

/etc/make.conf
- 패키지를 다운받을 저장소 설정
- 패키지를 컴파일할 때 줄 옵션

/etc/rc.conf
- x server를 구동할 때 사용할 데스크탑환경 지정

/etc/resolv.conf
- 네임서버

/etc/env.d/02useretc
- 시스템이 처음 구동되거나 env-update 수행시 시스템 변수에 추가할 목록 지정

/etc/locales.gen
- 지역설정

/etc/conf.d/net
- 네트워크 카드 설정

/etc/fstab
- 부팅할 때 마운트할 장치 설정

/etc/X11/xorg.conf
- x 서버를 구동할 때 사용할 장치와 드라이버 설정

/usr/src/linux/.config
- 커널 설정

/boot/grub/grub.conf
- Grub 설정

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@

소스설치과정

configure

Makefile이 만들어집니다.

Makefile은 컴파일 옵션이 저장된 파일입니다.

make

소스코드를 실제로 컴파일한 후 binary 파일을 생성합니다.

make install

생성된 binary 파일을 지정된 디렉토리로 이동시켜 줍니다.

보통 "/usr/local/프로그램이름" 이나 "/usr/local/bin" 에 위치하며 --prefix 옵션으로 변경가능 합니다.

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@



젠투리눅스 설치 방법 젠투리눅스
2004/06/16 23:52

http://blog.naver.com/joldan23/140003340217
이 포스트를 보낸곳 ()


(..적수네동네에 올린글인데 여기 다시 올립니다..)
저역시 아는건 별로 없지만 다른분들께 조금이라도 도움이 되고자 올립니다.

1. 일단 설치 문제인데 stage 1,2,3중에 하나만 설치 하시는 겁니다.
많은분들이 새개 다 설치하는거냐고 물으시는데 하나만 설치 하는것
입니다.3번을 설치하는게 가장 빠르고 편합니다. 물론 인스톨 문서에는
i686(펜티엄2,펜티엄프로)이상일 경우에만 2,3번 설치가 가능 하다고 되어
있습니다.
1번으로 제가 펜티엄 MMX233, 램 64메가인 시스템에서 설치 했는데,
1번 설치과정의 가장 중요한 부분인 #scripts/bootstrap.sh 이것이
한 6-7시간 정도 걸렸습니다.(물론 나중에 kde설치 할땐 펜3-800인데도
8시간 걸립니다..-_+..)
2번으로 설치하시면 11.Progressing from stage1 to stage2 과정을 3번으로
설치하시면 이다음 과정인 12.Progressing from stage2 to stage3 이것도
생략 하시면 됩니다.

2. 처음 설치할때 랜카드 잡는게 나오는데 이건 머 별문제 되는게 없죠..^^
ifconfig -a하셔서 잡히셨나 확인하시고요..

3. 이부분
# mkdir /mnt/gentoo
# mount /dev/hda3 /mnt/gentoo
# mkdir /mnt/gentoo/boot
# mount /dev/hda1 /mnt/gentoo/boot

에서 순서대로 안하시면 마운트 에러납니다.^^(..머 다이시겠지만..^^..)

4. tar -xvjpf /mnt/cdrom/stage?-*.tbz2
여기서 1,2,3중에 하나 선택하시고요 이거 하시기 전에 #cd /mnt/gentoo 꼭
하셔야 합니다. 이거 안하시면 압축 풀리면서 에러 마구마구 뜨고 질답란에
올라온 대부분의 압축에러가 마운트가 제대로 안됬거나 위의 저 명령을
안처서 입니다. (처음에 램 디스크로 부팅하기 때문에..
하드 디스크로 옮겨야 압축을 풀겠죠..^^..)

5.chroot /mnt/gentoo /bin/bash
이거후 illegal ~~ 이런 에러 나오는것은 stage1,2,3압축을 다 풀었을 경우에
이런 에러가 나옵니다.(물론 다른 상황일수도 있겠지만요..^^..)

6. source /etc/profile
이거 하신다음엔 붉은색의 프롬프트가 나와야 합니다.
본격적으로 Gentoo Linux에 들어 오신겁니다.
그전엔 램디스크 상황입니다.. 여기서 새로운거 안뜨면 인스톨문서 잘
살펴보시면거 다시 한번 차근차근..^^..

7.# emerge rsync
이거했는데 Connection fail 나오면 (ifconfig -a 가 정상적으로나올경우..)
# cp /etc/resolv.conf /mnt/gentoo/etc/resolv.conf
이 명령이 제대로 수행이 안되서 입니다.
exit 하셔서 (exit하시면 다시 램디스크 상황으로 갑니다..)
저거 정확하게 하시고 다시 #source /etc/profile
하세요..^^

참고로 이것은 rsync는 ports시스템의 디렉토리 구조를 받습니다.
즉, 패키지 리스트를 받는다고 생각 하시면 되죠..^^
나중에 심심 하면 한번씩 실행 시켜 주시면 새로 나온 패키지 있으면 업데
이트 됩니다.

8.# export CONFIG_PROTECT=""
이거 안하시면 나중에 emerge 하다보면 무슨 etc파일 두개를 업데이트 시켜
주어야 한다고 나올겁니다. 새로운 패키지 나왔을때 그전 패키지 처리
하는것에 대해 묻는건데 나중에 다시 설정 하시 겠지만 저렇게 하시면
그냥 덮어 씌운다는 것입니다.(port시스템에서요..)

9. 자..이젠 커널 컴파일 입니다.
커널 컴파일 옵션은 머 나머진 http://krenel.pe.kr 참고하시고요
(..실은 저도 usb쪽이 옵션이 제대로 안들어 갔는지..-_+..마우스가 안되
네요..)
처음옵션이 무슨 아직 개발중인 옵션 사용할것인가 묻는것이죠..?
이거 꼭 하시고요 File System 가셔서
[*]/dev filesystem support 랑 그 밑에 속하는거 모두 체크 하세요..
devfs를 사용하기 위해서입니다.
그러니 이렇겐 꼭 체크 하세요..

Code maturity level options --->
[*] Prompt for development and/or incomplete code/drivers

File systems --->
[*] /dev file system support (EXPERIMENTAL)
[*] Automatically mount at boot
[*] Debug devfs

체크 안하셔도 Gentoo Linux 부팅 잘되고 적덩하게 돌아 가지만
부팅 할때 마다
15초 멈춘다음에 Gentoo Linux는 devfs를 사용 하는 시스템이라며 커널 다시
컴파일 하라는 압력을 계속 넣습니다.
(Gentoo Linux는 진보적인 시스템을 많이 도입하고 있죠..^^
ports시스템이라던지 rc-update시스템, 그리고 devfs시스템 등등..)
꼭 체크 하세요..

10.make dep && make clean bzImage modules modules_install
이거 하시고 #depmod -a 2.4.19-r1
해주셔야 합니다.
이거 안하시면 부팅시에
Can't find modprobe
Char-major..~~~

이런 에러 만나실겁니다.(물론 저 명령은 천천히 하셔도 됩니다.)

11.# emerge app-admin/metalog
# rc-update add metalog default
로긴 플그램 셋중에 하나 하시면 됩니다.
rc-update도 Gentoo 만의 독특한 시스템인데 런레벨에 따른 실행
플그램 관리 해주는것입니다. 다른데서는 chkconfig 란것을 쓰죠.
실제로 써보시면 아시겠지만 상당히 편리합니다.
(start만 설정해 주시면 kill은 자동으로 한답니다..^^..)
rc-update add(del) 플그램 runlevel(아니면 runlevel이름..)
이런 형식입니다.
GentooLinux는 rc.1, rc.2 이런형식이 아니라
/etc/runlevel아래 default/ single/ nonetwork/
이런 디렉토리가 있는데 저게 rc.1, rc.2 같은겁니다..^^
/etc/inittab 에 보시면
런레벨 3같은 경우엔 rc default 런레벨 2는 rc nonetwork 로 되어 있습니다.
실제로보시면 아시겠지만 정말 깔끔하고 쓰기 편합니다.
rc-update add(del) 만알면 되거든요..^^


(xfs나 lvm안쓰시면 인스톨 문서 15번 과정 통과..)
12. # nano -w /etc/modules.autoload
이것도 역시 Gentoo 만의 시스템이죠..^^자동 모듈로딩..
..편합니다..역시 Gentoo Linux는 정말 빠르고 정말 편하게 잘만들었습니다..
(..
..감격..T_T..)..
저기다가 간단하게 모듈명만 적으면 Ok입니다.
정말 편합니다..^^
랜카드나 사운드 카드 같은거 모듈로 컴파일 하셧다면 저기다가 올려주시
고요, 내장 시키셧다면 그냥 넘어가셔도 됩니다.^^
(..다른거 필요하신거 계시면 올리세요..^^..)

13. 이제 문제는 grub인데 저도 이거 실패 했습니다.(결국 lilo사용..)
grub실행 시키셔여 이렇게 하시고요
grub> root (hd0,0)
grub> setup (hd0)
grub> quit

여기서 root는 /boot 다비이스 입니다.
/boot 가 /dev/hda7 이시면(하드 하나이고..)
root (hd0,6)겠죠

그다음이 nano -w /boot/grub/menu.lst 이거죠..^^

default 0
timeout 30
splashimage=(hd0,0)/grub/splash.xpm.gz <--그냥 경로명

title=My example Gentoo Linux
root (hd0,0) <---- /boot 디바이스 입니다.
kernel /boot/bzImage root=/dev/hda3 <------- / 디바이스

# Below needed only for people who dual-boot
title=Windows NT Workstation
root (hd0,5)
chainloader +1

설정 하실때 잘안되시면 grub실행 시키셔셔 TAB치시면서 하시며 자동
완성시는 됩니다.
문제는..-_+제 노트북에서 menu.lst를 찾지를 못합니다.
configfile실행시켜 TAB누르며 자동 완성 시키면서 해도 안되더군요..T_T
Gentoo Forum에 가니까 저와 비슷한 분들이 몇분 계시더라구요..
..흐음 그래서 결국 lilo로..T_T..

일단 이러면 적어도 MBR에 설치는 될 겁니다.
만약에 저처럼 메뉴 찾지 못하시면
root (hd0,0) <---- /boot 디바이스 입니다.
kernel /boot/bzImage root=/dev/hda3 <------- / 디바이스
이렇게 적어주시고 boot누르시면 부팅 될겁니다.
그런다음에 바로 #cd /usr/portage/sys-app하셔서
#emerge lilo 하셔서..^^lilo설치하세요..^^


14. # nano -w /etc/conf.d/net
# rc-update add net.eth0 default

여기서 두루넷 하나로 통신 이런 케이블류 이용하시는 분들은
그 DHCP섹션에서
iface_eth0="dhcp"
이것만 앞에 #지워 주시고 위에 샘플로 나와 있던(3번째 줄인가..)
그건 앞에 #붙여 주세요..
(..한국통신 설정법은 다른분께서 쓰신 글 참조 하세요..이 게시판
에 있습니다..^^..)


자 이러면 거의다 끝난듯 싶네요..
이거 말고 다른 문제점은 예를들어
부팅시에
Kernel Panic : VFS~~~~
이런것은 커넘 컴파일 에러나(특히 File Systemd에서 EXT3사용하시는데
ext3옵션을 안주셧거나 이런거..) /etc/fstab를 잘못 설정 하셔서 입니다.
/dev/hda1 /boot ext2 noauto,noatime 1 2
/dev/hda3 / ext3 noatime 0 1
/dev/hda2 none swap sw 0 0
/dev/cdroms/cdrom0 /mnt/cdrom iso9660 noauto,ro 0 0
proc /proc proc defaults 0 0

그 샘플로 되어있는 파티션 보고 설정한 겁니다..^^
어떤분들은 여기고 hd0,7 이렇게..-_+ 하셔서..

이거 외에 다른 문제는 Gentoo Linux문제기 보단..^^그냥 일반적인 리눅스
문제일듯..^^..(정말 많이 삽질했죠..^^...실은 컴두대에 이것저것
다해보며 깔았답니다..)..

여담이지만 kde설치할때 시간정말 오래 걸립니다..^^
8시간 제 노트북이 p3-800,256램인데..정확하게 8시간 42분 걸렸습니다..-_+
인스톨 문서에는 낮잠자라는데 낮잠가지고 안됩니다..-_+..
ports시스템이 약간 시간이 오래 걸리는게 문제지만..
(..머 어차피 다운로드+커널컴파일 시간..인데 다운로드 속도가약간 느리죠..
..^^..한 50kb정도..^^..가끔 200도 나오더군요..^^.)
rpm패키지를 주로 사용하시는 분이라면 조금 오래 걸리죠..^^
하지만 정말 편합니다..^^
다운 로드 사이트 뒤질 필요도 없고 이름만 쓰면 자동으로 최신버전으로
설치해주고..정말 좋습니다.
암튼 Gentoo Linux써보시면 아시겠지만 정말 진보된 리눅스 라는것이라는
것을 느낄것십니다. 저도 머 오래 되진 않았지만..정말 맘메 듭니다.
(..단점은 역시..-_+..설치 어려움과..한글 문제..
..저도 현재 ami와 hanterm에서 방황하고 있습니다..
..완벽하게 해결되면 이겄도 올리겠습니다..
..그리고 Gentoo Linux모임 같은거 만들고 싶은데..누구 만드실분 없는지..^^
..개인적으로 Gentoo Linux를 서버로 해서 돌리고 싶지만 여건이 안되서
요..^^
Gentoo Linux + ZOPE 하면 파이썬 리눅스 웹서버 -_+....)..

궁금하신거 있으시면 opensource at orgio.net로 연락주세요..^^
[출처] 젠투리눅스 설치 방법|작성자 이경민
http://blog.naver.com/joldan23?Redirect=Log&logNo=140003340217

22

Gentoo Linux 설치문서
Gentoo Version : 2004.0Hardware 사양 1. CPU : Intel Pentium 4 2.4C 2. RAM : 삼성 PC3200 256MB X 2 3. MainBoard : Gigabyte 8IPE1000 PRO 4. Graphic Card : ATi Radeon 9600 PRO 유니텍 5. SoundCard : Onboard 6. LanCard : OnboardNetwork : 한국통신 VDSL Premium
설치시 참고한 문서1. 지나가던 곰님의 Gentoo Linux 설치문서(
http://www.gentoo.or.kr/wiki/moin.cgi/Install_25by_25neoesraph)2. mizikn님의 Gentoo Linux 설치문서(http://wiki.kldp.org/wiki.php/GentooInstall)3. Gentoo 1.4 설치문서 번역(http://www.gentoo.or.kr/wiki/moin.cgi/1_2e4_bc_b3_c4_a1_b9_ae_bc_ad_b9_f8_bf_aa)4. Gentoo 1.2 설치문서 번역(http://www.gentoo.or.kr/docs/build-ko.html)5. Gnome Install Guide(http://www.gentoo.or.kr/wiki/moin.cgi/GnomeInstallGuide)
\ Gentoo CD 받기1. 2004.1(2004년 6월 8일 현재 최신버젼)
http://ftp.gentoo.or.kr/releases/x86/2004.1/livecd/install-x86-minimal-2004.1.iso (87M)http://ftp.gentoo.or.kr/releases/x86/2004.1/livecd/install-x86-universal-2004.1.iso (674M)
2. 2004.0
http://ftp.gentoo.or.kr/releases/x86/2004.0/livecd/universal/install-x86-minimal-2004.0.iso (87M) http://ftp.gentoo.or.kr/releases/x86/2004.0/livecd/universal/install-x86-universal-2004.0.iso (674M)
※저는 2004.0 미니시디를 받았습니다. 2004.1로 설치를 하려고 했으나 2004.1시디로는제 컴퓨터에서 네트워크가 안잡혀서 어쩔수 없이 2004.0 미니시디를 받았습니다. Stage1으로 설치하려고 하기 때문에 미니시디를 받은것입니다.
시디이미지를 받았으면 공시디에 굽습니다. 구운다음 시디로 부팅을 합니다.
\ Gentoo 설치시디를 집어넣고 부팅하면
boot:
라는 화면이 나타납니다.그냥 엔터를 눌러줍니다.부팅이 끝나면
livecd root#
이 화면이 나타나게 될것입니다.이제부터 Gentoo Linux의 설치 시작입니다.
1. 네트워크 설정
젠투리눅스는 emerge를 사용해서 패키지대부분을 웹에서 받아서 설치를 하게 됩니다.우선 네트워크를 잡아줍니다.
linvecd root#net-setup eth0
라고 치면 화면이 바뀌면서
0 USE DHCP to auto-detcet my network settings1 Specify an IP address manually
선택하는 화면이 나올 것입니다.저는 VDSL사용자이기 때문에 0번을 선택하였습니다.
네트워크가 제대로 잡혔는지 알아보려면
linvecd root#ifconfig
을 해줍니다.그러면 화면에
eth0 ~~~~~~~~~~~~~~~~~~~~(내용생략 ㅡ.ㅡ;; 너무 많아서)
lo ~~~~~~~~~~~~~~~~~~~~(내용생략 ㅡ.ㅡ;; 이것도 역시 너무 많아서)
하고 나올것입니다.(제가 지금 이문서를 윈도우에서 작성하다보니 정확히 알아볼 방도가 없기에 대충 적어놓겠습니다. 나중에 자세하게 채워넣도록 하겠습니다.)
좀더 확실하게 알아보는 방법은
livecd root#ping -c 3
www.google.com
해서
PING
www.google.akadns.net (216.239.53.99) 56(84) byte of data64byte from 216.239.53.99 : icmp_seq=1 ttl=243 times=125ms64byte from 216.239.53.99 : icmp_seq=2 ttl=243 times=123ms64byte from 216.239.53.99 : icmp_seq=2 ttl=243 times=123ms
---www.google.akadns.net ping statistics ---3 packets transmitted, 3 recived, 0% packets loss, time 2018 msrtt min/avg/max/mdev = 127.741/125.195/125.714/0.399 ms
이런 결과가 나오게되면 네트워크가 제대로 잡힌겁니다.
2. 파티션 설정
젠투리눅스는 레드햇리눅스에서 제공하는 그래픽파티션툴인 diskdruid가 아닌 순수텍스트파티션툴인 fdisk를 사용합니다.리눅스를 처음 설치하시는분은 파티션에 관해 kldp같은곳에서 알아보시고 하시는게실수를 방지할수 있을것입니다.파티션 설정을 위해 fdisk를 실행합니다.
livecd root#/sbin/fdisk /dev/hda
를 입력하게 되면 다음과 같은 상태가 됩니다.
Command (m for help) :
이상태에서 필요한 명령어를 입력해서 자신의 하드에 젠투리눅스를 설치할 파티션을 생성해 주는 것입니다.
fdisk에서 주로 사용하는 명령어를 살펴보겠습니다.(주로라지만 이것밖에는 사용할일이 없을 것입니다. 제경험상 다른 명령어는 사용한적이 없기 때문에 ^^:;;)
p - HDD의 파티션 상황을 보여줌n - 새로운 파티션을 생성함d - 기존의 파티션을 삭제함t - 파티션의 system id 설정w - 저장하고 fdisk 끝내기q - 저장하지 않고 fdisk 끝내기
우선 p를 입력해서 파티션 상황을 살펴봅니다.
DeviceBootStartEndBlockIdSystem
/dev/hda1*17305863693+bW95 FAT32Windows Me 파티션/dev/hda2
73114591111338484+fW95 Ext'd(LBA)Windows 확장파티션/dev/hda5
731268815727633+7HPFS/NTFSWindows XP 파티션/dev/hda6
268933415245191bW95 FAT32Me 데이터 파티션
제 HDD파티션 상황입니다.120기가중에서 6기가를 Windows Me, 15기가를 Windows XP, 5기가를 Windows Me 데이터 파티션으로 할당해줬습니다.나머지 파티션에다가 젠투를 설치하고나서 남은 파티션을 XP 데이터 파티션으로 만들었습니다.
젠투설치를 위한 파티션을 생성합니다.먼저 Swap파티션
Command (m for help) : n
Command action l logical (5 or over) p primary partition (1-4)
여기서 l 을 선택해줍니다.
First Cylinder (3342-14591, default 3342):
나오면 디폴트값으로 적용 그냥 엔터를 누르시면 됩니다.
Last Cylinder or +sizeM or +sizeK (3342-14591, default 14591):
여기서는 자신이 생성하고자 하는 용량만큼 적어줍니다.저는 스왑파티션을 1기가로 잡았기에
Last Cylinder or +sizeM or +sizeK (3342-14591, default 14591):+1024M라고 입력했습니다.M가로 입력하는게 생성하는데 편합니다.
잘 생성이 되었나 p명령어를 이용하여 확인 해봅니다.
Command (m for help) : p
DeviceBootStartEndBlockIdSystem
/dev/hda1*17305863693+bW95 FAT32Windows Me 파티션/dev/hda2
73114591111338484+fW95 Ext'd(LBA)Windows 확장파티션/dev/hda5
731268815727633+7HPFS/NTFSWindows XP 파티션/dev/hda6
268933415245191bW95 FAT32Me 데이터 파티션/dev/hda7
33423466100403183LinuxLinux swap파티션
스왑파티션이 생성 되었습니다.다음은 boot파티션과 /(root)파티션을 위의 방법과 같은 방법으로 생성합니다.저는 boot파티션은 100M, /(root)파티션은 15GB로 잡았습니다.원래 boot파티션을 256M로 잡을려고 생각했었는데 100M만으로도 충분하다는 지나가는곰님의 문서를 보고 100M가로 잡았습니다.
파티션을 다 생성했으면 이제 스왑파티션의 ID를 변경해주어야합니다.제가 설치문서를 보면서 분면히 설치문서에는 스왑파티션이 82로 나오는데 저는 아무리 생성을 해도 83으로 나오길래 뭘 잘못했길래 설치문서랑 다르지하고 생각하다가 fdisk명령어를 살펴보다 우연히 t 명령어를 알게되었습니다.
Command (m for help) : t
Partition number (1-7) : 7 (자신의 파티션중 스왑파티션으로 쓸 파티션의 번호입력) Hex code (type L to list codes) : 82 (Swap ID)
해주고나서 p명령어를 이용하여 파티션 상황을 보면
DeviceBootStartEndBlockIdSystem
/dev/hda1*17305863693+bW95 FAT32Windows Me 파티션/dev/hda2
73114591111338484+fW95 Ext'd(LBA)Windows 확장파티션/dev/hda5
731268815727633+7HPFS/NTFSWindows XP 파티션/dev/hda6
268933415245191bW95 FAT32Me 데이터 파티션/dev/hda7
33423466100403182LinuxLinux swap파티션
/dev/hda7의 ID가 83에서 82로 변경되어 있을 것입니다.
제 리눅스 파티션은/dev/hda7 (swap) 1024M/dev/hda8 (boot) 100M/dev/hda9 (root) 15000M입니다.
이제 파티션을 포맷해줍니다.저는 boot파티션은 ext3로, root파티션은 xfs로 생성했습니다.
livecd root#mke2fs -j /dev/hda8livecd root#mkfs.xfs -f /dev/hda9livecd root#mkswap /dev/hda7livecd root#swapon /dev/hda7
※파일 시스템의 종류(지나가는 곰님의 설치문서 참고)ext2/ext3 : 전통적인 리눅스 파일시스템으로 많이 사용된다. ext3는 ext2에서 저널링이 포함되었다. 이 파티션 타입은 /boot 같은 곳에나 쓰시고 다른데에는 쓰시지 않는게 좋습니다. 실제로 Disk I/O를 모니터링 해보면 하는 일 없이 상대적으로 아주 많은 I/O를 소모하는 파일시스템입니다. ext3는 최악입니다. 저널링이 필요하시다면 XFS 혹은 Reiserfs를 쓰시기 바랍니다.
XFS : 메타데이터 저널링 지원, 요즘에 많이 쓴다더군요. 실리콘 그래픽스사에서 공개한 파일 시스템인데 현재 리눅스에서 쓸 수 있는 파일 시스템 중에서 가장 스케일이 큰 파일시스템입니다. "Think Big"이 XFS의 개발 모토이며 상대적으로 다른 파일 시스템보다 시스템 부하가 약간 큽니다
ReiserFS : 트리기반구조를 한 파일스템 용량이 적고 , 큰 파일에 유리 특정 작업에서 매우 빠름 - 반대로 적어놓으셨군요. ReiserFS는 벤치마크를 해보시면 아시겠지만 작은 파일에 아주 강합니다. 약 4Kb 파일을 죽어라 만들고 다 지우는 스크립트를 돌려 보십시오. 다른 파일 시스템과는 비교가 안될만큼 빠릅니다. 하지만, 큰 파일은 역시 XFS입니다.
JFD : IBM에서 새로 출시한 파일 시스템 -몇몇분은 매우 안정적이다고 하시는군요. 매우 안정적이긴 하지만 IBM답게 아주 user-friendly하곤 담쌓은 파일시스템입니다. 벤치마크를 해봐도 XFS의 장점에 못미치고 ReiserFS의 아기자기한 맛은 온데 간데 없는 어정쩡한 파일시스템이 아닌가 하는 사견입니다
특성이 이렇다는군요그런데 다른 문서에서 보니 여기 설명된것과는 좀 상이하게 소개가 되어있어서 어떤 파일시스템을 선택할지 고민이 많이 되었었습니다.그래서 저같은 경우는 저 파일 시스템중에서 맘에 드는걸 골라서 적용했습니다.boot는 ext3, root는 xfs로 선택해서 사용중인데 아무 이상없이 잘 작동하고 있습니다.어떤 파일 시스템을 선택하실지는 전적으로 설치하고자 하시는 분 마음이시니깐요 ^^;;
3. 설치를 위한 파티션 마운트
설치를 위해서 HDD의 파티션으로 마운트를 합니다.
livecd root#mount /dev/hda9 /mnt/gentoolivecd root#mkdir /mnt/gentoo/bootlivecd root#mount /dev/hda8 /mnt/gentoo/bootlivecd root#cd /mnt/gentoolivecd getnoo#
4. Stage파일 받기
만일 라이브시디를 받지않고 600M짜리 이미지를 받으신분은 시디에서 stage파일을 복사해오면 됩니다.저는 미니시디를 받았기에 웹에서 다운받아야합니다.
livecd gentoo#wget
http://ftp.gentoo.or.kr/releases/x86/2004.0/stages/x86/stage1-x86-20040218.tar.bz2
입력해주시면 stage1파일을 다운받기 시작합니다.
stage파일의 압축을 풀어줍니다.
livecd gentoo#tar -xvjf stage1-x86-20040218.tar.bz2
하게 되면 압축이 풀어지게 됩니다.
※ 리눅스에서는 파일명이 길기 때문에 일일이 다 입력해주기보다는 Tab키를 이용해줍니다. Tab키는 파일이름이나 폴더명을 자동으로 완성해주기 때문에 유용하게 사용되니 알아두세요^^;;
stage파일을 풀어줬으니 proc를 사용할수 있도록 proc를 mount합니다.
livecd gentoo#mount -t proc proc /mnt/gentoo/proc
저는 왜 이걸 하는지 모릅니다. mizikn님의 문서에 하라고 되어있길래 한것이니 질문은 사양해주세요 ^^;;
5. Mirror설정
젠투는 대부분의 모든 패키지를 네트워크에서 받아 설치한다고 앞에서 언급했었죠.그 패키지를 받기위한 미러서버를 설정해주는것입니다.우리나라에도 젠투미러서버가 있는데 속도가 아주 좋습니다.한국 젠투미러만 설정해도 되지만 가끔씩 한국미러가 먹통이 되는 경우가 있더군요그래서 저는 한국미러랑 일본에 있는 미러를 설정해 줬습니다.
livecd gentoo#mirrorselect -i -o >> /mnt/gentoo/etc/make.conf
미러목록이 나오면 한국미러인
ftp.gentoo.or.kr (kor)를 선택해줍니다.안심이 안되신다면 일본미러도 몇 개 선택해줘도 됩니다.
만일 한국미러외에 다른 미러도 선택하셨다면 make.conf파일을 수정해줘서 속도빠른 한국미러가 제일 앞으로오도록 수정해줍니다.
livecd gentoo#nano /mnt/gentoo/etc/make.conf
GENTOO_MIRROR 항목에서 한국미러를 가장 앞으로 오게 고쳐주고 Ctrl+X키를 눌러 저장해주고 빠져나옵니다.
만일 미러서버를 선택하는게 안나온다면 네트워크 설정이 잘못된것이므로 다시 네트워크를 잡아줍니다.
livecd gentoo#net-setup eth0
이제 본격적인 설치를 위한 준비가 끝났습니다.
6. 설치시작1
이제 본격적으로 설치를 시작합니다.
livecd gentoo#cp /etc/resolv.conf /mnt/gentoo/etc/resolv.conf
해서 resolv.conf파일을 HDD로 복사해줍니다.
livecd gentoo#chroot /mnt/gentoolivecd /#
이건 chroot로 해서 가상HDD에서 자신의 HDD로 들어온것입니다.(이건 제 추측으로 생각한건데 맞는지는 잘 모르겠군요)
livecd /#env-update
>>>>Regenerating /etc/ld.so.cache........
livecd /#source /etc/profilelivecd /#
7. 설치시작2-Portage받기
livecd /#emerge sync
저는 Portage를 받아오는 이과정에서 약 30여분이 걸렸습니다.
8. 시스템 최적화 설정
make.conf파일을 수정해서 최적화를 해줍니다.
livecd /#nano /etc/make.conf
CFLAGS="~~~~~~~~~~~~~~~~(내용생략)"
이부분을
CFLAGS="-03 -march=i686 -mcpu=pentium4 -fomit-frame-pointer -mmmx -msse2 -msse -pipe"
로 수정해줍니다.그리고 역시
CHOST="~~~~~~~(내용생략)“
이부분도
CHOST="i686-pc-linux-gnu"
로 수정해준다음 저장하고 빠져나옵니다.이 최적화 부분은 지나가는곰님의 문서에서 펜티엄4에 최적화된 설정이라 하기에 저렇게 설정을 해주었습니다.저 설정의 내용에 대해 좀더 알고 싶다면 지나가는 곰님의 설치문서를 참고하세요 ^^;;
9. BootStrap
이 bootstrap은 자신의 시스템에 맞게 gcc,gliblc등을 설치하는 과정이라고 합니다.앞에서 했던 emerge sync작업은 이 bootsrap과정을 위한 준비였다는군요
livecd /#cd /usr/portagelivecd portage/#scrips/bootstrap.sh
하면 설치가 시작됩니다.이 과정은 시간이 꽤 오래 걸립니다.지나가던 곰님과 mizikn님은 이과정에서 3~4시간정도 걸렸다고 합니다.저는 약 1시간 50분정도 걸리더군요젠투설치에서 가장중요한것은 컴퓨터 성능보다는 네트워크상태가 가장 큰 영향을 주는거 같더군요여러번 젠투설치를 했을때 가끔 한국미러가 죽어서 일본미러에서 받는데 그때는 거의 3시간에 가까이 걸리는걸 보니 확실한듯 합니다.
10. System설치
설치에 필요한 각종 툴을 자신의 환경에 알맞게 설치해주는 과정입니다.
livecd portage/#emerge system
이 과정역시 시간이 오래 걸린다고 합니다.무려 12시간걸리는 경우도 있다고 하더군요저같은 경우는 1시간정도 걸렸습니다.※ bootstrap과 system설치를 한꺼번에 하는것도 가능합니다.
livecd portage#scripts/bootstrap.sh ; emerge system
하면 bootstrap과 system설치를 한꺼번에 설치를 하게됩니다.저는 저렇게 하다가 system파일이 설치가 되었는지 확신을 할 수 있는 방법이 없어서 언제나 따로 설치를 해주었습니다.그러다가 어느분의 질문 답변에
livecd portage#emerge -pv system
Calculating system depencies......................done!
이란 메시지가 나오게 되면 system설치가 완료된것이라고 합니다.참고하세요 ^^;;
11. 시간설정
시스템의 시간을 설정해줍니다.
livecd portage#ln -sf /usr/share/zoneifo/Asia/Seoul /etc/localtime
12. fstab설정
livecd portage#nano /etc/fstab
에서 수정할 부분은
#
/dev/BOOT /boot ext2 noauto,noatime 1 1/dev/ROOT / xfs noauto,noatime/dev/SWAP none swap sw
이부분을 자신의 환경에 맞게 수정해 줍니다.
#
/dev/hda8 /boot ext2 noatime 1 1/dev/hda9 / xfs noatime/dev/hda7 none swap sw
저는 위와 같이 수정을 해주었습니다.저 밑에 있는 부분은 잘 아시는 분이 아닌 한 손대지 마시기를 손댔다가 무슨일 생기면 책임 못짐^^;;
13. Kernel설치
자 이제 리눅스의 핵심이라고 할수 있는 커널설치입니다.제가 이 문서를 작성하고 있는 현제 최신 커널버젼은 2.6.6입니다.
livecd portage#cd /usr/srclivecd src#emerge module-init-tools
이건 커널버젼이 2.6이상일때 설치해줍니다.설치안해주면 커널 설치때 에러메세지를 토하더군요 ^^;;이제 커널을 받습니다.
livecd src#wget
http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.6.tar.bz2
커널 압축을 풉니다.
livecd src#tar -xvjf linux-2.6.6.tar.bz2
압축이 다 풀리면 linux-2.6.6폴더가 생성됩니다.
livecd src#cd linux-2.6.6livecd linux-2.6.6#
우선 커널설치를 하기전에 커널소스를 편집해줍니다.커널 2.6버젼으로 와서부터는 키보드의 한/영키랑 한자키가 안먹는다는군요그렇기에 커널소스를 편집해서 한영키를 사용가능하게 수정해줍니다.한영키를 사용하기위해 수정해줘야할 소스파일은 2가지입니다.
linux-2.6.6/drivers/input/input.c에서
case EV_KEY: if (code > KEY_MAX !test_bit(code, dev->keybit) !!test_bit(code, dev->key) == value) return;
if (code > KEY_MAX !test_bit(code, dev->keybit) !!test_bit(code, dev->key) == value) return; if (value == 2)
break;

case EV_KEY: if (code > KEY_MAX !test_bit(code, dev->keybit) !!test_bit(code, dev->key) == value) return;
if (code != KEY_HANGUEL && code != KEY_HANJA)
{
if (code > KEY_MAX !test_bit(code, dev->keybit) !!test_bit(code, dev->key) == value) return;
} if (value == 2)
break;
로 수정을 해줍니다.
linux-2.6.6/drivers/input/keyboard/atkbd.c :
137번째 라인에
#define ATKBD_RET_HANGUEL 0xf1#define ATKBD_RET_HANJA 0xf2
이부분을
#define ATKBD_RET_HANGUEL 0xf2#define ATKBD_RET_HANJA 0xf1수정한다음 저장하고 빠져나옵니다.
livecd linux-2.6.6#make mrproperlivecd linux-2.6.6#make menuconfig
여기서 커널 옵션설정하는 화면으로 넘어가게 됩니다.
Linux Kernel v2.6.0-test11 Configuration
???????????????????????? Linux Kernel Configuration ? Arrow keys navigate the menu. selects submenus --->. ? Highlighted letters are hotkeys. Pressing includes, excludes, ? modularizes features. Press to exit, for Help. ? Legend: [*] built-in [ ] excluded module < > module capable +?????????????????????????????????????????????????????????????????????????????? ? ? Code maturity level options ---> ? ? General setup ---> ? ? Loadable module support ---> ? ? Processor type and features ---> ? ? Power management options (ACPI, APM) ---> ? ? Bus options (PCI, PCMCIA, EISA, MCA, ISA) ---> ? ? Executable file formats ---> ? ? Device Drivers ---> ? ? File systems ---> ? ? Profiling support ---> ? ? Kernel hacking ---> ? ?????????v(+) +????????????????????????????????????????????????????????????????????????????????