作者 主題: ◆RedHat安裝X-Mirco USB無線網卡【無痛手冊】  (閱讀 8031 次)

0 會員 與 1 訪客 正在閱讀本文。

afgn

  • 可愛的小學生
  • *
  • 文章數: 8
    • 檢視個人資料
    • http://www.afgn.idv.tw
◆RedHat安裝X-Mirco USB無線網卡【無痛手冊】         精皇科技 蘇介吾 92/12/26
----------------------------------------------------------------------------
                               http://www.delitek.com/non-cgi/usr/5/5_17.txt

■前言

  現在無線網路已經十分普及, 但是目前大多是在 Windows平台上支援較多, 像是坊間
的書籍或是廠商提供的驅動程式, 而對 Linux平台的支援較少 (也是有相關網站, 不過
大多是英文的, 比較麻煩) , 有鑑於此, 小弟特別製做這份簡易安裝手冊, 希望藉此能
夠讓無線網路能在台灣的 Linux玩家心中不再是遙不可及的解決方案, 也引起更多台灣
的廠商能夠重視Linux 的市場!

  小弟的 Linux功力不深, 只考過 RHCE 8.0而已, 有任何問題歡迎大家一起共同討論^^
 
Your Sincerely
Patrick Su  92/12/26  19:05p @ Taipei.
-
◢▄◣ 精皇科技有限公司 MIS 蘇介吾 Patrick
˙˙█ 北市復興南路二段318號2F (和平東路口)
◥˙◤ TEL:(02)8733-3636 免付費0800-588-880
▂██ 專營: 無線網路設備 / 滑鼠 / 藍芽耳機
▂█◤ 網站: http://www.delitek.com/

----------------------------------------------------------------------------

