얼마전에 구입한 노트북에 윈도우와 fedora(패도라)를 설치하고 리눅스(패도라6)를 사용하기로 결심하였다. 그런데 문제는 노트북의 네트워크 드라이버... 정확히 말하면 IPW3945드라이버 설치가 문제였다.
많은 영문 싸이트와 몇몇 고수들의 한글로 된 블로그를 종합하고.. 분석하여 드디어 성공하였지만.. 정리해서 블로그에 올리려는 순간 허탈하게도.. 지금까지의 문제를 단번에 해결해줄 최신 리눅스 커널과 드라이버가 나오게 되었다.
그래서 고민 끝에 다시 한번 정리해서 올리는 것으로 하고 글을 쓴다.
참고로 말하자면.. 많은 사람들이 패도라 5, 6에서 IPW3945드라이버 설치에 문제를 느끼고 해결하려고 했지만 나의 느낌에는 실패한 것 같았다. 그리고 나처럼 리눅스 초보인 사람은 어려운 부분이 많아 설치하는데 어려움을 느낄 것 같아 최대한 쉽게... 설명하고자 한다.
하지만.. 리눅스를 공부하는 초보라.. 용어에서 틀리는 부분이 나타날 것이고 왜 그런지는 아는데까지만.. 설명하겠다.
혹시나 나의 경우처럼 IPW3945 드라이버를 설치하는 사람에게는 많은 도움이 될것이라 생각한다.
먼저 리눅스 드라이버 관련 나의 노트북 사양은 다음과 같다.
☞ Model : A6JC
☞ Processor : Intel®Core Duo Processor T2500(2.0G)
☞ LAN : Intel®PRO/Wireless 3945ABG Network Connection
Realtek RTL8168/8111 PCI-E Gigabit Ethernet NIC
☞ Video : Nvidia GeForce go 7300
※ 패도라 5에서는 ipw3945-1.1.0을 설치할때 ieee80211에 대한 오류가 계속 나타났다. 이것을 해결하기 위해 커널을 업데이트하고 ieee80211관련된 여러가지를 설치해야 하는데.. 무지 힘들었음.. 나중에는 도대체 내가 뭘 설치했는지도 모를 정도가 되었다.
하지만 패도라 6에서는 최신버전의 커널 업데이트 1번만해주면 된다. ieee80211에 대한 설치는 필요 없다.
혹시나 ieee80211에 대한 make또는 ./remove-old 작업을 하였다면 커널 자체를 삭제하고 다시 설치하는 것을 권장한다.
왜냐하면, ipw3945뿐만 아니라 Realtek RTL8168, Nvidia 드라이버까지 설치하기 위해서는 반드시 개발용? 커널(kernel-2.6.18-1.2869.fc6.i586.rpm)를 설치해야 한다.
아래 설명은 패도라 6을 기준으로 하는데, 아마 개인적인 생각으로는 패도라 5에서도 적용가능할 것이라 생각한다.
※ 혹시나 해서 일단 적어 놓는다. 페도라 6를 처음 설치할 때 '사무와 생산성' 만 체크하고 설치했을 때 네트워크 카드를 make 한 결과 'gcc오류'가 나타났다. 그래서 아에 처음 페도라 6를 처음 설치할 때 '소프트웨어 개발' 부분도 체크한 결과 이런 오류를 해결할 수 있었다.
고수의 경우 어떻게 해결해야 할지 금방 알 수 있을 것이다. 그러나 나의 경우 의존성 문제로 이 부분을 매우 힘들었다. 덕분에 필요없는 부분까지 설치가 되기는 했지만 일단은 성공했으니까..
① 설치할 드라이버와 관련된 파일을 다운받아 CD로 구워 놓는다. 왜냐하면 패도라로 부팅했을때 인터넷이 되지 않는다고 가정하기 때문이다. ☞ 커널 관련 패키지 다운받기
- 아래 사이트를 클릭하여 관련 패키지를 다운받는다.
http://download.fedora.redhat.com/pub/fedora/linux/core/updates/6/i386/ · kernel-devel-2.6.18-1.2869.fc6.i586.rpm -> 개발용? 커널을 설치하기 위한 패키지
· kernel-2.6.18-1.2869.fc6.i586.rpm -> 개발용? 커널을 설치하기 위한 패키지
· hardlink-1.0-2.fc6.i386.rpm -> 혹시나 커널이 설치가 되지 않을때 이 패키지를 먼저 설치함
※ 패키지 이름 끝이 i586인 이유는 아래 그림과 같이 연결된 커널이 i585이기 때문임. 최소한 나의 경우 i686은 설치되지 않았음
☞ 방화벽과 데몬파일 다운받기 - 아래 사이트를 클릭하여 관련 드라이버를 다운받는다.
http://www.intel.com/ 사이트의 '다운로드 센터'
· ipw3945-linux-1.1.0.tgz -> 패도라에서 압축을 풀면 관련 파일을 볼 수 있다. 물론 ipw3945-1.1.0드라이버도 있지만 이걸쓰면 오류남 따라서 위의 ipw3945-1.2.0.tgz 파일을 사용
② 개발용? 커널 설치후 새로운 커널로 다시 부팅한다.
③ X-Windows에서 CD-ROM을 마운트 하여 CD의 내용중 2.6.18-1.2869커널을 설치한다.
☞ 먼저 'kernel-devel-2.6.18-1.2869.fc6.i586.rpm'을 설치한다.
※ 혹시나 아래와 같은 문제점이 발생하여도 무조건 설치한다.
☞ 두번째로 'kernel-2.6.18-1.2869.fc6.i586.rpm'을 설치한다.
※ 지난번에 개발용 커널이 설치가 되지 않았다. 그 이유는 알 수 없으나 'hardlink-1.0-2.fc6.i386.rpm'을 설치하니 커널이 설치되었다.
④ ipw3945 데몬과 방화벽 준비하기 (여기서 사용된 ipw3945-linux-1.1.0.taz의 압축을 풀고 나면 생기는 ipw3945d 파일과 ipw3945.ucode 파일만 사용할 것임)
☞ ipw3934-linux-1.1.0.tgz의 압축을 풀기 위해 CD에서 바탕화면으로 드래그하여 복사한다.
☞ ipw3934-linux-1.1.0.tgz을 떠블클릭하여 /root/Destkop에 압축을 푼다.
☞ 바탕화면에 새로 나타난 ipw3934-linux-1.1.0란 폴더를 떠블클릭하여 ipw3945-ucode-1.13.tgz압축파일과 ipw3945d-1.7.22.tgz 압축파일을 떠블클릭하여 풀어 준다.
⑤ 인텔 무선 랜카드를 설치하기 위해 ipw3945-1.2.0.tgz 압축파일 풀어 make 와 make install을 통해 모듈을 만들어 준다.
☞ CD에서 바탕화면으로 ipw3945-1.2.0.taz파일을 바탕화면에 복사한다.
☞ ipw3945-1.2.0.tgz을 떠블클릭하여 압축을 풀어준다.
☞ 아래 그림처럼 '프로그램' → '보조 프로그램' → '터미널'을 열고 다음 아래와 같이 써준다.
[root@localhost ~]# cd Desktop --> root의 바탕화면 디렉토리로 이동한다.
[root@localhost Desktop]# cd ipw3945-1.2.0 --> ipw3945-1.2.0 폴더로 이동한다.
[root@localhost ipw3945-1.2.0]# make
....
.....
......
[root@localhost ipw3945-1.2.0]# make install
.....
......
........
☞ make install 까지 끝나고 '프로그램' → '시스템 도구 ' → '파일 브라우저'를 클릭하여 실행한다. 실행후 아래 그림처럼 /root/Desktop/ipw3945-1.2.0 으로 이동하면 'ipw3945.ko' 모듈을 볼수 있다.
☞ 'ipw3945.ko'파일을 오른쪽 마우스 하여 복사를 클릭합니다.
⑥ 위의 복사된 ipw3945.ko 모듈을 이더넷 카드의 커널 모듈로 복사 붙이기 합니다.
☞ 'ipw3945.ko'파일을 /lib/modules/2.6.18-1.2869.fc6/kernel/drivers/net/wireless 디렉토리에 붙이기 합니다.
⑦ 다시 바탕화면에서 ipw3945-linux-1.1.0 폴더속에 ipw3945-ucode-1.13 폴더속의 ipw3945.ucode 파일을 오른쪽 마우스 복사하기를 클릭한다.
☞ ' /root/Desktop/ipw3945-linux-1.1.0/ipw3945-ucode-1.13'디렉토리 속의 ipw3945-ucode파일을 복사한다.
☞ ' /lib/firmware/'디렉토리에 'ipw3945.ucode'파일을 붙이기 한다.
⑧ 다시 바탕화면에서 ipw3945-linux-1.1.0 폴더속에 ipw3945d-1.7.22 폴더속의 x86 폴더에 ipw3945d파일을 오른쪽 마우스 복사하기를 클릭한다.(x86폴더를 선택한 것은 나의 노트북이 32bit이기 때문이다. 만약 64bit 라면 x86_64폴더속의 파일을 선택해야 한다.)
☞ ' /root/Desktop/ipw3945-linux-1.1.0/ipw3945d-1.7.22/x86'디렉토리 속의 ipw3945d 파일을 오른쪽 마우스 복사하기를 클릭한다.
☞ ipw3945d 파일을 /sbin/디렉토리에 붙이기 한다.
⑨ '프로그램' → '보조 프로그램' → '터미널'을 실행하고 아래와 같이 입력한다.
[root@localhost ipw3945-1.2.0]# cd /lib/modules/2.6.18-1.2869.fc6/kernel/drivers/net/wireless --> 이더넷 커널로 이동한다음
[root@localhost wireless]# chmod 744 ipw3945.ko --> 권한을 변경한다.
[root@localhost wireless]# depmod -a
[root@localhost wireless]# modprobe ipw3945;ipw3945d
ipw3945d - regulatory daemon
Copyright (C) 2005-2006 Intel Corporation. All rights reserved.
version: 1.7.22
Intel PRO/Wireless 3945ABG Network Connection found at:
/sys/bus/pci/drivers/ipw3945/0000:03:00.0
Daemon launched as pid 3989. Exiting.
You have mail in /var/spool/mail/root
-->위의 내용이 나오면 아래와 같이
[root@localhost wireless]# system-config-network --> 네트워크 환경설정을 실행한다.
⑩ '네트워크 설정'에서 '하드웨어' 탭을 클릭하면 'Intel Corporation PRO/Wireless 3945ABG' 장치를 확인할 수 있다.
⑪ '장치' 탭을 클릭하면 아무런 내용도 확인할 수 없다. 여기서 '새로 만들기'를 클릭하면 '새로운 장치 타입 추가' 대화상자가 나타나고 '무선 연결'을 클릭한다.
⑪ '새로운 장치 타입 추가' 에서 'Intel Corporation PRO/Wireless 3945ABG Network Connection(eth0)'선택하고 앞으로를 클릭함
⑫ 대화창에서 다음과 같이 설정한다.
☞ 모드(M) : 자동
☞ 네트워크명(SSID) : 자동(A)
☞ 채널(C) : 사용자 설정으로 하는데 여기 설정이 아니라 무선 인터넷 공유기의 경우 공유기
에서 설정한 채널을 입력한다. 개인적으로 무선 인터넷 공유기 2∼3개 사용해 본
결과 보통 '6'으로 설정되어 있다.
☞ 송신율(T) : 자동
⑬ 다음 대화창에서 아래 그림과 같이 설정한다. 기본으로 아래와 같은 설정이지만 필요하면 변경한다.
⑭ 아래와 같이 설정내용이 나오고 적용을 클릭한다.
⑮ '네트워크 설정'에서 '장치'탭을 클릭하면 상태가 '비활성화'로 나타나게 된다. 오른쪽위의 도구 아이콘에서 '활성화'를 클릭하여 활성화 시킨다.
16. '활성화'가 되면 도구 아이콘에서 '편집' 아이콘을 클릭하여 '컴퓨터가 시작하면 장치를 활성화시킴(A)' 에 체크하고 확인을 클릭한다.
17. 여기가 끝이다 그러나 문제가 하나 있다. 다시 껐다가 켜면 다시 무선 인터넷이 작동이 안된다. 다시 정상으로 사용하기 위해서는 터미널을 열고 아래와 같이 입력해야 한다.
[root@localhost wireless]# modprobe ipw3945;ipw3945d
ipw3945d - regulatory daemon
Copyright (C) 2005-2006 Intel Corporation. All rights reserved.
version: 1.7.22
Intel PRO/Wireless 3945ABG Network Connection found at:
/sys/bus/pci/drivers/ipw3945/0000:03:00.0
Daemon launched as pid 3989. Exiting.
You have mail in /var/spool/mail/root
-->위의 내용이 나오면 아래와 같이
[root@localhost wireless]# system-config-network --> 네트워크 환경설정을 실행한 다음 ⑮번에 있는 설명처럼 실행하면 다시 활성화가 된다.
혹시 17번의 문제를 해결하실 수 있는 분은 아래 답변 부탁함