diff --git a/.gitignore b/.gitignore
index 98b50ee..324fc22 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,3 +1,4 @@
# IntelliJ IDEA
.idea/
*.iml
+build/
diff --git a/.nojekyll b/.nojekyll
new file mode 100644
index 0000000..e69de29
diff --git a/.travis.yml b/.travis.yml
new file mode 100644
index 0000000..40bfa2e
--- /dev/null
+++ b/.travis.yml
@@ -0,0 +1,20 @@
+language: python
+cache: pip
+
+python:
+ - "2.7"
+
+install:
+ - pip install -r requirements.txt
+
+script:
+ - sphinx-build -a . _build/html
+
+deploy:
+ provider: pages
+ local-dir: _build/html/
+ skip-cleanup: true
+ github-token: $GITHUB_TOKEN # Set in the settings page of your repository, as a secure variable
+ keep-history: true
+ on:
+ branch: master
diff --git a/Makefile b/Makefile
new file mode 100644
index 0000000..5dede4a
--- /dev/null
+++ b/Makefile
@@ -0,0 +1,19 @@
+# Minimal makefile for Sphinx documentation
+#
+
+# You can set these variables from the command line.
+SPHINXOPTS =
+SPHINXBUILD = sphinx-build
+SOURCEDIR = .
+BUILDDIR = build
+
+# Put it first so that "make" without argument is like "make help".
+help:
+ @$(SPHINXBUILD) -M help "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
+
+.PHONY: help Makefile
+
+# Catch-all target: route all unknown targets to Sphinx using the new
+# "make mode" option. $(O) is meant as a shortcut for $(SPHINXOPTS).
+%: Makefile
+ @$(SPHINXBUILD) -M $@ "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
diff --git a/_static/freetz.png b/_static/freetz.png
new file mode 100644
index 0000000..fbe31e0
Binary files /dev/null and b/_static/freetz.png differ
diff --git a/_static/freetz.svg b/_static/freetz.svg
new file mode 100644
index 0000000..9819a29
--- /dev/null
+++ b/_static/freetz.svg
@@ -0,0 +1,98 @@
+
+
+
+
diff --git a/conf.py b/conf.py
new file mode 100644
index 0000000..d33d948
--- /dev/null
+++ b/conf.py
@@ -0,0 +1,174 @@
+# -*- coding: utf-8 -*-
+#
+# Configuration file for the Sphinx documentation builder.
+#
+# This file does only contain a selection of the most common options. For a
+# full list see the documentation:
+# http://www.sphinx-doc.org/en/master/config
+
+# -- Path setup --------------------------------------------------------------
+
+# If extensions (or modules to document with autodoc) are in another directory,
+# add these directories to sys.path here. If the directory is relative to the
+# documentation root, use os.path.abspath to make it absolute, like shown here.
+#
+# import os
+# import sys
+# sys.path.insert(0, os.path.abspath('.'))
+
+
+# -- Project information -----------------------------------------------------
+
+project = 'Freetz'
+copyright = '2019, Freetz Developers'
+author = 'Freetz Developers'
+
+# The short X.Y version
+version = ''
+# The full version, including alpha/beta/rc tags
+release = 'master'
+
+
+# -- General configuration ---------------------------------------------------
+
+# If your documentation needs a minimal Sphinx version, state it here.
+#
+# needs_sphinx = '1.0'
+
+# Add any Sphinx extension module names here, as strings. They can be
+# extensions coming with Sphinx (named 'sphinx.ext.*') or your custom
+# ones.
+extensions = [
+]
+
+# Add any paths that contain templates here, relative to this directory.
+templates_path = ['_templates']
+
+# The suffix(es) of source filenames.
+# You can specify multiple suffix as a list of string:
+#
+# source_suffix = ['.rst', '.md']
+source_suffix = '.rst'
+
+# The master toctree document.
+master_doc = 'index'
+
+# The language for content autogenerated by Sphinx. Refer to documentation
+# for a list of supported languages.
+#
+# This is also used if you do content translation via gettext catalogs.
+# Usually you set "language" from the command line for these cases.
+language = 'de'
+
+# List of patterns, relative to source directory, that match files and
+# directories to ignore when looking for source files.
+# This pattern also affects html_static_path and html_extra_path.
+exclude_patterns = []
+
+# The name of the Pygments (syntax highlighting) style to use.
+pygments_style = None
+
+
+# -- Options for HTML output -------------------------------------------------
+
+# The theme to use for HTML and HTML Help pages. See the documentation for
+# a list of builtin themes.
+#
+html_theme = 'sphinx_rtd_theme'
+html_logo = '_static/freetz.png'
+
+# Theme options are theme-specific and customize the look and feel of a theme
+# further. For a list of options available for each theme, see the
+# documentation.
+#
+# html_theme_options = {}
+
+# Add any paths that contain custom static files (such as style sheets) here,
+# relative to this directory. They are copied after the builtin static files,
+# so a file named "default.css" will overwrite the builtin "default.css".
+html_static_path = ['_static']
+
+# Custom sidebar templates, must be a dictionary that maps document names
+# to template names.
+#
+# The default sidebars (for documents that don't match any pattern) are
+# defined by theme itself. Builtin themes are using these templates by
+# default: ``['localtoc.html', 'relations.html', 'sourcelink.html',
+# 'searchbox.html']``.
+#
+# html_sidebars = {}
+
+
+# -- Options for HTMLHelp output ---------------------------------------------
+
+# Output file base name for HTML help builder.
+htmlhelp_basename = 'Freetzdoc'
+
+
+# -- Options for LaTeX output ------------------------------------------------
+
+latex_elements = {
+ # The paper size ('letterpaper' or 'a4paper').
+ #
+ # 'papersize': 'letterpaper',
+
+ # The font size ('10pt', '11pt' or '12pt').
+ #
+ # 'pointsize': '10pt',
+
+ # Additional stuff for the LaTeX preamble.
+ #
+ # 'preamble': '',
+
+ # Latex figure (float) alignment
+ #
+ # 'figure_align': 'htbp',
+}
+
+# Grouping the document tree into LaTeX files. List of tuples
+# (source start file, target name, title,
+# author, documentclass [howto, manual, or own class]).
+latex_documents = [
+ (master_doc, 'Freetz.tex', 'Freetz Documentation',
+ 'Freetz Developers', 'manual'),
+]
+
+
+# -- Options for manual page output ------------------------------------------
+
+# One entry per manual page. List of tuples
+# (source start file, name, description, authors, manual section).
+man_pages = [
+ (master_doc, 'freetz', 'Freetz Documentation',
+ [author], 1)
+]
+
+
+# -- Options for Texinfo output ----------------------------------------------
+
+# Grouping the document tree into Texinfo files. List of tuples
+# (source start file, target name, title, author,
+# dir menu entry, description, category)
+texinfo_documents = [
+ (master_doc, 'Freetz', 'Freetz Documentation',
+ author, 'Freetz', 'One line description of project.',
+ 'Miscellaneous'),
+]
+
+
+# -- Options for Epub output -------------------------------------------------
+
+# Bibliographic Dublin Core info.
+epub_title = project
+
+# The unique identifier of the text. This can be a ISBN number
+# or the project homepage.
+#
+# epub_identifier = ''
+
+# A unique identification for the text.
+#
+# epub_uid = ''
+
+# A list of files that should not be packed into the epub file.
+epub_exclude_files = ['search.html']
diff --git a/extract-content.py b/extract-content.py
new file mode 100755
index 0000000..39a06c0
--- /dev/null
+++ b/extract-content.py
@@ -0,0 +1,60 @@
+#!/usr/bin/env python3
+
+import os
+import sys
+import subprocess
+from bs4 import BeautifulSoup
+from progress.bar import Bar
+
+pages = []
+titleList = []
+
+def line_prepender(filename, line):
+ with open(filename, 'r+') as f:
+ content = f.read()
+ f.seek(0, 0)
+ f.write(line.rstrip('\r\n') + '\n' + content)
+
+
+# Create a list of all pages to convert
+for path, subdirs, files in os.walk("wiki"):
+ for name in files:
+ if not "?" in name and not ".." in name and ".html" in name:
+ pages.append(os.path.join(path, name))
+
+# Also convert the toplevel index.html
+pages.append("index.html")
+
+# Progress bar
+numPages = len(pages)
+bar = Bar('Converting pages', max=numPages)
+
+# Actual extraction
+for count, page in enumerate(pages):
+ pageFile = open(page, "r")
+ pageSoup = BeautifulSoup(pageFile, 'html.parser')
+ for div in pageSoup.find_all("div", {'class':'wiki-toc'}):
+ div.decompose()
+
+ pageFile.close()
+
+ content = pageSoup.find(id="content")
+
+ titleList.append(title)
+
+ contentPage = open(page + ".content", "w")
+ if not type(content) is None:
+ contentPage.write(str(content))
+
+ contentPage.close()
+
+ subprocess.call(["pandoc", "-f", "html-header_attributes-link_attributes-native_spans-native_divs", "-t", "rst", page + ".content", "-o", page.replace(".html", ".rst")])
+ subprocess.call(["sed", "-i", "/^:::/ d", page.replace(".html", ".rst")])
+
+ os.remove(page + ".content")
+ bar.next()
+
+bar.finish()
+
+for i in titleList:
+ print(" " + "wiki/" + i)
diff --git a/index.rst b/index.rst
new file mode 100644
index 0000000..5ab592c
--- /dev/null
+++ b/index.rst
@@ -0,0 +1,456 @@
+.. _WillkommenbeiFreetz:
+
+Willkommen bei Freetz
+=====================
+
+| `Freetz `__ ist eine Firmware-Erweiterung und
+ Modifikation für `Fritz!Box `__ Router und
+ kompatible Geräte. Die Original-Firmware des Herstellers wird um
+ zusätzliche Funktionen `erweitert `__ und mit einer
+ individuellen Zusammenstellung von Programmen ergänzt. Mehr zum Namen
+ "Freetz" und zur Historie siehe
+ `FAQ `__.
+| Freetz ist `freie
+ Software `__
+ und wird von Oliver Metz, Alexander Kriegisch und Team entwickelt.
+
+|Warning| **WARNUNG:** Die Installation einer modifizierten Firmware führt
+zum Verlust der Gewährleistung des Herstellers!
+
+.. _Download:
+
+Download
+--------
+
+Das letzte Release ist Version 2.0. Bitte folge den Anweisungen unter
+`Quellcode `__, um es zu downloaden.
+
+Um den Trunk (Entwicklerversion) zu nutzen, einfach die Anleitung zum
+`Auschecken und Aktualisieren des
+Quellcodes `__ aus dem Freetz-Repository
+folgen.
+
+Diese Versionen unterscheiden sich in der unterstützen AVM-Firmware
+(Datei 'FIRMWARES') und den Erweiterungen durch Freetz (Datei
+'CHANGELOG').
+
+Eine komplette Liste aller Releases befindet sich auf der `Download
+Seite `__.
+
+.. _ErsteSchritte:
+
+Erste Schritte
+--------------
+
+Diese Anleitung richtet sich in erster Linie an neue Benutzer, welche
+sich erst mit Freetz vertraut machen wollen. Der Benutzer wird
+schrittweise begleitet bis zur Erstellung und Flashen eines ersten
+Firmware-Images.
+
+- `Erste Schritte mit Freetz `__
+
+.. _Installation:
+
+Installation
+------------
+
+Für die Freetz-Installation wird Linux als Betriebssystem empfohlen. Wer
+kein Linux dauerhaft auf seinem Rechner installieren will, kann sich mit
+einem Linux-Live-System oder einem sog. Image für eine "virtuellen
+Maschine" (VM) seiner Wahl behelfen.
+
+- `Voraussetzungen, notwendige Pakete und sonstige Informationen zur
+ Freetz-Installation `__
+
+.. _HilfeundSupport:
+
+Hilfe und Support
+-----------------
+
+- `Wiki `__:
+
+ - `Installation `__
+ - `Pakete, Addons und CGI-Erweiterungen `__
+ - `Patches `__, `Aussehen `__
+ - `Bibliotheken `__, Module, `FAQ `__
+ - `Kernel-Sources `__
+ - Hintergrund-Infos
+ - `Howtos `__, und `Hilfe `__
+ - `Trouble-Shooting `__
+
+- `IP-Phone-Forum `__
+
+Hier findest du mehr zu `Hilfe und Support `__.
+
+.. _PresseundBerichte:
+
+Presse und Berichte
+-------------------
+
+- `Liste von Berichten über Freetz `__
+- `Ankündigung Entwicklertreffen Freetz-Conf
+ 2011 `__
+
+.. _Machmit:
+
+Mach mit!
+---------
+
+Interessierte Benutzer und potentielle Entwickler, die aktiv an der
+Verbesserung von Freetz und deren Entwicklung mitwirken wollen, werden
+durch das Trac-Systems hinreichend unterstützt. So können der komplette
+Quellcode eingesehen, Änderungen verfolgt und über das Ticket-System
+Fehler und Feature-Wünsche gemeldet werden. Ein aktuelles Wiki hilft
+allen Beteiligten!
+
+- `Zeitachse `__: Chronologie der Änderungen
+- `Roadmap `__: Stand und Planung der Entwicklung (in Arbeit)
+- `Quellcode-Browser `__: SVN-Repository durchsuchen
+- `Ticket-System `__: Probleme, Fehler und neue
+ Feature-Wünsche **(bitte**\ `hier `__\ **nachlesen
+ und evtl. im IP-Phone-Forum fragen, bevor ein Ticket eröffnet
+ wird!)**
+- `Developer
+ Information `__:
+ Informationen für Entwickler und Howtos (englisch)
+- Interner Entwicklerbereich: Nur für Entwickler: Interner Bereich zur
+ Abstimmung.
+
+Das Bearbeiten des Wikis und Eröffnen von Tickets ist zur Vermeidung von
+Spam nur nach vorheriger **Registrierung** möglich.
+
+.. _Quellcode:
+
+Quellcode
+---------
+
+Anleitung zum `Auschecken und Aktualisieren des
+Quellcodes `__ aus dem Freetz-Repository
+
+.. toctree::
+ :maxdepth: 1
+ :caption: Generelles
+ :name: sec-general
+
+ wiki/packages_tagged
+ wiki/Download
+ wiki/freetz
+ wiki/FAQ
+ wiki/Impressum
+ wiki/libs_tagged
+ wiki/ticket
+ wiki/style
+ wiki/packages
+ wiki/FreetzConf2011
+ wiki/patch
+ wiki/Press.en
+ wiki/patches
+ wiki/help
+ wiki/libs
+ wiki/costumscript_dublesyslog
+ wiki/kernel
+ wiki/Press
+ wiki/freetz.en
+ wiki/FAQ.en
+ wiki/common/source_code.en
+ wiki/common/source_code
+
+
+.. toctree::
+ :maxdepth: 1
+ :caption: Patches
+ :name: sec-patches
+
+ wiki/patches/remove_myfritz
+ wiki/patches/remove_tr069
+ wiki/patches/remove_assistant
+ wiki/patches/remove_help
+ wiki/patches/remove_usermand
+ wiki/patches/enum.en
+ wiki/patches/remove_samba
+ wiki/patches/signed
+ wiki/patches/remove_upnp
+ wiki/patches/usb_names
+ wiki/patches/remove_mediasrv
+ wiki/patches/remove_dsld
+ wiki/patches/enum
+ wiki/patches/onlinechanged
+ wiki/patches/freetzmount
+ wiki/patches/replace_onlinechanged
+ wiki/patches/remove_capi
+ wiki/patches/exec_autorun
+ wiki/patches/maxdevcount
+ wiki/patches/remove_minid
+ wiki/patches/multpile_printers
+ wiki/patches/alarmclock
+ wiki/patches/freetzmount.en
+ wiki/patches/remove_vpn
+ wiki/patches/remove_support
+ wiki/patches/remove_ftpd
+ wiki/patches/remove_aura_usb
+ wiki/patches/custom_udev_rules
+
+
+.. toctree::
+ :maxdepth: 1
+ :caption: Hilfe
+ :name: sec-help
+
+ wiki/help/howtos
+ wiki/help/trouble_shooting
+ wiki/help/fritz_faq
+ wiki/help/irc
+ wiki/help/wikiedit
+ wiki/help/howtos/common
+ wiki/help/howtos/security
+ wiki/help/howtos/troubleshoot
+ wiki/help/howtos/development
+ wiki/help/howtos/common/freetz_linux
+ wiki/help/howtos/common/shutdown
+ wiki/help/howtos/common/newbie.en
+ wiki/help/howtos/common/first_trunk
+ wiki/help/howtos/common/install.en
+ wiki/help/howtos/common/external
+ wiki/help/howtos/common/create_swap
+ wiki/help/howtos/common/install
+ wiki/help/howtos/common/newbie
+ wiki/help/howtos/common/wol
+ wiki/help/howtos/common/user
+ wiki/help/howtos/common/busybox_httpd
+ wiki/help/howtos/common/install/menuconfig
+ wiki/help/howtos/common/newbie/other
+ wiki/help/howtos/common/newbie/errors
+ wiki/help/howtos/troubleshoot/repair_phonebook
+ wiki/help/howtos/troubleshoot/recover_firmware
+ wiki/help/howtos/troubleshoot/reboots
+ wiki/help/howtos/security/switch_config
+ wiki/help/howtos/security/router_and_firewall
+ wiki/help/howtos/security/user_management
+ wiki/help/howtos/security/split_wlan_lan
+ wiki/help/howtos/development/sign_image
+ wiki/help/howtos/development/integrate_patches
+ wiki/help/howtos/development/bandwidth_svg
+ wiki/help/howtos/development/create_cross-compiler_toolchain
+ wiki/help/howtos/development/release_management
+ wiki/help/howtos/development/package_creation
+ wiki/help/howtos/development/save_mtd_2
+ wiki/help/howtos/development/developer_information
+ wiki/help/howtos/development/create_gui
+ wiki/help/howtos/development/manipulation_detection
+ wiki/help/howtos/development/freetz_make
+ wiki/help/howtos/development/urlader_flags
+ wiki/help/howtos/development/flash
+ wiki/help/howtos/development/firmware_update_details
+ wiki/help/howtos/development/repack_fw
+ wiki/help/howtos/development/install_addon
+ wiki/help/howtos/development/make_busybox
+ wiki/help/howtos/development/adam2
+ wiki/help/howtos/development/save_mtd_1
+ wiki/help/howtos/development/integrate_own_files
+ wiki/help/howtos/development/analyse_image_names
+ wiki/help/howtos/development/menuconfig
+ wiki/help/howtos/development/compile_own_progs
+ wiki/help/howtos/development/make_kernel
+ wiki/help/howtos/development/make_room
+ wiki/help/howtos/development/developer_information/package_development
+ wiki/help/howtos/development/developer_information/post_commit_hook
+ wiki/help/howtos/development/developer_information/shell_coding_conventions
+ wiki/help/howtos/development/developer_information/package_development_advanced
+ wiki/help/howtos/development/developer_information/package_development_dynamic
+ wiki/help/howtos/development/developer_information/package_development_start
+ wiki/help/howtos/development/developer_information/package_development_start/example_2
+ wiki/help/howtos/development/developer_information/package_development_start/example_1
+ wiki/help/howtos/development/developer_information/package_development_start/.language
+ wiki/help/howtos/development/developer_information/package_development_start/webinterface_example_1
+ wiki/help/howtos/development/developer_information/package_development_start/example_3
+ wiki/help/howtos/development/developer_information/webif/libmodcgi
+ wiki/help/wikiedit/screenshots
+ wiki/help/wikiedit/toc
+ wiki/help/wikiedit/tagging
+ wiki/help/wikiedit/tables
+ wiki/help/wikiedit/formatting_guide
+ wiki/help/wikiedit/goodies
+ wiki/style/tagging
+ wiki/style/skins
+ wiki/style/favicons
+ wiki/style/mounted
+ wiki/libs/ftdi
+ wiki/libs/ftdi.en
+
+
+.. toctree::
+ :maxdepth: 1
+ :caption: Pakete
+ :name: sec-packages
+
+ wiki/packages/bridge-utils
+ wiki/packages/sispmctl
+ wiki/packages/empty
+ wiki/packages/apache
+ wiki/packages/polipo.en
+ wiki/packages/autofs
+ wiki/packages/strace
+ wiki/packages/syslogd
+ wiki/packages/lsof
+ wiki/packages/dns2tcp
+ wiki/packages/tinyproxy
+ wiki/packages/davfs2
+ wiki/packages/s3fslite
+ wiki/packages/dropbear.en
+ wiki/packages/ctorrent
+ wiki/packages/irssi
+ wiki/packages/hplip
+ wiki/packages/lighttpd
+ wiki/packages/privoxy
+ wiki/packages/radvd.en
+ wiki/packages/usbroot
+ wiki/packages/vim
+ wiki/packages/bluez-utils
+ wiki/packages/sane-backends
+ wiki/packages/usbip
+ wiki/packages/dropbear
+ wiki/packages/iptables-cgi
+ wiki/packages/hd-idle
+ wiki/packages/fhem
+ wiki/packages/igmpproxy
+ wiki/packages/usbutils
+ wiki/packages/inotify-tools
+ wiki/packages/authorized-keys.en
+ wiki/packages/rrdstats
+ wiki/packages/mcabber
+ wiki/packages/dtmfbox
+ wiki/packages/nfsd.en
+ wiki/packages/espeak
+ wiki/packages/dnsd
+ wiki/packages/tor
+ wiki/packages/spindown
+ wiki/packages/ncftp
+ wiki/packages/lynx
+ wiki/packages/smstools3
+ wiki/packages/debootstrap
+ wiki/packages/ppp
+ wiki/packages/xmail
+ wiki/packages/sundtek
+ wiki/packages/iptables
+ wiki/packages/subversion
+ wiki/packages/dtach
+ wiki/packages/vsftpd
+ wiki/packages/ziproxy
+ wiki/packages/ntfs-3g
+ wiki/packages/ruby
+ wiki/packages/aiccu
+ wiki/packages/mc
+ wiki/packages/nfs
+ wiki/packages/streamripper
+ wiki/packages/htpdate
+ wiki/packages/lua
+ wiki/packages/emailrelay
+ wiki/packages/madplay
+ wiki/packages/nhipt
+ wiki/packages/wput
+ wiki/packages/netsnmp
+ wiki/packages/transmission.en
+ wiki/packages/imapproxy.en
+ wiki/packages/fuse
+ wiki/packages/hiawatha
+ wiki/packages/cifsmount
+ wiki/packages/matrixtunnel
+ wiki/packages/ndas.en
+ wiki/packages/nfs-utils
+ wiki/packages/vpnc
+ wiki/packages/haserl
+ wiki/packages/obexftp
+ wiki/packages/nmap
+ wiki/packages/httptunnel
+ wiki/packages/onlinechanged
+ wiki/packages/mini_fo
+ wiki/packages/pingtunnel
+ wiki/packages/tcp_wrappers
+ wiki/packages/netsnmp.en
+ wiki/packages/wol
+ wiki/packages/cpmaccfg
+ wiki/packages/syslogd.en
+ wiki/packages/checkmaild
+ wiki/packages/portmap
+ wiki/packages/digitemp
+ wiki/packages/downloader
+ wiki/packages/bip
+ wiki/packages/fortune
+ wiki/packages/xrelayd
+ wiki/packages/tinc
+ wiki/packages/bird
+ wiki/packages/onlinechanged_cgi
+ wiki/packages/php
+ wiki/packages/pptp
+ wiki/packages/mediatomb
+ wiki/packages/inetd
+ wiki/packages/owfs
+ wiki/packages/unbound
+ wiki/packages/fstyp
+ wiki/packages/prosody.en
+ wiki/packages/bftpd
+ wiki/packages/mod
+ wiki/packages/br2684ctl.en
+ wiki/packages/deco
+ wiki/packages/trickle
+ wiki/packages/radvd
+ wiki/packages/opendd
+ wiki/packages/pptpd
+ wiki/packages/mediaserver
+ wiki/packages/iptables.en
+ wiki/packages/dnsd.en
+ wiki/packages/hp-utils
+ wiki/packages/screen
+ wiki/packages/ndas
+ wiki/packages/dnsmasq
+ wiki/packages/wget
+ wiki/packages/e2fsprogs
+ wiki/packages/bind
+ wiki/packages/tcpdump
+ wiki/packages/gw6
+ wiki/packages/nhipt.en
+ wiki/packages/openntpd
+ wiki/packages/rudi-shell
+ wiki/packages/nano
+ wiki/packages/nfsd
+ wiki/packages/stunnel
+ wiki/packages/rrdtool
+ wiki/packages/ldd
+ wiki/packages/prosody
+ wiki/packages/fhzctrl
+ wiki/packages/aiccu.en
+ wiki/packages/authorized-keys
+ wiki/packages/pciutils
+ wiki/packages/vtund
+ wiki/packages/fritzload
+ wiki/packages/jamvm
+ wiki/packages/callmonitor
+ wiki/packages/br2684ctl
+ wiki/packages/netcat
+ wiki/packages/quagga
+ wiki/packages/samba
+ wiki/packages/iodine
+ wiki/packages/nagios
+ wiki/packages/smartmontools
+ wiki/packages/mtr
+ wiki/packages/avm-firewall
+ wiki/packages/bash
+ wiki/packages/asterisk
+ wiki/packages/microperl
+ wiki/packages/nano-shell
+ wiki/packages/m-i-t
+ wiki/packages/minidlna
+ wiki/packages/inadyn-mt
+ wiki/packages/bluez
+ wiki/packages/DemoPackageA
+ wiki/packages/openvpn
+ wiki/packages/knock
+ wiki/packages/ltrace
+ wiki/packages/curl
+ wiki/packages/inadyn-mt.en
+ wiki/packages/virtualip
+ wiki/packages/socat
+ wiki/packages/transmission
+ wiki/packages/netsnmp/mrtg.en
+
+.. |Warning| image:: /chrome/wikiextras-icons-16/exclamation.png
diff --git a/make.bat b/make.bat
new file mode 100644
index 0000000..796a7b3
--- /dev/null
+++ b/make.bat
@@ -0,0 +1,35 @@
+@ECHO OFF
+
+pushd %~dp0
+
+REM Command file for Sphinx documentation
+
+if "%SPHINXBUILD%" == "" (
+ set SPHINXBUILD=sphinx-build
+)
+set SOURCEDIR=.
+set BUILDDIR=build
+
+if "%1" == "" goto help
+
+%SPHINXBUILD% >NUL 2>NUL
+if errorlevel 9009 (
+ echo.
+ echo.The 'sphinx-build' command was not found. Make sure you have Sphinx
+ echo.installed, then set the SPHINXBUILD environment variable to point
+ echo.to the full path of the 'sphinx-build' executable. Alternatively you
+ echo.may add the Sphinx directory to PATH.
+ echo.
+ echo.If you don't have Sphinx installed, grab it from
+ echo.http://sphinx-doc.org/
+ exit /b 1
+)
+
+%SPHINXBUILD% -M %1 %SOURCEDIR% %BUILDDIR% %SPHINXOPTS%
+goto end
+
+:help
+%SPHINXBUILD% -M help %SOURCEDIR% %BUILDDIR% %SPHINXOPTS%
+
+:end
+popd
diff --git a/requirements.txt b/requirements.txt
new file mode 100644
index 0000000..cbf1e36
--- /dev/null
+++ b/requirements.txt
@@ -0,0 +1,2 @@
+sphinx
+sphinx-rtd-theme
diff --git a/wiki/Download.rst b/wiki/Download.rst
new file mode 100644
index 0000000..1142a80
--- /dev/null
+++ b/wiki/Download.rst
@@ -0,0 +1,150 @@
+.. _StabileVersionen:
+
+Stabile Versionen
+-----------------
+
+.. _Freetz1.201.07.2012:
+
+Freetz 1.2 (01.07.2012)
+~~~~~~~~~~~~~~~~~~~~~~~
+
+| Dies ist die aktuelle stabile Version von Freetz:
+| `freetz-1.2.tar.bz2 `__ (2,7 MB)
+| `Changelog `__\ ` `__
+| `Unterstützte Boxen und
+ Firmwares `__\ ` `__
+| MD5: ``BC2F27DBDD49CFA78FDAF2D2D46D8A4C``
+
+.. _EntwicklerVersionen:
+
+Entwickler Versionen
+--------------------
+
+`Snapshots `__
+
+Snapshots sind Abbilder des trunks zu einem bestimmten Zeitpunkt.
+
+.. _UploadundStatistik:
+
+Upload und Statistik
+--------------------
+
+`Downloads-Plugin `__
+
+.. _VeralteteVersionen:
+
+Veraltete Versionen
+-------------------
+
+.. _Freetz1.1.522.01.2012:
+
+Freetz 1.1.5 (22.01.2012)
+~~~~~~~~~~~~~~~~~~~~~~~~~
+
+| `freetz-1.1.5.tar.bz2 `__ (2,4 MB)
+| `Changelog `__\ ` `__
+| `Unterstützte Boxen und
+ Firmwares `__\ ` `__
+| MD5: ``99CE04B3B9D8B5D77F57F1490DB6C317``
+
+.. _Freetz1.1.411.02.2011:
+
+Freetz 1.1.4 (11.02.2011)
+~~~~~~~~~~~~~~~~~~~~~~~~~
+
+| `freetz-1.1.4.tar.bz2 `__ (2,4 MB)
+| `Changelog `__\ ` `__
+| `Unterstützte Boxen und
+ Firmwares `__\ ` `__
+| MD5: ``48F8A1BC51E864CBE550BBA3BC9C7201``
+
+.. _Freetz1.1.329.04.2010:
+
+Freetz 1.1.3 (29.04.2010)
+~~~~~~~~~~~~~~~~~~~~~~~~~
+
+| `freetz-1.1.3.tar.bz2 `__ (2,4 MB)
+| `Changelog `__\ ` `__
+| `Unterstützte Boxen und
+ Firmwares `__\ ` `__
+| MD5: ``615A829645334720EF039B9834D58758``
+
+.. _Freetz1.1.230.12.2009:
+
+Freetz 1.1.2 (30.12.2009)
+~~~~~~~~~~~~~~~~~~~~~~~~~
+
+| `freetz-1.1.2.tar.bz2 `__ (2,4 MB)
+| `Changelog `__\ ` `__
+| `Unterstützte Boxen und
+ Firmwares `__\ ` `__
+| MD5: ``A8BCCC2D7B77ED32DEE21E6D2122A365``
+
+.. _Freetz1.1.117.10.2009:
+
+Freetz 1.1.1 (17.10.2009)
+~~~~~~~~~~~~~~~~~~~~~~~~~
+
+| `freetz-1.1.1.tar.bz2 `__ (2,5 MB)
+| `Changelog `__\ ` `__
+| `Unterstützte Boxen und
+ Firmwares `__\ ` `__
+| MD5: ``22A5265F14A7FE0F1FD240AEF9E1F1DC``
+
+.. _Freetz1.112.06.2009:
+
+Freetz 1.1 (12.06.2009)
+~~~~~~~~~~~~~~~~~~~~~~~
+
+| `freetz-1.1.tar.bz2 `__ (2,5 MB)
+| `Changelog `__\ ` `__
+| `Unterstützte Boxen und
+ Firmwares `__\ ` `__
+| MD5: ``14076242610377E0459B2FB51624A4D6``
+
+.. _Freetz1.0.318.03.2009:
+
+Freetz 1.0.3 (18.03.2009)
+~~~~~~~~~~~~~~~~~~~~~~~~~
+
+| `freetz-1.0.3.tar.bz2 `__ (1,9 MB)
+| `Changelog `__\ ` `__
+| `Unterstützte Boxen und
+ Firmwares `__\ ` `__
+| MD5: ``CF0B991905178E74EC682CDEEA9B7CBC``
+
+.. _Freetz1.0.215.02.2009:
+
+Freetz 1.0.2 (15.02.2009)
+~~~~~~~~~~~~~~~~~~~~~~~~~
+
+| `freetz-1.0.2.tar.bz2 `__ (1,9 MB)
+| `Changelog `__\ ` `__
+| `Unterstützte Boxen und
+ Firmwares `__\ ` `__
+| MD5: ``C7CB456536421690480A52EC1D11F493``
+
+.. _Freetz1.0.122.11.2008:
+
+Freetz 1.0.1 (22.11.2008)
+~~~~~~~~~~~~~~~~~~~~~~~~~
+
+| `freetz-1.0.1.tar.bz2 `__ (1,9 MB)
+| `Changelog `__\ ` `__
+| `Unterstützte Boxen und
+ Firmwares `__\ ` `__
+| MD5: ``D2F9E508363E8F09E1588BC07CF31488``
+
+.. _Freetz1.006.06.2008:
+
+Freetz 1.0 (06.06.2008)
+~~~~~~~~~~~~~~~~~~~~~~~
+
+| `freetz-1.0.tar.bz2 `__ (1,8 MB)
+| `Changelog `__\ ` `__
+| `Unterstützte Boxen und
+ Firmwares `__\ ` `__
+| MD5: ``8EE2D9BF552C565F89024AAE6F1F8394``
+
+- Tags
+- `download `__
diff --git a/wiki/FAQ.en.rst b/wiki/FAQ.en.rst
new file mode 100644
index 0000000..2f14040
--- /dev/null
+++ b/wiki/FAQ.en.rst
@@ -0,0 +1,967 @@
+.. _Freetz-FAQ:
+
+Freetz-FAQ
+==========
+
+This page answers some **F**\ requently **A**\ sked **Q**\ uestions
+about *Freetz*. It is still under construction.
+
+Be aware that there is a more complete `FAQ `__ version in
+`German `__.
+
+.. _Projectnameandhistory:
+
+Project name and history
+------------------------
+
+.. _WhatisFreetz:
+
+What is Freetz?
+~~~~~~~~~~~~~~~
+
+ *Freetz* is a toolbox for developers and experienced users to build a
+ modified firmware based on the original firmware for the
+ DSL/LAN/WLAN/VoIP-Routers `AVM
+ Fritz!Box `__ and
+ `T-Com
+ Speedport `__
+ (identical hardware) and to transfer this firmware to the device.
+ There are many extension packages available, along with options to
+ remove unwanted functionality from the original firmware.
+
+.. _WheredoesthenameFreetzcomefrom:
+
+Where does the name Freetz come from?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+ It is a contraction of the word "free" and the name "Fritz", intended
+ to mirror the name of the devices manufactured by
+ `AVM `__ . With this, we want to symbolise that
+ *Freetz* is free software. In order to avoid intellectual property
+ problems with AVM, whose registered trademark "Fritz!" (with
+ exclamation mark) we explicitly acknowledge, we have chosen this
+ deliberately different spelling. The idea for the name came from
+ Alexander Kriegisch (kriegaex), who decided together with Oliver Metz
+ (olistudent) what the project should be called when the
+ version-managed source code repository would be opened to the public.
+ From the (in our opinion daft-sounding) alliteration "Free Fritz" we
+ got "Freetz". ("OpenFritz " was also considered, but we didn't want
+ to ape `OpenWrt `__ .) We don't claim that the
+ name is fantastic, but it is short and hopefully easy to remember.
+ |:-)|
+
+.. _HowshouldIpronounceFreetz:
+
+How should I pronounce Freetz?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+ Like the English word "free" with a German-sounding "tz" on the end,
+ something like "freets".
+
+.. _HowdidFreetzstart:
+
+How did Freetz start?
+~~~~~~~~~~~~~~~~~~~~~
+
+ There are many predecessors to *Freetz* . A few years ago, Daniel
+ Eiband (danisahne) started the *Danisahne-Mod* ( *DS-Mod* ) based on
+ the previous work and cooperation of other creative people (Erik
+ Andersen, Christian Volkmann, Andreas Bühmann, Enrik Berkhan and
+ others). As with *Freetz* , this allowed and allows modified
+ firmwares to be created, but only for older firmware-versions with
+ Linux kernel 2.4. Since some routers still have firmwares based on
+ the Linux 2.4 kernel, the version
+ `ds-0.2.9-p8 `__
+ is still the current version for some hardware. For the majority of
+ current hardware, the immediate predecessor of *Freetz* is, however,
+ *ds26* (latest version
+ `ds26-15.2 `__
+ ), created by Oliver Metz, which is only suitable for firmware using
+ Linux kernel 2.6. The same applies to *Freetz* as *Freetz* is
+ currently nothing other than the current development version of
+ *ds26* with a new name. In many files you will therefore still find
+ the name *DS-Mod* , which will gradually be replaced with the new
+ name *Freetz* .
+
+.. _WhychangethenamewhenDS-Modhasalreadybecomewell-known:
+
+Why change the name when DS-Mod has already become well-known?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+ There are multiple reasons. For one, Daniel has not been actively
+ involved in the development of *ds26* for well over a year. For
+ another, he has already started a new project at
+ `SourceForge `__ to develop a new *DS-Mod*
+ from scratch - which we inoffically call *DS-Mod NG (Next
+ Generation)* - for which the source code repository is publicly
+ available on his `project website `__
+ . We don't wish to take Daniel's project name from him, or to compete
+ with him, but actually hope that he will eventually have more time
+ for his project and that we will be able to combine both versions to
+ have the strengths of both of them in one product. However, at this
+ point in time, the projects have split significantly; *DS-Mod NG* has
+ a very clean structure, but is not yet finished whereas *Freetz*
+ (previously *ds26* ) is already widely used and is gradually being
+ refactored during the process of development. Where *DS-Mod* was
+ talked about in recent press coverage (e.g.
+ `PC-Welt `__
+ ), *Freetz* alias *ds26* was meant.
+
+.. _WhyissomuchofFreetzandthedevelopmentinGerman:
+
+Why is so much of Freetz and the development in German?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+ AVM is a German company, and their hardware is mainly sold on the
+ German market, where it is very popular and generally the
+ German-language (and German telecoms-system) versions of their
+ products are the first to be released. It is therefore not surprising
+ that the project started in Germany and most of the developers are
+ German. There are some current ideas of how to better integrate
+ internationalization support, and although most development
+ discussions take place in German, contributions in English are most
+ welcome (and will usually be answered in English).
+
+.. _Motivation:
+
+Motivation
+----------
+
+.. _Whychangethefirmware:
+
+Why change the firmware?
+~~~~~~~~~~~~~~~~~~~~~~~~
+
+ It is possible to edit some special files (character devices) under
+ /var/flash where the contents still exist after reboot, but this is
+ not true for the rest of the filesystem. The content of these
+ character devices is located in its own rather tiny flash partition.
+ Most data is stored on a read-only SquashFS filesystem which can only
+ be modified during a firmware update, using a SquashFS filesystem
+ image. To permanently include (larger) files into the firmware, they
+ must be put into the SqashFS image, which is implemented in Freetz.
+
+.. _Distribution:
+
+Distribution
+------------
+
+.. _CanIgetafinishedbinaryofFreetz:
+
+Can I get a finished binary of Freetz?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+ The short answer is no, and this is never likely to be possible.
+ *Freetz* works by taking the original firmware and applying patches
+ to it. Since the original firmwares contain software which is
+ non-free, as well as some which is free, that means we are not able
+ to distribute finished binary versions. Also, given the number of
+ permutations of modules and hardware then it would be impossible to
+ meet all needs with a limited number of binaries and so it is
+ actually of advantage to have users build their own firmware,
+ tailored to their individual needs.
+
+.. _HowcanIgetFreetz:
+
+How can I get Freetz?
+~~~~~~~~~~~~~~~~~~~~~
+
+ See the `Getting Started `__ page for how to check out
+ the source code and get started with *Freetz* . Note that this
+ requires a working Linux installation (a Live-CD or Virtual Machine
+ version will do if you do not want to fully install Linux on your
+ computer). Please make sure that you have basic Linux skills before
+ requesting help as this will make your, and our, lives easier.
+
+.. _Whichtypeofboxesandwhichfirmwareversionsarecurrentlysupported::
+
+Which type of boxes and which firmware versions are currently supported?:
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+ | a.)
+ `Freetz-1.1.4 `__\ ` `__
+ | b.)
+ `freetz-stable-1.1 `__\ ` `__
+ | c.)
+ `Trunk `__\ ` `__
+
+.. _Development:
+
+Development
+-----------
+
+.. _Whenwillversionxybereleased:
+
+When will version xy be released?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+ Generally speaking: It's done when it's done. The developers are
+ working in their off time, new releases are provided if the
+ decided-on features are completed and critical bugs were fixed.
+
+..
+
+ Still, a rough plan for new releases does exist: 3-4 months after a
+ stable release we declare a "Feature-Freeze" for the following
+ release. From that time on, only bugs are being fixed. The
+ feature-freeze dates are announced in the `roadmap `__ .
+ After the feature-freeze you can expect the final release to be
+ released in about 1 to 1,5 months. Between the stable
+ feature-releases there can be some maintenance-releases provided to
+ support newer firmware versions by AVM or some error-fixes.
+
+.. _TrunkBranchesTags:
+
+Trunk, Branches, Tags?
+~~~~~~~~~~~~~~~~~~~~~~
+
+ The `trunk `__ is the current development tree. A
+ branch is a tree which is separated from the trunk at a specific time
+ (e.g. `r2759 `__ ). Currently the following branches
+ are available:
+ `freetz-stable-1.0 `__ and
+ `freetz-stable-1.1 `__ . All
+ release versions are tagged (e.g.
+ `freetz-1.1.4 `__ )
+
+..
+
+ To check out a stable version:
+
+ .. code:: bash
+
+ svn co http://svn.freetz.org/branches/freetz-stable-1.1 freetz-stable-1.1
+
+ To check out a tag:
+
+ .. code:: bash
+
+ svn co http://svn.freetz.org/tags/freetz-1.1.4 freetz-1.1.4
+
+ To check out the development version (trunk):
+
+ .. code:: bash
+
+ svn co http://svn.freetz.org/trunk freetz-trunk
+
+ Attention! The development version (trunk) is only recommended to
+ novice users with basic Linux knowledge who can troubleshoot
+ elementary errors and can give proper feedback to the developers.
+ Because the trunk is an ongoing development version, it won't be as
+ stable as the branched and tagged versions.
+
+.. _WhenfeatureXYisimplemented:
+
+When feature XY is implemented?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+ The fastest way is to present an working solution. We take notice of
+ every reasonable feature request. Due to the developers designing
+ Freetz in their off time, you have to be patient sometimes.
+
+.. _IlikeFreetzandIwanttosupportthedevelopment.:
+
+I like Freetz and I want to support the development.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+ It is possible to donate money to the development team using the
+ Paypal donation button at the bottom right-hand corner. Further, a
+ specific hardware variation will of course be better supported when
+ the development team has some test hardware. Currently we would very
+ much benefit from some 7270s (who wouldn't?!). There is a thread on
+ the topic of donations at
+ `IPPF `__
+ .
+
+.. _Pre-Configurationmenuconfig:
+
+Pre-Configuration (menuconfig)
+------------------------------
+
+.. _DoIhavethe8MBv1or16MBv2versionoftheFB7270:
+
+Do I have the 8MB (v1) or 16MB (v2) version of the FB 7270 ?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+| 1.) read the support file at
+ `http://fritz.box/html/support.html `__
+| 2.) The file should contain the following entry:
+
+- 8MB: **flashsize 0x00800000**
+- 16MB: **flashsize 0x01000000**
+
+| 00800000 Hex = 8.388.608 decimal = 8.192 KB = 8 MB
+| 01000000 Hex = 16.777.216 decimal = 16.384 KB = 16 MB
+| More details are described
+ `[here] `__.
+
+.. _WhatareindicatorsforaFB7270v3:
+
+What are indicators for a FB 7270v3 ?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+- the firmware version. Firmwares for the 7270v3 start with 74.xx.xx
+- the `serial number `__
+
+.. _WhichpackagesshouldbebuiltintoaFreetzimage:
+
+Which packages should be built into a Freetz image ?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+ We recommend Dropbear? to have SSH access, as well as
+ `dnsmasq `__ as DHCP server replacement.
+
+.. _Whatdoesbinaryonlymean:
+
+What does "binary only" mean ?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+ Packages tagged with "binary only" do not supply any web frontend,
+ init script or anything similar. They provide only the binaries
+ themselves, which means you have to take care of the configuration,
+ initialization etc. yourself. (Note: Other than the name (maybe)
+ suggests, these packages are - along with every other package in
+ Freetz - built from source.)
+
+.. _ImageBuildmakebuild:
+
+Image Build (make/build)
+------------------------
+
+.. _Meaningofthespecificmake-targets:
+
+Meaning of the specific make-targets
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+A: The make-targets are influencing the `build
+process `__ and creating the
+firmware. Most of the following information was taken from `this
+thread `__
+originally.
+
+**1. Clean-Up:**
+
+- *make clean
+ *\ …
+
+- *make -clean*:
+ Basically, this calls the clean-target of the original package's
+ Makefile. It will delete all generated files (first and foremost the
+ object-files, libraries and executables) but leaves its configuration
+ intact.
+ A following *make* command doesn't apply changed patches, but creates
+ only the above-named object-files, libraries and executables from the
+ source-files (compiling).
+ Example: *make mc-clean* would clean the "Midnight Commander" package
+ (mc).
+
+- *make -dirclean*:
+ Deletes the whole directory of the package. A following *make*
+ command will extract the files, apply the patches, configure and
+ compile the package.
+ Only the last stage (compilation) would take place after a *make
+ -clean* command (as described above).
+
+- *make dirclean*:
+ As the name implies, this performs a "directory-cleanup". The
+ directories */packages, /source, /build, /toolchain/build,
+ toolchain/target* (and some other stuff(?)will be deleted, so that a
+ following *make* command must build everything new. This is
+ recommended if changes caused by *svn up* will result in a firmware
+ which is not working as expected. Alternatively, if you know exactly
+ which package(s) are causing them problem, you can clean these
+ package files via *make -dirclean* individually (see above).
+ Note that, after a *make dirclean*, the build process to create the
+ firmware will take more time than it did before because everything
+ must be rebuilt from scratch.
+
+- *make tools-distclean*:
+ deletes the tools (busybox, lzma, squashfs, others)
+
+- *make distclean*:
+ In addition to *make dirclean*, this also deletes the download folder
+ and the tools.
+
+- *make config-clean-deps*:
+ If some packages were deselected via *make menuconfig*, maybe some
+ shared libraries are still selected but are not needed anymore by any
+ active package (that happens because *menuconfig* cannot recognize
+ this by itself). Such libraries can manually be disabled under
+ 'Advanced Options'→'Shared Libraries' - libaries; the ones that are
+ still in use cannot be deselected. Alternatively, you can also do
+ this automatically via *make config-clean-deps*. Furthermore, Busybox
+ applets manually selected in *make menuconfig* will be reset (*not\*
+ those modified via *make busybox-menuconfig*!).
+
+- *make config-clean-deps-keep-busybox*:
+ Like *make config-clean-deps*, but does not reset Busybox applets.
+
+- *make kernel-dirclean*:
+ deletes the current source-tree of the kernel, to build it completely
+ new from clean sources. (important if something has changed at the
+ kernel patches)
+
+- *make kernel-clean*:
+ analogue to *make -clean*
+
+- *make kernel-toolchain-dirclean*:
+ deletes the kernel compiler
+
+- *make target-toolchain-dirclean*:
+ deletes the compiler for the uClibc and the binaries (executables)
+
+**2. Preparations:**
+
+- *make world*:
+ Prerequisite is a toolchain (see `Cross-Compiler / Create
+ Toolchain `__).
+ If problems with non-existing directories occur, it's possible that
+ *make world* can fix this. But normally this should not be necessary.
+
+- *make kernel-toolchain*:
+ compiles the kernel and also for the target (Fritzbox)
+ Due to historical reasons the label was kept as *kernel-toolchain*,
+ although, as mentioned, not only the kernel will be built but also
+ the packages (see below).
+
+- *make target-toolchain*:
+ Compiles the packages for the target (Fritzbox).
+
+- *make kernel-menuconfig*:
+ The configuration of the kernel will be saved after finishing under
+ ./make/linux/Config..
+
+- *make kernel-precompiled*:
+ Build the kernel and the kernel modules.
+
+- *make menuconfig*
+ (`Source `__): To
+ configure Freetz it makes use of *conf/mconf*, which some or other
+ already knows from the linux kernel configuration. The
+ `ncurses `__ variant *mconf*
+ can be called with the command *make menuconfig*.
+ By the way:
+ A help for each item can be accessed directly in *menuconfig* by
+ pressing "?".
+ After entering "/" you can search across all leaves for any strings -
+ really practical.
+
+.. _Buildinganotherfirmwarelanguage:
+
+Building another firmware language
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+The firmware language/version should match your box type, else your box
+will go into a reboot loop.
+
+Check the advanced option *Enforce urlader environment* and put **avm**
+in *Patches > Enforce firmware_version variable* to build German
+firmware for an international box. If you want to do this (or the other
+way around with **avme** for English firmware on a non-international
+box), `read about recovery `__ and have
+a working/recovery image ready.
+
+.. _Problemsduringbuilding:
+
+Problems during building
+~~~~~~~~~~~~~~~~~~~~~~~~
+
+If you encounter problems during the build process, go through this list
+first:
+
+.. _YoumusthaveeitherhavegettextsupportinyourClibraryorusetheGNUgettextlibrary.:
+
+You must have either have gettext support in your C library, or use the GNU gettext library.
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+ There is a wrong value in config.cache. Delete the file by typing:
+ "rm make/config.cache" or "rm source/target-mipsel_uClibc- *0.X.XX*
+ /config.cache"
+
+.. _ERROR:Theprogramlibraryheaderxywasnotfound:
+
+ERROR: The program/library/header xy was not found…
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+ If the build process was interrupted by this message, some necessary
+ packages for the build system are missing. Please install them and
+ restart the build process.
+
+.. _WARNING:Theprogramlibraryheaderxywasnotfound:
+
+WARNING: The program/library/header xy was not found…
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+ If the build process was interrupted by this message, maybe some
+ packages providing the needed library are missing. This can be caused
+ by selecting some options or packages in menuconfig. Please install
+ the needed libraries by installing the packages and restart the build
+ process.
+
+.. _NosuchfileFRITZ.Box_xxxxxxxxx.aa.bb.cc.image:
+
+No such file \`FRITZ.Box_xxxxxxxxx.aa.bb.cc.image'
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+ This happens every time AVM releases a new firmware version. Normally
+ only the newest file is available on the AVM FTP server. Freetz can
+ only support the version that's current at the release date. Due to
+ license restrictions, we cannot provide these images. Possible
+ solutions (prioritized by difficulty):
+
+- for everyone: at
+ `Firmware-Collector-Thread `__
+ you can ask for an older firmware version (NO beta firmwares). The
+ image must be downloaded and copied to the directory 'dl/fw'.
+- for beginners: Use the ``stable`` Branch from the SVN repository. If
+ possible, update to a newer version which supports the latest AVM
+ firmware versions (or wait for an upcoming Freetz release).
+- for novices: Use the developing tree (``trunk``) from the SVN
+ repository. The latest firmware versions are supported here.
+- for experts: At make menuconfig? under *Advanced Options ⇒ Override
+ firmware source* change the name of the file to download and use.
+
+Please use the last 2 possibilities at your own risk. If it's just a
+"bugfix release" (like the update from .57 to .59) it should work
+without errors. However, if major changes were done by AVM at the latest
+firmware release, use it carefully!!
+
+.. _Pleasecopythefollowingfileintothedlfwsub-directorymanually:fritz_box_aa_bb_cc-ddddd.image:
+
+Please copy the following file into the 'dl/fw' sub-directory manually: fritz_box_aa_bb_cc-ddddd.image
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+ The beta firmwares (Labor-Firmware) cannot be downloaded from the
+ AVM-FTP-Server. Please download them manually from the
+ `AVM-Labor-Site `__ . You must agree the
+ license terms to get the file. After finishing download, put all
+ files into the 'dl/fw' directory. Please also consider the headpoint
+ before.
+
+.. _a.ln:cannotexecutebinaryfile:
+
+./ln: cannot execute binary file
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+ The current working directory '.' is within the path (variable PATH).
+ To make a successfully build, the directory must be removed.
+
+.. _Filesystemimagetoobig:
+
+Filesystem image too big
+^^^^^^^^^^^^^^^^^^^^^^^^
+
+ The firmware image doesn't fit into the flash memory of the selected
+ box.
+
+- With some boxes, this can happen if none of the packages are
+ selected, because the basic Freetz components use some space and the
+ AVM images are just under the maximum flash size. In this case, it's
+ neccessary to use one or more Remove-Patches under the
+ 'Patches'-Section to remove unused components of the original
+ firmware.
+- If a lot packages are selected, reconsider if all packages are really
+ necessary, or try via
+ `external `__/`Downloader `__/`USBRoot `__/`NFSRoot `__
+ to externalize some of the components to reduce the image size.
+ Further information is available at
+ `IPPF `__ and
+ in the
+ `WIKI `__
+- With boxes with an USB-Host (e.g. 7170,7270) you can externalize some
+ packages on an USB device (e.g. USB Stick, USB hard disk). The
+ externalize-process is done at the end of the build process via the
+ `external `__-script. At
+ menuconfig, there is an option to do the externalizing. Only
+ predefined parts of packages are being externalized to a USB-Device,
+ as opposed to using USB-Root which will move the entire file system
+ onto the USB drive.
+- If a package was deselected, maybe some shared libraries are still
+ enabled but are not needed anymore. (menuconfig cannot recognize this
+ by itself). These libraries can manually be deselected under
+ 'Advanced Options'→'Shared Libraries' - libraries currently in use
+ cannot be deselected. Another option is to do this via the command
+ *make config-clean-deps* or *make config-clean-deps-keep-busybox*,
+ respectively.
+
+.. _WARNING:Notenoughfreeflashspaceforansweringmachine:
+
+WARNING: Not enough free flash space for answering machine!
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+ The image is small enough to fit on flash memory, but you have not
+ enough free space left for the answering machine, or non space left.
+ The firmare should work in spite of this message, but to ensure a
+ fully functional answering machine or fax service, you should use an
+ FAT-formatted USB-Stick to use this space for the answering machine,
+ fax service and other services.
+
+..
+
+ Background Information: Since a few firmware versions, AVM tries to
+ use the remaining bytes in the Flash to create an jffs2-Partition. In
+ this partition all data for e.g. the answering machine, fax service
+ and so on are stored. On older boxes (e.g. 7170) the jffs2-Partition
+ cannot be created as space howsoever is very limited. Please see this
+ message as an warning. More informations at the
+ `IPPF-Thread `__
+ . In FREETZ available since revision `r3049 `__ .
+
+.. _Theproblemstilloccurs.Whatnow:
+
+The problem still occurs. What now?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+ At first go into the 'Advanced Options' of menuconfig, change the
+ 'Verbosity Level' to 2 and execute make again. After that go to the
+ `IPPF Forum `__
+ and search for the error message or for an existing thread. If
+ nothing could be found, create a new thread to get help with the
+ given error message (please post it inside Code-Tags), the file
+ .config (your configuration as attachment) and the used version or
+ SVN branch/-revision.
+
+.. _FlashingofCompiledImage:
+
+Flashing of Compiled Image
+--------------------------
+
+.. _ProblemsaftersuccessfulFlashing:
+
+Problems after (successful) Flashing
+------------------------------------
+
+.. _Settingsarenotavailableatcurrentsecuritylevel:
+
+Settings are not available at current security level
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+ There are several security levels. The level can be changed using the
+ following commands:
+
+ .. code:: bash
+
+ echo x > /tmp/flash/security ( after r3318: echo x > /tmp/flash/mod/security)
+ modsave
+
+ * with x being one of the following values:
+ * 0 : no restrictions
+ * 1 : only configuration files without shell commands (shell scripts) can be modified
+ * 2 : no configuration files can be modified
+
+.. _Whatisthedefaultpasswordforfreetz:
+
+What is the default password for freetz?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+The default password for freetz (both for console and web login) is
+"freetz". Login name for console is "root", and for the web interface it
+is admin. When you first log in using telnet or ssh, you have to change
+your password.
+
+.. _Theinfoledblinkstwiceperiodically:
+
+The info led blinks twice periodically
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+See `this
+thread `__.
+
+.. _Configuration:
+
+Configuration
+-------------
+
+.. _WereisthewholeconfigurationstoredontheFritzbox:
+
+Were is the whole configuration stored on the Fritzbox ?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+ The whole configuration on the Fritzbox can be found under
+ /tmp/flash. This is important if you build a Freetz firmware, because
+ the configuration is not located in the static firmware part of the
+ image. All files located under /tmp/flash were not be edited during a
+ firmware update, so the configuration files will be keeped after a
+ firmware update. Important, always execute "modsave" after making
+ changes on the configuration files under /tmp/flash, to save them in
+ the flash. More information about that see below.
+
+.. _Configurationnotavailableatthecurrentsecuritylevel:
+
+Configuration not available at the current security level!
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+ There are different security levels. Depending on the selected level,
+ not all configuration files are editable.
+
+ .. code:: bash
+
+ echo x > /tmp/flash/security (since r3318: echo x > /tmp/flash/mod/security)
+ modsave
+ # with x being one of the following values:
+ # 0 : no restrictions
+ # 1 : only configuration files without shell commands (shell scripts) can be modified
+ # 2 : no configuration files can be modified
+
+|Warning| **ATTENTION:** Between x and > there must be at least a single
+blank space. If there isn't, the file will be empty. (echo will redirect
+to stdout. The output would be empty then. Alternatively, you could also
+write "x">security.
+
+This must be done after installing the new firmware on the Box via
+Telnet or SSH (not possible over the Rudi-Shell, because it also
+requires security level "0").
+
+.. _HowcanidisablethepasswordfortheFreetz-Website:
+
+How can i disable the password for the Freetz-Website?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+ Execute the following command on the terminal:
+
+ .. code:: bash
+
+ touch /tmp/flash/webcfg_conf
+ chmod +x /tmp/flash/webcfg_conf
+ modsave flash
+ /etc/init.d/rc.webcfg restart
+
+ Background: The script /tmp/flash/webcfg_conf will be preferred
+ compared to /etc/default.webcfg/webcfg_conf to create the
+ configuration file. An empty script /tmp/flash/webcfg_conf will
+ create an empty configuration file without a password.
+
+..
+
+ |Warning| For Freetz-1.1.x replace */tmp/flash/webcfg_conf* with
+ */tmp/flash/httpd_conf* .
+
+.. _HowcanichangethepasswordfortheFreetz-Website:
+
+How can i change the password for the Freetz-Website?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+ This can be done via the `web
+ interface `__ by itself:
+ ``http://fritz.box:81/cgi-bin/passwd.cgi``
+
+.. _HowcaniresetthepasswordfortheFreetz-WebsiteincaseIvelostitbutstillhaveaccessviatelnetSSH:
+
+How can i reset the password for the Freetz-Website in case I've lost it but still have access via telnet/SSH ?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+ At first, stop the Freetz-Webif:
+
+ .. code:: bash
+
+ /etc/init.d/rc.webcfg stop
+
+ Then use vi to open the file mod.cfg and edit the line that begins
+ with "export MOD_HTTPD_PASSWD" as follows:
+
+ .. code:: bash
+
+ vi /var/mod/etc/conf/mod.cfg
+
+ .. code:: bash
+
+ export MOD_HTTPD_PASSWD='$1$$zO6d3zi9DefdWLMB.OHaO.'
+
+ Now start the Freetz-Web interface:
+
+ .. code:: bash
+
+ /etc/init.d/rc.webcfg start
+
+ Now you can log in to the Web interface with the password "freetz".
+
+..
+
+ | Please consider, that this change will **NOT** persist across
+ reboots. So after a reboot, you still have the old unknown
+ password.
+ | Therefore, you should change the password of the Box in the
+ freetz-menu under *Settings* before you reboot your Fritzbox.
+
+.. _HowcanIchangetheroot-Password:
+
+How can I change the root-Password?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+ Execute the following commands on the terminal:
+
+ .. code:: bash
+
+ passwd
+ modusers save
+ modsave flash
+
+ After entering 'passwd' you must type in the password. While typing,
+ the password will 'not' be shown. Too simple passwords will not be
+ accepted.
+
+.. _ProblemsDuringWorking:
+
+Problems During Working
+-----------------------
+
+.. _varflashfreetztoobig:
+
+/var/flash/freetz too big
+~~~~~~~~~~~~~~~~~~~~~~~~~
+
+ The default limit set by Freetz for the maximum size of the
+ configuration was exceeded. This limit is a protection to prevent an
+ unintended full TFFS. This limit can be increased, but you should
+ keep an eye on the current fill level:
+
+ .. code:: bash
+
+ modconf set mod MOD_LIMIT=
+ modconf save mod
+ modsave flash
+
+|Warning| As of `r5706 `__ the setting MOD_LIMIT is
+obsolete.
+
+.. _NoftpaccessafterFreetz:
+
+No ftp access after Freetz
+~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+ This is a problem which occurs especially in Freetz 1.1.x. More
+ details and solution can be found in the
+ `howto `__ .
+
+.. _RemovingFREETZandOtherModifications:
+
+Removing FREETZ and Other Modifications
+---------------------------------------
+
+.. _Miscellaneous:
+
+Miscellaneous
+-------------
+
+.. _HowcanIuseanownotherDNSserverforallconnectedPCsandFritzbox:
+
+How can I use an own/other DNS server for all connected PCs and Fritzbox ?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+AVM doesn't allow the modification of the default DNS servers the Box is
+using, instead of other routers which can change it via the WebUI. (End
+of 2009).
+
+ Possible Solutions:
+
+- dnsmasq: Installation of an own DNS server on the Fritzbox with the
+ package `dnsmasq `__. This is a general
+ possibility which is working on every box. This requires a
+ modification (freetzing) of the firmware image. With an edited
+ version of /etc/resolv.conf (if using the trunk version, this is
+ possible via the GUI under "Settings"→"Freetz: resolv.conf") you can
+ add a DNS server: "nameserver 208.67.220.220" (example with the
+ OpenDNS server)
+- without dnsmasq: At some boxes, e.g. 7170(FV 29.04.76) it's possible
+ to edit the central config file of AVM. With the command "nvi
+ /var/flash/ar7.cfg" all entries of "overwrite_dns1 = xxx.xxx.xxx.xxx"
+ and "overwrite_dns2 = xxx.xxx.xxx.xxx" must be edited. It's
+ recommended that only persons with basic knowledge of nvi and telnet
+ respectivly ssh/telnet should do that! Here, the multid from AVM is
+ running as DNS server. At the resolv.conf a loopback entry
+ "nameserver 127.0.0.1" exists. This is allowing Linux standard
+ applications the resolving at the Fritzbox over the multid.
+- Editing the /etc/resolv.conf: If its only about changing the current
+ used DNS of the Fritzbox, editing /etc/resolv.conf like described
+ above at dnsmasq also works. This is only affecting the name
+ resolution of the Box, connected clients are still using the standard
+ DNS.
+
+.. _HowcanIcreatecharacterdevices:
+
+How can I create character devices ?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+Freetz uses also a `character
+device `__,
+which can save files enduring with help of a Tiny Flash Filesystems
+(TFFS) in the Flash, to save the configuration. Prerequisite is a minor
+number, which is not used by any other character device under
+``/var/flash/`` (Freetz uses the minor 0x3c), the major number can be
+read from ``/proc/devices``:
+
+.. code:: bash
+
+ mknod /var/flash/ c
+
+Because this character device is created in a
+`ramdisk `__ under ``/var/``,
+this command must be executed every time during a restart. The content
+is achieving |(?)|. |Warning| To edit such character devices **never** use
+vi! For this case, there is the wrapper script nvi.
+
+|Warning| **ATTENTION:** The flash partition of the TFFS is very small and
+not capable to contain files > 10-30 KB (depending on the size of the
+other files).
+
+The current fill level can be shown like this:
+
+::
+
+
+ echo 'cleanup' > /proc/tffs
+
+ echo 'info' > /proc/tffs
+
+ cat /proc/tffs | grep '^fill='
+
+.. _Whichnetworkcableisnecessaryforarecover:
+
+Which network cable is necessary for a recover ?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+ RJ45 standard network cable, no crossover
+
+.. _HowoldismyFritzBox:
+
+How old is my FritzBox ?
+~~~~~~~~~~~~~~~~~~~~~~~~
+
+| The first four characters of the box' serial number describe its age:
+| Example: **W484**-xxx-xx-xxx-xxx ⇒ **Thursday, 27.11.2008**
+| U = 2006
+| V = 2007
+| W = 2008
+| X = 2009
+| A = 2010
+| W451 = calendar week 45 and the first day of that week = Monday
+| W462 = calendar week 46 and the second day of that week = Tuesday
+| W473 = calendar week 47 and the third day of that week = Wednesday
+| **W484 = calendar week 48 and the fourth day of that week = Thursday**
+| W495 = calendar week 49 the fifth day of that week = Friday
+
+.. _HowmuchRAMdoesmyFritzBoxcontain:
+
+How much RAM does my FritzBox contain?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+| For the second xxxx-\ **XXX**-xxx-xxx currently, the following codes
+ are known to occur:
+
+| Example: W484-\ **305**-xx-xxx-xxx ⇒ **Fritzbox with 16MB and 1und1
+ branding**
+| 293 - HWRev 122 (8MB/7270_V1) - AVM branding
+| 294 - HWRev 122 (8MB/7270_V1) - 1und1 branding
+| 304 - HWRev 139 (16MB/7270_V2) - AVM branding
+| **305 - HWRev 139 (16MB/7270_V2) - 1und1 branding**
+| xxx - HWRev 145 (16MB/7270_V3) - ??? branding - 7270_V3
+| 307 - HWRev 139 (16MB/7270_V2) - AVME branding International Version?
+| 310 - HWRev 139 (16MB/7270_V2) - AVME branding A-/CH-Version?
+
+- Tags
+- `faq `__
+
+.. |:-)| image:: ../chrome/wikiextras-icons-16/smiley.png
+.. |Warning| image:: ../chrome/wikiextras-icons-16/exclamation.png
+.. |(?)| image:: ../chrome/wikiextras-icons-16/question.png
+
diff --git a/wiki/FAQ.rst b/wiki/FAQ.rst
new file mode 100644
index 0000000..108498e
--- /dev/null
+++ b/wiki/FAQ.rst
@@ -0,0 +1,1459 @@
+.. _Freetz-FAQ:
+
+Freetz-FAQ
+==========
+
+Hier werden häufig gestellte Fragen (engl. `FAQ `__ =
+frequently asked questions) beantwortet. Diese Seite befindet sich noch
+im Aufbau.
+
+.. _ProduktnameundHistorisches:
+
+Produktname und Historisches
+----------------------------
+
+.. _WasistFreetz:
+
+Was ist Freetz?
+~~~~~~~~~~~~~~~
+
+ *Freetz* ist ein Werkzeugkasten für Entwickler und versierte
+ Anwender, um sich für diverse DSL/LAN/WLAN/VoIP-Router der Serien
+ `AVM
+ Fritz!Box `__ bzw.
+ `T-Com
+ Speedport `__
+ (baulich ähnlich) eine auf der Original-Firmware des Herstellers
+ aufbauende, funktional modifizierte Firmware zu bauen und diese auf
+ das Gerät zu transferieren. Es werden eine Vielzahl von
+ Erweiterungspaketen angeboten, aber auch Möglichkeiten, nicht
+ benötigte Funktionalität der Original-Firmware zu entfernen.
+
+.. _WoherkommtderNameFreetz:
+
+Woher kommt der Name Freetz?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+ Es handelt sich um eine (verballhornte) Zusammensetzung aus dem
+ englischen Wort "free" (dt. frei) und dem Männernamen "Fritz",
+ welcher an den Gerätenamen des Herstellers
+ `AVM `__ erinnern soll. Wir wollen damit
+ symbolisieren, dass es sich bei *Freetz* um freie Software handelt.
+ Da wir marken- und urheberrechtlichen Problemen mit AVM, deren
+ Schutzrechte auf die Marke "Fritz!" (mit Ausrufezeichen) wir
+ ausdrücklich anerkennen, aus dem Weg gehen möchten, haben wir uns für
+ diese deutlich unterschiedliche Schreibweise entschieden. Die Idee
+ für den Namen stammt von Alexander Kriegisch, der sich gemeinsam mit
+ Oliver Metz überlegte, wie das Projekt heißen sollte, wenn das
+ versionsverwaltete Quelltext-Repository der Öffentlichkeit übergeben
+ werden würde. Aus der (nach unserem Empfinden bescheuert klingenden)
+ Alliteration "Free Fritz" wurde schließlich "Freetz". (Auch
+ "OpenFritz" war im Rennen, aber wir wollten nicht
+ `OpenWrt `__ nachäffen.) Wir bilden uns nicht
+ ein, der Name sei ein großer Wurf, aber er ist kurz und wir hoffen,
+ er ist leicht zu merken. |:-)|
+
+.. _WiewirdFreetzausgesprochen:
+
+Wie wird Freetz ausgesprochen?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+ Wie das englische Wort "free" mit angehängtem deutschem "tz",
+ pseudo-deutsch geschrieben in etwa "Friez", pseudo-englisch
+ geschrieben in etwa "freets". Anders gesagt, wie der Männername
+ "Fritz", aber mit langem "i" und mit englisch ausgesprochenem "r".
+
+.. _WieentstandFreetz:
+
+Wie entstand Freetz?
+~~~~~~~~~~~~~~~~~~~~
+
+ Es gibt einige Vorläufer von *Freetz*. Daniel Eiband (bekannt als
+ "Danisahne") hat vor einigen Jahren, aufbauend auf Vor- und
+ Zuarbeiten anderer kreativer Köpfe (Erik Andersen, Christian
+ Volkmann, Andreas Bühmann, Enrik Berkhan u.a.), den sog.
+ *Danisahne-Mod* (kurz: *DS-Mod*) ins Leben gerufen. So wie heute mit
+ *Freetz*, konnte und kann man auch damit Firmware-Modifikationen
+ bauen, allerdings noch für ältere Firmware-Versionen mit Linux-Kernel
+ 2.4. Da einige Router noch immer auf Kernel 2.4 basierende Firmwares
+ haben, ist Version
+ `ds-0.2.9-p8 `__
+ des *DS-Mod* für jene Geräte immer noch aktuell. Für die Mehrzahl
+ aktueller Geräte war der direkte Vorläufer zu *Freetz* jedoch die von
+ Oliver Metz ins Leben gerufene Version *ds26* (zuletzt
+ `ds26-15.2 `__),
+ welche ausschließlich für Firmwares mit Kernel 2.6 geeignet ist.
+ Selbiges gilt auch für *Freetz*, denn *Freetz* ist Stand heute
+ (20.01.2008) nichts anderes als die aktuelle Entwicklerversion von
+ *ds26*, nur mit neuem Namen.
+
+.. _WozuüberhaupteinneuerNamewodochDS-Modinzwischensobekanntist:
+
+Wozu überhaupt ein neuer Name, wo doch DS-Mod inzwischen so bekannt ist?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+ Es gibt mehrere Gründe dafür. Zum einen ist seit gut einem Jahr
+ Daniel nicht mehr aktiv an der Weiterentwicklung von *ds26* beteiligt
+ gewesen, zum anderen hat er bei
+ `SourceForge `__ schon etwa ebenso lange
+ begonnen, eine von Grund auf neue *DS-Mod*-Version - nennen wir sie
+ mal inofiziell *DS-Mod NG (Next Generation)* - zu entwickeln, deren
+ aktueller Stand in einem öffentlich zugänglichen Quellcode-Repository
+ auf der `Projekt-Webseite `__
+ einzusehen ist. Wir wollen Daniel seinen Projektnamen nicht streitig
+ machen und auch nicht in Konkurrenz zu ihm treten, sondern hoffen im
+ Gegenteil, dass er eines Tages wieder mehr Zeit für sein Projekt
+ haben wird und schlußendlich beide wieder in ein gemeinsames münden,
+ um alle Vorteile in einem Produkt zu vereinen. Zurzeit ist es jedoch
+ so, dass beide Projekte sich deutlich auseinander entwickelt haben:
+ *DS-Mod NG* hat eine sehr saubere Struktur, ist jedoch noch lange
+ nicht fertig, *Freetz* (bzw. bisher *ds26*) ist hundertfach im
+ Einsatz und wird eher während der laufenden Entwicklung immer wieder
+ mal Refactoring-Maßnahmen unterworfen. Wo zuletzt in der Presse (z.B.
+ `PC-Welt `__)
+ vom *DS-Mod* gesprochen wurde, war *Freetz* alias *ds26* gemeint.
+
+.. _Motivation:
+
+Motivation
+----------
+
+.. _WarumFirmwaremodifizieren:
+
+Warum Firmware modifizieren?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+ Es können zwar einzelne spezielle Dateien (character devices) unter
+ /var/flash/ bearbeitet werden und sie behalten den Inhalt auch über
+ einen Reboot hinweg, jedoch trifft das nicht auf den Rest des
+ Dateisystems zu. Der Inhalt dieser character devices landet in einer
+ eigenen Flash Partition, die sehr klein ist. Der überwiegende Teil
+ des Dateisystems ist ein read-only Squashfs Image, welches in einem
+ Firmware Update enthalten ist. Um (größere) Dateien dauerhaft in die
+ Firmware einzubinden müssen sie in dieses Squashfs Image gelangen,
+ welches unter anderem in Freetz implementiert ist.
+
+.. _Verbreitung:
+
+Verbreitung
+-----------
+
+.. _WarumwerdenkeinefertigenmodifiziertenImagesangeboten:
+
+Warum werden keine fertigen modifizierten Images angeboten?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+ Die Lizenz, unter welcher die Firmwares von AVM bereitgestellt
+ werden, untersagt dies.
+
+.. _WokannFREETZheruntergeladenwerden:
+
+Wo kann FREETZ heruntergeladen werden?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+ | Auf der Startseite sind unter `Quellcode `__
+ die Möglichkeiten zum `Download `__ von FREETZ
+ aufgelistet. Es werden sowohl erprobte stabile Versionen von FREETZ
+ als auch Entwicklerversionen angeboten. Zum Bauen eines
+ FREETZ-Images wird LINUX zwingend vorausgesetzt. Es muss nicht
+ unbedingt ein natives Linux-System auf dem PC bereits vorhanden
+ sein. Auch eine Virtuelle Maschine eurer Wahl oder eine Live-CD mit
+ Linux können zum Bauen von FREETZ benutzt werden.
+
+.. _WelcheBoxenundwelcheFirmwareswerdendurchFreetzunterstützt::
+
+Welche Boxen und welche Firmwares werden durch Freetz unterstützt:
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+ | a.)
+ `Freetz-1.1.5 `__\ ` `__
+ | b.)
+ `freetz-stable-2.0 `__\ ` `__
+ | c.)
+ `Trunk `__\ ` `__
+
+.. _Entwicklung:
+
+Entwicklung
+-----------
+
+.. _WannkommtVersionxy:
+
+Wann kommt Version xy?
+~~~~~~~~~~~~~~~~~~~~~~
+
+ Grundsätzlich: It's done when it's done. Die Entwickler arbeiten in
+ ihrer Freizeit, und Releases gibt es dann, wenn die beschlossenen
+ Features fertig und release-kritische Bugs behoben sind.
+
+..
+
+ Es gibt jedoch einen groben Plan für die Releases: 3-4 Monate nach
+ einer stabilen Release gibt es einen Feature Freeze für die
+ nachfolgende Release. Ab diesem Zeitpunkt werden nur noch Bugs
+ behoben. Die Feature-Freeze-Termine werden in der
+ `Roadmap `__ angekündigt. Nach dem Feature Freeze kann grob
+ nach 1 bis 1,5 Monaten mit dem Release gerechnet werden. Zwischen den
+ stabilen Feature-Releases gibt es ggfs. weitere Maintenance-Releases,
+ die nur neue Firmwareversionen von AVM unterstützen und Fehler
+ beheben.
+
+.. _TrunkBranchesTags:
+
+Trunk, Branches, Tags?
+~~~~~~~~~~~~~~~~~~~~~~
+
+| Der `Trunk `__ ist der aktuelle Entwicklungszweig.
+ Unter einem Branch versteht man ein Zweig, der zu einer bestimmten
+ Zeit (z.B. `r10373 `__) aus dem Trunk abgetrennt
+ wurde. Hier gibt es derzeit den Branch
+ `freetz-stable-2.0 `__. Alle
+ Releaseversionen bekommen einen Tag (z.B.
+ `freetz-1.2 `__. Zukünftig wird das dann der
+ Tag 2.0 werden.
+| Auschecken einer stabilen Version:
+
+.. code:: bash
+
+ svn co http://svn.freetz.org/branches/freetz-stable-2.0 freetz-stable-2.0
+
+Auschecken eines Tags:
+
+.. code:: bash
+
+ svn co http://svn.freetz.org/tags/freetz-1.2 freetz-1.2
+
+Nach Erscheinen des neuen Tag 2.0 wird dieser dann wie folgt
+ausgecheckt:
+
+.. code:: bash
+
+ svn co http://svn.freetz.org/tags/freetz-2.0 freetz-2.0
+
+Auschecken einer Entwicklerversion (trunk):
+
+.. code:: bash
+
+ svn co http://svn.freetz.org/trunk freetz-trunk
+
+Achtung! Die Entwicklerversion (trunk) ist nur für fortgeschrittene
+Benutzer zu empfehlen, die mit Linux-Grundlagen vertraut sind, sich bei
+elementaren Problemen selbst helfen können und den Entwicklern einen
+qualitativen Feedback geben können. Da es sich hierbei um eine laufende
+Entwicklung handelt, ist die Stabilität der Entwicklerversion meist
+nicht so hoch, wie bei Branches und Tags.
+
+.. _WannistFeatureXYfertig:
+
+Wann ist Feature XY fertig?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+ Der schnellste Weg zur Fertigstellung ist die Präsentation einer
+ funktionierenden Lösung. Wir notieren uns jedes sinnvoll erscheinende
+ Feature Request. Da wir Freetz aber in unserer Freizeit gestalten,
+ muss man sich halt manchmal gedulden.
+
+.. _FreetzgefälltmirundichmöchtedieWeiterentwicklungunterstützen.:
+
+Freetz gefällt mir und ich möchte die Weiterentwicklung unterstützen.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+ Hier gibt es einmal die Möglichkeit dem Entwicklerteam eine
+ Geldspende zukommen zu lassen. Dazu ist in der rechten untern Ecke
+ ein Paypal-Spendenbutton angebracht. Weiterhin kann eine Box
+ natürlich besser unterstützt werden, wenn das Entwicklerteam
+ "Testboxen" besitzt. Im
+ `IPPF `__
+ existiert ein Thread zum Thema Spenden.
+
+.. _Vorkonfigurationmenuconfig:
+
+Vorkonfiguration (menuconfig)
+-----------------------------
+
+.. _WieerkennneichwelcheVarianteder7270ichbesitze:
+
+Wie erkennne ich welche Variante der 7270 ich besitze?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+ Siehe
+ `hier `__.
+
+.. _WelchePaketesolltemaninsFreetzImagesinnvollerweiseeinbauen:
+
+Welche Pakete sollte man ins Freetz Image sinnvollerweise einbauen?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+ Sinnvoll ist Dropbear um später einen SSH Zugang zu haben, dnsmasq
+ als DNS- und DHCP-Server Ersatz, sowie das Syslog-Webif um Fehler zu
+ erkennen.
+
+.. _Wasbedeutetbinaryonly:
+
+Was bedeutet "binary only"?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+ "binary only" heißt, dass für das ausgewählte Paket nur das Programm
+ ("binary") selbst erstellt wird, jedoch kein Webinterface,
+ init-Skripte etc. vorhanden sind. Dies bedeutet, dass man sich selbst
+ um die Konfiguration und das Starten des Programms kümmern muss.
+
+.. _WasbedeutetEXPERIMENTALoderdieKategorieunstable:
+
+Was bedeutet "EXPERIMENTAL" oder die Kategorie "unstable"?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+ Die so gekennzeichneten Pakete haben bekannte Probleme und
+ können/sollten nicht benutzt werden. Evtl gibt es dazu noch ein
+ offenes `Ticket `__
+
+.. _Funktioniertiptablesnatconntrack:
+
+Funktioniert iptables/nat/conntrack?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+ | IPtables funktioniert überall. Allerdings wird in Fritz!OS 05.2x
+ und 05.5x von AVM der PacketAccelerator genutzt. Durch diesen
+ funktioniert conntrack nicht mehr. Und damit
+ nat/masquerading/state/transparenter Proxy und alles was sonst noch
+ von conntrack abhängt.
+ | Abhilft schafft ein Downgrade auf eine alte Firmware, zB bei der
+ 7270 ein "Alien" mit 04.88 oder gleich Freetz-1.2.
+ | Da AVM den Quellcode des PacketAccelerator veröffentlicht hat,
+ könnte das Problem von jemandem mit viel Zeit und Wissen behoben
+ werden.
+ | Das Thema wird in Ticket `#1605 `__ behandelt, und so
+ lange das Ticket noch nicht geschlossen ist besteht das Problem.
+
+.. _PacketAcceleratorAVMPA:
+
+Packet Accelerator (AVM PA)
+~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+| Der Packet Accelerator bringt auch den Nachteil mit sich, dass tcpdump
+ etc nicht mehr alle Pakete sehen. Um den PA bis zum nächsten Reboot
+ temporär zu deaktivieren:
+| ``echo disable > /proc/net/avm_pa/control``
+| Dies bringt den Nachteil mit sich, dass zB die 7390 keine 100 MBit/s
+ mehr im ATA-Modues routen kann sondern nur noch ~ 40 MBit/s. Siehe
+ auch `Funktioniert
+ iptables/nat/conntrack? `__
+
+.. _WasbedeutetnotavailablenosourcesbyAVM:
+
+Was bedeutet "not available, no sources by AVM"?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+ Die für diese Firmware passenden Kernelquellen wurden noch nicht in
+ Freetz integriert. Meist ist die Ursache dafür, dass AVM diese noch
+ nicht veröffentlicht hat. Typischerweise dauert es wenige Tage bis
+ mehrere Monate. Falls die Datei für die entsprechende FritzBox
+ mittlerweile auf `ftp://ftp.avm.de/ `__
+ veröffentlicht wurde, ein Ticket dafür öffnen. Um den Vorgang zu
+ beschleunigen empfiehlt sich, wie in den
+ `info.txt `__
+ beschrieben, schriftlich an AVM zu wenden: ``fritzbox_info@avm.de``.
+
+.. _ErstellenvonFirmware-ImagesmakeBuild:
+
+Erstellen von Firmware-Images (make/Build)
+------------------------------------------
+
+.. _Wasbedeutendieeinzelnenmake-targetsz.B.dircleandistcleanconfig-clean-depsetc.:
+
+Was bedeuten die einzelnen make-targets (z.B. dirclean, distclean, config-clean-deps etc.)?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+A: Die make-targets beeinflussen den
+`Build-Prozess `__ bei der
+FW-Erstellung. Viele der folgenden Infos entstammen (`diesem
+Thread `__).
+
+**1. Aufräumen:**
+
+- *make clean
+ *\ …
+
+- *make -clean*:
+ ruft normalerweise das clean-Target des Source-Makefiles auf. Dieses
+ wird typischerweise alle generierten Dateien (vor allem
+ Object-Dateien, Libraries und ausführbare Programme) löschen.
+ Ein nachfolgendes *make* wendet keine geänderten Patches an, sondern
+ erstellt nur die o.g. Object-Dateien, Libraries und ausführbare
+ Programme neu (compilieren).
+ Z.B. räumt *make mc-clean* so das Paket "Midnight Commander" (mc)
+ auf.
+
+- *make -dirclean*:
+ löscht das gesamte Verzeichnis des Pakets. Ein nachfolgendes *make*
+ wird die Quellen neu auspacken, die Patches anwenden, das Paket
+ konfigurieren und dann compilieren.
+ Nur der letzte Schritt (compilieren) wird nach *make -clean*
+ (s.o.) ausgeführt.
+
+- *make dirclean*:
+ führt, wie der Name schon sagt, ein "Verzeichnis-Aufräumen" durch.
+ Hierbei werden unter anderem die Verzeichnisse */packages, /source,
+ /build, /toolchain/build, toolchain/target* (und ein paar andere
+ Sachen(?)) gelöscht, sodass bei erneutem Ausführen von *make* alles
+ neu gebaut werden muss. Dies ist empfehlenswert, wenn sich Aufgrund
+ eines *svn up* eine neu gebaute Firmware nicht so Verhält, wie man es
+ erwartet. Alternativ kann man, wenn man weiß, an welchem Packet es
+ liegt, dieses auch via *make -dirclean* einzeln löschen (siehe
+ oben).
+ Zu erwähnen sei noch, dass nach einem *make dirclean* der Bau der
+ Firmware natürlich länger dauert, da ja alles neu gebaut werden muss.
+
+- *make tools-distclean*:
+ löscht die Tools (busybox, lzma, squashfs, usw.)
+
+- *make distclean*:
+ Hier werden zusätzlich zum *make dirclean* auch noch die Downloads
+ sowie die Tools gelöscht.
+
+- *make config-clean-deps*:
+ Wenn bei *make menuconfig* Pakete abgewählt wurden, sind ggfs. noch
+ Shared Libraries ausgewählt, die nicht mehr benötigt werden (dies
+ kann *menuconfig* nicht automatisch erkennen). Diese kann man dann
+ manuell unter 'Advanced Options'→'Shared Libraries' abwählen - die
+ benötigten lassen sich nicht deaktivieren. Alternativ kann man dies
+ automatisch mittels *make config-clean-deps* erledigen lassen. Dabei
+ werden übrigens auch manuell in *make menuconfig* ausgewählte
+ Busybox-Applets deselektiert (*nicht\* die in *make
+ busybox-menuconfig*!), d.h. die Busybox-Einstellungen werden auf
+ Standardwerte zurückgesetzt.
+
+- *make config-clean-deps-keep-busybox*:
+ Wie *make menuconfig*, aber die Busybox-Einstellungen bleiben
+ bestehen.
+
+- *make kernel-dirclean*:
+ löscht den aktuell entpackten Source-Tree des Kernels, um von
+ komplett sauberen Kernel Sourcen zu kompilieren (wichtig wenn was an
+ den Patches geändert wird)
+
+- *make kernel-clean*:
+ analog *make -clean*
+
+- *make kernel-toolchain-dirclean*:
+ löscht den Kernel-Compiler
+
+- *make target-toolchain-dirclean*:
+ löscht den Compiler für die uClibc und die Binaries (ausführbare
+ Programme)
+
+**2. Vorbereitungen:**
+
+- *make world*:
+ Vorraussetzung ist eine Toolchain (siehe `Cross-Compiler / Toolchain
+ erstellen `__).
+ Sollten jemals Probleme mit nicht vorhandenen Verzeichnissen
+ auftauchen, so kann ein *make world* Abhilfe schaffen. In der Regel
+ sollte das aber nicht nötig sein.
+
+- *make kernel-toolchain*:
+ kompiliert den Kernel und auch für das target (Fritzbox)
+ Aus historischen Gründen wurde die Bezeichnung als *kernel-toolchain*
+ belassen, obwohl damit wie gesagt nicht nur der Kernel gebaut wird,
+ sondern auch Pakete (s.u.).
+
+- *make target-toolchain*:
+ kompiliert die Pakete für das target (Fritzbox)
+
+- *make kernel-menuconfig*:
+ Die Konfiguration des Kernels wird danach wieder nach
+ ./make/linux/Config. zurückgespeichert.
+
+- *make kernel-precompiled*:
+ Damit werden der Kernel und die Kernel Module kompiliert.
+
+- *make menuconfig*
+ (`Quelle `__): Zum
+ Konfigurieren von Freetz kommt das Programm *conf/mconf* zum Einsatz,
+ welches dem ein oder anderen vielleicht von der Konfiguration des
+ Linux Kernels bekannt ist. Die
+ `ncurses `__ Variante *mconf*
+ kann mit dem Kommando *make menuconfig* aufgerufen werden.
+ Übrigens:
+ Eine Hilfe zu den einzelnen Punkten kann direkt in *menuconfig* durch
+ Eingabe von "?" aufgerufen werden.
+ Und nach Eingabe von "/" kann man von allen Ebenen aus nach
+ beliebigen Zeichenfolgen suchen - sehr praktisch.
+
+.. _BeimErstellentritteinFehleraufwasnun:
+
+Beim Erstellen tritt ein Fehler auf, was nun?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+ Zunächst einmal die folgende Liste der häufigen Fehler durchgehen:
+
+.. _YoumusthaveeitherhavegettextsupportinyourClibraryorusetheGNUgettextlibrary.:
+
+You must have either have gettext support in your C library, or use the GNU gettext library.
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+ Hier ist wohl ein falscher Wert im Cache gelandet, den man löschen
+ muss: "rm make/config.cache" oder "rm
+ source/target-mipsel_uClibc-\ *0.X.XX*/config.cache" jenachdem, wo
+ die Datei zu finden ist. Und danach wird der FW-Bau wieder mit "make"
+ gestartet.
+
+.. _ERROR:Theprogramlibraryheaderxywasnotfound:
+
+ERROR: The program/library/header xy was not found…
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+ Wenn mit die ersten Meldungen so aussehen, fehlen für die Erstellung
+ von Freetz unbedingt notwendige Pakete im Build-System und müssen
+ zunächst installiert werden.
+
+.. _WARNING:Theprogramlibraryheaderxywasnotfound:
+
+WARNING: The program/library/header xy was not found…
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+ Wenn die Erstellung mit einem Fehler abbricht, kann diese Warnung zu
+ Beginn des Vorgangs darauf hindeuten, dass für bestimmte ausgewählte
+ Optionen notwendige Pakete im Build-System fehlen.
+
+.. _Couldnotdownloadfirmwareimage:
+
+Could not download firmware image
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+.. _ehemals:NosuchfileFRITZ.Box_xxxxxxxxx.aa.bb.cc.image:
+
+(ehemals: No such file \`FRITZ.Box_xxxxxxxxx.aa.bb.cc.image')
+'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
+
+ | AVM selbst stellt für einen Box-Typ meist nur das aktuellste
+ Firmware-Image zum `Download `__ bereit. Jede
+ Freetz-Version unterstützt lediglich nur die Versionen, die in der
+ Datei ``FIRMWARES`` aufgelistet sind. Aus lizenzrechtlichen Gründen
+ darf das Freetz-Projekt keine AVM-Firmwares bereitstellen.
+ | Anbei Lösungsvorschläge:
+
+- Allgemeiner Hinweis: Im
+ `Suche-Firmware-Sammelthread `__
+ kann man nach älteren Firmware-Versionen fragen (das Firmware-Image
+ manuell in den Ordner ``'dl/fw/'`` im Freetz-Verzeichnis kopieren).
+- Einsteiger: Stets die aktuellste `stabile
+ Version `__ benutzen oder die
+ `Vorabversion `__ probieren!
+- Fortgeschrittene/Entwickler: Die
+ `Entwicklerversion `__ unterstützt
+ (meist) alle aktuellen Firmware-Versionen.
+- Experimentierfreudige User: In `make
+ menuconfig `__ unter
+ *Advanced Options ⇒ Override firmware source* den Namen der
+ herunterzuladenen Image Datei anpassen.
+ |Warning| Vorsicht: Evtl. sind weitere Anpassungen im Quellcode
+ notwendig und zur Sicherheit ein passendes Recover-Image bereit
+ halten.
+
+.. _Pleasecopythefollowingfileintothedlfwsub-directorymanually:fritz_box_aa_bb_cc-ddddd.image:
+
+Please copy the following file into the 'dl/fw' sub-directory manually: fritz_box_aa_bb_cc-ddddd.image
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+ Die Labor-Firmwares können nicht direkt vom AVM-FTP-Server
+ heruntergeladen werden. Sie müssen manuell von der
+ `AVM-Labor-Seite `__ geladen werden, wobei
+ die Nutzungsbedingungen zu bestätigen sind. Die Dateien müssen dann
+ entpackt und das darin enthaltene Image in den Ordner 'dl/fw' im
+ Freetz-Verzeichnis kopiert werden. Hierbei gilt auch das zur vorigen
+ Frage Gesagte.
+
+.. _a.ln:cannotexecutebinaryfile:
+
+./ln: cannot execute binary file
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+ Das aktuelle Verzeichnis '.' ist im Pfad (Variable PATH). Zum
+ erfolgreichen Erstellen muss es entfernt werden.
+
+.. _Filesystemimagetoobig:
+
+Filesystem image too big
+^^^^^^^^^^^^^^^^^^^^^^^^
+
+ Das Firmware-Image passt nicht in den Flash-Speicher der ausgewählten
+ Box.
+
+- Bei manchen Boxen kann dies bereits auftreten, wenn überhaupt keine
+ zusätzlichen Pakete ausgewählt sind, da die grundlegende
+ Freetz-Infrastruktur bereits einigen Platz belegt und die AVM-Images
+ schon knapp unter dem Maximalwert liegen. In diesem Fall ist es
+ notwendig, unter 'Patches' einen oder mehrere der Remove-Patches
+ auszuwählen, um nicht benötigte Komponenten der Original-Firmware zu
+ entfernen. Näheres dazu im
+ `IPPF `__ und
+ in
+ `WIKI `__
+- Wenn viele Pakete ausgewählt sind, sollte man sich beschränken oder
+ versuchen per `USBRoot `__ oder
+ `NFSRoot `__ die Beschränkung des Flashs zu
+ umgehen.
+- Bei Boxen mit einem USB-Host (z.B. 7170,7270) kann man außer
+ `USBRoot `__ auch einzelne Pakete auf das
+ externe USB-Medium (z.B. USB-Stick, USB-Festplatte) auslagern. Die
+ Auslagerung wird nach dem make-Prozess automatisch von einem Skript
+ namens `external `__ ausgeführt. Im
+ menuconfig finden sich die Optionen für die Auslagerung mittels
+ external. Im Unterschied zum USB-Root wird hier nicht die gesamte
+ Firmware, sondern nur ein Teil der Pakete ausgelagert.
+- Wenn Pakete abgewählt wurden, sind ggfs. noch Shared Libraries
+ ausgewählt, die nicht mehr benötigt werden (dies kann menuconfig
+ nicht automatisch erkennen). Diese kann man dann manuell unter
+ 'Advanced Options'→'Shared Libraries' abwählen - die auf benötigten
+ lassen sich nicht deaktivieren. Alternativ kann man dies automatisch
+ mittels *make config-clean-deps* bzw. *make
+ config-clean-deps-keep-busybox* erledigen lassen.
+
+.. _WARNING:Notenoughfreeflashspaceforansweringmachine:
+
+WARNING: Not enough free flash space for answering machine!
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+ Im Gegensatz zur Meldung "Filesystem image too big" passt das
+ Firmware-Image in den Flash-Speicher der ausgewählten Box, der
+ restliche Platz im Flash könnte aber für die Aufzeichnung von
+ Nachrichten auf dem von AVM in der FW integrierten Anrufbeantworter
+ zu klein sein oder komplett fehlen. Die Firmware sollte trotz dieser
+ Warnung funktionieren, für Anrufbeantworter-Daten, FAX-Nachrichten
+ und Sonstiges empfiehlt sich einen Stick mit einer FAT-Partition
+ anzulegen und entsprechend in AVM-WebIF angeben, dass der
+ Anrufbeantworter (oder andere Dienste) den externen Speicher nutzen
+ sollten.
+
+..
+
+ Hintergrundinformationen: Seit einigen Firmware-Versionen versucht
+ AVM die restlichen Bytes im Flash dafür zu nutzen, eine
+ jffs2-Partition anzulegen. Auf dieser Partition werden z.B.
+ Anrufbeantworter-Nachrichten (TAM) und evtl. noch Faxe und Ähnliches
+ abgespeichert. Bei älteren Boxen (z.B. 7170) kommt es fast immer
+ dazu, dass im Image kaum mehr Platz frei ist, sodass die
+ jffs2-Partition nicht angelegt wird und die Meldung nur als
+ Warnhinweis angesehen werden sollte. Mehr dazu im
+ `IPPF-Thread `__.
+ In FREETZ seit Revision `r3049 `__.
+
+.. _BeimErstellentrittimmernocheinFehlerauf:
+
+Beim Erstellen tritt immer noch ein Fehler auf…
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+ Zunächst einmal im menuconfig unter 'Advanced Options' das 'Verbosity
+ Level' auf 2 stellen und das make erneut ausführen. Danach im `IPPF
+ Forum `__ nach
+ der relevanten Fehlermeldung suchen und ggfs. einen passenden
+ bestehenden oder neuen Thread aufmachen, wo dann unter Angabe der
+ kompletten Fehlermeldung (bitte in Code-Tags), der Datei .config (als
+ Attachment) und der verwendeten Version oder SVN-Revision um Hilfe
+ bitten.
+
+.. _IchkanndaserzeugteFreetzImagenichtfinden:
+
+Ich kann das erzeugte Freetz Image nicht finden?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+ Freetz verschiebt alle fertigen Images in den Unterordner *images/*.
+
+.. figure:: /screenshots/116.jpg
+ :alt:
+
+|
+
+.. _Wofindeichdieseberühmte.config-Datei:
+
+Wo finde ich diese berühmte .config-Datei?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+ Die .config Datei beinhaltet die Hauptkonfiguration für den
+ make-Aufruf beim Cross-Kompilieren der Firmware und liegt genau auf
+ der Maschine die zur Erzeugung der Firmware verwendet wird und exakt
+ im selben Hauptverzeichnis von FREETZ, von dem auch make ausgeführt
+ wird. In der Datei steht z.B. welche Pakete/Branding/Libs usw. man
+ ausgewählt hat. Die Datei .config ist eine reine Textdatei und wird
+ typischerweise nach dem Aufruf von menuconfig automatisch angelegt
+ bzw. aktualisiert. Bitte diese Datei nicht mit Config.in verwechseln!
+ (häufiger Fehler) Wenn man die Datei nicht sehen kann, liegt es
+ daran, dass sie ein "dot" an der ersten Stelle hat und somit
+ versteckt ist.
+
+..
+
+ Alternativ kann man die Datei auch im selbsterzeugten Firmware-Image
+ finden, denn .image-Dateien sind nichts anderes als gewöhnliche
+ tar-Archive, die z.B. mit WinRAR oder 7Zip ausgepackt werden können.
+
+ Neuerdings wird die .config-Datei auch mit ins Image genommen (wenn
+ man es nicht explizit abwählt) und befindet sich in einer
+ komprimierten Form auf der Box. Die Datei kann über das FREETZ-WebIF
+ angesehen und sogar herunterladen werden. Zu finden ist die Datei
+ unter Status→FREETZ-Info.
+
+.. _Wiebekommeichdie.config-DateiaufdenPC:
+
+Wie bekomme ich die .config-Datei auf den PC?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+ Die .config bekommt man sehr einfach mit der
+ `WinSCP-Software `__ auf den PC
+ kopiert.
+
+Zuerst müsst Ihr euch den
+`WinSCP `__ auf den PC installieren
+und dann starten. In der Startmaske gebt Ihr folgende sachen ein (siehe
+Bild):
+
+.. figure:: /screenshots/110.jpg
+ :alt:
+
+Die benötigte IP-Adresse eurer Freetz-Buildumgebung erhaltet Ihr wenn
+ihr folgenden Befehl in der Konsole eingebt: **ifconfig**
+
+.. figure:: /screenshots/114.jpg
+ :alt:
+
+**Benutzername** und **Kennwort** sind wie gewohnt **freetz freetz** Als
+Protokoll nutzt ihr **FTP (Keine Verschlüsselung)** Wenn Ihr nun auf
+**Anmelden** drückt sollte folgendes Bild zu sehen sein:
+
+.. figure:: /screenshots/115.jpg
+ :alt:
+
+Als nächstes wechseln wir in das Hauptverzeichnis von FREETZ (im
+Beispiel ist das **freetz-trunk**).
+
+.. figure:: /screenshots/111.jpg
+ :alt:
+
+Dort makieren wir die gesuchte .config mit der Mause und öffnen das
+Kontext-Menu mit der rechten Maustaste und drücken auf kopieren:
+
+.. figure:: /screenshots/112.jpg
+ :alt:
+
+Im nächsten Fenster wählen wir nur noch das Zielverzeichnis auf dem PC
+aus und drücken auf **Kopieren**.
+
+.. figure:: /screenshots/113.jpg
+ :alt:
+
+Jetzt solltet Ihr die **.config** auf eurem PC finden.
+
+.. _FlashendesFirmware-Images:
+
+Flashen des Firmware-Images
+---------------------------
+
+.. _WieinstalliereichdasFreetz-Image:
+
+Wie installiere ich das Freetz-Image?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+**Wenn noch eine Original-AVM-Firmware installiert ist, …**
+
+gibt es zwei Möglichkeiten:
+
+- die normale Installation über das AVM-Webinterface (wie gewohnt beim
+ Update)
+- das Script tools/push_firmware.sh (befindet sich im Freetz
+ Build-Verzeichnis - also z.B. unter "freetz-1.1.4"). Hiermit lässt
+ sich auch bei den Speedports Freetz installieren, was über das
+ Webinterface nicht so einfach möglich ist `Unterpunkt: "Hochladen
+ per
+ Weboberfläche" `__
+
+**Wenn bereits Freetz auf der Box ist, …**
+
+- ist die bequemste Variante das Firmware-Update über die
+ Freetz-Webinterface-Startseite. Dabei können bei Bedarf auch die
+ AVM-Dienste weiterlaufen (Internetverbindung bleibt somit bestehen)
+ oder können Angehalten werden, um den zusätzlichen Platz im RAM zu
+ gewinnen. Das Gute an dieser Methode ist, dass man nach dem Upload
+ des Images einen ausführlichen Bericht zu sehen bekommt und
+ anschließend den Zeitpunkt des Reboots (und somit des eigentlichen
+ Updates) manuell festlegen kann.
+
+**Flashen eines freetz-images + einer
+.\ **\ `external `__\ **:
+**
+
+Grundsätzlich sei gesagt, dass für diese Funktion freetz bereits auf der
+Box laufen muss.
+
+ | Sowohl die .image-datei als auch die .external-Datei, soweit diese
+ erstellt wurde, lassen sich mit einem einzigen Rebootvorgang auf
+ die Box laden.
+ | Dabei ist folgendes Vorgehen zu empfehlen:
+
+- Die .external-Datei hochladen. Es wird automatisch versucht alle
+ Programme die schon ausgelagert wurden zu beenden. Sollte ein Fehler
+ auftreten, bitte vorher händisch alle Programme beenden. Hintergrund:
+ Beim Upload-Vorgang wird der Inhalt der alten mit der neuen .external
+ überschrieben.
+- Die .image-Datei hochladen.
+- Box-Reboot anstoßen
+
+.. _BeimFlashenmeldetdasAVM-WebinterfacedassdasImagekeinepassendeFirmwareenthält:
+
+Beim Flashen meldet das AVM-Webinterface, dass das Image keine passende Firmware enthält
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+ Das in der Box (im Urlader) eingestellte Branding muss auch in der
+ verwendeten Firmware enthalten sein. Also bitte mal prüfen, ob das
+ der Fall ist und ggfs. das Image mit dem richtigen Branding neu
+ erstellen.
+
+.. _Freetz-TrunkwurdeperAVMFirmware-UpdategeflashtnachdemNeustartscheintsichabernichtsgeändertzuhaben:
+
+Freetz-Trunk wurde per AVM Firmware-Update geflasht, nach dem Neustart scheint sich aber nichts geändert zu haben
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+ Sollte nach dem Flashen von Freetz per Firmware-Update über das
+ AVM-Webinterface und dem nachfolgenden Neustart das
+ Freetz-Webinterface auf Port 81 nicht zur Verfügung stehen und sich
+ auch die Firmware-Version im AVM-Webinterface nicht geändert haben,
+ so war vermutlich das Flashen nicht erfolgreich. Ein deutlicher
+ Hinweis darauf ist, wenn der Neustart der Box sehr schnell geht. Je
+ nach Modell der Box und Größe der Firmware kann das Flashen ein bis
+ zwei Minuten dauern und in dieser Zeit blinkt eine Kontroll-LED an
+ der Box, genauso wie bei einem normalen Firmware Update. Ursache
+ hierfür ist vermutlich ein Mangel an freiem Arbeitsspeicher auf der
+ Box während dem Update.
+
+Dann können folgende Schritte ggf. Abhilfe schaffen:
+
+- Zunächst ein Image ohne irgendwelche Pakete erstellen (was sowieso
+ empfohlen wird) und ggf. durch Remove-Patches die Größe weiter
+ reduzieren.
+- Alternativ die letzte Stable-Version oder eine andere ältere (und
+ hoffentlich kleinere) Version runterladen und kompilieren.
+- Diese Version dann über das AVM-Webinterface flashen und die Box
+ neustarten.
+- Dann das gewünschte Image über das Freetz-Webinterface (Port 81)
+ flashen und auswählen, dass die AVM Dienste heruntergefahren werden.
+- Nach dem Flash-Vorgang im angezeigten Log überprüfen, ob der Vorgang
+ erfolgreich war, und die Box über das Freetz-Webinterface neustarten.
+- Danach sollte das gewünschte Image erfolgreich geflasht worden sein.
+
+..
+
+ Weitere Informationen gibt es
+ `hier `__
+ und
+ `hier `__.
+
+.. _ProblemenachdemerfolgreichenFlashen:
+
+Probleme nach dem (erfolgreichen) Flashen
+-----------------------------------------
+
+.. _WielautetdasStandard-PasswortfürFreetz:
+
+Wie lautet das Standard-Passwort für Freetz?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+ Das Standard-Passwort für Freetz(sowohl Konsolen- als auch
+ Website-Login) lautet 'freetz'. Benutzername für die Konsole ist
+ 'root', für das Freetz-Webinterface standardmäßig 'admin'. Beim
+ ersten Einloggen per Telnet (user: root) muss das Passwort geändert
+ werden. Im Webinterface erscheint ein Hinweis, falls das
+ Standardpasswort gesetzt ist. Ändert das Passwort bitte zu eurer
+ eigenen Sicherheit.
+
+.. _NachdemFlashenistdasAVM-Webinterfacenichtmehrerreichbar:
+
+Nach dem Flashen ist das AVM-Webinterface nicht mehr erreichbar
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+ Wenn im Image (z.B. wegen OpenVPN) die OpenSSL-Libraries eingebaut
+ wurden, gibt es Probleme mit TR069. Es ist dann erforderlich entweder
+ auf OpenSSL-Libs zu verzichten, sie statisch mit in die jeweiligen
+ Pakete einzubauen (Speicherverschwendung), TR069 zu deaktivieren
+ (funktioniert nur bei älterer Firmware) oder per patch `TR069
+ komplett zu entfernen `__ (funktioniert
+ auch bei aktueller Firmware).
+
+..
+
+ Zum Deaktivieren von TR069 muss die Datei /var/flash/tr069.cfg
+ mittels nvi, nmcedit oder nnano editiert werden. So sollte es
+ aussehen:
+
+ .. code:: bash
+
+ # cat tr069.cfg
+ /*
+ * /var/flash/tr069.cfg
+ * Sun Sep 8 14:03:34 2002
+ */
+
+ tr069cfg {
+ enabled = no;
+ igd {
+ ...
+
+ Bei neueren Firmwares reicht es nicht mehr aus TR069 zu deaktivieren.
+ Hier crasht der ctlmgr auch bei anderen Aktionen beim Zugriff auf die
+ OpenSSL-Libs. Manchmal schafft das Ersetzen der libavmhmac (im
+ menuconfig unter Advanced Options→Shared Libraries→Crypto &
+ SSL→Replace libavmhmac) Abhilfe, aber auch das reicht bei neuesten
+ Firmwares nicht aus und führt eventuell zu Reboot Schleifen. Unter
+ Umständen funktionieren danach auch nicht mehr alle Funktionen, wie
+ z.B. die FritzMini Unterstützung, das Fritz-App von AVM, u.s.w.
+
+..
+
+ Um heraus zu finden, ob die problematischen OpenSSL-Libs ins Image
+ eingebunden werden, kann man folgenden Befehl ausführen:
+
+ .. code:: bash
+
+ oliver@ubuntu:~/fritzbox/freetz/trunk$ grep -E "libssl|libcrypto" .config
+ FREETZ_LIB_libcrypto=y
+ FREETZ_LIB_libssl=y
+
+ Es folgt eine Liste mit Paketen die die OpenSSL-Libs benötigen,
+ manche auch nur optional: *bip, curl, dropbear mit sftp-Support,
+ mcabber, netsnmp, OpenVPN, Tor, transmission, Vsftpd und wget*
+
+..
+
+ Man kann die betroffenen Pakete statisch zu bauen (d.h. ohne externe
+ OpenSSL-Libs). Dies ist bereits für einige Pakete möglich, wie z.B.
+ OpenVPN und CURL. Man muss allerdings beachten, dass Binaries dadurch
+ sehr gross werden, weil die OpenSSL-Libs dann ein Teil des statischen
+ Binary sind. In diesem Fall ist es anzuraten solche Pakete mit
+ `external `__ auszulagern, was aber
+ am höheren Speicherbedarf im Betrieb nichts ändert. Auch wenn
+ eigentlich kein Paket mehr die OpenSSL-Libs benötigt, kann es sein,
+ dass diese immer noch ins Image gepackt werden. Das kommt daher, dass
+ menuconfig eine automatische Abwahl nicht unterstützt. Hierfür gibt
+ es den Befehl *make config-clean-deps* bzw. *make
+ config-clean-deps-keep-busybox*.
+
+ .. code:: bash
+
+ oliver@ubuntu:~/fritzbox/freetz/trunk$ make config-clean-deps
+ Step 1: temporarily deactivate all kernel modules, shared libraries and optional BusyBox applets ... DONE
+ Step 2: reactivate only elements required by selected packages ... DONE
+ The following elements have been deactivated:
+ FREETZ_BUSYBOX_BRCTL
+ FREETZ_LIB_libcrypto
+
+ Vorsicht: Wie im Beispiel zu sehen werden hierbei auch Optionen
+ deaktiviert die absichtlich gewählt aber nicht per default aktiviert
+ sind.
+
+.. _NachdemFlashenistdieBoxnichtmehrerreichbarundoderrebootetständig:
+
+Nach dem Flashen ist die Box nicht mehr erreichbar und/oder rebootet ständig
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+ Dies kann unterschiedlichste Gründe haben. Zuerst sollte man die Box
+ vom DSL trennen und neustarten. Tritt das Problem dann nicht mehr auf
+ hat man höchst wahrscheinlich einen `Konflikt mit
+ TR069 `__.
+
+..
+
+ Wenn das nicht half lässt sich das Problem durch Einspielen einer
+ anderen Firmware in der die problematische Funktion nicht enthalten
+ ist eingrenzen. Grundsätzlich wird dies natürlich bei den
+ Original-Firmwares von AVM der Fall sein; man kann aber auch durch
+ Deaktivieren von Optionen und Neuerstellen von Freetz ausprobieren,
+ woran es liegt. Da das Webinterface nicht mehr erreichbar ist, muss
+ ein Update auf andere Weg erfolgen. Hier gibt es drei Möglichkeiten:
+
+- Das Script tools/push_firmware.sh. Hiermit lassen sich beliebige
+ Images einspielen.
+- Ein Recover-Image von AVM. Dieses spielt wieder eine
+ Original-Firmware von AVM ein.
+- Update über das Freetz Interface falls nur das AVM Interface nicht
+ erreichbar ist (häufig bei TR069 Konflikten).
+
+.. _BeimAufrufdesOriginal-AVM-WebinterfacevonaussenbekommeichtrotzPortweiterleitungnureineweisseSeite:
+
+Beim Aufruf des Original-AVM-Webinterface von aussen bekomme ich trotz Portweiterleitung nur eine weisse Seite?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+ Dies ist ein 'Sicherheitsmechanismus' von AVM der offensichtlich
+ überprüft ob der Hostname unter dem die Box aufgerufen wurde per
+ Reverse-DNS Anfrage zur Box führt. Hierbei werden sowohl die internen
+ Hostnamen akzepriert wie fritz.box oder fritz.fonwlan.box als auch
+ der DynDNS Hostname oder eigene (zb mit dnsmasq) vergebene Namen.
+ Löst der Name falsch auf wird eine leere Seite gezeigt. Dies ist z.B.
+ grundsätzlich bei Remote Zugriff auf Boxen im IP-Client Modus der
+ Fall da hier die Box den DynDNS Hostnamen und die externe IP nicht
+ kennt. Das Problem tritt aber auch auf wenn die IP der Box und
+ eventuelle Aliase in der exhosts Datei nicht übereinstimmen (manchmal
+ ein nützlicher Hinweis).
+
+..
+
+ Es gibt (mindestens) 2 Möglichkeiten diese Probleme zu umgehen:
+
+- Schnell: Man kann eine Browser Erweiterung installieren, welche es
+ erlaubt, den 'HTTP_REFERER' zu unterdrücken.
+- Komfortabel: Man startet zb mit 'Putty Portable' einen Dynamischen
+ SSH Tunnel nach Hause (zu localhost) den man im Browser als Socks5
+ Proxy mit entfernter DNS Auflösung einträgt und nutzt seine LAN
+ internen Hostnamen (auch die von dnsmasq) und IPs. Dies hat den
+ Vorteil das man nur einen SSH port nach aussen freigeben muss um
+ Zugriff auf alle TCP basierten Dienste aller Geräte zu Hause zu haben
+ - egal ob HTTP, HTTPS oder FTP und auf welchem Port. Auch
+ funtionieren alle LAN internen Bookmarks wie zu Hause. Um bequem
+ zwischen direktem und Proxy Zugriff umschalten zu können hilft zb.
+ der Firefox Plugin 'FoxyProxy' der sich auch auf 'Firefox Portable'
+ installieren lässt. Wenn man dann noch über HTTPS seine Box(en)
+ administriert ist die Verbindung auch lokal auf Gastsystemen nicht
+ abhörbar. Dieses Verfahren funktioniert super mit dropbear als
+ server. Der ssh client von dropbear unterstützt dagegen leider keine
+ dynamischen Tunnels, wohl aber jeder Linux OpenSSH client.
+
+.. _DasFreetz-WebinterfaceakzeptiertdieStandardkombinationfürBenutzerundPasswortadminfreetznicht:
+
+Das Freetz-Webinterface akzeptiert die Standardkombination für Benutzer und Passwort (admin/freetz) nicht
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+In den meisten Fällen hilft es, wenn man die Freetz-Konfiguration (und
+alle anderen Mods) löscht. Dies kann zum Beispiel über ein
+Pseudo-Firmware Update mit Hilfe des
+`uninstall.image `__\ ` `__
+geschehen.
+
+.. _KannmanPaketePatchesnachinstallierenohnedasFREETZ-Imageneuzuerstellen:
+
+Kann man Pakete/Patches nachinstallieren, ohne das FREETZ-Image neu zu erstellen?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+ Nein, das ist im Normalfall und ohne Weiteres nicht möglich. Nach
+ einer Veränderung der Konfiguration unter "menuconfig" sollte
+ typischerweise ein "make" ausgeführt werden, welches als Ergebnis ein
+ neues Image liefern soll. Dieses Image muss dann über Firmware-Update
+ auf die Box gebracht werden, wenn man seine Änderungen auf der Box
+ haben will. Einer der Gründe dafür ist das spezielle Dateisystem im
+ Flash-Speicher der Box. Dieses Dateisystem ähnelt einer Archivdatei,
+ ist sehr stark komprimiert und speziell für Flash-Speicher optimiert.
+ Änderungen in einem solchen Dateisystem sind jedoch immer mit einer
+ neuen Rearchivierung verbunden und erfordern somit den Neuaufbau des
+ kompletten Systems.
+
+..
+
+ Es gibt jedoch Ausnahmen aus dieser Regelung:
+
+- `external `__. Man kann nur die
+ Binaries der ausgelagerten Pakete neu kompilieren. Somit kann man
+ z.B. ein Paket updaten, ohne ein neues Image zu erstellen. Diese
+ Methode ist allerdings sehr riskant, weil external typischerweise
+ nicht alle Dateien auslagert. Somit läuft man immer Gefahr
+ Versionsunterschiede zwischen den ausgelagerten und fest integrierten
+ Inhalten desselben Pakets zu bekommen.
+- USB-ROOT. Hier könnte man wenigstens theoretisch das komplette
+ Dateisystem (typischerweise ext2) "on the fly" ändern und braucht
+ dafür kein Firmwareupdate. Allerdings wird auch hier dringend
+ empfohlen das USB-ROOT-System grundsätzlich als "read-only" zu
+ mounten und nur bei Bedarf (z.B. fürs Update) es kurzzeitig
+ beschreibbar zu machen.
+
+.. _NachdemFlashenistdasFreetz-Webinterfacenichtmehrerreichbar:
+
+Nach dem Flashen ist das Freetz-Webinterface nicht (mehr) erreichbar
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+ Bei der Firmware XX.05.05 (7240, 7270 V2, 7270 V3 und 7390) belegt
+ ein AVM Daemon (contfiltd) den vom Freetz Webinterface verwendeten
+ Port 81. Um wieder Zugriff auf das Freetz Webinterface zu erhalten
+ ist die Kindersicherung im AVM Webinterface zu deaktivieren. Wer
+ dieses Feature benötigt sollte das Freetz Webinterfaces auf einen
+ anderen Port verlegen. Dies kann über das Webinterface
+ (Freetz→Weboberfläche) oder per Kommandozeile (Telnet, SSH) erledigt
+ werden.
+
+.. _DerdynamischeTeildesAVM-Webinterfaceverhältsichnichtwieerwartet:
+
+Der dynamische Teil des (AVM-)Webinterface verhält sich nicht wie erwartet
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+Aktualisiert man die Firmware und macht dabei einen Versionssprung im
+AVM Teil (z.B. von 05.05 nach 05.21 bei der 7270v2 oder von einer
+Laborversion 05.06 nach 05.21 bei der 7390), kann es vorkommen, dass der
+dynamische Teil des Webinterfaces nicht ordnungsgemäß funktioniert (z.B.
+JavaScript Fehler "jxl.getFormElements is not a funtion"). Besonders
+auffällig ist das unter *Internet→Zugangsdaten*: Wechselt man zwischen
+den Zugangsmöglichkeiten, sollte sich die Seite eigentlich dynamisch
+(JavaScript) anpassen, tut sie aber nicht. Daher grundsätzlich **nach
+einer Firmwareaktualisierung**, und insbesondere wenn das Webinterface
+auffällig erscheint, **den Browsercache löschen**!
+
+.. _Freetzaktualisieren:
+
+Freetz aktualisieren
+--------------------
+
+.. _IchhabemomentaneineLaborversioninstalliert.KannichFreetzeinfachdarüberflashen:
+
+Ich habe momentan eine Laborversion installiert. Kann ich Freetz einfach darüber flashen?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+Es ist ratsam die Box zunächst zu recovern. Anschliessend den letzten
+Finalrelease aufspielen (falls es eine aktuellere Firmware gibt als das
+Recovery-Image). Außerdem sollte man insbesondere nach einer
+Aktualisierung von einer Laborversion den Browsercache löschen (auch
+wenn man die AVM Recovery auf die Box gespielt hat).
+
+**WICHTIG**: Vor dem Recovern (mindestens) die aktuellen Zugangsdaten
+bereithalten (alternativ Start-Code). Zugangsdaten findet man als 1&1
+Kunde beispielsweise im 1&1 Controllcenter unter "Zugangsdaten".
+
+.. _IchhabeeinealteFreetz-FirmwareaufderBox:
+
+Ich habe eine alte Freetz-Firmware auf der Box
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+.. _UpdatevonFreetz-VersionXYaufFreetz-VersionYZ::
+
+Update von Freetz-Version XY auf Freetz-Version YZ:
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+| In diesem Fall muss **nur** ein neues Freetz kompiliert / gebaut
+ werden. Wie das geht ist
+ `hier `__ oder `hier für
+ Newbies `__ beschrieben.
+
+.. _WennAVMeineneueFirmwareaufdenMarktbringt:
+
+Wenn AVM eine neue Firmware auf den Markt bringt
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+| In diesem Fall muss Freetz ebenfalls neu gebaut werden, jedoch muss
+ man eine Freetz-Version benutzen die dieses neue AVM-Firmware bereits
+ unterstützt. Welche Firmware-Versionen von welcher Freetz Version
+ unterstützt wird kann man hier nachgelesen: `Unterstützte Firmwares in
+ den unterschiedlichen
+ Freetz-Versionen `__
+
+Es empfiehlt sich in diesem Fall, Freetz neu auszuchecken und für die
+neue AVM Firmware komplett neu zu kompilieren, anstatt eine "alte"
+Build-Umgebung wiederzuverwenden (auch *make distclean* oder *make
+dirclean* sind unter Umständen nicht so effektiv, wie von vorne
+anzufangen).
+
+.. _Konfiguration:
+
+Konfiguration
+-------------
+
+.. _WolandendiediversenKonfigurationenaufderFritzbox:
+
+Wo landen die diversen Konfigurationen auf der Fritzbox?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+ Sämtliche Konfigurationen auf der Fritzbox liegen unter /tmp/flash.
+ Dies ist zu beachten, wenn man eine Freetz-FW baut, da die
+ Konfigurationen damit nicht im festen Firmware-Teil im Image liegen.
+ Alles unter /tmp/flash wird daher beim FW-Update auch nicht
+ verändert, so dass die diversen Konfigurationen nach einem FW-Update
+ auch erhalten bleiben. Wichtig ist, dass man nach Änderungen an
+ Konfigurationsdateien unter /tmp/flash noch das Kommando "modsave" in
+ der Konsole aufruft, damit sie auch gespeichert werden. Näheres dazu
+ folgt weiter unten.
+
+.. _KonfigurationinderaktuellenSicherheitsstufenichtverfügbar:
+
+Konfiguration in der aktuellen Sicherheitsstufe nicht verfügbar!
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+ Es gibt verschiedene Sicherheitsstufen. Je nach ausgewählter Stufe
+ sind nicht alle Konfigurationsdateien änderbar. Um die
+ Sicherheitsstufe zu ändern sind folgende Befehle direkt in der
+ Konsole der Box per Telnet oder SSH auszuführen (geht leider nicht
+ per Rudi-Shell, denn die benötigt selbst eine Sicherheitsstufe "0").
+
+..
+
+ Ermitteln der aktuellen Sicherheitsstufe (hier: Freetz-1.1.4):
+
+ .. code:: bash
+
+ cat /tmp/flash/security
+
+ **Freetz-1.1.x und älter:**
+
+ .. code:: bash
+
+ echo 0 > /tmp/flash/security <--- Bsp. #1: Setzen von Stufe "0" (keine Restriktionen, VORSICHT!)
+ modsave <--- Speichern der neuen Sicherheitsstufe
+
+..
+
+ **Ab Freetz-1.2.x und SVN-trunk
+ ≥\ **\ `r3318 `__\ **:**
+
+ .. code:: bash
+
+ echo 1 > /tmp/flash/mod/security <--- Bsp. #2: Setzen von Stufe "1" (Konfigurationsdateien editierbar)
+ modsave <--- Speichern der neuen Sicherheitsstufe
+
+ Erlaubte Werte mit Erläuterung (Default: 2):
+
+ .. code:: bash
+
+ # 0 : no restrictions
+ # 1 : only configuration files without shell commands might be edited
+ # 2 : no configuration files might be edited
+
+.. _WiedeaktiviereichdasPasswortfürdieFreetz-Webseite:
+
+Wie deaktiviere ich das Passwort für die Freetz-Webseite?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+ Folgende Befehle auf der Konsole ausführen:
+
+ .. code:: bash
+
+ touch /tmp/flash/webcfg_conf
+ chmod +x /tmp/flash/webcfg_conf
+ modsave flash
+ /etc/init.d/rc.webcfg restart
+
+ Hintergrund: Das Skript /tmp/flash/webcfg_conf wird gegenüber
+ /etc/default.webcfg/webcfg_conf zum Erstellen der Konfigurationsdatei
+ bevorzugt. Ein leeres Skript /tmp/flash/webcfg_conf erzeugt also eine
+ leere Konfigurationsdatei ohne Passwort.
+
+|Warning| Für Freetz-1.1.x ist */tmp/flash/webcfg_conf* durch
+*/tmp/flash/httpd_conf* zu ersetzen.
+
+.. _WieändereichdasPasswortfürdieFreetz-Webseite:
+
+Wie ändere ich das Passwort für die Freetz-Webseite?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+ Das geht über das
+ `Webinterface `__ selbst:
+ ``http://fritz.box:81/cgi-bin/passwd.cgi``
+
+.. _WieändereichdasPasswortfürdieFreetz-WebseitesofernichesvergessenundTelnetSSH-Zuganghabe:
+
+Wie ändere ich das Passwort für die Freetz-Webseite sofern ich es vergessen und Telnet/SSH-Zugang habe?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+ Erstmal das Freetz-Webif stoppen:
+
+ .. code:: bash
+
+ /etc/init.d/rc.webcfg stop
+
+ Dann mit vi in der Datei mod.cfg die Zeile, die mit export
+ MOD_HTTPD_PASSWD beginnt, wie folgt abändern:
+
+ .. code:: bash
+
+ vi /var/mod/etc/conf/mod.cfg
+
+ .. code:: bash
+
+ export MOD_HTTPD_PASSWD='$1$$zO6d3zi9DefdWLMB.OHaO.'
+
+ | Speichern der Änderung: 1x ESC drücken und ``:wq`` eingeben.
+ | Nun wieder das Freetz-Webif starten:
+
+ .. code:: bash
+
+ /etc/init.d/rc.webcfg start
+
+ Jetzt kann man sich mit dem Passwort "freetz" wieder einloggen.
+
+..
+
+ | Bitte beachtet, dass diese Änderung **NICHT** reboot-resistent ist.
+ Heißt, nach einem Reboot habt ihr wieder das vormalige, unbekannte
+ Passwort.
+ | Deshalb sollte man vor einem Neustart der Box im freetz-Menü unter
+ *Einstellungen* das Passwort ändern/neu setzen.
+
+.. _Wieändereichdasroot-Passwort:
+
+Wie ändere ich das root-Passwort?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+ Folgende Befehle auf der Konsole ausführen:
+
+ .. code:: bash
+
+ passwd
+ modusers save
+ modsave flash
+
+ Nach Eingabe des Befehls 'passwd' muss das Passwort eingegeben
+ werden. Dabei wird das eingegebene Passwort 'nicht' angezeigt. Zu
+ einfache Passwörter werden nicht akzeptiert.
+
+.. _Änderndesroot-PasswortesüberdieRudi-Shell:
+
+Ändern des root-Passwortes über die Rudi-Shell
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+| Wenn man das root-Passwort vergessen hat, aber noch Zugriff auf das
+ Webinterface hat kann über die Rudi-Shell ein neues Passwort gesetzt
+ werden:
+| ``(echo neuespasswort; sleep 1; echo neuespasswort) | passwd``
+
+.. _WarumkannichmichnacheinerFreetz-WiederherstellungnichtmehramAVM-WebUIanmelden:
+
+Warum kann ich mich nach einer Freetz-Wiederherstellung nicht mehr am AVM-WebUI anmelden?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+Ist ein Passwort für das AVM-WebUI vergeben, wird dies als Hash in der
+ar7.cfg abgelegt und damit auch gesichert. Bei der Wiederherstellung
+setzt Freetz anstatt des ursprünglichen Passworts den Hash-String als
+Passwort. Im
+`IP-Phone-Forum-Wiki `__
+ist beschrieben, wie man über einen Shell-Zugang die Passwort-Hashes
+auslesen kann.
+
+.. _ProblemeimBetrieb:
+
+Probleme im Betrieb
+-------------------
+
+.. _varflashfreetztoobig:
+
+/var/flash/freetz too big
+~~~~~~~~~~~~~~~~~~~~~~~~~
+
+ Das von Freetz vorgegebene Limit für die maximale Größe der
+ Konfiguration wurde überschritten. Dieses Limit ist ein Schutz, um
+ nicht unbeabsichtigt das TFFS volllaufen zu lassen. Das Limit kann
+ folgendermaßen erhöht werden, man sollte aber den Füllstand des TFFS
+ im Auge behalten:
+
+ .. code:: bash
+
+ modconf set mod MOD_LIMIT=
+ modconf save mod
+ modsave flash
+
+|Warning| Seit `r5706 `__ (trunk) wird das Setzen des
+Limits nicht mehr unterstützt.
+
+.. _KeinFTP-ZugriffnachFreetzmöglich:
+
+Kein FTP-Zugriff nach Freetz möglich
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+Hierbei handelt es sich um ein Problem das hauptsächlich in Freetz 1.1.x
+auftritt und wie im `Howto `__ beschrieben
+gelöst werden kann.
+
+.. _EntfernenvonFreetzundanderenModifikationen:
+
+Entfernen von Freetz und anderen Modifikationen
+-----------------------------------------------
+
+ Im Ordner tools/images befindet sich ein uninstall image, das wie
+ eine Firmware übers Webinterface geflasht wird und die
+ Konfigurationsdateien entfernt. Da hiermit nur die
+ Konfigurationsdateien entfernt werden ist natürlich auch noch eine
+ original Firmware einzuspielen. Das "Update" sollte vor einem
+ Neustart erfolgen, da die Konfigurationsdateien ansonsten wieder
+ angelegt werden. Am Einfachsten ist der Weg über ein AVM Recover
+ (Dateien gibts für jede Box auf dem AVM-FTP). Auch hier werden
+ sämtliche Konfigurationsdateien von Freetz gelöscht.
+
+.. _Sonstiges:
+
+Sonstiges
+---------
+
+.. _ÄndernderArbeitsgruppevonfreetz-linux:
+
+Ändern der Arbeitsgruppe von "freetz-linux"
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+| Damit unter Windows 7 und Vista der virtuelle PC "FREETZ-LINUX" in der
+ Netzwerkumgebung angezeigt wird, müssen der Client- und Host-PC in der
+ gleichen "Arbeitsgruppe" befinden:
+
+- Die erste Möglichkeit wäre, die Arbeitsgruppe des Host-PC in FREETZ
+ zu ändern (und ist für Anfänger empfehlenswert).
+
+- Die zweite und schönere Lösung ist es, die Arbeitsgruppe des
+ virtuellen PC (also freetz-linux) anzupassen.
+ Dazu geht man wie folgt vor:
+
+..
+
+ | An freetz-linux anmelden
+ | Die smb.conf öffnen mit:
+
+ .. code:: bash
+
+ sudo nano /etc/samba/smb.conf
+
+ | Dann zur workgroup runterscrollen und dort den Namen ändern.
+ | Die smb.conf speichern mit: "strg+x"
+
+ Und zum Schluss Samba neu starten:
+
+ .. code:: bash
+
+ sudo /etc/init.d/samba restart
+
+.. _WiefindeichdieIPmeinerVirtuellenMaschine:
+
+Wie finde ich die IP meiner Virtuellen Maschine
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+| Die IP wird einem entweder beim Einloggen im Startbildschirm (Roter
+ Kasten) oder mit folgendem Befehl : **ifconfig** in der VM angezeigt.
+| Nach Eingabe von **ifconfig** sollte folgende Anzeige in der VM zu
+ sehen sein.
+
+.. code:: bash
+
+ eth0 Link encap:Ethernet Hardware Adresse 08:00:27:45:53:49
+ inet Adresse:192.168.XXX.203 Bcast:192.168.XXX.255 Maske:255.255.255.0
+ inet6-Adresse: XXXX::XXXX:XXXX:XXXX:XXXX/XX Gültigkeitsbereich:Verbindung
+ UP BROADCAST RUNNING MULTICAST MTU:1500 Metrik:1
+ RX packets:454 errors:0 dropped:0 overruns:0 frame:0
+ TX packets:155 errors:0 dropped:0 overruns:0 carrier:0
+ Kollisionen:0 Sendewarteschlangenlänge:1000
+ RX bytes:59413 (59.4 KB) TX bytes:24972 (24.9 KB)
+ Interrupt:10 Basisadresse:0xd020
+
+ lo Link encap:Lokale Schleife
+ inet Adresse:127.0.0.1 Maske:255.0.0.0
+ inet6-Adresse: ::1/128 Gültigkeitsbereich:Maschine
+ UP LOOPBACK RUNNING MTU:16436 Metrik:1
+ RX packets:15 errors:0 dropped:0 overruns:0 frame:0
+ TX packets:15 errors:0 dropped:0 overruns:0 carrier:0
+ Kollisionen:0 Sendewarteschlangenlänge:0
+ RX bytes:1122 (1.1 KB) TX bytes:1122 (1.1 KB)
+
+| Wie auf dem Auszug zu sehen hat die VM die **192.168.XXX.203** als IP
+ bekommen. Die IP kann aber von System zu System anders lauten, das ist
+ Abhängig vom IP-Bereich eures Systems. Sollte euch jedoch dort gar
+ keine IP angezeigt werden, müsst ihr die Einstellungen eures PC's bzw.
+ eures VM-Players erneut überprüfen.
+
+.. _WeiterführendeLinks:
+
+Weiterführende Links
+--------------------
+
+`Sonstige Tips und Tricks zur Fritzbox
+allgemein `__
+
+- Tags
+- `faq `__
+
+.. |:-)| image:: ../chrome/wikiextras-icons-16/smiley.png
+.. |Warning| image:: ../chrome/wikiextras-icons-16/exclamation.png
+
diff --git a/wiki/FreetzConf2011.rst b/wiki/FreetzConf2011.rst
new file mode 100644
index 0000000..0c10581
--- /dev/null
+++ b/wiki/FreetzConf2011.rst
@@ -0,0 +1,29 @@
+.. _FreetzConf2011:
+
+FreetzConf 2011
+===============
+
+Zum ersten Mal seit Bestehen des Projekts treffen sich die
+Freetz-Entwickler
+
+- am 12. und 13. November 2011
+- in Frankfurt am Main
+- im Hackerspace des Frankfurter Chaos Computer Clubs (vgl.
+ `Ankündigung `__),
+
+der uns freundlicherweise Räumlichkeiten zur Verfügung stellt, in denen
+wir uns kennenlernen, gemeinsam arbeiten und über die Zukunft von Freetz
+reden können.
+
+Ankündigung Chaos Computer Club Frankfurt e.V. `Entwicklertreffen
+“FreetzConf 2011″ im
+Hackquarter `__ Die
+Veranstaltung ist **nicht öffentlich**, Teilnahme nur auf Einladung.
+Sollte jemand aktuell noch nicht eingeladen sein, aber gern teilnehmen
+wollen, weil er vergessen wurde und/oder vorhat, in irgendeiner Form zum
+Projekt beizutragen, so möge er sich bitte im
+`IPPF `__ per PN
+an olistudent oder kriegaex wenden.
+
+- Tags
+- `FreetzConf `__
diff --git a/wiki/Impressum.rst b/wiki/Impressum.rst
new file mode 100644
index 0000000..3772910
--- /dev/null
+++ b/wiki/Impressum.rst
@@ -0,0 +1,46 @@
+.. _Impressum:
+
+`Impressum `__
+------------------------------
+
+**Betreiber**
+
+Der Anbieter der Domain freetz.org und aller zugehöriger Subdomains ist
+das Freetz Projekt. Primärer Ansprechpartner für inhaltliche Belange
+ist:
+
+| Alexander Kriegisch
+| Schillerplatz 6
+| D-91315 Höchstadt
+
+| Tel. +49 (9193) 52 76
+| Mob. +49 (176) 20 53 07 02
+
+| Nutzungsbedingungen
+| Weite Teile der Website werden mit Hilfe eines sogenannten Wikis
+ verwaltet, das es Besuchern gestattet, selbständig Informationen
+ einzutragen oder vorhandene Informationen zu editieren. Die im Wiki
+ verwalteten Informationen können somit von praktisch jedermann
+ verändert werden.
+
+Die Benutzer sind aufgerufen, alle Inhalte, die sie zu dieser Website
+beisteuern, nach bestem Wissen zu erstellen. Weder der Anbieter noch die
+einzelnen Benutzer erheben aber Anspruch auf Vollständigkeit,
+Aktualität, Qualität und Richtigkeit. Es kann deshalb keine
+Verantwortung für Schäden übernommen werden, die durch das Vertrauen auf
+die Inhalte dieser Website oder deren Gebrauch entstehen.
+
+| Lizenz für Wiki-Inhalte
+| Sämtliche Inhalte des Wikis werden unter der Creative Commons Lizenz
+ `Namensnennung-Weitergabe unter gleichen Bedingungen
+ 2.0 `__
+ angeboten. Autoren, die eigene Texte zu unserem Wiki beitragen,
+ erklären sich ausdrücklich damit einverstanden, daß ihre Beträge
+ ebenfalls unter diesen Bedingungen zur Verfügung gestellt werden.
+
+| Vorgehen bei Beanstandungen
+| Sollte Grund zur Beanstandung von hier angebotenen Inhalten oder
+ verlinkten Seiten bestehen, bitten wir um sofortige Benachrichtigung.
+ Der Anbieter wird dann so schnell wie möglich reagieren und ggf. die
+ betroffenen Inhalte korrigieren bzw. beseitigen. Dies gilt vor allem
+ für eventuelle Fälle von Urheberrechtsverletzungen.
diff --git a/wiki/Press.en.rst b/wiki/Press.en.rst
new file mode 100644
index 0000000..a44c41a
--- /dev/null
+++ b/wiki/Press.en.rst
@@ -0,0 +1,16 @@
+.. _Freetzinpublicpressweb:
+
+Freetz in public press & web
+============================
+
+- Fon blog, 2008-06-09: `AVM (Fritzbox) öffnet
+ sich.... `__
+ News item concerning availibility of freetz-1.0, relating to Heise
+ news ticker
+- Heise.de, 2008-06-09: `Freie Router-Erweiterung für AVMs
+ Fritzboxen `__
+ News ticker entry concerning availibility of freetz-1.0
+- PC-Welt, 2007-11-20: `DS-Mod: Hohe Schule für
+ Firmware-Mods `__
+ Report about ds26, Fretz's predecessor, within an article about
+ "router tuning" for different hardware types
diff --git a/wiki/Press.rst b/wiki/Press.rst
new file mode 100644
index 0000000..c4c2682
--- /dev/null
+++ b/wiki/Press.rst
@@ -0,0 +1,40 @@
+.. _FreetzinPresseundWeb:
+
+Freetz in Presse und Web
+========================
+
+- CHIP online, 11.09.2010, `Freetz: Neue FritzBox-Software
+ erstellen `__
+- CHIP online, `Gratis-eBook: Das große inoffizielle FRITZ!Box
+ Handbuch `__
+- CHIP Ausgabe 2/2010, FritzBox zum Server aufbohren
+- c't Ausgabe 17/2009, S. 61, Fritzens neue Tricks
+ `http://www.ctmagazin.de/0917061 `__
+- Tecchannel vom 18.06.09, `Alternative Fritz!Box-Firmware Freetz 1.1
+ ist
+ fertig... `__
+- c't Ausgabe 4/2009, S. 172, Hotline: DNS-Server im WLAN nachrüsten
+ `http://www.heise.de/ct/faq/hotline/09/04/04.shtml `__
+- PC Magazin Ausgabe 12/2008, Free Fritz! Eigene FritzBox-Firmware mit
+ Freetz!
+ dreiseitiger Bericht über Freetz (freetz-stable-1.0).
+- PC-Welt, 27.06.2008 `Fritz!Box: Neue Features
+ durch... `__
+ Bezugnehmend auf die TecChannel-Meldung
+- Techchannel, 27.06.2008 `Fritz!Box: Neue Firmware selbst
+ gebaut... `__
+ Teil 6 des Specials über AVM-Router und deren
+ Modifikationsmöglichkeiten
+- Fon-Blog, 09.06.2008: `AVM (Fritzbox) öffnet
+ sich.... `__
+ Meldung zur Freigabe von freetz-1.0, bezugnehmend auf Heise-Meldung
+- Heise.de, 09.06.2008: `Freie Router-Erweiterung für AVMs
+ Fritzboxen `__
+ Meldung zur Freigabe der Version freetz-1.0
+- PC-Welt, 20.11.2007: `DS-Mod: Hohe Schule für
+ Firmware-Mods `__
+ Bericht über ds26, den Vorgänger von Freetz, im Rahmen des Themas
+ "Router-Tuning" zu verschiedenen Router-Modellen
+- Neue FritzBox-Firmware selbst bauen mit Freetz: `Das inoffizielle
+ Fritz!Box Handbuch (E.F.
+ Engelhardt) `__
diff --git a/wiki/common/source_code.en.rst b/wiki/common/source_code.en.rst
new file mode 100644
index 0000000..15b096a
--- /dev/null
+++ b/wiki/common/source_code.en.rst
@@ -0,0 +1,89 @@
+.. _Sourcecode:
+
+Source code
+===========
+
+The Freetz source code is managed in a
+`Subversion `__ repository. Subversion is
+generally abbreviated by SVN.
+
+.. _Developerversiontrunk:
+
+Developer version (trunk)
+-------------------------
+
+|Warning| This version is only for experienced users and developers who
+know how to help themselves! The trunk changes continuously and might
+temporarily contain bugs or not work at all.
+
+Check out from SVN:
+
+.. code:: bash
+
+ $ svn co http://svn.freetz.org/trunk <--- check out current trunk revision
+ $ svn co http://svn.freetz.org/trunk trunk_7843 -r 7843 <--- check out specific trunk revision (here: 7843) into subdirectory
+ "trunk_7843", so as not to overwrite the current trunk directory
+
+Check out from Git (|Warning| Git is not the leading system and is
+officially unsupported presently. We provide it "as is" for test
+purposes.):
+
+.. code:: bash
+
+ $ git clone https://github.com/Freetz/freetz.git freetz-devel <--- freetz-devel: local copy of Git repository
+
+.. _Updates:
+
+Updates
+-------
+
+How to update an existing local SVN repository (here: developer
+version):
+
+.. code:: bash
+
+ $ cd trunk
+ $ svn up <--- update to current revision
+ $ svn up -r 7843 <--- update to specific revision (here: 7843)
+
+How to update an existing local Git repository (here: developer
+version):
+
+.. code:: bash
+
+ $ cd freetz-devel
+ $ git pull
+
+.. _Stableversion:
+
+Stable version
+--------------
+
+|Warning| **The "stable" version is not maintained anymore. Newer boxes as
+well as firmwares are not available there. Please use whenever possible
+the trunk as mentioned above.** |Warning|
+
+For some box types no firmware is available on AVM servers. Help
+yourself using this
+`info <../FAQ.html#Couldnotdownloadfirmwareimage>`__.
+
+Depending on your hardware type you need one of the following Freetz
+versions:
+
+**freetz-2.0**: current stable version (list of supported boxes and
+firmware versions)
+
+.. code:: bash
+
+ $ svn co http://svn.freetz.org/branches/freetz-stable-2.0
+
+**ds-0.2.9-p8** (kernel 2.4): for very old boxes which do not get AVM
+firmware updates anymore (more
+`info `__)
+
+.. code:: bash
+
+ $ svn co http://svn.freetz.org/tags/ds-0.2.9-p8
+
+.. |Warning| image:: ../../chrome/wikiextras-icons-16/exclamation.png
+
diff --git a/wiki/common/source_code.rst b/wiki/common/source_code.rst
new file mode 100644
index 0000000..ffd7085
--- /dev/null
+++ b/wiki/common/source_code.rst
@@ -0,0 +1,104 @@
+.. _Quellcode:
+
+Quellcode
+=========
+
+Der Freetz-Quellcode wird in einem
+`Subversion `__-Repository verwaltet.
+Subversion wird allgemein abgekürzt mit SVN.
+
+.. _EntwicklerversionTrunk:
+
+Entwicklerversion (Trunk)
+-------------------------
+
+| |Warning| Diese Version ist ausschließlich für **erfahrene Benutzer und
+ Entwickler** gedacht, die sich selbst zu helfen wissen!
+| |Warning| Sie ist ständigen Änderungen unterworfen und funktioniert daher
+ möglicherweise **nur eingeschränkt** oder **temporär nicht**!
+
+Aktuelle Liste unterstützter Boxen mit
+`Firmware-Version `__\ ` `__.
+
+Auschecken aus SVN (zuvor ggf ``umask 022`` nicht vergessen!):
+
+.. code:: bash
+
+ $ svn co http://svn.freetz.org/trunk freetz-devel <--- freetz-trunk: Lokale Kopie des SVN-Repositorys
+ $ svn co http://svn.freetz.org/trunk freetz-devel_r7843 -r 7843 <--- Bestimmte Revision auschecken (hier: 7843)
+
+Auschecken aus Git:
+
+.. code:: bash
+
+ $ git clone https://github.com/Freetz/freetz.git freetz-devel <--- freetz-git: Lokale Kopie des Git-Repositorys
+
+|Warning| `Git `__ ist nicht das führende System und
+wird derzeit nicht offiziell unterstützt, sondern nur zusätzlich zu
+Testzwecken zur Verfügung gestellt.
+
+| Hinweis-1: Ein entsprechendes Paket, welches das ``git`` Programm
+ enhält, muss auf dem Build-Host installiert sein!
+| Hinweis-2: Sollte der Projekt-Server oder das SVN-Repository nicht
+ erreichbar sein, kann alternativ das Git-Repository genutzt werden.
+| Hinweis-3: Das `Freetz
+ Git-Repository `__ auf GitHub
+ bezieht seine Daten direkt vom Projekt-Server!
+| Hinweis-4: Wer ``FREETZ_DEVELOPER_VERSION_STRING=y`` benutzt, sollte
+ sich das Ticket `fwmod: Identify SVN_VERSION within Freetz Git
+ repository `__ anschauen.
+
+.. _Updates:
+
+Updates
+-------
+
+Aktualisieren (Update) eines vorhandenen lokalen SVN-Repositorys (hier:
+Entwicklerversion):
+
+.. code:: bash
+
+ $ cd freetz-devel
+ $ svn up <--- Update auf aktuelle Revision
+ $ svn up -r 7843 <--- Update auf eine bestimmte Revision (hier: 7843)
+
+Update eines lokalen Git-Repositorys (hier: Entwicklerversion):
+
+.. code:: bash
+
+ $ cd freetz-devel
+ $ git pull
+
+.. _StabileVersion:
+
+Stabile Version
+---------------
+
+|Warning| **Die "stabile" Version wird nicht mehr gepflegt und neuere Boxen
+wie auch aktuelle Firmwares (06.X) sind hier nicht verfügbar. Es
+empfiehlt sich nur den trunk Zweig zu nutzen.** |Warning|
+
+Für einige Box-Typen kann keine Firmware von den AVM-Servern geladen
+werden: Abhilfe siehe
+`hier <../FAQ.html#Couldnotdownloadfirmwareimage>`__.
+
+Je nach Gerätetyp wird eine der nachstehenden Versionen benötigt:
+
+**freetz-2.0**: aktuellste stabile Version (Liste unterstützter Boxen
+mit
+`Firmware-Version `__\ ` `__)
+
+.. code:: bash
+
+ $ svn co http://svn.freetz.org/branches/freetz-stable-2.0
+
+**ds-0.2.9-p8** (Kernel 2.4): für sehr alte Boxen, die kein
+Firmware-Update mehr von AVM erhalten (mehr Infos
+`hier `__)
+
+.. code:: bash
+
+ $ svn co http://svn.freetz.org/tags/ds-0.2.9-p8
+
+.. |Warning| image:: ../../chrome/wikiextras-icons-16/exclamation.png
+
diff --git a/wiki/costumscript_dublesyslog.rst b/wiki/costumscript_dublesyslog.rst
new file mode 100644
index 0000000..d9e8fbb
--- /dev/null
+++ b/wiki/costumscript_dublesyslog.rst
@@ -0,0 +1,146 @@
+Ausgeführt auf einer Fritzbox 7330 mit Firmware: 107.06.03 rev27364
+Branding: avm Freetz: devel-12445 - FRITZ!OS 06.03-freetz-devel-12445
+Zum Zeitpunkt der Installation gabs noch kein stable für diese Box mit
+dieser Firmware… der derzeitige Status ist mir nicht bekannt…
+
+Intention zu Diesen CostumScript:
+
+ich wünschte die möglichkeit das syslogging (einstellbar unter
+`http://fritz.box:81/cgi-bin/conf/syslogd `__
+) über den Local logger sowohl ins Filesystem (auf einen durchs fritzos
+eingehaengten usb stick) als auch in den ram-ringbuffer zu schreiben.
+
+.. _SchrittezurLösungkannübersprungenwerden:
+
+Schritte zur Lösung, kann übersprungen werden…
+----------------------------------------------
+
+Ich habe erst einmal mit
+
+.. code:: bash
+
+ # syslogd -h
+ syslogd: invalid option -- h
+ BusyBox v1.22.1 (2014-09-13 22:25:43 CEST) multi-call binary.
+
+ Usage: syslogd [OPTIONS]
+
+ System logging utility
+ (this version of syslogd ignores /etc/syslog.conf)
+
+ -n Run in foreground
+ -O FILE Log to FILE (default:/var/log/messages)
+ -l N Log only messages more urgent than prio N (1-8)
+ -S Smaller output
+ -s SIZE Max size (KB) before rotation (default:200KB, 0=off)
+ -b N N rotated logs to keep (default:1, max=99, 0=purge)
+ -R HOST[:PORT] Log to HOST:PORT (default PORT:514)
+ -L Log locally and via network (default is network only if -R)
+ -D Drop duplicates
+ -C[size_kb] Log to shared mem buffer (use logread to read it)
+
+angeschaut was denn der BusyBox syslogd so bietet und dann mit
+
+.. code:: bash
+
+ # ps w | grep syslog
+ 4718 root 3256 S {busybox} syslogd -L -C2048
+
+geschaut wie er denn gerade so läuft. Durch editieren der Option
+"Additional command line options (for experts)" im webinterface
+(variable SYSLOGD_EXPERT_OPTIONS) habe ich es dann zu folgenden Status
+gebracht:
+
+.. code:: bash
+
+ root@FB:/var/mod/root# ps w | grep syslog
+ 4718 root 3256 S {busybox} syslogd -L -C2048 -O /var/media/ftp/uStor01/log/messages -b 20 -s 20048
+
+leider scheint es allerdings so als ob die entweder oder option im
+webinterface korrekt abstrahiert wurde und der busyboxsyslogd die zweite
+option konsequent ignoriert.
+
+nun kam eine nähere Untersuchung des Befehls logread (ebenfals mit
+parameter -h) dran welcher offenbarte das dieser aehnlich wie tail eine
+option -f bietet welche den logausgaben folgt. nun ging es daran einen
+kleinen script zu schreiben der dann beim booten jeweils gestartet wird.
+gut aber wie macht man das, unter meinen "normalen" linuxdistributionen
+schreibe ich was nach /etc/rc.local aber hier auf der freetzbox ist das
+anders… es gibt eine option im webinterface unter
+…:81/cgi-bin/file/mod/rc_custom bei welcher ich aber beim compilieren
+der firmware die editierung deaktiviert hatte. Also musste es auch per
+ssh gehen… Da mir die leute im channel ##fritzbox im freenode irc netz
+nicht weiterhelfen konnten habe ich mich wieder einmal selbst auf die
+suche gemacht…:
+
+nach diversen cds, lss und lesss fand ich dann durch
+``cat /etc/init.d/rc.mod |grep custom`` heraus das die datei unter
+/tmp/flash/mod/rc.custom zu finden ist. in der freez faq, welche mir
+freundlicherweise über den irc channel angeboten wurde und jetzt bei dem
+dort anwesenden bot auch einen alias hat…, stieß ich über dies auf den
+Hinweis wie man diese Änderung im tempfs (ram) permanent in den flash
+scriebt.
+
+.. _AlsohierdieAnleitungzurEditierungderrc.costumueberdieshell::
+
+Also hier die Anleitung zur Editierung der rc.costum ueber die shell:
+---------------------------------------------------------------------
+
+.. code:: bash
+
+ #fritzbox rc.custom ohne webinterface anlegen
+ touch /tmp/flash/mod/rc.custom
+ chmod +x /tmp/flash/mod/rc.custom
+ vi /tmp/flash/mod/rc.custom #das gewünschte reinschreiben...
+ # modsave flash # die daten vom ram in den flash übertragen...
+ Checking Freetz configuration ... changed.
+ Writing 3023 bytes to /var/flash/freetz ... done.
+
+.. _weiterdurchdieherleitungschrittezurloesungwhatever:
+
+weiter durch die herleitung (schritte zur loesung, whatever)
+------------------------------------------------------------
+
+nun hieß es erst einmal zu checken ob das fritzos meinen stick (dessen
+mountpoint man durch ``mount`` erfährt) schon einhängt bevor freetz den
+rc.custom ausführt, also getreu nach der Anleitung zur editierung der
+der rc.custum sie in folgenden Zustand versetzt:
+
+.. code:: bash
+
+ cat /tmp/flash/mod/rc.custom
+ echo testtest >> /var/media/ftp/uStor01/testlog
+ date >> /var/media/ftp/uStor01/testlog
+
+die fritzbox neugestartet und siehe da die file
+/var/media/ftp/uStor01/testlog hat den richtigen Inhalt.
+
+Gut nun sind alle nötigen infos eingehohlt und tests durchgeführt und es
+geht zu meiner…
+
+.. _Lösung::
+
+…Lösung:
+--------
+
+.. code:: bash
+
+ ////////////////
+ /tmp/flash/my/logtostick: (die datei muss natürlich auch das recht zum ausführen erhalten und in den flash permanentisiert werden...)
+ #dieser script loggt das was ueber logread aus dem ram zu lesen ist susaetzlich auf nen usb stick
+ echo logtostick started at: >> /var/media/ftp/uStor01/logtostick
+ date >> /var/media/ftp/uStor01/logtostick
+ echo current readlog content >> /var/media/ftp/uStor01/logtostick
+ logread >> /var/media/ftp/uStor01/logtostick
+ echo starting logread -f >> /var/media/ftp/uStor01/logtostick
+ logread -f >> /var/media/ftp/uStor01/logtostick
+
+ ///////////////
+ root@FB:/var/mod/root# cat /tmp/flash/mod/rc.custom
+ /tmp/flash/my/logtostick &
+ root@FB:/var/mod/root# modsave flash
+ Checking Freetz configuration ... changed.
+ Writing 3623 bytes to /var/flash/freetz ... done.
+ root@FB:/var/mod/root#
+
+happy hacking wünscht treaki —
diff --git a/wiki/freetz.en.rst b/wiki/freetz.en.rst
new file mode 100644
index 0000000..a6cb81c
--- /dev/null
+++ b/wiki/freetz.en.rst
@@ -0,0 +1,155 @@
+.. _FreetzgetsmorefromtheBox:
+
+Freetz gets more from the Box!
+==============================
+
+.. figure:: /screenshots/52.png
+ :alt:
+
+The fritzbox firmware developers can't foresee all the functions that
+you might wish for. Freetz changes this. The functionality of the box
+can be adapted to individual needs. With Freetz, functionality can be:
+
+- **added.**
+ That could, for example, be a web server or special VPN. The `list of
+ packeges `__ provides an overview of what is possible.
+- **changed.**
+ Sometimes, functionality exists but in it's original form it can't be
+ configured or there are limits on what can be configured. (e.g. the
+ integrated firewall). In this case, the `list of
+ enhancements `__ gives an overview
+ of the possibilities.
+- **removed.**
+ This can be useful when a particular feature isn't needed or when
+ additional space is needed to make way for additional packages (the
+ box's memory is quite limited). There is also an overview of the
+ options here in the `list of patches `__.
+
+.. _HowdoesFreetzwork:
+
+How does Freetz work?
+---------------------
+
+The Fritzbox firmware consists of many individual components. They are
+developed by various people and organisations and built together to form
+the Firmware. Freetz removes individual components, changes their
+configuration or puts new components in place. In this way, a new
+firmware can be built to match individual requirements. This new
+firmware can be installed using the normal firmware update function.
+
+.. _HowdoIobtainmyownFirmware:
+
+How do I obtain my own Firmware?
+--------------------------------
+
+For legal reasons you have to build your own firmware yourself. More on
+this later.
+
+.. _Prerequisites:
+
+Prerequisites
+-------------
+
+You will need:
+
+- A Linux-System. Either directly installed on the PC or in a virtual
+ machine under Windows (e.g.
+ `Freetz-Linux `__).
+- The Linux installation may need some additional packages to be
+ installed. See `einige
+ Werkzeuge `__
+- `download `__ the current release of Freetz.
+
+.. _TheProcess:
+
+The Process
+-----------
+
+Once the prerequisites are in place, you are ready to go. You need to
+take the following steps:
+
+.. figure:: /screenshots/53.png
+ :alt: Freetz menuconfig
+
+ Freetz menuconfig
+
+- **Gather Parts.**
+ The process is menu-driven. You can define define exactly what goes
+ on the box and what features it will have. Freetz understands the
+ dependencies between the components and ensures that it will put
+ together a working combination.
+- **Produce.**
+ This part takes a while, depending on the performance of the PC but
+ it will normal proceed without requiring any interaction. In
+ accordance with the selected components, source files will be
+ downloaded from the Internet. At the end, a complete firmware file
+ will exist.
+- **Install** using the normal Firmware-Update on the Box.
+- **Configure** and **use** the new features of the box. In the
+ configuration you will find a Freetz link. Under here, the packages
+ can be configured.
+
+Detailed information regarding the
+`FREETZ-Installation `__ can be found
+on the `corresponding wiki-Site `__.
+There's also special `instructions for
+newbies `__ which you should read if
+you're new to Freetz.
+
+.. _LegalBackground:
+
+Legal Background
+----------------
+
+A large proportion of the Firmware components are Open Source software.
+Their authors have explicity allowed the software to be used by anyone,
+modified and distributed. Freetz makes good use of this.
+
+Other parts of the Firmware are developed by AVM (or by other firms and
+then licenced to AVM). These components are protected and not made
+publicly available. In order to have a functioning box both these and
+the free components are required.
+
+For as long as this is the case, no complete firmware can be made
+available for download. Freetz, therefore, is limited to providing the
+tools with which anyone can build their own individual firmware.
+
+The self-built firmware should not be made available publicly. In this
+way we avoid upsetting AVM.
+
+.. _Support:
+
+Support
+-------
+
+When a self-built (and not the original) firmware is installed on the
+box, you can't expect any support from AVM if you have any questions or
+problems. You may, however, be able to get help in the
+`IP-Phone-Forum `__.
+
+.. _DonationsSupportfortheProject:
+
+Donations / Support for the Project
+-----------------------------------
+
+| If you like Freetz and would like to support its further development,
+ the developers would gladly receive any donation
+ (`Details `__).
+| Donate directly with
+ `Paypal `__.
+
+.. _FurtherLinks:
+
+Further Links
+-------------
+
+- `Available Packages `__
+- `Available Patches `__
+- `Support - Help and
+ Support `__
+- `Download Current Release `__
+- `FAQ - Frequently Asked Questions `__
+- `How To ... - Documentation of freetz
+ Modifications `__
+- `Developer
+ Information `__
diff --git a/wiki/freetz.rst b/wiki/freetz.rst
new file mode 100644
index 0000000..d906456
--- /dev/null
+++ b/wiki/freetz.rst
@@ -0,0 +1,163 @@
+.. _FreetzmachtmehrausderBox:
+
+Freetz macht mehr aus der Box!
+==============================
+
+.. figure:: /screenshots/52.png
+ :alt:
+
+Nicht immer hat der Hersteller der Box in seiner Firmware genau die
+Funktionen vorgesehen, die man sich selber wünscht. Freetz kann das
+ändern! Die Funktionalität der Box kann den individuellen Bedürfnissen
+angepasst werden. Freetz kann Funktionalität
+
+- **hinzufügen.**
+ Das könnte zum Beispiel ein Web-Server auf der Box sein oder ein
+ spezielles VPN. Die `Liste der Pakete `__ gibt hierzu
+ eine Übersicht.
+- **verändern.**
+ Manchmal ist die Funktion da, aber sie lässt sich im Original nicht
+ oder nicht detailliert genug konfigurieren (z. B. die integrierte
+ Firewall). Die `Liste der
+ Erweiterungen `__ gibt hier einen
+ Überblick.
+- **entfernen.**
+ Das kann nötig werden, wenn man eine Funktion nicht braucht oder für
+ zusätzliche Pakete Platz schaffen möchte (der Speicher der Box hat
+ seine Grenzen). Auch hier gibt es einen Überblick in der `Liste der
+ Patches `__.
+
+.. _WiefunktioniertFreetz:
+
+Wie funktioniert Freetz?
+------------------------
+
+Die Firmware der Box besteht aus vielen einzelnen Komponenten. Sie
+wurden von verschiedenen Personen und Firmen entwickelt und bilden
+gemeinsam die Firmware der Box. Freetz tauscht nun einzelne Komponenten
+aus, verändert ihre Konfiguration oder fügt neue Komponenten ein. So
+entsteht eine neue Firmware für die Box ganz nach den individuellen
+Wünschen. Diese neue Firmware kann über die gewohnte Update-Funktion auf
+die Box installiert werden. Die ursprüngliche Funktionalität inklusive
+der AVM Weboberfläche bleibt erhalten, Freetz kann sozusagen als
+Erweiterung angesehen werden.
+
+.. _WiebekommeicheineeigeneFirmware:
+
+Wie bekomme ich eine eigene Firmware?
+-------------------------------------
+
+Aus rechtlichen Gründen muss jeder seine Firmware selbst bauen. Dazu
+später mehr.
+
+.. _Voraussetzungen:
+
+Voraussetzungen
+---------------
+
+Dazu braucht man:
+
+- Ein Linux-System. Entweder direkt auf dem PC installiert oder in
+ einer Virtuellen Maschine unter Windows (z.B.
+ `Freetz-Linux `__).
+- Möglicherweise muss das Linux noch um `einige
+ Werkzeuge `__ ergänzt werden.
+- Den aktuellen Release von Freetz `downloaden `__.
+
+.. _Ablauf:
+
+Ablauf
+------
+
+Sind die Voraussetzugen geschaffen, kann es los gehen. Es ist soweit,
+die individuelle Firmware …
+
+.. figure:: /screenshots/53.png
+ :alt: Freetz menuconfig
+
+ Freetz menuconfig
+
+- **Zusammenstellen.**
+ Der Prozess ist menü-gesteuert. Man kann festlegen, was genau in die
+ Box kommt und worauf man verzichten kann/will/muss. Freetz kennt die
+ Abhängigkeiten unter den Komponenten und sorgt für eine
+ funktionierende Kombination.
+- **Herstellen.**
+ Abhängig von der Leistungsfähigkeit des Pcs dauert dieser Prozess
+ eine kleine Weile, läuft im Normalfall aber automatisch ab. Je nach
+ gewählten Komponenten, werden dabei weiter Dateien (Quellen) aus dem
+ Internet geladen. Nach Abschluß ist eine fertige Firmware (Image)
+ entstanden.
+- **Installieren** über das normale Firmware-Update der Box.
+- Die neuen Funktionalitäten auf der Box **konfigurieren** und
+ **benutzen**. In der Konfiguration der Box findet sich jetzt in Link
+ auf Freetz. Hier können die zusätzlichen neuen Pakete konfiguriert
+ werden.
+
+Detaillierte Information über die Freetz-Installation finden sich auf
+der `entsprechenden Wiki-Seite `__. Für
+Anfänger existiert eine spezielle
+`Anleitung `__, die man als
+Freetz-Neuling unbedingt lesen sollte.
+
+Die Einstellungen in der FritzBox bleiben normalerweise bei einem
+Upgrade auf Freetz erhalten.
+
+.. _RechtlicheHintergründe:
+
+Rechtliche Hintergründe
+-----------------------
+
+Ein grosser Teil der Komponenten der Firmware ist freie Software. Ihre
+Autoren haben erlaubt, dass sie von jedem verwendet, modifiziert und
+weitergegeben werden kann. Davon macht Freetz reichlich Gebrauch.
+
+Ein anderer Teil aber ist von AVM (oder anderen Firmen) entwickelt und
+geschützt. Diese Komponenten sind geschützt und nicht öffentlich
+zugänglich. Für eine funktionierende Box braucht es aber beide Teile.
+
+Solange das so ist, darf keine fertige Firmware zum
+`Download `__ angeboten werden in der AVM-Teile stecken.
+Freetz muss sich deshalb darauf beschränken die Werkzeuge zu liefern,
+mit denen jeder seine individuelle Firmware selbst bauen kann.
+
+Die selbst gebaute Firmware sollte nicht öffentlich zugänglich gemacht
+werden. Das erspart möglichen Ärger mit AVM.
+
+.. _Support:
+
+Support
+-------
+
+Wenn die selbst gebaute Firmware in der Box ist (und nicht mehr das
+Original), kann man bei Fragen und Problemen **keinen Support von AVM**
+erwarten. Hilfe kann man jetzt im
+`IP-Phone-Forum `__
+finden.
+
+.. _UnterstützungSpenden:
+
+Unterstützung / Spenden
+-----------------------
+
+| Falls Dir Freetz gefällt und du seine Weiterentwicklung unterstützen
+ möchtest, freuen sich die Macher über jede Spende
+ (`Details `__).
+| Spende direkt über
+ `Paypal `__.
+
+.. _WeiterführendeLinks:
+
+Weiterführende Links
+--------------------
+
+- `Verfügbare Pakete `__
+- `Verfügbare Patches `__
+- `Support - Unterstützung und
+ Hilfe `__
+- `Download aktueller Release `__
+- `FAQ - Antworten auf häufig gestellte Fragen `__
+- `How To ... - Anleitungen zum modifizieren von
+ freetz `__
+- `Development
+ Bereich `__
diff --git a/wiki/help.rst b/wiki/help.rst
new file mode 100644
index 0000000..86ce794
--- /dev/null
+++ b/wiki/help.rst
@@ -0,0 +1,39 @@
+.. _Hilfe:
+
+Hilfe
+=====
+
+.. _WikiForumundIRC:
+
+Wiki, Forum und IRC
+-------------------
+
+- `Wiki `__:
+
+ - `Installation `__
+ - `Pakete, Addons und CGI-Erweiterungen `__
+ - `Patches `__, `Aussehen `__
+ - `Bibliotheken `__, Module, `FAQ `__
+ - Hintergrund-Infos
+ - `Howtos `__, und `Hilfe `__
+ - `Trouble-Shooting `__
+
+- `Forum `__:
+ Diskussion, Fragen und Ankündigungen
+- `IRC-Themenkanal `__ zu FritzBox und (inoffiziell)
+ Freetz
+
+Weitere Informationen rund um FritzBox & Co. außerdem bei WeHaveMoreFun
+(WHMF):
+
+- `Fritz!Box-Wiki `__: Tipps &
+ Tricks, Hintergrund-Infos u.v.m.
+
+Hier findet sich Hilfe für Freetz - und auch für das Wiki:
+
+- `Erste Schritte für Newbies `__
+- `FAQ: Antworten auf häufige Fragen zu Freetz `__
+- `FAQ: Antworten auf häufige allg. Fragen zur
+ Fritzbox `__
+- `HowTos: 'Wie mache ich …' `__
+- `Wiki Bearbeitung `__
diff --git a/wiki/help/fritz_faq.rst b/wiki/help/fritz_faq.rst
new file mode 100644
index 0000000..feea26e
--- /dev/null
+++ b/wiki/help/fritz_faq.rst
@@ -0,0 +1,314 @@
+.. _FAQ:
+
+FAQ
+===
+
+Während das FAQ zu Freetz spezifischen Fragen `hier <../FAQ.html>`__ zu
+finden ist sollen hier allgemeine Fragen und Antworten zur FritzBox
+gesammelt werden.
+
+.. _WiekannicheineneigenenanderenDNS-ServerfüralleangeschlossenenPCsundFritzboxverwenden:
+
+Wie kann ich einen eigenen/anderen DNS-Server für alle angeschlossenen PCs und Fritzbox verwenden ?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+AVM lässt die Änderung des default DNS-Servers, den die Box nutzt, im
+Gegensatz zu anderen Routern über die Benutzeroberfläche derzeit(Ende
+2009) nicht zu. Mögliche Lösungswege:
+
+- dnsmasq: Installation eines eigenen DNS-Servers auf der Fritzbox
+ mittels dem Packet `dnsmasq <../packages/dnsmasq.html>`__. Dies ist
+ ein allgemeiner Weg der auf jeder Box funktioniert, jedoch einen
+ Neubau des Images (freetzen) erfordert. Zusammen mit einer geänderten
+ Datei /etc/resolv.conf (im Trunk möglich über die GUI mit
+ "Einstellungen"→"Freetz: resolv.conf") kann ein DNS-Server so
+ eingetragen werden: "nameserver 208.67.220.220" (hier der von
+ OpenDNS)
+- ohne dnsmasq: Bei einigen Boxen, z.B. 7170(Firmware 29.04.76) ist es
+ möglich die zentrale Konfigurationsdatei von AVM zu bearbeiten. Mit
+ "nvi /var/flash/ar7.cfg" müssen alle Vorkommen von "overwrite_dns1 =
+ xxx.xxx.xxx.xxx" und "overwrite_dns2 = xxx.xxx.xxx.xxx" bearbeitet
+ werden. Dieser Weg ist nur Personen empfohlen die Grundkenntnisse mit
+ nvi und telnet bzw. ssh/telnet haben! Hier läuft der multid von AVM
+ als DNS-Server. in der resolv.conf steht ein loopback "nameserver
+ 127.0.0.1". Dies ermöglicht auch Linux standard Anwendungen auf der
+ fritzbox die Auflösung über den multid.
+- Ändern von /etc/resolv.conf: Wenn es nur darum geht, dass die Box
+ selbst einen anderen DNS-Server benutzt, reicht eine Änderung in der
+ Datei /etc/resolv.conf wie oben beim dnsmasq beschrieben. Dies ändert
+ allein jedoch nur die Namensauflösung der Box, angeschlossene Clients
+ nutzen dann weiter den Standard-DNS
+
+.. _Wiekannmancharacterdeviceserstellen:
+
+Wie kann man character devices erstellen?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+Freetz benutzt auch ein solches `character
+device `__,
+welches Dateien mit Hilfe eines Tiny Flash Filesystems (TFFS) dauerhaft
+und veränderbar im Flash abspeichert, um die Konfiguration zu sichern.
+Vorraussetzung ist eine Minor Nummer, die von keinem anderen character
+device in ``/var/flash/`` verwendet wird (Freetz benutzt die Minor
+0x3c), die Major Nummer kann aus ``/proc/devices`` ausgelesen werden:
+
+.. code:: bash
+
+ mknod /var/flash/ c
+
+Da dieses character device in der
+`Ramdisk `__ unter ``/var/``
+erzeugt wurde, muss dieser Befehl jedesmal beim Neustart ausgeführt
+werden. Der Inhalt bleibt aber erhalten. |Warning| Zum Bearbeiten solcher
+character devices **niemals** vi verwenden! Dafür gibt es das
+Wrapper-Skript nvi.
+
+|Warning| **ACHTUNG:** Die Flash Partition des TFFS ist sehr klein und
+nicht geeignet Dateien > 10-30 KB aufzunehmen (je nach Größe der anderen
+Dateien).
+
+Der aktuelle Füllstand kann wie folgt ausgelesen werden:
+
+::
+
+ echo 'cleanup' > /proc/tffs
+ echo 'info' > /proc/tffs
+ cat /proc/tffs | grep '^fill='
+
+.. _WasfüreinNetzwerkkabelbenötigeichfürdasrecovern:
+
+Was für ein Netzwerkkabel benötige ich für das recovern ?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+ RJ45 Standardnetzwerkkabel, kein Crossover
+
+.. _WoranerkenneichdassicheineFB7270v3habe:
+
+Woran erkenne ich, dass ich eine FB 7270v3 habe ?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+- An der Firmwareversion. Firmwares für 7270v3 beginnen mit 74.xx.xx
+- An der Anzeige im AVM-Web-Interface
+ `http://fritz.box `__, z.B.
+ **Produktinformationen**: FRITZBox Fon WLAN 7270 v3 (UI)
+- Anhand der Seriennummer (s.u.)
+
+.. _WiealtistmeineFritzBox:
+
+Wie alt ist meine FritzBox ?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+| Benötig werden dazu die ersten vier Stellen der Seriennummer:
+| Beispiel: **W484**-xxx-xx-xxx-xxx ⇒ **Donnerstag, den 27.11.2008**
+
+| **W484 = Produktionswoche (Achtung: bitte nicht verwechseln mit der
+ Kalenderwoche) 48 und 4. Tag = Donnerstag**
+
+ +---------------+-------------+
+ | **Buchstabe** | **Baujahr** |
+ +---------------+-------------+
+ | U | 2006 |
+ +---------------+-------------+
+ | V | 2007 |
+ +---------------+-------------+
+ | W | 2008 |
+ +---------------+-------------+
+ | X | 2009 |
+ +---------------+-------------+
+ | A | 2010 |
+ +---------------+-------------+
+ | B | 2011 |
+ +---------------+-------------+
+ | C | 2012 |
+ +---------------+-------------+
+
+| **Info:** Wo liegt der Unterschied zwischen Produktionswoche und
+ Kalenderwoche:
+| In meinem Beispiel ist die Produktionswoche = der Kalenderwoche, aber
+ z.B. im Jahr 2010 unterscheiden sich die Tage etwas:
+| A101 = Kalenderwoch 10 = sollte einen Montag in der 10 KW, also
+ 08.03.2010 ergeben, das ist aber falsch,
+| A101 = Produktionswoche 10 ergibt einen Montag in der 9 KW und zwar
+ den 01.03.2010
+| Quelle meiner Behauptung: - Wird nachgeliefert.
+
+.. _WievielFlashhatmeineFritzBox7270:
+
+Wie viel **Flash** hat meine FritzBox 7270 ?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+| Für die zweite Ziffern-Gruppe (xxxx-**XXX**-xxx-xxx) sind bislang
+ folgende Nummern aufgetreten:
+
+ +---------+---------+---------+---------+---------+---------+---------+
+ | **Numme | **HWRev | **Brand | **Flash | **Farbe | **Versi | **Komme |
+ | r** | ision** | ing** | größe | ** | on** | ntar** |
+ | | | | (in | | | |
+ | | | | MB)** | | | |
+ +---------+---------+---------+---------+---------+---------+---------+
+ | 293 | 122 | AVM | 8 | rot | 7270 V1 | |
+ +---------+---------+---------+---------+---------+---------+---------+
+ | 294 | 122 | 1und1 | 8 | schwarz | 7270 V1 | |
+ | | | | | / | | |
+ | | | | | silber | | |
+ +---------+---------+---------+---------+---------+---------+---------+
+ | 304 | 139 | AVM | 16 | rot | 7270 V2 | |
+ +---------+---------+---------+---------+---------+---------+---------+
+ | 305 | 139 | 1und1 | 16 | schwarz | 7270 V2 | |
+ | | | | | / | | |
+ | | | | | silber | | |
+ +---------+---------+---------+---------+---------+---------+---------+
+ | 336 | 139 | AVM | 16 | rot | 7270 V2 | für |
+ | | | | | | | Kabel |
+ | | | | | | | Deutsch |
+ | | | | | | | land-Ku |
+ | | | | | | | nden |
+ +---------+---------+---------+---------+---------+---------+---------+
+ | 334 | 145 | 1und1 | 16 | schwarz | 7270 V3 | |
+ +---------+---------+---------+---------+---------+---------+---------+
+ | 351 | 145 | AVM | 16 | rot | 7270 V3 | |
+ +---------+---------+---------+---------+---------+---------+---------+
+ | 352 | 145 | otwo | 16 | rot | 7270 V3 | für |
+ | | | | | | | o2-Kund |
+ | | | | | | | en |
+ +---------+---------+---------+---------+---------+---------+---------+
+ | 354 | 145 | AVM | 16 | rot | 7270 V3 | für |
+ | | | | | | | Netcolo |
+ | | | | | | | gne-Kun |
+ | | | | | | | den |
+ +---------+---------+---------+---------+---------+---------+---------+
+ | 355 | 145 | EWE | 16 | weiß / | 7270 V3 | für |
+ | | | | | grau | | EWE-Kun |
+ | | | | | | | den |
+ +---------+---------+---------+---------+---------+---------+---------+
+ | 307 | 139 | AVME | 16 | rot | 7270 V2 | Interna |
+ | | | | | | | tionale |
+ | | | | | | | -Versio |
+ | | | | | | | n |
+ +---------+---------+---------+---------+---------+---------+---------+
+ | 310 | 139 | AVME | 16 | rot | 7270 V2 | A-/CH-V |
+ | | | | | | | ersion |
+ +---------+---------+---------+---------+---------+---------+---------+
+
+| Beispiel: W484-\ **305**-xx-xxx-xxx ⇒ Fritzbox mit 16MB und
+ 1und1-Branding
+
+oder
+
+| 1.) Support Datei auslesen über:
+ `http://fritz.box/html/support.html `__
+| 2.) In der Datei sollte folgender Eintrag zu finden sein:
+
+- 8MB: **flashsize 0x00800000**
+- 16MB: **flashsize 0x01000000**
+
+| 00800000 Hex = 8.388.608 Dezimal = 8.192 KB = 8 MB
+| 01000000 Hex = 16.777.216 Dezimal = 16.384 KB = 16 MB
+| Weitere Details sind
+ `[hier] `__
+ beschrieben.
+
+.. _SteuercodesfürdieFritzbox:
+
+Steuercodes für die Fritzbox
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+Hier findet Ihr eine (unvollständige) Liste der Steuercodes für Eure
+Fritzbox:
+
+ +--------------------+----------------------------------------------+
+ | **Telefoncode** | **Funktion** |
+ +--------------------+----------------------------------------------+
+ | #96*0\* | WLAN ausschalten |
+ +--------------------+----------------------------------------------+
+ | #96*1\* | WLAN einschalten |
+ +--------------------+----------------------------------------------+
+ | #96*2\* | CAPI over TCP (NetCAPI) ausschalten |
+ +--------------------+----------------------------------------------+
+ | #96*3\* | CAPI over TCP (NetCAPI) einschalten |
+ +--------------------+----------------------------------------------+
+ | #96*4\* | Anrufmonitor ausschalten |
+ +--------------------+----------------------------------------------+
+ | #96*5\* | Anrufmonitor einschalten |
+ +--------------------+----------------------------------------------+
+ | #96*6\* | Anzeige: "Kein Bier vor 4" oder "Bier holen" |
+ +--------------------+----------------------------------------------+
+ | #96*7\* | telnetd einschalten |
+ +--------------------+----------------------------------------------+
+ | #96*8\* | telnetd ausschalten |
+ +--------------------+----------------------------------------------+
+ | #96*9\* | Anzeige: Uptime des Routers |
+ +--------------------+----------------------------------------------+
+ | #990*15901590\* | Reboot der Fritzbox |
+ +--------------------+----------------------------------------------+
+ | #991*15901590\* | Rücksetzen auf Werkseinstellungen |
+ +--------------------+----------------------------------------------+
+ | #83*hhmmddmmyyyy\* | Uhr stellen |
+ +--------------------+----------------------------------------------+
+
+.. _HilfedieBoxisttotalverkonfiguriertFreetzNot-AUS:
+
+Hilfe, die Box ist total verkonfiguriert / Freetz "Not-AUS"
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+Jetzt ist es passiert: Paket konfiguriert und dabei irgendwas so
+verstellt, dass die Box nicht mehr erreichbar ist. Auch in so einem Fall
+gibt es noch eine Möglichkeit vor dem Recover:
+
+`Den Freetz "Not-Aus"
+Schalter `__.
+
+Wenn der Parameter *kernel_args* den Eintrag ``ds_off=y`` enthält, wird
+der Haupteil von Freetz nicht mehr gestartet (genauer wird
+/etc/init.d/rc.mod nicht aufgerufen). Um den Parameter zu setzen muss
+man sich allerdings per FTP auf die Box verbinden, hat aber dann gute
+Chancen, die Box ohne Recover erfolgreich zu neu wiederbeleben.
+
+So geht es:
+
+- PC eine "feste" IP aus dem Netz 192.168.178.0 geben, z.B.
+ 192.168.178.12 255.255.255.0
+- Direkt nach dem Einschalten des Routers per FTP auf die 192.168.178.1
+ (User/PW: adam2/adam2) verbinden (der FTP-Server steht nur wenige
+ Sekunden nach dem Einstecken des Netzteils zur Verfügung, also
+ eventuell ein paar mal versuchen (oder den Hinweis aus dem letzten
+ Punkt ausprobieren)
+- Im FTP:
+
+ .. code:: bash
+
+ quote SETENV kernel_args ds_off=y
+ quote REBOOT
+
+ (bereits vorhandene Einträge in den kernel_args gehen dadurch
+ natürlich verloren…)
+
+- Falls die Box auf die IP 192.168.178.1 nicht reagiert hilf in der
+ Regel der Trick, ein unpassendes Recover einer anderen(!) Box zu
+ starten, was zwar mit einer Fehlermeldung abbricht, aber zwei
+ angenehme Nebeneffekte hat: Die Box wird (wenn der PC eine IP wie
+ oben hat) im FTP-Modus auf die IP 192.168.178.1 gesetzt und bleibt im
+ FTP-Modus, so dass das Abpassen des kurzen Momentes nach dem Starten
+ entfällt.
+
+Jetzt sollte zumindest die AVM-Oberfläche wieder wie gewohnt zu
+erreichen sein. Man kann sich nun per Telnet auf die Box verbinden und
+die "fehlerhafte" Konfiguration eines Paketes zurücksetzen, indem man
+z.B. /var/tmp/flash/.diff löscht, von Hand "korrigiert" oder
+umbenennt. Wenn dann der Aufruf von ``/etc/init.d/rc.mod`` wieder ein
+"normal funktionierendes" Freetz startet, braucht man nur noch den
+``ds_off=y`` Parameter zu entfernen, und alles sollte wieder gehen:
+
+.. code:: bash
+
+ . /usr/bin/kernel_args
+ ka_removeVariable ds_off
+
+Ergänzender Hinweis: Analog schaltet ``dbg_off=y`` das Abarbeiten der
+debug.cfg beim Starten ab.
+
+- Tags
+- `faq `__
+
+.. |Warning| image:: ../../chrome/wikiextras-icons-16/exclamation.png
+
diff --git a/wiki/help/howtos.rst b/wiki/help/howtos.rst
new file mode 100644
index 0000000..72f1257
--- /dev/null
+++ b/wiki/help/howtos.rst
@@ -0,0 +1,111 @@
+.. _HowTos:
+
+HowTos
+======
+
+Die HowTos hier sind entweder Freetz-spezifisch, oder stehen zumindest
+mit Freetz in Zusammenhang. Eine Reihe weiterer HowTos für AVM "Boxen"
+finden sich im
+
+- `Wiki des
+ IPPF `__.
+- `Fritz!Box Wiki `__
+
+.. _Allgemeines:
+
+Allgemeines
+-----------
+
+- `Freetz-Linux unter verschiedenen Virtualisierungslösungen zum Laufen
+ bringen `__
+- `Erste Schritte für Newbies `__
+- `Zweiter Schritt für Newbies (Mein erster
+ Trunk) `__
+- `Freetz installieren `__
+- `Swap-File anlegen `__
+- `Kleiner Webserver mit BusyBox `__
+- `Möglichkeiten der Nutzung von WoL `__
+- `Rechner im Netzwerk herunterfahren `__
+- `Benutzer dauerhaft speichern in der passwd bei
+ Freetz-1.1 `__
+- `IPv6 inkl. Subnet für das LAN mit
+ SixXS `__
+- `Tutorial WIP: CustomScript zur Umgehung der Beschränkung von BusyBox
+ Syslogd entweder in den ram oder auf das fs zu
+ loggen <../costumscript_dublesyslog.html>`__
+
+.. _Development:
+
+Development
+-----------
+
+- `FW-Image entpacken, ändern und wieder
+ packen `__
+- `Eigene Dateien in die Firmware
+ integrieren `__
+- `Cross-Compiler / Toolchain
+ erstellen `__
+- Vorkompilierte Programme neu übersetzen?
+- `Menükonfiguration pflegen `__
+- `Kernel konfigurieren und
+ kompilieren `__
+- `Busybox konfigurieren und
+ kompilieren `__
+- `Patches in Freetz
+ einspielen `__
+- `Addon Paket installieren `__
+- `Eigene Programme
+ kompilieren `__
+- `Dynamische Bandbreitenanzeige per SVG
+ realisieren `__
+- `Flash-Partitionierung `__
+- `Flash-Partitionen im laufenden Betrieb
+ sichern `__
+- `Flash-Partitionen von außen mit FTP
+ sichern `__
+- `Ablauf eines
+ Firmware-Updates `__
+- `Wie die Fritz!Box Manipulationen
+ erkennt `__
+- `ADAM2-Bootloader `__
+- `Freetz Build Prozess `__
+- `Wie baue ich ein eigenes Paket für
+ Freetz? `__
+- `Platz sparen im Dateisystem der
+ Fritz!Box