WRAP: Unterschied zwischen den Versionen
→Meshnode: cat |
|||
| (9 dazwischenliegende Versionen von 3 Benutzern werden nicht angezeigt) | |||
| Zeile 1: | Zeile 1: | ||
x86 Wireless Router Application Platform Boards, siehe http://www.pcengines.ch/wrap.htm |
x86 Wireless Router Application Platform Boards, siehe http://www.pcengines.ch/wrap.htm |
||
== |
== Überblick == |
||
=== Hardware === |
|||
Es existieren verschiedene Versionen. Wir setzen vor allem das WRAP 2e ein: |
Es existieren verschiedene Versionen. Wir setzen vor allem das WRAP 2e ein: |
||
| Zeile 11: | Zeile 12: | ||
* Serieller Anschluss (Console) |
* Serieller Anschluss (Console) |
||
WRAP-Gehäuse: [[Bauanleitungen#Umbau_WRAP_Box_N-Buchse]] (preiswert) od. [[Meshnode]] (professionell) |
|||
== OpenWrt == |
=== OpenWrt === |
||
Auf diesem x86-basiertem Board läuft neben zahlreichen Debian/GNU-Linux Deviraten auch OpenWrt Kamikaze, dem aktuellen Entwicklungszweig von http://openwrt.org. |
Auf diesem x86-basiertem Board läuft neben zahlreichen Debian/GNU-Linux Deviraten auch OpenWrt Kamikaze, dem aktuellen Entwicklungszweig von http://openwrt.org. |
||
| ⚫ | |||
Hier eine aktuellere, mittlerweise stark angepasste Version von OpenWrt (r7275): |
|||
| ⚫ | |||
* da es einige Probleme mit nicht reagierenden WRAPs gab, wurde im aktuellen Image der hardware-watchdog aktiviert. |
* da es einige Probleme mit nicht reagierenden WRAPs gab, wurde im aktuellen Image der hardware-watchdog aktiviert. |
||
* die Systemzeit wird nun opennet-spezifisch mit unseren Gateways synchronisiert, reboots werden im Start-Banner vermerkt so dass watchdog-reboots nachvollzogen werden können. |
* die Systemzeit wird nun opennet-spezifisch mit unseren Gateways synchronisiert, reboots werden im Start-Banner vermerkt so dass watchdog-reboots nachvollzogen werden können. |
||
* als default ssh-deamon läuft nun openssh auf Port 22, dropbear läuft auf Port 10022, in der Hoffnung, dass bei auftretenden Problemen wenigstens einer erreichbar bleibt. |
* als default ssh-deamon läuft nun openssh auf Port 22, dropbear läuft auf Port 10022, in der Hoffnung, dass bei auftretenden Problemen wenigstens einer erreichbar bleibt. |
||
aktuelle WRAP-Systeme im Opennet haben 4 ext2fs Partitionen, zwei boot- (hda1 / hda3, je 4MB) und zwei root- (hda2 / hda4, je 16MB) Partitionen. Dies erlaubt ein remote update im laufenden Betrieb, indem die jeweils anderen Partitionen mit dem neuen System überschrieben werden. Die folgenden scripte setzen entsprechend konfigurierte Partitionen voraus. |
|||
* die images (boot und system) sind nun zweifach auf den CF-Karten vorhanden. /dev/hda1 und /dev/hda3 sind boot, /dev/hda2 und /dev/hda4 sind system images. standardmässig aktiv ist boot-partition /dev/hda1 und system partition /dev/hda2, ein Wechsel auf die spare-Partitionen ermöglicht das überschreiben der Arbeitspartitionen - ein remote-flash ist damit recht einfach ([http://www.opennet-initiative.de/firmware/kamikaze/kamikaze-x86-rene/r7275/double_image.patch Double-Image Patch]). Zusätzliche scripte: |
|||
** sync_spare_partition_config: Synchronisiert Netzwerkeinstellungen, Passwort und host-keys vom Ersatz-System mit dem Arbeitssystem (oder umgekehrt, Quelle ist jeweils das aktuell aktive System) |
** sync_spare_partition_config: Synchronisiert Netzwerkeinstellungen, Passwort und host-keys vom Ersatz-System mit dem Arbeitssystem (oder umgekehrt, Quelle ist jeweils das aktuell aktive System) |
||
** grub-install-wrap: schreibt den Boot-Loader neu, Parameter erlauben die Auswahl zwischen normaler oder zusätzlicher Boot-Partition. |
** grub-install-wrap: schreibt den Boot-Loader neu, Parameter erlauben die Auswahl zwischen normaler oder zusätzlicher Boot-Partition. |
||
** grub-switch-active-system: Wechselt das aktuelle System (vom Arbeitssystem zum Ersatzsystem oder zurück). Nach dem Aufruf muss der WRAP neu gestartet werden. |
** grub-switch-active-system: Wechselt das aktuelle System (vom Arbeitssystem zum Ersatzsystem oder zurück). Nach dem Aufruf muss der WRAP neu gestartet werden. |
||
** install_new_system: erwartet ein neues kernel (boot) und ein neues filessystem Image in /tmp und installiert dieses auf den unbenutzten Partitionen. |
|||
** '''WICHTIG:''' bei einem reboot kann das filesystem beschädigt werden. erst syncen/unmounten oder ein [http://www.opennet-initiative.de/firmware/kamikaze/kamikaze-x86-rene/r7275/reboot_safe entsprechendes script] nutzen. |
|||
** clean_restart_log: Startzeiten werden beim login angezeigt. Mit diesem Script werden aufgezeichnete Startzeiten aus dem log entfernt. |
|||
** reboot: ein script ersetzt den vorhandenen reboot-Befehl und sync't die Partition vor einem Neustart |
|||
== Downloads == |
|||
=== Download vorcompiliertes Image === |
|||
* http://www.opennet-initiative.de/firmware/kamikaze/kamikaze-x86-rene/ |
* [http://www.opennet-initiative.de/firmware/kamikaze/kamikaze-x86-rene/7.07/bin/openwrt-x86-2.6-ext2.image gesamtes Image], enthält die boot und die root Partition. Nach der Installation müssen mit fdisk zwei weitere Partitionen angelegt werden, sonst ist ein remote-update oder ein Wechsel zum backup-system nicht möglich. |
||
* [http://www.opennet-initiative.de/firmware/kamikaze/kamikaze-x86-rene/7.07/bin/openwrt-x86-2.6-ext2.image.kernel boot-] [http://www.opennet-initiative.de/firmware/kamikaze/kamikaze-x86-rene/7.07/bin/openwrt-x86-2.6-ext2.fs root-] Image für die Installation mit dem 'install_new_system'-script |
|||
* weitere Downloads unter http://www.opennet-initiative.de/firmware/kamikaze/kamikaze-x86-rene/7.07/ |
|||
=== Aktualisierung eines bestehenden Systems === |
|||
| ⚫ | |||
* (Partitionen /dev/hda3 mit >=4MB und /dev/hda4 mit >=16MB erstellen, wenn nicht vorhanden) |
|||
| ⚫ | |||
* |
* [http://www.opennet-initiative.de/firmware/kamikaze/kamikaze-x86-rene/7.07/bin/openwrt-x86-2.6-ext2.image.kernel boot-Image] auf den WRAP in /tmp laden |
||
* |
* [http://www.opennet-initiative.de/firmware/kamikaze/kamikaze-x86-rene/7.07/bin/openwrt-x86-2.6-ext2.fs root-Image] auf den WRAP in /tmp laden |
||
* install_new_system aufrufen |
|||
| ⚫ | * [http://www.opennet-initiative.de/firmware/kamikaze/kamikaze-x86-rene/ |
||
** wenn das script noch nicht vorhanden ist, [http://www.opennet-initiative.de/firmware/kamikaze/kamikaze-x86-rene/7.07/install_new_system install_new_system] herunterladen und nach /usr/sbin kopieren. |
|||
* Ausgabe des scripts vor einem Neustart prüfen. Wenn Fehler aufgetreten sind und grub dennoch ausgeführt wurde, kann es sein das nach einem reboot ein nicht funktionierendes System gestartet werden soll. |
|||
* WRAP neu starten |
|||
=== Erstinstallation eines WRAP === |
|||
| ⚫ | * [http://www.opennet-initiative.de/firmware/kamikaze/kamikaze-x86-rene/7.07/bin/openwrt-x86-2.6-ext2.image gesamtes Image] herunterladen und z.B. mit ''dd if=openwrt-x86-2.6-ext2.image of=<ziel-device> bs=512k'' -- Festplattenimage auf die CompactFlash-Karte schreiben (am besten über einen Cardreader, <ziel-device> ist der Cardreader-Devicenode) |
||
* (Karte einbauen, WRAP starten) |
|||
| ⚫ | |||
* mit fdisk zwei neue Partitionen (hda3 4MB, hda4 16MB) anlegen |
|||
* (am besten gleich parallel ein weiteres System installieren, ist sinnvoll als Backup-Lösung und für spätere remote-updates. Genau wie bei [[WRAP#Aktualisierung eines bestehenden Systems]] beschrieben vorgehen) |
|||
| ⚫ | |||
| ⚫ | |||
* Anpassungen (http://www.opennet-initiative.de/firmware/kamikaze/kamikaze-x86-rene/7.07/files.tgz) herunterladen und im ImageBuider-Verzeichnis entpacken. |
|||
| ⚫ | |||
* Image compilieren, dabei darauf achten, dass alle notwendigen Pakete gefunden werden. (Als Paketquelle ist neben http://downloads.openwrt.org/snapshots/x86-2.6/packages/ auch http://downloads.x-wrt.org/xwrt/kamikaze/x86-2.6/packages/ gut geeignet) - [http://www.opennet-initiative.de/firmware/kamikaze/kamikaze-x86-rene/r7275/make_it.sh hier] gibts das folgende als script. |
* Image compilieren, dabei darauf achten, dass alle notwendigen Pakete gefunden werden. (Als Paketquelle ist neben http://downloads.openwrt.org/snapshots/x86-2.6/packages/ auch http://downloads.x-wrt.org/xwrt/kamikaze/x86-2.6/packages/ gut geeignet) - [http://www.opennet-initiative.de/firmware/kamikaze/kamikaze-x86-rene/r7275/make_it.sh hier] gibts das folgende als script. |
||
make image PACKAGES="haserl ip kmod-madwifi kmod-natsemi libopenssl libpthread ntpclient olsrd |
make image PACKAGES="haserl ip kmod-madwifi kmod-natsemi libopenssl libpthread ntpclient olsrd olsrd-mod-httpinfo |
||
olsrd-mod-nameservice openssl-util webif webif-lang-de webif-theme-xwrt webif-theme-zephyr wireless-tools zlib |
|||
tcpdump iptables-mod-extra kmod-ipt-extra kmod-scx200-wdt kmod-scx200-gpio kmod-nsc-gpio openssh-server e2fsprogs |
|||
fdisk grub diffutils" FILES=files/ V=99 |
|||
== Problemlösung == |
|||
=== Image auf CF-Karte schreiben === |
|||
* '''neues System ist doch nicht so toll''': Wurde das System mit 'install_new_system' installiert, sollte der WRAP noch zwei zusätzliche Partitionen mit einem älteren System enthalten. In dieses System kann durch Aufruf von grub-switch-active-system und einen anschliessenden Neustart gewechselt werden. |
|||
| ⚫ | |||
== Meshnode == |
|||
=== notwendige Konfigurationen === |
|||
| ⚫ | |||
Siehe [[Meshnode]]. |
|||
[[Kategorie:Access points]] |
|||
Aktuelle Version vom 16. Juni 2011, 18:58 Uhr
x86 Wireless Router Application Platform Boards, siehe http://www.pcengines.ch/wrap.htm
Überblick
Hardware
Es existieren verschiedene Versionen. Wir setzen vor allem das WRAP 2e ein:
- 233 MHz Geode SC1100 CPU
- 64 oder 128 MB RAM
- Compact Flash Interface
- 2x Mini-PCI Schnittstelle (z.B. zwei Wifi-Karten)
- 1x drahtgebundene Ethernet Schnittstelle mit PoE
- Serieller Anschluss (Console)
WRAP-Gehäuse: Bauanleitungen#Umbau_WRAP_Box_N-Buchse (preiswert) od. Meshnode (professionell)
OpenWrt
Auf diesem x86-basiertem Board läuft neben zahlreichen Debian/GNU-Linux Deviraten auch OpenWrt Kamikaze, dem aktuellen Entwicklungszweig von http://openwrt.org.
Opennet x86 WRAP Firmware Anpassung, OpenWrt Kamikaze 7.07
- da es einige Probleme mit nicht reagierenden WRAPs gab, wurde im aktuellen Image der hardware-watchdog aktiviert.
- die Systemzeit wird nun opennet-spezifisch mit unseren Gateways synchronisiert, reboots werden im Start-Banner vermerkt so dass watchdog-reboots nachvollzogen werden können.
- als default ssh-deamon läuft nun openssh auf Port 22, dropbear läuft auf Port 10022, in der Hoffnung, dass bei auftretenden Problemen wenigstens einer erreichbar bleibt.
aktuelle WRAP-Systeme im Opennet haben 4 ext2fs Partitionen, zwei boot- (hda1 / hda3, je 4MB) und zwei root- (hda2 / hda4, je 16MB) Partitionen. Dies erlaubt ein remote update im laufenden Betrieb, indem die jeweils anderen Partitionen mit dem neuen System überschrieben werden. Die folgenden scripte setzen entsprechend konfigurierte Partitionen voraus.
- sync_spare_partition_config: Synchronisiert Netzwerkeinstellungen, Passwort und host-keys vom Ersatz-System mit dem Arbeitssystem (oder umgekehrt, Quelle ist jeweils das aktuell aktive System)
- grub-install-wrap: schreibt den Boot-Loader neu, Parameter erlauben die Auswahl zwischen normaler oder zusätzlicher Boot-Partition.
- grub-switch-active-system: Wechselt das aktuelle System (vom Arbeitssystem zum Ersatzsystem oder zurück). Nach dem Aufruf muss der WRAP neu gestartet werden.
- install_new_system: erwartet ein neues kernel (boot) und ein neues filessystem Image in /tmp und installiert dieses auf den unbenutzten Partitionen.
- clean_restart_log: Startzeiten werden beim login angezeigt. Mit diesem Script werden aufgezeichnete Startzeiten aus dem log entfernt.
- reboot: ein script ersetzt den vorhandenen reboot-Befehl und sync't die Partition vor einem Neustart
Downloads
- gesamtes Image, enthält die boot und die root Partition. Nach der Installation müssen mit fdisk zwei weitere Partitionen angelegt werden, sonst ist ein remote-update oder ein Wechsel zum backup-system nicht möglich.
- boot- root- Image für die Installation mit dem 'install_new_system'-script
- weitere Downloads unter http://www.opennet-initiative.de/firmware/kamikaze/kamikaze-x86-rene/7.07/
Aktualisierung eines bestehenden Systems
- (Partitionen /dev/hda3 mit >=4MB und /dev/hda4 mit >=16MB erstellen, wenn nicht vorhanden)
- boot-Image auf den WRAP in /tmp laden
- root-Image auf den WRAP in /tmp laden
- install_new_system aufrufen
- wenn das script noch nicht vorhanden ist, install_new_system herunterladen und nach /usr/sbin kopieren.
- Ausgabe des scripts vor einem Neustart prüfen. Wenn Fehler aufgetreten sind und grub dennoch ausgeführt wurde, kann es sein das nach einem reboot ein nicht funktionierendes System gestartet werden soll.
- WRAP neu starten
Erstinstallation eines WRAP
- gesamtes Image herunterladen und z.B. mit dd if=openwrt-x86-2.6-ext2.image of=<ziel-device> bs=512k -- Festplattenimage auf die CompactFlash-Karte schreiben (am besten über einen Cardreader, <ziel-device> ist der Cardreader-Devicenode)
- (Karte einbauen, WRAP starten)
- /etc/config/network /etc/config/wireless müssen angepasst werden, default IP ist 192.168.33.42 im opennet-olsr
- mit fdisk zwei neue Partitionen (hda3 4MB, hda4 16MB) anlegen
- (am besten gleich parallel ein weiteres System installieren, ist sinnvoll als Backup-Lösung und für spätere remote-updates. Genau wie bei WRAP#Aktualisierung eines bestehenden Systems beschrieben vorgehen)
Image-Erstellung
- aktuellen Kamikaze-ImageBuilder herunterladen und entpacken.
- Anpassungen (http://www.opennet-initiative.de/firmware/kamikaze/kamikaze-x86-rene/7.07/files.tgz) herunterladen und im ImageBuider-Verzeichnis entpacken.
- Paket grub, Paket diffutils ins Verzeichnis packages laden
- Image compilieren, dabei darauf achten, dass alle notwendigen Pakete gefunden werden. (Als Paketquelle ist neben http://downloads.openwrt.org/snapshots/x86-2.6/packages/ auch http://downloads.x-wrt.org/xwrt/kamikaze/x86-2.6/packages/ gut geeignet) - hier gibts das folgende als script.
make image PACKAGES="haserl ip kmod-madwifi kmod-natsemi libopenssl libpthread ntpclient olsrd olsrd-mod-httpinfo olsrd-mod-nameservice openssl-util webif webif-lang-de webif-theme-xwrt webif-theme-zephyr wireless-tools zlib tcpdump iptables-mod-extra kmod-ipt-extra kmod-scx200-wdt kmod-scx200-gpio kmod-nsc-gpio openssh-server e2fsprogs fdisk grub diffutils" FILES=files/ V=99
Problemlösung
- neues System ist doch nicht so toll: Wurde das System mit 'install_new_system' installiert, sollte der WRAP noch zwei zusätzliche Partitionen mit einem älteren System enthalten. In dieses System kann durch Aufruf von grub-switch-active-system und einen anschliessenden Neustart gewechselt werden.
Meshnode
Siehe Meshnode.