OS/LINUX2008. 3. 12. 02:34
반응형

Download e http://www  .kernel.org/pub/linux/kernel/v2.4/

Download e http://www.netfilter.org/files/

Download e http://www.oltenia.ro/download/pub/linux/bridge/

[root@sunny SRPM]# rpmbuild --rebuild kernel-2.4.20-8.src.rpm

[root@sunny i386]# rpm -Uvh kernel-source-2.4.20-8.i386.rpm

[root@sunny i386]# rpm -Uvh kernel-BOOT-2.4.20-8.i386.rpm

[root@sunny i386]# rpm -Uvh kernel-doc-2.4.20-8.i386.rpm

[root@sunny tmp]# tar zxvf linux-2.6.5.tar.gz -C /usr/src/

[root@sunny src]# cd linux-2.6.5/

풀린 리눅스 커널 소스 디렉토리를 linux로 심볼릭 링크 합니다

[root@sunny src]# ln -s linux-2.6.5 linux

[root@sunny src]# cd /usr/src/linux

Patch 파일을 이용하여 커널을 Patch 합니다

[root@sunny linux]# patch -p1 < /usr/local/src/bridge-nf-0.0.8-against-2.6.5.ddff

[root@sunny linux]# make mrproper

Kernel Option 을 설정한다.

만약 콘솔모드에서 설정한다면 다음 명령을 이용한다.

[root@sunny linux]# make menuconfig

그리고 x-windows 모드에서 설정한다면 다음 명령을 이용하면 된다.

[root@sunny linux]# make xconfig


 

여기에서 변경해야 할 주요 항목은 Networking optionsNetwork device support 이다.

y는 커널에 포함시키는 항목이며, m module로 분리하며, n은 커널이나, module로 포함하지 않는 의미한다.

. Packet socket, Network packet filter (replace ipchains)+ Socket Filtering, + Unix domain sockets, + TCP/IP networking, IP: multicasting 이 부분을 내 시스템 보안과 네트워크 상태에 다라서 변경해 주어야 한다.

그리고 설정 내용을 저장해 주고 나온다.


 

컴파일을 위한 의존성 관계를 설정합니다

[root@sunny linux]# make dep

만약 이전에 커널 컴파일을 진행하였다면 이전에 수행했던 컴파일과정에서 생성된 오브젝트 파일(*.[oas]), 커널, 임시파일(.tmp*), 설정값(configure) 등을 삭제합

[root@sunny linux]# make clean

압축된 커널 이미지를 만듭니다. I(아이)를 대문자로 써야합니다.

[root@sunny linux]# make bzImage

Root device is (3, 6)

Boot sector 512 bytes.

Setup is 4991 bytes.

System is 1126 kB

Kernel: arch/i386/boot/bzImage is ready

기존의 module을 삭제합니다.

[root@sunny linux]# rm -rf /lib/modules/2.4.20-8/

[root@sunny linux]# make modules

[root@sunny linux]# make modules_install

모듈 사이의 의존성을 검사하여 /lib/modules 디렉토리 아래 modules.dep 파일을 만듭니다.

[root@sunny linux]# depmod -a 2.4.19

새로운 부트 이미지와 map 파일을 복사합니다.

[root@sunny linux]# cp arch/i386/boot/bzImage /boot/vmlinuz-2.5.6

[root@sunny linux]# cp System.map /boot/System.map-2.5.6.map

부팅 하드 디스크가 SCSI 이라면 initrd 이미지도 새롭게 만들어야 합니다.

[root@sunny boot]# mkinitrd /boot/initrd-2.5.6.img 2.5.6

boot 디렉토리로 이동 후 기존의 심볼릭 링크된 부트이미지와 map 파일을 삭제합니다

[root@sunny linux]# cd /boot

[root@sunny boot]# rm -rf vmlinuz

[root@sunny boot]# rm -rf System.map

새로운 부트이미지와 map 파일로 심볼릭 링크를 합니다.

[root@sunny boot]# ln -s vmlinuz-2.5.6 vmlinuz

[root@sunny boot]# ln -s System.map-2.5.6 System.map

lilo 설정 파일을 수정합니다.

[root@sunny boot]# vi /etc/lilo.conf

prompt

timeout=50

default=linux   e default=linux-2.5.6

boot=/dev/hda

map=/boot/map

install=/boot/boot.b

message=/boot/message

lba32

 

image=/boot/vmlinuz-2.4.20-8

        label=linux

        initrd=/boot/initrd-2.4.20-8.img

        read-only

        append="hdc=ide-scsi root=LABEL=/"

e 다음 내용을 추가

image=/boot/vmlinuz-2.5.6

           label=linux-2.5.6

           initrd=/boot/initrd-2.5.6.img

           read-only

           append="hdc=ide-scsi root=LABEL=/"

lilo를 실행하여 수정한 lilo.conf 설정파일의 설정을 적용시킨다.

[root@sunny boot]# lilo

Bridge Utils 설치

[root@linuxclub tmp]# rpmbuild --rebuild bridge-utils-0.9.3-8.src.rpm..rpm

[root@linuxclub ko]# rpm -Uvh bridge-utils-0.9.3-8.i386.rpm

[root@linuxclub ko]# rpm -Uvh bridge-utils-devel-0.9.3-8.i386.rpm

[root@linuxclub ko]# rpm -Uvh bridge-utils-debuginfo-0.9.3-8.i386.rpm

[root@sunny tmp]# tar xvfz bridge-utils-1.0.tar.gz

[root@sunny tmp]# cd bridge-utils-1.0

[root@sunny bridge-utils-1.0]# ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var --mandir=/usr/share/man

[root@sunny bridge-utils-1.0]# make

[root@sunny bridge-utils-1.0]# make install

iptables 설치

[root@linuxclub tmp]# rpmbuild --rebuild  iptables-1.2.7a-2.src.rpm..rpm

[root@linuxclub RPMS]# rpm -Uvh iptables-1.2.7a-2.i386.rpm

[root@linuxclub RPMS]# rpm -Uvh iptables-debuginfo-1.2.7a-2.i386.rpm

[root@linuxclub RPMS]# rpm -Uvh iptables-ipv6-1.2.7a-2.i386.rpm

[root@linuxclub iptables-1.1.2]# make

[root@linuxclub iptables-1.1.2]# make install
반응형

'OS > LINUX' 카테고리의 다른 글

rpm 아키택쳐 버젼까지 확인방법  (0) 2008.05.31
linux bonding  (0) 2008.04.19
rpm으로 커널 업그레이드 하기  (0) 2008.03.12
[linux] CentOS4 XManager 연결 가능하게 하기  (0) 2008.03.10
OpenVPN 사용하기  (0) 2008.03.03
Posted by [PineTree]