Unterabschnitte


4.5 HD - Programme rund um die Festplatte


4.5.1 OPT_HDINSTALL - Installation auf Festplatte/CompactFlash

Normalerweise läuft fli4l nur von einer Diskette. Eine Festplatte oder ein CompactFlash ist daher eigentlich nicht notwendig. Sollen relativ große Softwarepakete (wie z.B. die Treiber für die DSL-Karten von AVM) für fli4l genutzt werden, kann es knapp auf der Diskette werden...

Für diesen Fall ist die Installation auf Festplatte oder auf einem CompactFlash-Modul gedacht. Ein CompactFlash verhält sich wie eine IDE-Festplatte, so dass es im fli4l-Rechner wie eine Festplatte behandelt werden kann. Da ein CompactFlash keine beweglichen Teile enthält, ist es nicht zu hören - ein wesentlicher Vorteil gegenüber Festplatten. Dem gegenüber steht der höhere Preis...

Neben Compact-Flash Modulen und anderen Flash-Modulen, die sich wie eine IDE-Festplatte verhalten, sind noch die vorwiegend in Industrie-Rechnern zu findenden DiskOnChipTM-Module vom M-Systems für fli4l geeignet.


Nicht zur Benutzung mit fli4l geeignet sind USB-Sticks und normale Flash-Speicher, die nur mit einem speziellen Lesegerät angesprochen werden können (SD, MMC, SmartMedia).

Im Folgenden werden die notwendigen Schritte zur Installation auf einer Festplatte erklärt. Da die Festplatten-Variante gegenüber der reinen Diskettenlösung etwas schwieriger zu installieren ist, empfehle ich, zunächst einmal mit der einfachen Bootdiskette zu üben. Läuft der Router einwandfrei, kann man sich - falls nicht alle gewünschten Softwarepakete auf die Diskette passen - mal an die Festplatteninstallation wagen.

Der übliche Weg ist die Installation mit einer Boot-DISKETTE, aber falls der Router nicht über einen Diskettenanschluß verfügt, kann auch von LAN-Boot aus installiert werden. Das OPT_HDINSTALL bereitet nur noch die Festplatte vor und kopiert keine Dateien mehr von der Diskette auf die Festplatte. Dies wird ganz normal über ein Remote-Update per Imonc oder über scp gemacht. Ein weitere Weg ist die Installation und Einrichtung der Festplatte über eine BOOT-CD.

Eine Einführung in die verschiedenen Festplatten- Installationsvarianten A oder B befindet sich am Anfang der fli4l-Dokumentation. Bitte unbedingt vorher lesen!

4.5.1.1 HD-Installation von Diskette in sechs einfachen Schritten

  1. lauffähige fli4l-Diskette mit dem Paket base sowie OPT_HDINSTALL und OPT_HDDRV erstellen. Zusätzlich muss diese Diskette ein Remote-Update ermöglichen! Es muss also entweder OPT_SSHD und OPT_SCP aktiv sein oder START_IMOND auf 'yes' stehen, wobei letzteres in Verbindung mit ISDN (ohne Treiber, also ISDN_TYPE='0') nicht immer auf eine Diskette passt.
  2. den Router mit dieser Diskette booten.
  3. am Router einloggen und den Befehl ``hdinstall.sh'' ausführen.
  4. wenn die Aufforderung dazu erscheint die Dateien syslinux.cfg, kernel, rootfs.img, opt.img und rc.cfg mittels Imonc oder scp auf den Router nach /boot kopieren. Ich empfehle dazu mit zwei fli4l-Verzeichnissen zu arbeiten, eines für die Setup-Diskette und ein zweites für die spätere HD-Version. Bei der HD-Version stellen Sie die Variable BOOT_TYPE='hd' ein und bei der Setup-Diskette auf 'fd'.


    Beim Remote-Update müssen natürlich die Dateien der HD-Version auf den Router übertragen werden!

  5. Diskette entfernen, Router herunterfahren und neu starten (unter Verwendung von halt/reboot/poweroff). Der Router bootet jetzt von der Festplatte
  6. bei Problemen den folgenden Abschnitt gut durchlesen.

4.5.1.2 HD-Installation ausführlich erklärt (inklusive Beispiele)

Zuerst muß eine Router-Diskette erstellt werden, bei der in der Datei config/hd.txt das OPT_HDINSTALL mit den Installationsscripten und das OPT_HDDRV, welches die Treiber für IDE- und SCSI-Festplatten enthält, richtig konfiguriert wurden. Bitte dazu auch den Abschnitt zu OPT_HDDRV gründlich durchlesen!

