>> Edit article
이름
제목
패스워드
리눅스 커널 2.4 설치하기 - 작성이: 퍼뜩 sysop@cafe.sarang.net 작성일: 2001/01/05 태스트 환경: RedHat 6.2 -------------------------------------------------------------------- - Linux Kernel-2.4.0 안정 버전을 일반 사양의 PC에서의 컴파일과 설치하기 위한 지침문... -------------------------------------------------------------------- 커널을 구할 수 있는곳... - ftp://ftp.kernel.org/pub/linux/kernel/v2.4/linux-2.4.0.tar.gz ftp://ftp.kr.kernel.org/pub/linux/kernel/v2.4/linux-2.4.0.tar.gz etc.... -------------------------------------------------------------------- 설치시 필요사양.. - modutils 2.4.0 이상.. devfsd v1.3.x 이상.. 필요한 유틸리티 설치와 설정 변경.... - 1) modutils-2.4.0.tar.gz 이 유틸리티는 모둘추가 또는 삭제등 모듈의 작업을 수행하기위한 패키지로. 꼭 설치를 해야한다. 버젼을 볼수있는 방법은... insmod -V 설치 방법: 구할수있는곳: ftp://ftp.kernel.org/pub/linux/utils/kernel/modutils/ 우선 전에 있던 modutils를 지운다.. $rpm -e modutils-2.xxx.rpm <--전에있는 패키지를 지운다. $tar zxvfp modules-2.4.0.tar.gz <--요기서부터 설치.. $cd modules-2.4.0 $./configure --prefix= $make $make install - 2) devfsd-v1.3.x 커널 2.4.0에서 부터는 dev라는 것을 device file system daemon에 의해서도 작동된다.. 파일 시스템 데몬의사용을 커널에서의 설정에는 반드시 이게 필요하다. 구할수있는곳: ftp://ftp.kernel.org/pub/linux/daemons/devfsd/ $tar zxvfp devfsd-v1.3.10.tar.gz $cd devfsd-xxxx $make $mv devfsd /sbin/ $mv modules.devfs /etc/ $cp devfsd.conf /etc/ 필요한 프로그램의 설시는 끝났다.. 이제 설치한 프로그램에서의 수행을위해 조금의 스크립의 수정및 변경이 필요하다. 요기에서.... 또하나의 추가된기능으로.. /dev-state라는 디렉을 만들어서 현재 작업 중인... 디바이스를 보여줄수있도록 바꿀수있다.. 이기능을 사용하려면.... /etc/devfsd.conf 파일을 수정한다... 사용하지 않으시려면 이부분을 건너 뛰어도된다. $mkdir /dev-state $vi /etc/devfsd.conf |............. |...... |# Uncomment this if you want permissions to be saved and restored |# 아래 세개에 주석만 제거하면 된다. |#REGISTER .* COPY /dev-state/$devname $devpath |REGISTER .* COPY /dev-state/$devname $devpath |#CHANGE .* COPY $devpath /dev-state/$devname |CHANGE .* COPY $devpath /dev-state/$devname |#CREATE .* COPY $devpath /dev-state/$devname |CREATE .* COPY $devpath /dev-state/$devname |... |... _ 3) 스크립 수정및 추가.. 먼저 modutils패키지는... 구버전에서의 /etc/conf.modules 파일의 내용을 읽어들어 자동으로 필요한 모듈을 설치하고 설정하나.. 이 새버전에서는 파일 이름이 변경되었다.. modules.conf라고 파일의 이름을 바꾼다.. 내용의 형식은 같다. $mv /etc/conf.modules /etc/modules.conf 그리고 이를 적용하기 위해서 약간의 스크립을 수정한다. /etc/rc.d/rc.sysinit 파일의 조금의 수정이 필요하다. | --- rc.sysinit의 일부분 --- |# 원문.... |#alias=`egrep -s "^alias[[:space:]]+sound[[:space:]]+" /etc/conf.modules | awk '{ print $3 }'` |# 퍼뜩이가 수정... |alias=`egrep -s "^alias[[:space:]]+sound[[:space:]]+" /etc/modules.conf | awk '{ print $3 }'` |if [ -n "$alias" -a "$alias" != "off" ] ; then | action "Loading sound module ($alias)" modprobe -k $alias | RETURN=$? |fi |# 원문 |#alias=`egrep -s "^alias[[:space:]]+sound-slot-0[[:space:]]+" /etc/conf.modules | awk '{ print $3 }'` |# 퍼뜩이가 수정... |alias=`egrep -s "^alias[[:space:]]+sound-slot-0[[:space:]]+" /etc/modules.conf | awk '{ print $3 }'` |if [ -n "$alias" -a "$alias" != "off" ] ; then | action "Loading sound module ($alias)" modprobe -k $alias | RETURN=$? |fi |# 원문 |#alias=`egrep -s "^alias[[:space:]]+midi[[:space:]]+" /etc/conf.modules | awk '{ print $3 }'` |# 퍼뜩이가 수정.. |alias=`egrep -s "^alias[[:space:]]+midi[[:space:]]+" /etc/modules.conf | awk '{ print $3 }'` |if [ -n "$alias" -a "$alias" != "off" ]; then | action "Loading midi module ($alias)" modprobe -k $alias |fi --- rc.sysinit 생략... ^^ --- 이렇게 수정을 한다... 단지...conf.modules라고 써있는 부분만을.. modules.conf라고만 바꿨을 뿐이다. 이로써 modutils패키지의 모든 준비와 설정은 끝났다... 다음으로, devfsd를위한 설정이 필요하다. /dev라는 디렉은 가상 파일 시스템으로 생성이 되었으나, k2.4에서부터는 사용자의 선택에따라 device file system daemone 의 사용을 택할경우... /etc/rc.d/rc.sysinit의 내용에 약간의 추가가 필요하며...lilo.conf에서엮시 약간의 수정이 필요하다. ---- rc.sysinit 일부분 --- # Mount /proc (done here so volume labels can work with fsck) action "Mounting proc filesystem" mount -n -t proc /proc /proc # 퍼뜩 수정.. echo -en "Upgrading By Kim Byoung-Kug(Poddugi)" action "Starting devfsd" /sbin/devfsd /dev action "Shm Create " mkdir -p /dev/shm --- rc.sysinit 뒷부분 생략.. --- 다음으로는 /etc/lilo.conf에서의 약간의 내용 추가... | -- lilo.conf --- |default=linux | |image=/boot/vmlinuz-2.4.0 | label=linux |# 이곳에 마운트를 할수있게끔 설정라인을 추가해야함.. | append = "devfs=mount" | read-only | root=/dev/hdc5 | --- lilo.conf 생략...--- 기타 설정......... /etc/securetty 파일을 다음과 같이 수정한다. | --- securetty--- |1 |2 # 전에는 tty1, tty2...이런식이였으나.. 이렇게 바꼈음.. |3 # /dev/vc/1, /dev/vc/2 이런식으로 됨.... |4 |5 |6 | -- securetty 끝 -- /etc/inittab 의 부분도 다음과 같이 수정한다. |$vi /etc/inittab |# 뒤에 tty1...6들을 다음과 같이 vc/1....6바꾼다... |# Run gettys in standard runlevels |# 1:2345:respawn:/sbin/mingetty tty1 |1:2345:respawn:/sbin/mingetty vc/1 |2:2345:respawn:/sbin/mingetty vc/2 |3:2345:respawn:/sbin/mingetty vc/3 |4:2345:respawn:/sbin/mingetty vc/4 |5:2345:respawn:/sbin/mingetty vc/5 |6:2345:respawn:/sbin/mingetty vc/6 | 기타 다른 장치의 추가및 설치는 전에는 mknod같은 툴을 이용했으나... 이렇게도 할수 있다.. 만약.. gpm을 이용한 ps/2 마우스등을 사용하시고 계신다면.. 꼭 이부분에 추가를 해줘야한다.. /dev/cdrom의 추가도 도 마찬가지이다... /etc/modules.devfs를 수정하면 되는데.. 이것은.../etc/rc.d/init/devfs의 수행으로 해서.. /dev/devfsd.conf의 설정을 맨처음에 읽어들인다... 그후 그 파일의 옵션으로 해서 /etc/modules.devfs의 내용을 읽는데.. 이를 읽어들이도록하기위해.. /etc/devfsd.conf 부분에 LOOKUP .* MODLOAD 를 추가해주면 된다. 그후 /etc/modules.devfs를 수정하면 된다. 명심해야될것은 절대 설정되어있는 부분은 지워서는 안된다...<--명심.. 사용자별 환경이 다르므로 나의 경우는 이렇다... |$vi /etc/modules.devfs <---의 수정으로... 변경할수있다.. |# 퍼뜩이가 수정... |# PS/2 Mouse |alias /dev/psaux /dev/mouse |# CD-ROM Device |alias /dev/hdd /dev/cdrom |# Video capture devices |alias /dev/video* /dev/v4l |alias /dev/vbi* /dev/v4l |.... /etc/security/console.perms 에서 다음 부분을 다음과 같이 수정한다. | ---console.perms--- |#<console>=tty[0-9][0-9]* :[0-9].[0-9] :[0-9] |# 아랫거와 같이 변경한다. |<console>=tty[0-9][0-9]* :[0-9][0-9]* :[0-9].[0-9] :[0-9] | ---console.perms 생략 끝.. --- 마지막으로.... 공유 메모리를 사용하기 위해 /dev/shm을 마운트 해야한다. |$mkdir -p /dev/shm |$ vi /etc/fstab |none /dev/shm shm defaults 0 0 그리고... $ln -s /dev/shm /var/shm 만약 레뎃리넉이라면... 이렇게... $cp /usr/src/linux/Documentation/filesystems/devfs/rc.devfs /etc/rc.d/init.d/devfs $chmod 755 /etc/rc.d/init.d/devfs $cd /usr/src/linux/Documentation/filesystems/devfs/ 다른 배포본이라면 다르게해주세엽.... $cd /etc/rc.d $ln -s init.d/devfs rc0.d/S02devfs $ln -s init.d/devfs rc1.d/S02devfs $ln -s init.d/devfs rc2.d/S02devfs $ln -s init.d/devfs rc3.d/S02devfs $ln -s init.d/devfs rc4.d/S02devfs $ln -s init.d/devfs rc5.d/S02devfs $ln -s init.d/devfs rc6.d/S02devfs $ln -s /etc/devfsd.conf /dev/devfsd.conf 이정도면 모든 준비...끝... ^_^ -------------------------------------------------------------------- 약간의 커널 설정.. 도움... ^_^ devfs를 위한 커널에서의 설정 예... ----------------------------------------------------------------------- File systems [*] /proc file system support [*] /dev file system support (EXPERIMENTAL) [*] Automatically mount at boot [*] Debug devfs [*] /dev/pts file system for Unix98 PTYs ----------------------------------------------------------------------- cpu속도 향상을 위한 설정....예.. ----------------------------------------------------------------------- (Pentium-Pro/Celeron/Pentium-II) Processor family <*> /dev/cpu/microcode - Intel IA32 CPU microcode support <*> /dev/cpu/*/msr - Model-specific register support <*> /dev/cpu/*/cpuid - CPU information support [*] MTRR (Memory Type Range Register) support ----------------------------------------------------------------------- 맨아래의 MTRR을 꼭 마킹하기 바란다... 태스트 결과.... xmms에서의 영화 상영시 CPU사용 량의 정보를 알아볼수있었다.. 체크를 하지 않을때...AVI의 영화상영시, CPU 100%의 리소스를 사용하며, 화면도 무지 덜 매끄러웠으나, MTRR를 세팅한후 수행결과 CPU 20%내외에서 리소스를 사용 하며 매끄럽게 보이는 현상과 부드러운 영상의 영화를 감상할수있었다 <---퍼떡이 경험담..^^ X상에서의 빠른 비디오 가속을 위한 설정... 참고로 저는 nVidia Riva TNT2를 사용하고있다.... ----------------------------------------------------------------------- Character devices ---> <*> /dev/agpgart (AGP Support) [*] Intel 440LX/BX/GX and I815/I840/I850 support Console drivers ---> Frame-buffer support ---> [*] Support for frame buffer devices (EXPERIMENTAL) <*> nVidia Riva support (EXPERIMENTAL) ----------------------------------------------------------------------- 를 설정하면 된다... linux/documents에서도 이에대한 자세한 설명이 나와있다. 이기능의 지원은 XFree86 4.0 버젼이상에서 완벽한 기능이 제공되며, 제가사용하느 XFree86-3.xx에서는 지원이 안되지만, 기분많으로 뿌듯하지 않습니까.. ^^ 커널 설치 방법..? $tar zxcvf linux-2.4.0.tar.gz $mv linux linux-2.4.0 $ln -s linux-2.4.0 linux $cd linux $make mrproper $make xconfig <-- 사용자 선택에 따라.. menuconfig, config, xconfig .....설정...화면.... $make dep $make install $make modules $make modules_install $vi /etc/lilo.conf <--- 수정은 위의 글 참고... ^^ 제가 아는 한에서의 설명은 끝냈으며, 직접 커널을 설치해보시기 바랍니다... 제가 테스트 한것에는 전혀 이상이 없었으며, 저보다 덜고생하면서 커널을 설치할 수있게끔 본 문서를 작성했습니다.. 아무쪼록 부족합니다만... 많은 참고가되었으면 감사하겠습니다.. 그럼.......... 이만 "퍼뜩"이였습니당..
Copyleft
1999-2026 by
JSBoard Open Project
Theme Designed by
IDOO
All right reserved