Bevor man ein Linux-basiertes Betriebssystem installieren kann, muss man sich zunächst für eine der vielen Linux-Distributionen entscheiden. Eine Distribution besteht aus mehreren Paket-Zusammenstellungen und einem Linux-Kernel. Die Auswahl der Distribution erfolgt dann unter Berücksichtigung der Anforderungen an das Betriebssystem. Wir haben uns in diesem Fall für die vielbenutzte Distribution Ubuntu entschieden. Die Installation von Ubuntu ist nicht schwer und erfolgt ähnlich wie die Installtion von Windows. Ubuntu besitzt einen Manager für Pakete. Die sogennanten "Pakete" in einem Linux-basiertem Betriebssystem verhalten sich ähnlich wie Programme und Bibliotheken unter Windows. Wenn man die von Freetz-linux benutzten Pakete auf Ubuntu installiert und dann mit Freetz-Linux unter Ubuntu arbeitet, kann man sich eine Virtualbox und sehr viel Ärger mit IServ ersparen.
Eines der wichtigsten Programme unter Ubuntu ist das Terminal, welches wie folgt über die Taskleiste erreicht werden kann:

Nach Bestätigung öffnet sich das Terminal:

Bevor Freetz-Linux benutzt werden kann, muss zunächst das Betriebssystem auf den neusten Stand gebracht werden. Dies kann über das Terminal mit folgendem Code getan werden:
sudo apt-get -y update
sudo apt-get -y upgrade
sudo apt-get -y dist-upgrade
Zu beachten ist, dass der Code über das Menü im Terminal reinkopiert werden muss. Die Tastenkombination STRG+V funktioniert hier nicht.

Alternativ kann die Aktualisierungsverwaltung über das Menü in der Taskleiste aufgerufen werden:

Das Distributions Upgrade kann sehr lange dauern, unter Umständen auch Stunden. Dies muss man in Kauf nehmen, da man sonst bei Schwierigkeiten als erstes den Spruch: "Mach doch mal ein Upgrade.", über sich ergehen lassen muss. Leider sind viele Leute in Internetforen bei Problemen sehr ignorant und benutzen dann solche Standardsprüche. Wo wir dann auch schon beim nächsten Thema wären: Wie erstellt man ein Image, welches dann auf die FritzBox! übertragen werden kann?
Nun, nachdem das Distributionsupgrade (hoffentlich) erfolgreich war, muss man zunächst die für Freetz-Linux erforderlichen Pakete und danach Freetz-Linux selbst downloaden. Hierfür muss folgender Bashcode in die Konsole kopiert werden:sudo apt-get -y install subversion gcc g++ bzip2 binutils automake patch autoconf libtool pkg-config make libncurses5-dev zlib1g-dev flex bison patch texinfo tofrodos gettext jam pkg-config ecj fastjar realpath perl libstring-crc32-perl ruby ruby1.8 gawk python libusb-dev unzip intltool libglib2.0-dev git
Und für 64-bit Betriebssysteme zusätzlich:
sudo apt-get -y install libc6-dev-i386 lib32ncurses5-dev gcc-multilib
Nachdem dies geschenen ist, muss Freetz-Linux über den Befehl svn checkout http://svn.freetz.org/tags/freetz-1.1.4 freetz-1.1.4 heruntergeladen werden. Per Terminal wechselt man nun in das Verzeichnis von Freetz-Linux (mit dem Befehl "cd") und gibt make menuconfig ein. Nun startet ein Konfigurationsprogramm. Wichtig ist, dass man weiß welche Art von FritzBox! man besitzt und wieviel Speicher zur Verfügung steht, denn dies muss im Programm eingestellt werden. Ebenso muss man die Pakete auswählen, die nachher die Funktionalität der FritzBox! erweitern. Sobald man alle Einstellungen getroffen hat, muss die Konfiguration gespeichert werden. Das Image könnte nun rein theoretisch über den Befehl make erstellt werden. Doch wie kriegt man dann das fertige Image auf die FritzBox!?
Nun, zunächst mal sei gesagt, dass uns das Upgrade weitere Probleme bescherrt hat und wir uns nun entweder über die Ignoranz anderer Menschen ärgern oder verzweifelt Linux Profis um Hilfe bitten, da das Programm mit einer Fehlermeldung abbricht. Aber mehr dazu später, erstmal ein paar grundlegende Dinge: Zunächst muss die IP der Box herrausgefunden werden. Das ist relativ einfach:


Im Fenster können wir jetzt sehen welches Gateway wir benutzen. (Vorgaberoute bzw. primärer DNS)
Die IP Adresse muss im Browserfenster in die Adressleiste eingegeben werden. Die FritzBox! fragt uns nun ob wir ein Passwort vergeben möchten. Dies bestätigen wir, denn ohne Passwort können wir die FritzBox! nicht flashen. (bzw. Freetz verlangt von uns eine Passwortvergabe)
Aber nun zurück zum Terminal. Die Fehlermeldung lässt sich einfach beheben: Die von Freetz benutzte und mitgelieferte Version des Tar Entpackers/Packers ist nicht mit der neusten Ubuntu Version kompatibel. Hierzu bedienen wir uns einfach des Paketes im Ordner "usr/bin" und überschreiben es mit dem von Freetz mitgeliefertem Paket im Tools Ordner von Freetz-Linux. Wenn wir nun das Image erstellen, zeigt uns das Terminal an, dass der Vorgang erfolgreich abgeschlossen wurde. Als nächstes spielen wir das Image auf die FritzBox! ein. Hierfür geben wir vor ein Firmware Update zu machen. Die Warnung, dass es sich nicht um eine "Original Firmware" handelt, ignorieren wir. ACHTUNG! Während des Flashvorgangs darf die FritzBox! nicht ausgeschaltet werden!
Nach dem Flashvorgang werden wir automatisch benachrichtigt. Wir entdecken nun einen neuen Menüpunkt namens "Freetz", den wir natürlich aufrufen und werden aufgefordert einen Namen und ein Passwort einzugeben. Der Standardname ist "Admin" und das Standardpasswort "Freetz". Das Passwort sollten wir nach dem ersten einloggen umändern. Um die Pakete die nun auf der FritzBox! sind zu konfigurieren ist es nötig sich über Telnet mit der FritzBox! zu verbinden und die aktuelle Sicherheitsstufe herunter zu setzen. Was einfach klingt, kann sich jedoch als Akt erweisen und kann für einen Frischling mit viel Sucherei verbunden sein.
Nachdem wir im Unterpunkt "Dienste", Telnet aktivieren und erneut unser Terminal gestartet haben, rufen wir nun Telnet auf, geben den Befehl Open und dahinter die IP-Adresse der FritzBox! oder auch nur "Fritz.Box" ein. Der Benutzername lautet root:

Nun kopieren wir folgenden Code in die Konsole:
echo 0 > /tmp/flash/security
modsave
Wir sind fertig! Wir können jetzt im Browser auch im Unterpunkt Pakete die jeweiligen auf der FritzBox! installierten Pakete konfigurieren. Und nicht vergessen: Wenn wir ein Paket benutzen wollen, welches mit Diensten zusammenhängt müssen wir voher den jeweiligen Dienst im Untermenü "Dienste" starten!
Autor: Oliver Philipp Lodahl