Die Variable BOOT_TYPE in der base.txt wird auf 'fd' eingestellt, es soll ja schliesslich eine Setup-DISKETTE erstellt werden. Die Variable MOUNT_BOOT in der base.txt muß auf 'rw' eingestellt werden, damit später ein neues Archiv opt.img über das Netzwerk aufgespielt werden kann.

Anschließend wird der Router von dieser Diskette gebootet. Durch Eingabe von ``hdinstall.sh'' an der fli4l-Console wird dann das Installationsprogramm gestartet. Nach Beantwortung von ein paar Fragen wird die Festplatte vorbereitet. Zuletzt erscheint eine Aufforderung, dass man die für den Router benötigten Dateien per Remote-Update aufspielen soll.


Dieses Remote-Update keinesfalls vergessen, der Router bootet sonst nicht von der Festplatte. Zum Neustarten des Routers nach dem Remote-Update unbedingt reboot/halt/poweroff verwenden, andernfalls können die beim Remote-Update vorgenommenen Änderungen verloren gehen.


Falls die Festplatte bei der Installation nicht automatisch gefunden wurde kann es passieren, dass der Router nicht von HD bootet. In diesem Fall muss in der syslinux.cfg der Eintrag boot=/dev/<bei der Installation angegebene Platte> an die Append-Zeile angehängt werden.

Das Installationsscript kann sowohl direkt am Router als auch über ssh von einem anderen PC aus gestartet werden. Im jedem Fall muss man sich vorher durch Eingabe des Passwortes am Router anmelden. Als ssh-Client für Windows-Rechner empfehlen wir die Freeware Putty.

4.5.1.3 Konfiguration der Setup-Diskette


Tabelle 4.6: Beispiel für die Konfiguration der Setup-Diskette
BOOT_TYPE entsprechend dem Bootmedium für die Installation einstellen, idR Diskette (fd)
MOUNT_BOOT='rw' notwendig, um später ein neues opt.img über Netzwerk auf die Platte kopieren zu können
OPT_HDINSTALL='yes' notwendig um das Setup-Script und die Tools zum Formatieren der Partitionen auf der Diskette zu haben
OPT_HDDRV='yes' notwendig, weil ohne Treiber nicht auf die Festplatte zugegriffen werden kann.
IMOND='yes' nach dem Vorbereiten der Festplatte werden die eigentlichen Dateien per remote Update übertragen. Dazu benötigt man entweder den imond, scp (OPT_SSHD='yes', OPT_SCP='yes') oder ein anderes Paket, das einen Filetransfer erlaubt.


Bereits hier muss die Netzwerkkonfiguration richtig eingestellt sein, damit man die Dateien für die Festplatte über das Netzwerk aufspielen kann. Für ein Remote-Update mittels Imonc wird bei der Setup-Diskette auch der IMOND und damit eine gültige ISDN/DSL-Konfiguration benötigt. Alternativ dazu kann man die Dateien per scp auf den Router kopieren, dazu bitte OPT_SCP='yes' (befindet sich im Package SSHD) einstellen. Alle nicht unbedingt nötigen Pakete bitte weglassen, also kein SAMBA_LPD, LCD, Portforwarding usw.

Falls die Installation mit der Fehlermeldung

    *** ERROR: can't create new partition table, see docu ***
abbricht, können mehrere Fehlerquellen in Frage kommen: Im letzten Schritt kann man nun die endgültige Fassung der Konfigurationsdateien erstellen und alle gewünschten Pakete hinzufügen.

4.5.1.4 Beispiele für eine fertige Installation nach Typ A und Typ B:

Ein Beispiel für jede Konfiguration finden Sie in Tabelle 4.7.


Tabelle 4.7: Beispiel für eine Installation nach Typ A oder B
BOOT_TYPE='hd' notwendig, da sie ja jetzt von Festplatte starten
MOUNT_BOOT='rw|ro|no' nach Wahl. Um später neue fli4l-Archive über Netzwerk auf die Platte kopieren zu können ist 'rw' nötig.
OPT_HDINSTALL='no' nach der erfolgreichen Installation ist dieses Paket nicht mehr notwendig.
OPT_HDDRV='yes' notwendig, weil ohne Treiber nicht auf die Festplatte zugegriffen werden kann.
OPT_MOUNT nur aktivieren, falls eine Datenpartition oder eine Swap-Partition erstellt wurde


