Änderungen

Zur Navigation springen Zur Suche springen
3.200 Bytes hinzugefügt ,  20:33, 17. Sep. 2006
Zeile 9: Zeile 9:  
===Fehlerliste (bugreport)===
 
===Fehlerliste (bugreport)===
 
===Neue Firmware selbst bauen (buildprozess, howto)===
 
===Neue Firmware selbst bauen (buildprozess, howto)===
 +
* Dies ist ein Notizzettel zum bauen einer neuen Firmware. Saemtliche Schritte habe ich fuer ein Linux-System dokumentiert. Eigentlich kann man ein komplettes Copy&Paste machen und schon ist alles fertig.
 +
* Der normale Weg ist, sich die aktuelle Weimarnetz-Firmware auf den Router zu packen, alle Aenderungen auf dem Router vorzunehmen und dann diese Anleitung nachzumachen.
 +
<pre>
 +
EIGENER_ROUTER=$(route -n|awk '/default/{printf $2}')
 +
ssh $EIGENER_ROUTER
 +
 +
# nun sind wir auf dem Router
 +
 +
cd /
 +
tar cvzhf www/fw.tgz usr/sbin/*weimar* etc/init.d/*weimar* www/*nervseite www/*info* www/*reg* www/cgi-bin/*kinder*
 +
 +
# nun haben wir eine direkt herunterladbare Datei fw.tgz, die
 +
# alle weimarnetz-spezifischen Dateien enthaelt.
 +
# nun muessen wir noch alle zusaetzlich installierten
 +
# Software-Pakete herausfinden und in ein Archiv packen:
 +
 +
PAKETE="batman2 busybox-awk freifunk-dnsmasq netcat zlib librrd1 rrdtool1 rrdcollect rrdcgi1 freifunk-statistics-de"
 +
tar cvzf /www/ipkg.tgz /usr/lib/ipkg/info/* $(for F in $PAKETE;do ipkg files $F|awk '{if($0!="/")system("ls -ld "sprintf("%s",substr($0,2)))}'|awk '{if($5>0)print $9}';done)
 +
exit
 +
 +
# nun haben wir eine direkt herunterladbare Datei ipkg.tgz,
 +
# haben also alles was wir brauchen und sind wieder auf unserem Rechner
 +
# wir laden und das aktuelle Kit von sven-ola's freifunk-seite
 +
# herunter und entpacken dieses auf unserem Rechner
 +
 +
KIT_URL="http://212.222.128.68/sven-ola/ipkg/_kit/"
 +
KIT_VERSION="freifunk-openwrt-kit-1.2.5-de"
 +
wget $KIT_URL$KIT_VERSION".tgz"
 +
tar xvzf $KIT_VERSION".tgz"
 +
cd $KIT_VERSION
 +
 +
# nun machen wir uns ein Verzeichnis in der die komplette
 +
# Verzeichnisstruktur und alle Dateien wie sie auf dem Router
 +
# sind reinkopiert werden. Das Grundsystem ist im Kit schon dabei.
 +
# die zwei Dateien, die wir eben auf dem Router erstellt
 +
# haben, nehmen wir von dort oder aus dem SVN
 +
 +
wget "http://$EIGENER_ROUTER/fw.tgz"
 +
wget "http://$EIGENER_ROUTER/ipkg.tgz"
 +
mkdir weimar
 +
cd weimar
 +
tar xvzf ../root.tgz
 +
tar xvzf ../fw.tgz
 +
tar xvzf ../ipkg.tgz
 +
 +
# ok,nun ist fast alles fertig. Wir haben nun noch die Chance
 +
# nach www/ ein eigenes bild zu kopieren und ein paar kleine
 +
# Aenderungen durchzufuehren, z.b.:
 +
 +
# kleiner workaround fuer weimarnetz-cron-ersatz:
 +
sed '/runchecks/d' etc/init.d/S53olsrd >S53olsrd
 +
mv S53olsrd >etc/init.d/S53olsrd
 +
 +
# holen und formatieren der aktuellen nervseite:
 +
wget -O - "http://wireless.subsignal.org/index.php?title=Nervseite"|sed '/-- NERVSEITE:START --/,/-- NERVSEITE_LEEREKONTAKTDATEN:END --/!d' >www/nervseite-vorlage
 +
 +
# nun alles wieder einpacken und neues firmwareimage erzeugen
 +
# das firmwareimage wird schon nach unixzeit und datum benannt:
 +
 +
tar cvzf ../root.tgz *
 +
cd ..
 +
X=$(date -Ih|awk -F[-T] '{print($1-1970)*31536000+$2*2592000+$3*86400+$4*3600}')
 +
Z=$(date -R|awk -F"[, :]" '{printf("%s%s%s-%suhr%s",$3,tolower($4),$5,$6,$7)}')
 +
N="weimarnetz_firmware-$X-$Z-trx.bin"
 +
./gen-openwrt -v $N trx >$N
 +
 +
# und schmalspurversion (ohne SSH und intro-bild) bauen:
 +
# und gleich noch ins SVN hochladen
 +
 +
svn checkout https://svn.sourceforge.net/svnroot/weimarnetz-fw/
 +
cd weimarnetz-fw/trunk/firmware/
 +
rm -fR *
 +
svn rm *
 +
wget "http://$ROUTER/fw.tgz"
 +
tar xvzf fw.tgz
 +
rm fw.tgz
 +
svn add *
 +
svn commit -m "$X-$Z"
 +
 +
</pre>

Navigationsmenü