【GPL】DIR-457U


在幫忙物色3G Router 剛好看到一款 ,剛好看到廠商有提供 Open source 所以先參考一下。
不過我目前還沒有機器測試。

【環境】

  • Ubuntu 9.10

【下載】

  1. 到此處選擇 DIR-457U 下載 http://tsd.dlink.com.tw/downloads2008.asp
  2. 選擇好產品後按 Go
    image
  3. 下載 GPL:DIR-457U_A1_for F/W:v1.01 這個。 
    image

【編譯】

  1. 以一般使用者登入
  2. 解開 tarball,例如
    $ tar zxvf DIR-457U_A1_FW_v1.01_GPL_20100128.tgz
  3. 請直接參閱 DIR-457U.GPL.readme.txt,按照上面步驟進行。
  4. 但最後make的時候會出現停在編譯 Kernel 的地方。
    image
  5. 承上,發現 kernel 目錄會發現沒有 .config 檔,多加了下面的命令
    $ cp boards/wrgg27/kernel.config kernel/.config
  6. 再跑一次 make。
  7. 最後 image 目錄會多一個檔案(ex. dir457u_v1.01_a3hh.bin, 3.1M )。不確定這個是不是就是用來upgrade的 image,還需和官方的release image 大小比對,才可自行 upgrade。

【結構】

研究一下檔案放置的方式。都是以 source code 最上層路徑當主要路徑。

  1. Image相關
    1. rootfs: root file system
    2. kernel.img(723k)
    3. rootfs.img(2.3M)
    4. image/dir457u_v1.01_a3hh.bin(3.1M): 這三個應該是build 出來的 firmware
  2. 應用程式相關
    1. progs.board/board 一些設定檔
      1. apps/atcmd: 猜是 at command 相關的程式。
      2. apps/modules: 猜是 Broadcom wireless driver。
      3. templates: wps/wifi 相關的 script?
      4. scripts: 也是一些 script,這邊會發現他有的 script 是用 php 寫的。
    2. progs.brand
      1. www: 這應該是網頁的code吧。
      2. dir457u/www: 這邊也有一個 www。不知和上面那個有什差別。
    3. progs.gpl 一些 gpl 的 code
      1. iproute2
      2. busybox 1.00
      3. Mathopd: Web server
      4. telnetd
      5. wireless_tools
      6. pppd.alpha
      7. dnrd
      8. libgsasl: 這東西我不知道是甚麼
    4. progs.priv 廠商自己寫的 code
      1. alpha_3gtool
      2. xmldb
      3. dyndns
      4. wpstools
      5. upnpkits
      6. alpha_xgi: 這東西我不知道是甚麼
    5. progs.template
      1. busybox-1.00.config
  3. Linux 相關
    1. kernel: v2.4.20
  4. 其他相關工具
    1. tools
      1. squashfs-tools: 應該是squashfs用的吧。
  5. 還未歸類
    1. ftpget
    2. tftp
    3. nvram
    4. diagnostic
    5. neaps ?
    6. rgbin ?
    7. mfc ?

【問題】

  1. 再編譯那邊的#5,不知是否正確,還需再研究。
  2. 還要研究 php 怎放進去的。

【參考】

  1. SQUASHFS-Linux壓縮型檔案系統的王者 http://daydreamer.idv.tw/rewrite.php/read-28.html
 

Ed32. Copyright 2008 All Rights Reserved Revolution Two Church theme by Brian Gardner Converted into Blogger Template by Bloganol dot com