Grundsätzlich sollte man auf Flash-Medien keine Swap-Partition anlegen, weil deren Anzahl von Schreibzyklen begrenzt ist und damit ein früher Defekt des Mediums zu erwarten ist. Das Erstellen einer Swap-Partition wird nur angeboten, falls weniger als 32MB RAM im Router stecken und die Installation NICHT auf ein Flash-Medium durchgeführt wird!


4.5.2 OPT_MOUNT - Mounten von Dateisystemen auf Festplatte etc.

OPT_MOUNT mountet die Datenpartition nach /data, eine Prüfung der Partition auf Fehler wird bei Bedarf automatisch durchgeführt. Ein evtl. vorhandenes CD-ROM wird nach /cdrom gemountet, falls eine CD eingelegt ist. Für die swap-Partition wird das OPT_MOUNT nicht mehr benötigt!


OPT_MOUNT funktioniert nur nach einer Neuinstallation des Routers auf HD, weil dabei eine Konfigurationsdatei auf der Boot-Partition erstellt wird. Wenn das OPT_MOUNT mit einem Remote-Update auf einen bereits installierten Router übertragen wurde, muss diese Konfigurationsdatei manuell erstellt werden.


Auch bei einem Boot von CD-ROM kann das OPT_MOUNT nicht genutzt werden. Die CD kann in diesem Fall mit MOUNT_BOOT='ro' gemountet werden.

Die Datei hd.cfg auf der DOS-Partition hat für einen Router nach Typ B mit Swap und Datenpartition den folgenden Inhalt:

        hd_boot='hda1'
        hd_opt='hda2'
        hd_swap='hda3'
        hd_data='hda4'

Nicht existierende Partitionen werden einfach weggelassen, bei einem Router Typ A ohne weitere Partitionen auf einer SCSI-Festplatte sieht das also so aus:

        hd_boot='sda1'


4.5.3 OPT_HDSLEEP - automatisches Abschalten für IDE-Festplatten einstellen

Eine IDE-Festplatte kann sich automatisch abschalten, wenn eine bestimmte Zeit ohne Aktivität verstreicht. Damit benötigt die Platte kaum noch Strom und macht keine Geräusche mehr. Wenn ein Zugriff auf die Festplatte erfolgt, läuft sie automatisch wieder an.


Nicht alle Festplatten vertragen häufiges Wiederanlaufen. Daher sollte man die Zeit nicht zu klein wählen. Ältere IDE-Platten und SCSI-Laufwerke bieten diese Funktion erst gar nicht an.

Bei Flash-Medien sind diese Einstellungen nicht sinnvoll und auch nicht notwendig. SCSI-Festplatten werden ebenfalls nicht unterstützt.

HDSLEEP_TIMEOUT

Diese Variable legt fest, nach welcher Zeit ohne Zugriff sich die Festplatte in den Power-Down-Modus gehen soll. Dann schaltet sich die Festplatte automatisch nach der Wartezeit aus und beim nächsten Zugriff wieder ein. Hierbei sind Wartezeiten in Minutenabständen von einer bis 20 Minuten möglich sowie in Abständen von 30 Minuten von einer Halben bis zu fünf Stunden. Eine Wartezeit von 21 oder 25 Minuten wird also z.B. auf 30 Minuten aufgerundet. Manche Festplatten ignorieren auch zu hohe Werte und stoppen dann schon nach einigen Minuten. Bitte unbedingt die korrekte Funktion durchtesten, da dies sehr von der jeweiligen Hardware abhängig ist!

        HDTUNE_TIMEOUT='2'              # wait 2 minutes until power down


4.5.4 OPT_RECOVER - Notfalloption

Diese Variable legt fest, ob die entsprechenden Funktionen zur Erstellung einer Notfalloption verfügbar sind. Wenn die Option aktiviert ist, wird der Befehl ``mkrecover.sh'' mit auf den Router übertragen. Mit diesem kann dann an der Kommandokonsole durch einfachen Aufruf, die Notfallinstallation aktiviert werden. Beim installierten Paket ``HTTPD'' kann die Übertragung der aktuell laufenden Installation in eine Notfallinstallation im Menü Recover durchgeführt werden.

Um die Notfallinstallation zu Nutzen, ist bei nächsten Reboot im Bootmenü die Auswahl Recover auszuwählen.

        OPT_RECOVER='yes'


4.5.5 OPT_HDDRV - Treiber für Festplattencontroller