■感謝

  ZyDAS 益勤科技 (http://www.zydas.com.tw) 的工程師魏先生的技術指導.

  恆逸資訊教RHCE的張耀仁老師, 謝謝他教我RedHat的一些技術, 讓我學到很多東西^^

----------------------------------------------------------------------------

■廣告

  首先感謝您購買 '精皇科技' 代理的 X-Micro USB無線網卡, 花不到一千塊, 就可以
享受 802.11b (11Mbps) 的無線上網環境, 可以同時支援桌上型和筆記型的電腦, 只要
有 USB 1.0以上的插槽就可以使用, 相當便利. 而傳輸速率雖然沒有 802.11g (54Mbps)
那麼快, 但是連線距離則比 802.11g長 (理論值300公尺, 實際值 20公尺無遮蔽收訊效
果都相當理想, 信號還可以保持50%以上).

  本公司無線網路產品終身保固, USB 無線網卡一片只要 NT$ 990, PCMCIA無線網卡一
片只要 NT$ 720 ,還有無線路由器 (Wireless Router), 又稱無線寬頻分享器, 但比其
他廠牌的無線AP (Wireless Access Point) 還多了 4個port 10/100 Mbps 的 LAN port
, 也有 NAT和簡易防火牆的功能, 單買 Router 只要 NT$ 2,499.

  特別推出促銷價, 一套 (Router+USB) 只要 NT$ 2,999. 如果您有舊的NoteBook電腦
, 也可以搭配另一種組合 (Router+PCMCIA) 只要 NT$ 2,699. 當然, 如果您有今年新
買的筆記型電腦, 有搭配 Intel Centreno 的無線上網功能 (規格也是 802.11b), 那
就只要買 Router 即可.

----------------------------------------------------------------------------

■訂購方式

  1. 可以上網訂購, 免運費 http://www.delitek.com/xmas.html

  2. 或是 PCShopping 信用卡付費機制

     http://shopping.pchome.com.tw/wireless/detail.php?pid=WIR00003

     為考慮有些朋友喜歡用信用卡消費, 請您連到以上網站來消費 (刷卡不加價!)^^

     有任何問題, 歡迎來電洽詢 -->  精皇科技 (02)8733-3636 或 0800-588-880
 
   3. 只要購買本公司產品, 一律免費宅配到府, 終身保固, 且可享有 "終身付費申級
      至 802.11g+ 的無線產品" 的優惠, 看清楚喔, 不是 802.11g, 而是更新的技術
      108 Mbps 的 g+ !!

   4. 本產品 (802.11g+) 已經開始生產, 預計在明年 (2004)第一季上市, 敬請期待.

----------------------------------------------------------------------------

■本文


◆(0).準備
-----------

  這是Linux 安裝 USB無線網卡的教學, 因為各家使用的 Chip 不同, 所以本文件只適
用於 X-Mirco的 USB無線網卡 (晶片型號 : ZyDAS 1201). 如果您已經有別家的無線網
卡, 可能要參考其他文件, 或是寫信 or 打電話去問問解決方案.

  首先, 當然您要已經會安裝 Linux, 可以參考吳佳諺工作室的 RedHat安裝教學文件:

  RedHat 9.0 --> http://aasir.com/pdf/chinese_install.pdf
 
  Fedora Core 1 -->
  http://ftp.ncnu.edu.tw/Documentation/Linux/RedHat_Fedora_eBook/chapter0102.pdf

  請先確認您的 Linux版本, 通常建議安裝 RedHat 8.0以上的版本 (或 9.0), 小弟個
人建議如果您的 RedHat 還不熟的話, 或是電腦很爛的話, 不要急著裝最新的 Fedora,
因為相容性怪怪的, 我用過 AMD K6-2 和 Pentium 2的電腦來裝都會失敗 (跟本沒跑完
就出現錯誤訊息而結束), 但是在 Pentium 4的機器上則沒啥問題順利安裝完畢 :(

  裝完 Linux後, 建議切換在 Command Mode (文字列命令模式), 可以打 init 3或用
vi把 /etc/inittab裡面有個 5改成 3然後存檔離開再重開機. ( id:5:initdefault: )

  一開始要先用 RJ-45 以有線方式來連線, 才能把驅動程式下載到本機, 不然就要用
別台電腦來下載, 再存到 1.44的磁片上, 最後再 mount -t vfat /dev/fd0 , 感覺起
來比較麻煩, 只要能把驅動程式拷貝到 Linux本機為目的, 不管你用什麼方法都OK!


◆(1).檔案下載
---------------

  首先要下載相關檔案, 請連到 http://www.delitek.com/usb.tgz 去下載, 您可以在
文字模式下, 打 cd / 切換到根目錄下, 再打 wget http://www.delitek.com/usb.tgz
即可下載.

[root@redhat9 /]$ cd /
[root@redhat9 /usb]$ wget http://www.delitek.com/usb.tgz

--14:28:05--  http://www.delitek.com/usb.tgz
           => `usb.tgz'
Resolving www.delitek.com... done.
Connecting to www.delitek.com[61.30.43.18]:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 963,788 [application/x-tar]

100%[====================================>] 963,788      377.39K/s    ETA 00:00

14:28:07 (377.39 KB/s) - `usb.tgz' saved [963788/963788]


◆(2).解壓縮 usb.tgz
---------------------

  下載完畢之後, 請打 tar xzvf usb.tgz 將其解壓縮, 會自動建立一個目錄叫 /usb

usb/
usb/usbcore/
usb/usbcore/usbcore-2.4.10.tar.gz
usb/usbcore/usbcore-2.4.14.tar.gz
usb/usbcore/usbcore-2.4.15.tar.gz
usb/usbcore/usbcore-2.4.18.tar.gz
usb/usbcore/usbcore-2.4.1.tar.gz
usb/usbcore/usbcore-2.4.20.tar.gz
usb/usbcore/usbcore-2.4.21.tar.gz
usb/usbcore/usbcore-2.4.2.tar.gz
usb/usbcore/usbcore-2.4.5.tar.gz
usb/usbcore/usbcore-2.4.7.tar.gz
usb/zdsta-1.0.4/
usb/zdsta-1.0.4/add-ons/
usb/zdsta-1.0.4/add-ons/keygen/
usb/zdsta-1.0.4/add-ons/keygen/Makefile
usb/zdsta-1.0.4/add-ons/keygen/keygen.c
usb/zdsta-1.0.4/.cvsignore
usb/zdsta-1.0.4/CHANGES
usb/zdsta-1.0.4/COPYING
usb/zdsta-1.0.4/Configure
usb/zdsta-1.0.4/FAQ
usb/zdsta-1.0.4/LICENSE
usb/zdsta-1.0.4/Makefile
usb/zdsta-1.0.4/README
usb/zdsta-1.0.4/THANKS
usb/zdsta-1.0.4/TODO
usb/zdsta-1.0.4/config.in
usb/zdsta-1.0.4/doc/
usb/zdsta-1.0.4/doc/codingstd/
usb/zdsta-1.0.4/doc/codingstd/format.hfile
usb/zdsta-1.0.4/doc/codingstd/format.srcfile
usb/zdsta-1.0.4/doc/codingstd/format.srcfile.c
usb/zdsta-1.0.4/doc/codingstd/format.srcfile.html
usb/zdsta-1.0.4/doc/codingstd/linux.CodingStyle
usb/zdsta-1.0.4/doc/Makefile
usb/zdsta-1.0.4/doc/capturefrm.txt
usb/zdsta-1.0.4/doc/config.debug
usb/zdsta-1.0.4/doc/config.linux-wlan-ng
usb/zdsta-1.0.4/doc/releasepolicy.txt
usb/zdsta-1.0.4/doc/rh71notes
usb/zdsta-1.0.4/doc/impnotes/
usb/zdsta-1.0.4/doc/impnotes/l8s_uses.obj
usb/zdsta-1.0.4/doc/impnotes/structptr.obj
usb/zdsta-1.0.4/doc/prism2/
usb/zdsta-1.0.4/doc/prism2/ridlist-mib.html
usb/zdsta-1.0.4/doc/prism2/ridlist-mib.txt
usb/zdsta-1.0.4/doc/prism2/ridlist-rid.html
usb/zdsta-1.0.4/doc/prism2/ridlist-rid.txt
usb/zdsta-1.0.4/etc/
usb/zdsta-1.0.4/etc/pcmcia/
usb/zdsta-1.0.4/etc/pcmcia/Makefile
usb/zdsta-1.0.4/etc/pcmcia/wlan-ng
usb/zdsta-1.0.4/etc/pcmcia/wlan-ng.conf
usb/zdsta-1.0.4/etc/Makefile
usb/zdsta-1.0.4/etc/rc.wlan
usb/zdsta-1.0.4/etc/wlan.hotplug
usb/zdsta-1.0.4/etc/wlan/
usb/zdsta-1.0.4/etc/wlan/Makefile
usb/zdsta-1.0.4/etc/wlan/shared
usb/zdsta-1.0.4/etc/wlan/wlan.conf
usb/zdsta-1.0.4/etc/wlan/wlancfg-DEFAULT
usb/zdsta-1.0.4/man/
usb/zdsta-1.0.4/man/Makefile
usb/zdsta-1.0.4/man/nwepgen.man
usb/zdsta-1.0.4/man/wlancfg.man
usb/zdsta-1.0.4/man/wlanctl-ng.man
usb/zdsta-1.0.4/man/wland.man
usb/zdsta-1.0.4/scripts/
usb/zdsta-1.0.4/scripts/.cvsignore
usb/zdsta-1.0.4/scripts/Makefile
usb/zdsta-1.0.4/scripts/Makefile.get_options
usb/zdsta-1.0.4/scripts/get_version.c
usb/zdsta-1.0.4/scripts/pda.pl
usb/zdsta-1.0.4/scripts/get_version
usb/zdsta-1.0.4/scripts/make.opts
usb/zdsta-1.0.4/src/
usb/zdsta-1.0.4/src/include/
usb/zdsta-1.0.4/src/include/wlan/
usb/zdsta-1.0.4/src/include/wlan/.cvsignore
usb/zdsta-1.0.4/src/include/wlan/p80211conv.h
usb/zdsta-1.0.4/src/include/wlan/p80211hdr.h
usb/zdsta-1.0.4/src/include/wlan/p80211ioctl.h
usb/zdsta-1.0.4/src/include/wlan/p80211meta.h
usb/zdsta-1.0.4/src/include/wlan/p80211metamib.h
usb/zdsta-1.0.4/src/include/wlan/p80211metamsg.h
usb/zdsta-1.0.4/src/include/wlan/p80211mgmt.h
usb/zdsta-1.0.4/src/include/wlan/p80211msg.h
usb/zdsta-1.0.4/src/include/wlan/p80211netdev.h
usb/zdsta-1.0.4/src/include/wlan/p80211req.h
usb/zdsta-1.0.4/src/include/wlan/p80211types.h
usb/zdsta-1.0.4/src/include/wlan/wlan_compat.h
usb/zdsta-1.0.4/src/Makefile
usb/zdsta-1.0.4/src/README
usb/zdsta-1.0.4/src/mkmeta/
usb/zdsta-1.0.4/src/mkmeta/.cvsignore
usb/zdsta-1.0.4/src/mkmeta/Makefile
usb/zdsta-1.0.4/src/mkmeta/mkmetadef.c
usb/zdsta-1.0.4/src/mkmeta/mkmetadefhead.txt
usb/zdsta-1.0.4/src/mkmeta/mkmetastruct.c
usb/zdsta-1.0.4/src/mkmeta/mkmetastructhead.txt
usb/zdsta-1.0.4/src/nwepgen/
usb/zdsta-1.0.4/src/nwepgen/.cvsignore
usb/zdsta-1.0.4/src/nwepgen/Makefile
usb/zdsta-1.0.4/src/nwepgen/nwepgen.c
usb/zdsta-1.0.4/src/p80211/
usb/zdsta-1.0.4/src/p80211/.cvsignore
usb/zdsta-1.0.4/src/p80211/Makefile
usb/zdsta-1.0.4/src/p80211/p80211conv.c
usb/zdsta-1.0.4/src/p80211/p80211frm.c
usb/zdsta-1.0.4/src/p80211/p80211mod.c
usb/zdsta-1.0.4/src/p80211/p80211netdev.c
usb/zdsta-1.0.4/src/p80211/p80211req.c
usb/zdsta-1.0.4/src/p80211/p80211wep.c
usb/zdsta-1.0.4/src/p80211/p80211wext.c
usb/zdsta-1.0.4/src/prism2/
usb/zdsta-1.0.4/src/prism2/Makefile
usb/zdsta-1.0.4/src/prism2/driver/
usb/zdsta-1.0.4/src/prism2/driver/.cvsignore
usb/zdsta-1.0.4/src/prism2/driver/Makefile
usb/zdsta-1.0.4/src/prism2/driver/hfa384x.c
usb/zdsta-1.0.4/src/prism2/driver/hfa384x_usb.c
usb/zdsta-1.0.4/src/prism2/driver/prism2mgmt.c
usb/zdsta-1.0.4/src/prism2/driver/prism2mib.c
usb/zdsta-1.0.4/src/prism2/driver/prism2sta.c
usb/zdsta-1.0.4/src/prism2/include/
usb/zdsta-1.0.4/src/prism2/include/prism2/
usb/zdsta-1.0.4/src/prism2/include/prism2/hfa384x.h
usb/zdsta-1.0.4/src/prism2/include/prism2/prism2mgmt.h
usb/zdsta-1.0.4/src/prism2/include/prism2/ws01uph.h
usb/zdsta-1.0.4/src/prism2/ridlist/
usb/zdsta-1.0.4/src/prism2/ridlist/.cvsignore
usb/zdsta-1.0.4/src/prism2/ridlist/Makefile
usb/zdsta-1.0.4/src/prism2/ridlist/mkmiblist.c
usb/zdsta-1.0.4/src/prism2/ridlist/mkridlist.c
usb/zdsta-1.0.4/src/prism2/ridlist/ridlist.dat
usb/zdsta-1.0.4/src/shared/
usb/zdsta-1.0.4/src/shared/Makefile
usb/zdsta-1.0.4/src/shared/p80211meta.c
usb/zdsta-1.0.4/src/shared/p80211metamib.c
usb/zdsta-1.0.4/src/shared/p80211metamsg.c
usb/zdsta-1.0.4/src/shared/p80211types.c
usb/zdsta-1.0.4/src/skeleton/
usb/zdsta-1.0.4/src/skeleton/Makefile
usb/zdsta-1.0.4/src/skeleton/skeleton.c
usb/zdsta-1.0.4/src/wlancfg/
usb/zdsta-1.0.4/src/wlancfg/.cvsignore
usb/zdsta-1.0.4/src/wlancfg/Makefile
usb/zdsta-1.0.4/src/wlancfg/wlancfg.c
usb/zdsta-1.0.4/src/wlanctl/
usb/zdsta-1.0.4/src/wlanctl/.cvsignore
usb/zdsta-1.0.4/src/wlanctl/Makefile
usb/zdsta-1.0.4/src/wlanctl/help.c
usb/zdsta-1.0.4/src/wlanctl/wlanctl.c
usb/zdsta-1.0.4/src/wlanctl/wlanctl.h
usb/zdsta-1.0.4/src/wland/
usb/zdsta-1.0.4/src/wland/.cvsignore
usb/zdsta-1.0.4/src/wland/Makefile
usb/zdsta-1.0.4/src/wland/wland.c
usb/zdsta-1.0.4/config.out
usb/zydas1201.doc


◆(3).檢視目錄
---------------

  再打 cd /usb 切換到該目錄下

[root@redhat9 /]$ cd /usb
[root@redhat9 /usb]$ ll    <- 註: ll 是 Redhat 8.0以上才有的功能, 等於 ls -l
total 100
drwxr-xr-x    2 root     root         4096 Dec 26 14:26 usbcore
drwxr-xr-x    8 root     root         4096 Sep 12 12:29 zdsta-1.0.4
-rw-r--r--    1 root     root        86528 Dec 26 14:26 zydas1201.doc
[root@redhat9 /usb]$


◆(4).確定 Linux版本
---------------------

  請打 uname -a 查看

[root@redhat9 /usb]$ uname -a
Linux redhat9.delitek.com 2.4.20-8 #1 Thu Mar 13 17:54:28 EST 2003 i686 i686
i386 GNU/Linux

  拿筆記下你的 Linux kernel (核心) 版本是 2.4.20-8


◆(5).修補 Linux Kernel
------------------------

  確定你要更新的版本是 2.4.20-8, 對應到的壓縮檔是 usbcore-2.4.20.tar.gz


[root@mail /usb]$ cd /usb/usbcore/

[root@mail /usb/usbcore]$ ls
usbcore-2.4.1.tar.gz   usbcore-2.4.18.tar.gz  usbcore-2.4.5.tar.gz
usbcore-2.4.10.tar.gz  usbcore-2.4.2.tar.gz   usbcore-2.4.7.tar.gz
usbcore-2.4.14.tar.gz  usbcore-2.4.20.tar.gz
usbcore-2.4.15.tar.gz  usbcore-2.4.21.tar.gz

  解壓縮 usbcore-2.4.20.tar.gz

[root@mail /usb/usbcore]$ tar xzvf usbcore-2.4.20.tar.gz
usbcore-2.4.20/
usbcore-2.4.20/config.in
usbcore-2.4.20/Configure
usbcore-2.4.20/Makefile
usbcore-2.4.20/scripts/
usbcore-2.4.20/scripts/.cvsignore
usbcore-2.4.20/scripts/Makefile
usbcore-2.4.20/scripts/Makefile.get_options
usbcore-2.4.20/scripts/get_version.c
usbcore-2.4.20/scripts/pda.pl
usbcore-2.4.20/scripts/get_version
usbcore-2.4.20/scripts/make.opts
usbcore-2.4.20/usbcore/
usbcore-2.4.20/usbcore/Makefile
usbcore-2.4.20/usbcore/devices.c
usbcore-2.4.20/usbcore/devio.c
usbcore-2.4.20/usbcore/drivers.c
usbcore-2.4.20/usbcore/hub.c
usbcore-2.4.20/usbcore/hub.h
usbcore-2.4.20/usbcore/inode.c
usbcore-2.4.20/usbcore/usb.c
usbcore-2.4.20/usbcore/usb-debug.c
usbcore-2.4.20/usbcore/hcd.h
usbcore-2.4.20/config.out


[root@mail /usb/usbcore]$ cd usbcore-2.4.20

[root@mail /usb/usbcore/usbcore-2.4.20]$ ll
total 28
-rwxr-xr-x    1 root     root         4153 Jul 18 05:16 Configure
-rw-r--r--    1 root     root          628 Jul 18 05:16 Makefile
-rw-r--r--    1 root     root           29 Jul 18 05:16 config.in
-rw-r--r--    1 root     root          198 Nov 28 16:05 config.out
drwxr-xr-x    2 root     root         4096 Nov 28 16:05 scripts
drwxr-xr-x    2 root     root         4096 Nov 28 16:23 usbcore


  打 make config

=====================================================================
Linux source directory [/usr/src/linux-2.4]:      <- 直接按 ENTER

Linux source tree /usr/src/linux-2.4 is incomplete or missing!
    See the HOWTO for a list of FTP sites for current kernel sources.

Configuration failed

make: *** [config] Error 1
=====================================================================

  如果出現以上錯誤, 表示 Kernel 的 Source 沒裝, 請安裝以下兩個檔案:

  gcc-3.2.2-5.i386.rpm  和  kernel-source-2.4.20-8.i386.rpm

  請繼續步驟(6), 如果沒有出現錯誤, 請跳到步驟(7).


◆(6).補裝 gcc 和 kernel-source
--------------------------------

  光碟應該會掛吧 ^^ 放入 RedHat 9.0 的第二片光碟 [Disk 2]

  打 mount /mnt/cdrom

  再打 cd /mnt/cdrom/RedHat/RPMS/

  安裝 gcc

[root@redhat9 /mnt/cdrom/RedHat/RPMS]$ rpm -ivh gcc-3.2.2-5.i386.rpm
warning: gcc-3.2.2-5.i386.rpm: V3 DSA signature: NOKEY, key ID db42a60e
Preparing...                ########################################### [100%]
   1:gcc                    ########################################### [100%]

  安裝  kernel-source

[root@redhat9 /mnt/cdrom/RedHat/RPMS]$ rpm -ivh kernel-source-2.4.20-8
[root@redhat9 /RPMS]$ rpm -ivh kernel-source-2.4.20-8.i386.rpm
warning: kernel-source-2.4.20-8.i386.rpm: V3 DSA signature: NOKEY, key ID db42a6
Preparing...                ########################################### [100%]
   1:kernel-source          ########################################### [100%]


◆(7).產生 .config 這個隱藏檔
------------------------------

[root@redhat9 /mnt/cdrom/RedHat/RPMS]$ cd /usr/src/linux-2.4  <- 切換到Kernel
                                                                 的Source目錄
[root@redhat9 /usr/src/linux-2.4]$ ls
arch             Documentation  kernel       README
configs          drivers        lib          REPORTING-BUGS
COPYING          fs             MAINTAINERS  Rules.make
COPYING.modules  include        Makefile     scripts
CREDITS          init           mm           tmp_include_depends
crypto           ipc            net

[root@redhat9 /usr/src/linux-2.4]$ cd configs

[root@redhat9 /usr/src/linux-2.4/configs]$ ls
kernel-2.4.20-athlon.config      kernel-2.4.20-i586-smp.config
kernel-2.4.20-athlon-smp.config  kernel-2.4.20-i686-bigmem.config
kernel-2.4.20-i386-BOOT.config   kernel-2.4.20-i686.config
kernel-2.4.20-i386.config        kernel-2.4.20-i686-smp.config
kernel-2.4.20-i386-smp.config    kernel-2.4.20-x86_64.config
kernel-2.4.20-i586.config        kernel-2.4.20-x86_64-smp.config

  打 cp /usr/src/linux-2.4/configs/kernel-2.4.20-i686.config ../.config

  ◆注意! 記得要copy 的是 kernel-2.4.20-i686.config  這個檔, 拷貝到
  /usr/src/linux-2.4/.config 這個檔案裡. 當然, 如果你是雙CPU 就要用 smp
  那個檔, 或是 AMD Athlon 的cpu, 或是你打 uname -a 在查看 kernel 的版本
  時, 發現裝的不是 i686 那個版本的 Kernel, 那就要拷背別的檔案.


  打 cd /usb/usbcore/usbcore

  再重新安裝一次 kernel 的修補檔 (patch file).

  執行 make config

===============================================================
Linux source directory [/usr/src/linux-2.4]:   <- 按 ENTER 繼續

The current kernel build date is Thu Mar 13 17:54:28 2003.
  Module install directory [/lib/modules/2.4.20-8]:

Configuration successful.
===============================================================

  再打 make all

  最後再打 make install


◆(8).檢查 prism2_usb 模組有沒有掛上
-------------------------------------

  先打 lsmod 查看有沒有 prism2_usb 這個模組

==============================================================
[root@redhat9 /]$ lsmod
Module                  Size  Used by    Not tainted
nls_iso8859-1           3516   1  (autoclean)
ide-cd                 35708   1  (autoclean)
cdrom                  33728   0  (autoclean) [ide-cd]
udf                    98400   0  (autoclean)
parport_pc             19076   1  (autoclean)
lp                      8996   0  (autoclean)
parport                37056   1  (autoclean) [parport_pc lp]
autofs                 13268   0  (autoclean) (unused)
3c59x                  30704   0
p80211                 25612   1  [prism2_usb]
keybdev                 2944   0  (unused)
mousedev                5492   0  (unused)
hid                    22148   0  (unused)
input                   5856   0  [keybdev mousedev hid]
usb-uhci               26348   0  (unused)
usbcore                70304   1  [prism2_usb hid usb-uhci]
ext3                   70784   2
jbd                    51892   2  [ext3]
==============================================================

  再打 modprobe prism2_usb 讓系統抓到它, OK 之後再打一次 lsmod

==============================================================
prism2_usb            150496   1
==============================================================

  看... 不就有了嗎?


◆(9).安裝 zdsta
-----------------

[root@redhat9 /]$ cd /usb/zdsta-1.0.4/

[root@redhat9 /usb/zdsta-1.0.4]$ ls
add-ons  config.in   Configure  doc  FAQ      Makefile  README   src     TODO
CHANGES  config.out  COPYING    etc  LICENSE  man       scripts  THANKS


  一樣依序執行 make config

usb/zdsta-1.0.4[root@redhat9 /usb/zdsta-1.0.4]$ make config

-------------- Linux WLAN Configuration Script -------------
The default responses are correct for most users.
Build Prism2.5 USB (_usb) driver? (y/n) [y]:    <- 按 ENTER
Linux source directory [/usr/src/linux-2.4]:    <- 按 ENTER

The kernel source tree is version 2.4.20-8.
The current kernel build date is Thu Mar 13 17:54:28 2003.

  Module install directory [/lib/modules/2.4.20-8]:    <- 按 ENTER

It looks like you have a System V init file setup.

Prefix for build host compiler? (rarely needed) []:    <- 按 ENTER
Build for debugging (see doc/config.debug) (y/n) [n]:  <- 按 ENTER

Configuration successful.


  再執行 make all

[root@redhat9 /usb/zdsta-1.0.4]$ make all

  最後再執行 make install

[root@redhat9 /usb/zdsta-1.0.4]$ make install

[root@redhat9 /usb/zdsta-1.0.4]$ cd /


◆(10).新增無線網路設定檔 (wlan0)
----------------------------------

  打 ifconfig 查看有哪些網路設備啟用中, 目前只有 eth0 和 lo (loopback)

[root@redhat9 /]$ ifconfig
eth0      Link encap:Ethernet  HWaddr 00:B0:D0:48:7B:D1
          inet addr:192.168.1.102  Bcast:192.168.1.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:1209857 errors:0 dropped:0 overruns:0 frame:0
          TX packets:464099 errors:0 dropped:0 overruns:0 carrier:1
          collisions:0 txqueuelen:100
          RX bytes:1802142333 (1718.6 Mb)  TX bytes:32226565 (30.7 Mb)
          Interrupt:5 Base address:0xec80

lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:202 errors:0 dropped:0 overruns:0 frame:0
          TX packets:202 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:13303 (12.9 Kb)  TX bytes:13303 (12.9 Kb)


  切換到 /etc/sysconfig/network-scripts/ 目錄下

[root@redhat9 /]$ cd /etc/sysconfig/network-scripts/

etc/sysconfig/network-scripts[root@redhat9 /etc/sysconfig/ne
ifcfg-eth0      ifdown-isdn  ifup-aliases  ifup-plusb   ifup-wireless
ifcfg-lo        ifdown-post  ifup-ippp     ifup-post    init.ipv6-global
ifdown          ifdown-ppp   ifup-ipv6     ifup-ppp     network-functions
ifdown-aliases  ifdown-sit   ifup-ipx      ifup-routes  network-functions-ipv6
ifdown-ippp     ifdown-sl    ifup-isdn     ifup-sit
ifdown-ipv6     ifup         ifup-plip     ifup-sl

  打 cat 查看 ifcfg-eth0 的內容

[root@redhat9 /]$ cat ifcfg-eth0

=================
DEVICE=eth0
BOOTPROTO=dhcp     <- 目前 eth0 網路卡是用 dhcp (自動抓ip) 來啟用.
ONBOOT=yes
=================

  將 ifcfg-eth0 拷貝到 wlan0

[root@redhat9 /]$ cp ifcfg-eth0 wlan0

  用 vi 去編輯 wlan0

[root@redhat9 /]$ vi wlan0

=================
DEVICE=eth0       <- 只要把 DEVICE=eth0 改成 DEVICE=wlan0
BOOTPROTO=dhcp
ONBOOT=yes
=================

只要把 eth0 改成 wlan0 即可, 醬子 wlan0無線網卡也是用 dhcp的方式去自動取得ip


但若要指定ip位置, 請改成
=========================
DEVICE=wlan0
IPADDR=192.168.1.111     <- 192.168.1.111 是我手動指定的, 當然你可以依你的喜
NETMASK=255.255.255.0       好去做調整, 但預設值是 192.168.1.x 的網段 (由無
NETWORK=192.168.1.0         線路由器來指派, 但Gateway固定是 192.168.1.254,
BROADCAST=192.168.1.255     就是那台 Wireless Router 的ip位置, 您可以打開IE
ONBOOT=yes                  或 Mozilla 瀏覽器, 再輸入 http://192.168.1.254
GATEWAY=192.168.1.254       去修改設定.
=========================

  vi的操作很簡單, 就連續按兩下 d 可以消一行, 把全部消掉之後, 再按 i 新增, 在
Linux中大小寫有時有差別, 最好照著打, 然後按 :wq 存檔離開.
 

◆(11).修改 /etc/rc.local 檔
-----------------------------

  這是Linux 一開始就執行的自動批次檔 (等於M$的autoexec.bat或程式集裡面的
   "啟動" ) , 用 vi 去編輯.

[root@redhat9 /]$ vi /etc/rc.local

==================================================================
#!/bin/sh
#
# This script will be executed *after* all the other init scripts.
# You can put your own initialization stuff in here if you don't
# want to do the full Sys V style init stuff.

touch /var/lock/subsys/local
==================================================================

  加入以下兩行 (遊標移到最下面一行, 再按 o 新增)

wlanctl-ng wlan0 dot11req_mibset mibattribute=p2CnfPortType=1p2CnfPortTypemibatt
wlanctl-ng wlan0 lnxreq_autojoin ssid=X-Micro authtype=opensystemauthtype

  然後一樣按 :wq 存檔離開 (注意上面兩行一樣要小心大小寫打錯!)

  最後只要打 reboot 重開機即可.


◆(12).成果驗收
----------------

  重開機後, 以 root 登入, 打 ifconfig 查詢

[root@localhost ~]$ ifconfig

eth0      Link encap:Ethernet  HWaddr 00:B0:D0:48:7B:D1  
          inet addr:192.168.1.102  Bcast:192.168.1.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:3 errors:0 dropped:0 overruns:0 frame:0
          TX packets:2 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:100
          RX bytes:1240 (1.2 Kb)  TX bytes:684 (684.0 b)
          Interrupt:5 Base address:0xec80

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:12 errors:0 dropped:0 overruns:0 frame:0
          TX packets:12 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:900 (900.0 b)  TX bytes:900 (900.0 b)

wlan0     Link encap:Ethernet  HWaddr 00:02:72:04:5D:00  
          inet addr:192.168.1.111  Bcast:192.168.1.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:189 errors:0 dropped:0 overruns:0 frame:0
          TX packets:270 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:100
          RX bytes:19630 (19.1 Kb)  TX bytes:151543 (147.9 Kb)

  看吧, 抓到 wlan0 這個網路介面了!

  為了證明不是假的連上 internet (因為目前有兩張網卡在啟動, 所以關掉 eth0)
  , 請打 ifdown eth0

[root@localhost ~]$ ifdown eth0

  再打一次 ifconfig , 看看是否 eth0 確實停用了.

[root@localhost ~]$ifconfig
lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:12 errors:0 dropped:0 overruns:0 frame:0
          TX packets:12 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:900 (900.0 b)  TX bytes:900 (900.0 b)

wlan0     Link encap:Ethernet  HWaddr 00:02:72:04:5D:00  
          inet addr:192.168.1.111  Bcast:192.168.1.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:194 errors:0 dropped:0 overruns:0 frame:0
          TX packets:275 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:100
          RX bytes:19938 (19.4 Kb)  TX bytes:151891 (148.3 Kb)

  打 ping 168.95.1.1 看看吧, 看能不能 ping 到 Hinet 的主 DNS ip.

[root@localhost ~]$ ping 168.95.1.1
PING 168.95.1.1 (168.95.1.1) 56(84) bytes of data.
64 bytes from 168.95.1.1: icmp_seq=1 ttl=245 time=19.2 ms   <- Ya! 成功了.
64 bytes from 168.95.1.1: icmp_seq=2 ttl=245 time=18.2 ms

--- 168.95.1.1 ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1014ms
rtt min/avg/max/mdev = 18.262/18.745/19.229/0.502 ms


  最後打一下 iwconfig 來檢查一下無線網卡的資訊.

[root@localhost ~]$ iwconfig
lo        no wireless extensions.

wlan0     IEEE 802.11-b  ESSID:"X-Micro"  Nickname:"X-Micro"
          Mode:Managed  Frequency:2.462GHz  Access Point: 00:02:72:04:86:DF  
          Tx-Power:2500 dBm  
          Retry min limit:7   RTS thr=2500 B   Fragment thr=2500 B  
          Encryption key:off
          Link Quality:199/92  Signal level:-84 dBm  Noise level:-66 dBm
          Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0
          Tx excessive retries:0  Invalid misc:0   Missed beacon:0

eth0      no wireless extensions.

----------------------------------------------------------------------------


■備註:

1. 官方安裝教學文件
--------------------

  請用 Word 或 OpenOffice 來開啟 /usb/zydas1201.doc 這份文件.

  (感謝原廠 ZyDAS "益勤科技" 03-577-3309 提供).


2. 無線網路安全設定(WEP)
-------------------------

  沒設密碼的無線網路是很危險的, 很容易被別人盜連, 建議設定 WEP密碼 or 在無線
路由器上設定某些網卡的 MAC Address才能連線 (請用 IE 或 Mozilla 連到
http://192.168.1.254) 找到 Wireless 裡面的 Access Control 選項, 將你的 MAC
Address 加入即可.

至於詳細的設定, 請參考以下說明:

  a. 設定 WEP 密碼, 把以下兩行加入 /etc/rc.local 中

wlanctl-ng wlan0 dot11req_mibset mibattribute=dot11WEPDefaultKeyID=0
wlanctl-ng wlan0 dot11req_mibset mibattribute=dot11ExcludeUnencrypted=true
wlanctl-ng wlan0 dot11req_mibset mibattribute=dot11PrivacyInvoked=true
wlanctl-ng wlan0 dot11req_mibset mibattribute=dot11WEPDefaultKey0=12:34:56:78:90

  註: WEPDefaultKeyID=0 , 這個值有 0-3 四組可以選擇, 通常只要設第一組 0

      WEPDefaultKey0=12:34:56:78:90  <- 這個是第一組的64 bit加密, 長度要剛好
                                        為10碼, 是16進位的字元(0-9,a-f).
                                        如果要更安全, 就用128 bit加密, 則長度
                                        變成 26碼!! 記得密碼一定要等長才行喔!

      當然你高興的話, 也可以四組密碼都設 (WEPDefaultKey0~WEPDefaultKey3).
      只要記得修改組別時, 要把 DefaultKeyID=0 改成別的數字 (0-3).

  b. 網卡的 MAC Address 如何查看? 在 Linux 請打 ifconfig 即可查看.
     如果是 M$ 的 Windows 平台, 一樣在 MS-DOS模式 or 命令提示字元打
     ipconfig /all |more 即可.


3.偵測工具  (感謝 ZyDAS原廠的魏先生提供!)
-----------

寄件者: Yuan-Gu Wei [ygwei@zydas.com.tw]
寄件日期: 2003年12月26日星期五上午11:22
收件者: Delitek - Patrick Su
主旨: Simple Scripts file of ZD1201 STA

  蘇先生您好, 我將我之前寫的兩個簡單的 script file寄給您, 分別是setup.sh以及
scan.sh , 這兩個檔案的目的是有所不同的, 第一個檔案(setup.sh)是設定如何去連上
一台AP (Access Point),  由於這一個script file 只是我自己在測試 driver 時使用
, 因此相當的陽春, 您需要將它改成您自己想要的設定, 主要改的部份為

  /sbin/wlanctl-ng wlan0 dot11req_mibset mibattribute=p2CnfPortType=1
  /sbin/wlanctl-ng wlan0 lnxreq_autojoin ssid=X-Micro authtype=sharedkey

  p2CnfPortType 目前有 0,1,2 三種, 0為 Ad-hoc, 1為 Infratructure, 2為 Auto.
而lnxreq_autojoin 要改的部份則為那個 ssid 的部份. 如果是在 sharedkey的情況下
, 您可能就要修改掉您的 WEP Key index 以及 Key 的設定了. 此外, 那個 scan.sh是
讓您作 site survey使用的, 它是讓您可以方便的找出目前的環境可以搜尋到哪些AP是
存在的. 並且show出這些AP的設定.

  如果有問題的話, 歡迎再來信討論.

◆scan.sh
============================================================================
#!/bin/sh
/sbin/wlanctl-ng wlan0 dot11req_scan bsstype=any bssid=00:00:00:00:00:00 \
scantype=both probedelay=0 channellist="01:02:03:04:05:06:07:08:09:0a:0b:0c:0d:00" \
minchanneltime=200 maxchanneltime=1000 ssid="X-Micro"
/sbin/wlanctl-ng wlan0 dot11req_mibget mibattribute=p2CommunicationScanresult
============================================================================

◆setup.sh
============================================================================
#!/bin/sh

if [ $1 = "opensystem" ]; then

/sbin/wlanctl-ng wlan0 dot11req_mibset mibattribute=dot11ExcludeUnencrypted=false
/sbin/wlanctl-ng wlan0 dot11req_mibset mibattribute=dot11PrivacyInvoked=false
/sbin/wlanctl-ng wlan0 dot11req_mibset mibattribute=p2CnfPortType=1
/sbin/wlanctl-ng wlan0 lnxreq_autojoin ssid=X-Micro authtype=opensystem

else

/sbin/wlanctl-ng wlan0 dot11req_mibset mibattribute=dot11WEPDefaultKeyID=0
/sbin/wlanctl-ng wlan0 dot11req_mibset mibattribute=dot11ExcludeUnencrypted=true
/sbin/wlanctl-ng wlan0 dot11req_mibset mibattribute=dot11PrivacyInvoked=true
/sbin/wlanctl-ng wlan0 dot11req_mibset mibattribute=dot11WEPDefaultKey0=12:34:56:78:90
/sbin/wlanctl-ng wlan0 dot11req_mibset mibattribute=p2CnfPortType=1
/sbin/wlanctl-ng wlan0 lnxreq_autojoin ssid=X-Micro authtype=sharedkey

fi
============================================================================


4.其他參考資料
---------------

  這個網站也有很多無線網路的文件 http://www.linux-wlan.com

  若您是 PCMCIA 的, 請參考這個網站 http://pcmcia-cs.sourceforge.net

----------------------------------------------------------------------------
(End)

最後這是我們公司 (精皇科技) 的無線網路討論區, 歡迎參觀!!

http://www.delitek.com

-
◢▄◣ 蘇介吾 (Patrick Su) 1971 / 家住台北景美
˙˙█ RHCE 8.0 (RedHat Certified Engineer)
◥˙◤ E-mail : afgn@mars.seed.net.tw
▂██ 手機: 0922-714208 MSN: afgn@msn.com
▂█◤ ICQ: 2095303 橋藝論壇: www.afgn.idv.tw

ychao

  • 懷疑的國中生
  • **
  • 文章數: 42
    • 檢視個人資料
◆RedHat安裝X-Mirco USB無線網卡【無痛手冊】
« 回覆 #1 於: 2004-02-04 17:42 »
這個用的是wlan_ng的驅動程式,所以只要是使用prism2晶片的網卡的都可以使用。除了usb的部份外,pcmcia卡也是適用的。