4. Ein Dateisystem von Grund auf neu erstellen

Wenn ATA-kompatible Compact-Flash-Karten von FreeBSD als normale IDE-Festplatten erkannt werden, könnten Sie theoretisch FreeBSD aus dem Netzwerk mittels der Kern- und mfsroot-Floppies oder einer CD installieren.

Jedoch kann selbst eine kleine Installation von FreeBSD durch die normale Installationsprozedur ein System erzeugen, dass grösser als 200 MB ist. Da die meisten Leute kleinere Flash-Speichermedien einsetzen (128 MB wird hier als gross angesehen - 32 oder sogar 16 MB sind gebräuchlich) ist eine gewöhnliche Installation mit normalen Methoden nicht möglich, da es einfach nicht genug freien Plattenplatz gibt, selbst für die kleinste Installationsart.

Der einfachste Weg, diese Speicherlimitierung zu umgehen, ist, FreeBSD auf konventionelle Weise auf eine normale Festplatte zu installieren. Nachdem die Installation abgeschlossen wurde, kürzen Sie das Betriebssystem auf das nötigste, bis Sie eine Grösse erreicht hat, die auf das Flash-Medium passt und benutzen Sie dann tar auf dem gesamten Dateisystem. Die folgenden Schritte werden Sie durch den Prozess der Vorbereitung eines Flash-Mediums für ihr getartes Dateisystem führen. Beachten Sie, dass Operationen wie Partitionierung, Benennung, Erstellung von Dateisystemen, etc. von Hand durchgeführt werden müssen, da eine normale Installation nicht möglich ist. Zusätzlich zu den Kern- und mfsroot-Disketten benötigen Sie auch die fixit-Floppy.

  1. Partitionierung Ihrer Flash-Medien

    Wählen Sie nach dem Starten der Kern- und mfsroot-Disketten, custom aus dem Installationsmenü. In diesem Menü wählen Sie dann partition aus. Dort sollten Sie alle bestehenden Partitionen mit Hilfe der Taste d löschen. Nachdem alle bestehenden Partitionen gelöscht wurden, erstellen Sie mittels der Taste c eine Partition und akzeptieren Sie den Standardwert für die Grösse der Partition. Wenn Sie nach dem Typ der Partition gefragt werden, stellen Sie sicher, dass der Wert auf 165 eingestellt ist. Schreiben Sie jetzt diese Partitionstabelle auf die Platte durch betätigen der Taste w (dies ist die versteckte Option auf diesem Bildschirm). Wenn Sie eine ATA-kompatible Compact Flash-Karte verwenden, sollten Sie den FreeBSD Bootmanager auswählen. Drücken Sie nun die Taste q, um das Partitionsmenü zu verlassen. Sie werden das Menü des Bootmanagers noch ein weiteres Mal gezeigt bekommt. In diesem Fall wiederholen Sie die Auswahl von vorher.

  2. Anlegen von Dateisystemen auf Ihrem Flashspeicher-Gerät

    Verlassen Sie das Installationsmenü und wählen Sie aus dem Hauptinstallationsmenü die Option fixit. In der fixit-Umgebung angelangt, geben Sie den folgenden Befehl ein:

    # disklabel -e /dev/ad0c

    Zu diesem Zeitpunkt sollten Sie sich im vi-Editor unter der Herrschaft des disklabel-Kommandos befinden. Als nächstes müssen Sie die eine a:-Zeile an das Ende der Datei hinzufügen. Diese a:-Zeile sollte wie folgt aussehen:

    a:      123456  0       4.2BSD  0       0

    Wobei 123456 eine Zahl darstellt, die exakt der gleichen Zahl in der bestehenden Zeile mit dem c:-Eintrag entspricht. Sie kopieren quasi die bestehende Zeile c: als eine neue Zeile a: und stellen sicher, dass fstype 4.2BSD entspricht. Speichern Sie die Datei und verlassen Sie den Editor.

    # disklabel -B -r /dev/ad0c
    # newfs /dev/ad0a
  3. Schreiben des Dateisystems auf Ihr Flash-Medium

    Hängen Sie das neu erstellte Flash-Medium ein:

    # mount /dev/ad0a /flash

    Verbinden Sie diese Maschine mit dem Netzwerk, um die tar-Datei zu übertragen und extrahieren Sie es auf das Dateisystem des Flash-Mediums. Ein Beispiel dazu wäre folgendes:

    # ifconfig xl0 192.168.0.10 netmask 255.255.255.0
    # route add default 192.168.0.1

    Jetzt da die Maschine ans Netzwerk angeschlossen ist, kopieren Sie die tar-Datei. An diesem Punkt werden Sie möglicherweise mit einem Dilemma konfrontiert - sollte Ihr Flash-Speicher beispielsweise 128 MB gross sein und Ihre tar-Datei grösser als 64 MB, können Sie ihre tar-Datei auf dem Flash-Speicher nicht entpacken - Ihnen wird vorher der Speicherplatz ausgehen. Eine Lösung für dieses Problem, sofern Sie FTP verwenden, ist, dass Sie die Datei entpacken können, während es von FTP übertragen wird. Wenn Sie die Übertragung auf diese Weise durchführen, haben Sie niemals die tar-Datei und deren Inhalt zur gleichen Zeit auf Ihrem Medium:

    ftp> get tarfile.tar "| tar xvf -"

    Sollte Ihre tar-Datei gezippt sein, können Sie dies ebenso bewerkstelligen:

    ftp> get tarfile.tar "| zcat | tar xvf -"

    Nachdem der Inhalt Ihrer tar-Datei auf dem Dateisystem des Flash-Mediums abgelegt wurden, können Sie den Flash-Speicher aushängen und neu starten:

    # cd /
    # umount /flash
    # exit

    In der Annahme, dass Sie Ihr Dateisystem richtig konfiguriert haben, als es noch auf der gewöhnlichen Festplatte gebaut wurde (mit Ihren Nur-Lese-Dateisystemen und den nötigen Optionen im Kernel), sollten Sie nun erfolgreich von Ihrem FreeBSD Embedded-System starten können.

Wenn Sie Fragen zu FreeBSD haben, schicken Sie eine E-Mail an <de-bsd-questions@de.FreeBSD.org>.

Wenn Sie Fragen zu dieser Dokumentation haben, schicken Sie eine E-Mail an <de-bsd-translators@de.FreeBSD.org>.