Das Treiber-Paket basiert auf dem OPT_SCSI, welches Kai-Christian Arndt () für fli4l zusammengestellt hat.

Mit OPT_HDDRV='yes' können die benötigten Treiber aktiviert und installiert werden.

HDDRV_N
Die Anzahl der Treiber, die geladen werden sollen, wird mit HDDRV_N eingestellt.

HDDRV_x
Mit HDDRV_1 usw. werden die entsprechenden Treiber für die verwendeten Host-Adapter ausgewählt. Eine Liste der unterstützten Hostadapter ist in der Beispiel-Konfigurationsdatei enthalten.

HDDRV_x_OPTION
Mit HDDRV_x_OPTION können Optionen übergeben werden, die einige Treiber zum laden benötigen. Dies kann z.B. eine IO-Adresse für einen SCSI-Controller sein. Bei den meisten Treibern kann diese Variable einfach leer gelassen werden.

Im Anhang finden Sie eine Übersicht der Fehler, die bei Festplatten und CompactFlash am häufigsten auftreten.

Jetzt folgen einige Beispiele wie bestimmte Treiber zu laden sind.

Beispiel 1: Zugriff auf IDE-Festplatten oder Compact-Flash Medien.

   OPT_HDDRV='yes'             # install Drivers for Harddisk: yes or no
   HDDRV_N='1'                 # number of HD drivers
   HDDRV_1='ide-hd'            # this is the ide-disk driver
   HDDRV_1_OPTION=''           # no need for options yet

Beispiel 2: Zugriff auf IDE-Festplatte und ein IDE-CDROM zusätzlich

   OPT_HDDRV='yes'             # install Drivers for Harddisk: yes or no
   HDDRV_N='2'                 # number of HD drivers
   HDDRV_1='ide-hd'            # this is the ide-disk driver
   HDDRV_1_OPTION=''           # no need for options yet
   HDDRV_2='ide-cd'            # IDE CDROM driver
   HDDRV_2_OPTION=''           # no need for options yet

Beispiel 3: Zugriff auf SCSI-Festplatte an einem Adaptec 2940

   OPT_HDDRV='yes'             # install Drivers for Harddisk: yes or no
   HDDRV_N='1'                 # number of HD drivers
   HDDRV_1='aic7xxx'           # various aic7xxx based Adaptec SCSI 
   HDDRV_1_OPTION=''           # no need for options yet

Beispiel 4: Eine SCSI-CD-ROM am selben Controller zu Beispiel 3

   OPT_HDDRV='yes'             # install Drivers for Harddisk: yes or no
   HDDRV_N='2'                 # number of HD drivers
   HDDRV_1='aic7xxx'           # various aic7xxx based Adaptec SCSI 
   HDDRV_1_OPTION=''           # no need for options yet
   HDDRV_2='scsi-cd'           # SCSI CDROM driver
   HDDRV_2_OPTION=''           # enter cdrom driver option here, not used yet

Beispiel 5: Zugriff auf IDE-Festplatte, IDE-CDROM und dazu noch eine SCSI- Festplatte am Adaptec 2940 sowie ein SCSI-CDROM an einem Adaptec 1542. Dies ist allerdings keine geeignete Hardwareausstattung für einen Router, das Beispiel steht nur zur Abschreckung hier drin ;-)

   OPT_HDDRV='yes'             # install Drivers for Harddisk: yes or no
   HDDRV_N='5'                 # number of HD drivers
   HDDRV_1='ide-hd'            # this is the ide-disk driver
   HDDRV_1_OPTION=''           # no need for options yet
   # Für die IDE-Festplatte
   
   HDDRV_2='ide-cd'            # IDE CDROM driver
   HDDRV_2_OPTION=''           # no need for options yet
   # Für das IDE-CDROM
   
   HDDRV_3='aic7xxx'           # various aic7xxx based Adaptec SCSI 
   HDDRV_3_OPTION=''           # no need for options yet
   # Adaptec 2940, SCSI-HD-Unterstützung gibt es automatisch dazu.
   
   HDDRV_4='aha1542'           # Adaptec AHA154x Controller
   HDDRV_4_OPTION=''           # no need for options yet
   # Adaptec 1542 für das SCSI-CDROM
   
   HDDRV_5='scsi-cd'           # SCSI CDROM driver
   HDDRV_5_OPTION=''           # enter cdrom driver option here, not used yet
   # der Treiber für SCSI-CD-ROM's muß extra dazu geladen werden.

Das Fli4l-Team
3. Mai 2009