Skip to content

External

external menuconfig page

Entstanden aus diesem Thread im IPPF:
http://www.ip-phone-forum.de/showthread.php?t=160920

Mit "External" kann dem Platzproblem im Flash der Fritzboxen
entgegengewirkt werden, man kann also ein größeres Image als das Flash
zulassen würde installieren. Hierzu werden Packages, Librarys als auch
benutzerdefinierte Dateien aus dem Image "externalisiert" oder
ausgelagert. Bei Boxen mit USB-Host bietet sich hierzu ein
angeschlossener USB-Stick an. Bei älteren Boxen können unter
Zuhilfenahme des
Downloader-CGIs die Dateien
von einem FTP- oder HTTP-Server in den RAM nachgeladen werden.
Alternativ können die Dateien auch per
autofs eingebunden werden.
Mit External kann man die Meldung 'Filesystem image too big' vermeiden.

Der Pfad
zu den external-Dateien kann im Webinterface unter Freetz →
Einstellungen → external konfiguriert werden.

In diesem dürfen sich keine andere Dateien befinden, dies könnte zu
Fehlern
führen.

Es
können nur Pakete ausgelagert werden, die zur Installation ausgewählt
wurden.

Konfiguration

zu finden im menuconfig unter "Advanced Options" → "External"

Prepare files for Downloader

Diese Option ist nur zu sehen, wenn das Downloader-CGI zur Installation
ausgewählt wurde.
Es werden hiermit beim make-Prozess Pakete für den späteren
Download erstellt.
Näheres hierzu beim
Downloader-CGI.

Keep subdirectories

Die Verzeichnisstruktur der ausgelagerten Dateien wird beibehalten. Dies
hat den Vorteil dass eine gleichlautende Datei an verschiedenen Stellen
im Image ausgelagert werden kann. Ein Nachteil ist, dass das händische
Kopieren auf die Box umständlicher ist.

Create file for upload

Alle ausgelagerten Dateien werden in eine Datei gepackt, die mittels
Freetz-Webinterface auf die Box geladen werden kann. Die Datei ist im
Verzeichnis .image zu finden und trägt den gleiche Namen wie das
erstellte Image, weist aber die Endung ".external" auf.

own files

Hier können noch zusätzliche Dateien zum auslagern angegeben werden. Es
ist der Pfad auf der Fritzbox anzugeben! Wenn es mehr als eine Datei
ist, sind diese mit einem Leerzeichen voneinander zu trennen.

Auswahl

packages

Hier können verschiedene "binary-only" Packages zum auslagern
ausgewählt werden. Es sollten alle unproblematisch sein.

services

Hier können verschiedene automatisch startende Packages zum auslagern
ausgewählt werden.

Diese
werden erst geladen wenn der USB-Stick verfügbar ist und die Option zum
automatischen Starten von ausgelagerten Diensten im Webinterface
aktiviert ist.

libraries

Hier können verschieden Libraries zum auslagern ausgewählt werden.

Zu
beachten ist, dass Programme, die gegen diese gelinkt sind, erst
gestartet werden können, wenn die Datei auf der Box geladen ist. Also
vorher bitte die Abhängigkeiten prüfen.

Installation

Die Dateien, die für external ausgewählt wurden, müssen auf der Box
verfügbar gemacht werden.

Im Falle eines USB-Sticks sollte man bei der Konfiguration die Option
"Create file for upload" auswählen. Die damit erzeugte Datei kann man
über das installierte Freetz Webinterface System" → "Firmware-Update"
→ Option "external-Datei hochladen" auf die Box kopieren.

Wenn man einen FTP/HTTP-Server oder einen NFS-Server verwendet, muß man
selbst dafür sorgen, daß die Box auf die Dateien zugreifen kann.

Automatisches starten/stoppen von Diensten

Dies kann im Webinterface unter Einstellungen konfiguriert werden.
Dienste die hier eingetragen sind erscheinen im Webinterface nur solange
der Datenträger mit den ausgelagerten Dateien zur Verfügung steht.
Ansonsten müssten die Optionen selbsterklärend sein. Hier noch ein
Screenshot davon:

external_services

Unter Logdateien wird im Webinterface die /var/log/external.log
angezeigt.
In dieser bedeutet in den "Waiting" Zeilen jeder Punk, dass 1 Sekunde
gewartet wurde. Falls es also "tausende" Punkte sind, behindert
irgendetwas das saubere hochfahren der Box, vermutlich ein Timer in der
rc.custom oder debug.cfg.

Firmware-build-Prozess und Update

Beim Firmware-build werden zwei Dateien erzeugt: xxx.image → die
eigentliche Firmware-Image xxx.external → Die Dateien, die
externalisiert werden sollen

Beide Dateien sind im Ordner [images] zu finden. Bei der
external-Datei handelt es sich um eine gepackte tar-Datei, die beim
Upload übers Freetz-Webinterface automatisch ins Zielverzeichnis
entpackt wird. Es wird empfohlen, erst die external hochzuladen
[Freetz-WebIf → System → Firmware-Update] und danach erst die
Firmware. So stehen die external-Pakete der aktualisierten Firmware
schon zur Verfügung.
external_services