OpenWGT: Difference between revisions
mNo edit summary |
|||
(7 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
= Introduction = |
= Introduction = |
||
What is OpenWGT? OpenWGT is a Linux distribution designed to run on Netgear's WGT634U ''Wireless Media Routers''. |
What is [http://openwgt.informatik.hu-berlin.de/ OpenWGT]? OpenWGT is a Linux distribution designed to run on Netgear's WGT634U ''Wireless Media Routers''. |
||
OpenWGT intents to be compatible to OpenWRT (a distribution for the Linksys WRT54G(S) broadband router). |
OpenWGT intents to be compatible to [http://openwrt.org/ OpenWRT] (a distribution for the Linksys WRT54G(S) broadband router). |
||
This OpenWRT compatibility will be reached |
This OpenWRT compatibility will be reached through compatibility in: |
||
* Init process layout |
* Init process layout |
||
Line 11: | Line 11: | ||
= Advantages = |
== Advantages == |
||
Why don't use the distributed Linux system? |
Why don't use the distributed Linux system? |
||
Line 19: | Line 19: | ||
= Overview = |
== Overview == |
||
OpenWGT consists of two parts: |
OpenWGT consists of two parts: |
||
# Linux kernel (2.4 or 2.6) |
# Linux kernel (2.4 or 2.6) |
||
Line 31: | Line 31: | ||
There are 2 possibilities to install the OpenWGT Linux distribution: |
There are 2 possibilities to install the OpenWGT Linux distribution: |
||
# use an OpenWGT firmware image |
|||
# self-compile from sources (using the standarized development environment - WRTSDE) |
# self-compile from sources (using the standarized development environment - WRTSDE) |
||
# use the OpenWGT web installer (alpha stadium) - You will need an online connection during the whole installation process! |
|||
== Install OpenWGT via Netgear's web-frontend == |
|||
See http://openwgt.informatik.hu-berlin.de/installation.php for details. |
|||
== Compiling OpenWGT from sources == |
== Compiling OpenWGT from sources == |
||
First of all you need a Linux/UNIX machine with development tools (compilers, etc.) - |
|||
'''NOTE:''' Instead of compile OpenWGT for your own or using the web-installer, you can download the binaries we are using for our Netgear routers. |
|||
at least a working subversion tool and debootstrap to create a working set of tools |
|||
You can get it from: http://sar.informatik.hu-berlin.de/research/roofnet/openwgt/binary/ |
|||
See below how to install the binaries. |
|||
=== Get scripts === |
|||
For self-compilation you will need: |
|||
We published some script to simplify the creating of a toolchain. |
|||
# a toolchain for cross-compiling, since the Netgear WGT634U contains a Mipsel CPU. |
|||
Get a copy from the SAR subversion repository: |
|||
# the SAR OpenWGT sources (these are an old snapshot from the OpenWRT project) |
|||
# sources of the Linux kernel from netgear |
|||
svn co svn://sarsvn.informatik.hu-berlin.de/openwgt-dev |
|||
'''Note''': if your system have all necessary development tools (gcc, zlib, java, wget, ...) installed, you can skip the following section. |
|||
== OpenWGT web-installer == |
|||
We provide a web-installer to install then OpenWGT distribution, but note that the installer is under construction yet (alpha stadium). |
|||
=== Build a toolchain with debootstrap === |
|||
# To use it for installing OpenWGT you first need a backup image for infecting the original Netgear firmware with the SAR-installer. You can get the file from http://sar.informatik.hu-berlin.de/research/roofnet/openwgt/netgear-sar-openwgt-installer.cfg. |
|||
* To create the toolchain, you will need debootstrap for it. Debian users run: |
|||
# Login to your router's web-frontend (default at 192.168.1.1). |
|||
apt-get install debootstrap |
|||
# Select ''Backup Settings''. |
|||
# Enter the location of the downloaded file at ''Restore Saved Setting from a File''. |
|||
# Click ''Restore'' to commit the changes. |
|||
# After reboot, connect the Netgear router with you Internet connection (You need to config) |
|||
* You will find a script called '''create-image.sh''' in the fetched openwgt-dev directory. Execute it as root to create a minimal image for user-mode-linux or Xen - if you don't want to use them you can also loop-mount that image locally to use this working set. |
|||
web-installer TODO list: |
|||
* split the installer script (to show intermediate results) |
|||
* The image path is '''/home/uml/ODK-rootfs.img''' |
|||
* The '''startuml.sh''' script (in the openwgt-dev directory) presents, how to run an UML system, using the created image. (Debian supports UML only in unstable tree yet) |
|||
* The passwords for ''root'' und the ''user'' account are blank. |
|||
⚫ | |||
* If you are using the UML option, copy the ''openwgt-dev'' directory to the image (via loop-mount) or check out another copy from sarsvn inside the UML system. |
|||
* Now it's time to build an OpenWGT image on your own: (You will need an Internet connection for this) |
|||
cd openwgt-dev/buildroot |
|||
make |
|||
* If nothing went wrong, you should find an image - called '''openwgt-0.06a.img''' - in the buildroot directory. |
|||
Line 67: | Line 78: | ||
* boot via network (TFTP/NFS) |
* boot via network (TFTP/NFS) |
||
⚫ | |||
= Feature list = |
|||
Feel free to add things you like to have with OpenWGT. |
|||
=== Implemented === |
|||
* boot rootfs from USB devices |
|||
* ipkg |
|||
* working madwifi for linux 2.4 |
|||
=== Necessary things for kernel 2.6 === |
|||
* NVRAM support |
|||
* rootfs from USB (does it fit into kernel partition?) |
|||
* ramdisk mode |
|||
* particular compressed kernel image (Netgear's default settings don't allow fully compressed ones) |
|||
=== TODO === |
|||
=== Setting up a netboot environment === |
|||
* ipkg packages for kernel modules: NFS, SMB, USB-2-serial(for gpsd), ... |
|||
* pppoecd for DSL dialup (see http://openwgt.informatik.hu-berlin.de/installation.php#pppoe) |
|||
* FLASH partition layout |
|||
* read network device configuration completly from NVRAM |
Latest revision as of 19:21, 15 December 2005
Introduction
What is OpenWGT? OpenWGT is a Linux distribution designed to run on Netgear's WGT634U Wireless Media Routers. OpenWGT intents to be compatible to OpenWRT (a distribution for the Linksys WRT54G(S) broadband router).
This OpenWRT compatibility will be reached through compatibility in:
- Init process layout
- NVRAM layout
- ipkg management
- flash partition layout
Advantages
Why don't use the distributed Linux system?
- booting needs lots of time (> 2 minutes)
- it's hard to install own programs
- bad fallback strategy (if modifications fail)
Overview
OpenWGT consists of two parts:
- Linux kernel (2.4 or 2.6)
- Root file system
Installation
WARNING: The installation of OpenWGT is heavily under construction. So we recommend to continue the following steps only if you have a serial console for your Netgear WGT634U.
There are 2 possibilities to install the OpenWGT Linux distribution:
- use an OpenWGT firmware image
- self-compile from sources (using the standarized development environment - WRTSDE)
Install OpenWGT via Netgear's web-frontend
See http://openwgt.informatik.hu-berlin.de/installation.php for details.
Compiling OpenWGT from sources
First of all you need a Linux/UNIX machine with development tools (compilers, etc.) - at least a working subversion tool and debootstrap to create a working set of tools
Get scripts
We published some script to simplify the creating of a toolchain. Get a copy from the SAR subversion repository:
svn co svn://sarsvn.informatik.hu-berlin.de/openwgt-dev
Note: if your system have all necessary development tools (gcc, zlib, java, wget, ...) installed, you can skip the following section.
Build a toolchain with debootstrap
- To create the toolchain, you will need debootstrap for it. Debian users run:
apt-get install debootstrap
- You will find a script called create-image.sh in the fetched openwgt-dev directory. Execute it as root to create a minimal image for user-mode-linux or Xen - if you don't want to use them you can also loop-mount that image locally to use this working set.
- The image path is /home/uml/ODK-rootfs.img
- The startuml.sh script (in the openwgt-dev directory) presents, how to run an UML system, using the created image. (Debian supports UML only in unstable tree yet)
- The passwords for root und the user account are blank.
Build an OpenWGT image
- If you are using the UML option, copy the openwgt-dev directory to the image (via loop-mount) or check out another copy from sarsvn inside the UML system.
- Now it's time to build an OpenWGT image on your own: (You will need an Internet connection for this)
cd openwgt-dev/buildroot make
- If nothing went wrong, you should find an image - called openwgt-0.06a.img - in the buildroot directory.
Booting OpenWGT
TODO: Description of:
- boot from flash
- boot via network (TFTP/NFS)
Feature list
Feel free to add things you like to have with OpenWGT.
Implemented
- boot rootfs from USB devices
- ipkg
- working madwifi for linux 2.4
Necessary things for kernel 2.6
- NVRAM support
- rootfs from USB (does it fit into kernel partition?)
- ramdisk mode
- particular compressed kernel image (Netgear's default settings don't allow fully compressed ones)
TODO
- ipkg packages for kernel modules: NFS, SMB, USB-2-serial(for gpsd), ...
- pppoecd for DSL dialup (see http://openwgt.informatik.hu-berlin.de/installation.php#pppoe)
- FLASH partition layout
- read network device configuration completly from NVRAM