Erste Hilfe Reparatur einer &os; Installation Bei &os; gibt es im Hauptmenü des Installationsprogramms den Punkt Fixit. Wenn Sie diese Option benutzen wollen, brauchen Sie entweder eine Diskette, die Sie aus dem Image fixit.flp erzeugt haben; oder die CD mit dem live filesystem, das ist normalerweise die zweite CD der &os; Distribution. Um fixit zu benutzen, müssen Sie zuerst von der kern.flp Diskette booten, dann die Option Fixit auswählen und dann die Fixit Diskette oder CD einlegen, wenn Sie dazu aufgefordert werden. Danach wird eine Shell gestartet, in der viele Programme zur Überprüfung, Reparatur und Analyse von Dateisystem und ihren Inhalten zur Verfügung stehen. Sie finden diese Programme in den Verzeichnissen /stand und /mnt2/stand. Allerdings brauchen Sie Erfahrung mit der Administration von Unix-Systemen, um diese Option sinnvoll einsetzen zu können. Typische Probleme bei der Installation auf &arch.print; Systemen Mein Rechner hängt sich beim Start des Systems während der Hardware-Erkennung auf, verhält sich bei der Installation seltsam, oder findet das Diskettenlaufwerk nicht. &os; nutzt auf i386 Systemen ab Version 5.0 unter anderem die ACPI-Dienste, um das System zu konfigurieren. Leider existieren sowohl im ACPI-Triber als auch in der ACPI-Implementierung vieler Mainbaords Fehler. Um ACPI abzuschalten, müssen Sie die hint hw.acpi.0.disable in der dritten Phase des Startprogramm aktivieren: set hw.acpi.0.disabled=1 Diese Variable wird bei jedem Start des System zurückgesetzt, daher sollten Sie diese Anweisung in die Datei /boot/loader.conf aufnehmen. Weitere Informationen über das Startprogramm finden Sie im FreeBSD Handbuch. Meine alte ISA-Karte wurde nicht mehr erkannt, in älteren &os;-Versionen funktionierte sie. Woran liegt das? Einige Treiber wurden mittlerweile entfernt, weil es niemanden mehr gab, der sich um sie kümmerte; dazu gehört unter anderem matcd. Andere Treiber existieren zwar noch, sind aber standardmäßig inaktiv, weil die Routinen zur Hardware-Erkennung zu viele Nebenwirkungen hatten. Dies betrifft die folgenden ISA Treiber: aha, ahv, aic, bt, ed, cs, sn, ie, fe, le und lnc. Diese Treiber müssen Sie in der dritten Phase des Systemstarts manuell aktivieren. Dazu müssen Sie während des Startprogramm während des 10 Sekunden dauernden Countdowns unterbrechen und die folgende Anweisung eingeben: unset hint.foo.0.disabled Dabei steht foo für den Namen des Treibers, den Sie aktivieren wollen. Um diese Änderung permanent zu machen, müssen Sie die Datei /boot/device.hints ändern und den betreffenden disabled Eintrag entfernen. Wenn ich das System nach der &os;-Installation zum ersten von der Festplatte starte, wird der Kernel geladen und sucht nach Hardware, aber danach kommt eine Meldung wie: changing root device to ad1s1a panic: cannot mount root Was läuft falsch? Was kann ich tun? Was bedeutet diese bios_drive:interface(unit,partition)kernel_name Meldung, die mir beim Booten als Hilfe angezeigt wird? Es kann zu Problemen kommen, wenn die Festplatte, von der Sie booten, nicht die erste Festplatte des Systems ist. Leider sind sich das BIOS und &os; nicht immer einig, wie die Festplatte numeriert werden sollen. Die richtige Zuordnung zu finden, ist nicht einfach; daher kommt es hier immer wieder zu Problemen. Wenn die Festplatte, von der Sie booten, nicht die erste Platte des Systems ist, braucht &os; in manchen Fällen etwas Hilfe. Es gibt zwei typische Ursachen für dieses Problem und in beiden Fällen müssen Sie &os; sagen, wo das root filesystem liegt. Dazu müssen Sie die vom BIOS verwendete Nummer der Festplatte, den Typ der Festplatte, und die von FreeBSD verwendete Nummer der Festplatte dieses Typs angeben. Eine typische Ursache ist ein System mit zwei IDE Platten, die beide als Master Ihres IDE Kanals konfiguriert sind und auf dem Sie &os; von der zweiten Platte booten wollen. Das BIOS verwendet für die beiden Platten die Nummern 0 und 1, während &os; ad0 und ad2 verwendet. &os; liegt auf BIOS Platte 1, der Typ der Platte ist ad, und &os; vergibt die Nummer 2. In diesem Fall müssen Sie folgendes eingeben: 1:ad(2,a)kernel Bitte beachten Sie, daß Sie dies nicht eingeben müssen, wenn sich auf dem primären IDE Kanal ein weiteres Gerät befindet (um genau zu, wäre es sogar falsch). Die andere typische Ursache ist ein System mit IDE und SCSI Platten, bei dem Sie von der SCSI Platte booten wollen. In diesem Fall vergibt &os; eine niedrigere Nummer als das BIOS. Wenn Sie neben der SCSI-Festplatte noch zwei IDE-Platten haben, vergibt das BIOS für die SCSI Festplatte die Nummer 2, während &os; die Nummer 0 vergibt. Da die Platte von Typ da ist, lautet die Lösung: 2:da(0,a)kernel Damit teilen Sie &os; mit, daß von der BIOS Festplatte Nummer 2 booten wollen, die die erste SCSI-Festplatte des System ist. Wenn Sie nur eine IDE-Festplatten hätten, würden Sie 1: verwenden. Wenn Sie den korrekten Wert herausgefunden haben, können Sie ihn mit einem normalen Editor in die Datei /boot.config eintragen. &os; nutzt den Inhalt dieser Datei, um den Standardwert für die Antwort auf die Anforderung boot: zu bestimmen. Wenn ich nach der &os;-Installation zum ersten Mal von der Festplatte booten will, komme ich nur bis zum F? Prompt des Bootmanagers. Sie haben bei der FreeBSD-Installation eine falsche Geometrie für Ihre Festplatte angeben. Sie müssen im Partitionseditor die richtige Geometrie eingeben und &os; mit der richtigen Geometrie komplett neu installieren. Wenn Sie die korrekte Geometrie Ihrer Festplatte nicht ermitteln können, können Sie den folgenden Trick verwenden: Legen Sie eine am Anfang der Festplatte eine kleine DOS-Partition an und installieren Sie danach &os;. Das Installationsprogramm wird die DOS-Partition finden und daraus die korrekte Geometrie berechnen, was normalerweise funktioniert. Es gibt eine weitere Möglichkeit, die nicht mehr empfohlen wird und der Vollständigkeit halber erwähnt wird:
Wenn Sie einen Server oder eine Workstation installieren, auf der ausschließlich &os; laufen soll und Ihnen die (zukünftige) Kompatibilität mit DOS, Linux oder anderen Betriebssystemen egal ist, können Sie auch die gesamte Platte verwenden (Taste `A' im Partitions-Editor). Dadurch verwendet &os; die gesamte Festplatte vom ersten bis zum letzten Sektor, wodurch alle Probleme mit der Geometrie hinfällig werden. Allerdings können Sie auf dieser Festplatte nur &os; benutzen, was Sie evtl. einschränkt.
Der &man.mcd.4; Treiber glaubt, der habe ein Gerät gefunden, dadurch funktioniert meine Intel EtherExpress Netzwerkkarte nicht. Benutzen Sie UserConfig (wie, steht in HARDWARE.TXT) und schalten die Erkennung der Geräte mcd0 und mcd1 ab. Es ist immer besser, wenn Sie nur die Treiber aktiv lassen, für die Sie auch passende Geräte haben, alle anderen Treiber sollten Sie aus dem Kernel entfernen oder deaktivieren. Das System erkennt meine &man.ed.4; Netzwerkkarte, aber ich erhalte ständig die Meldung device timeout. Ihre Karte nutzt wahrscheinlich einen anderen IRQ als den, der in der Kernel-Konfiguration angegeben ist. Der ed Treiber benutzt die `soft' Konfiguration (die sie in DOS mit EZSETUP eingestellt haben) normalerweise nicht. Wenn er das tun soll, müssen Sie bei der Kernelkonfiguration für den IRQ den Wert ? angeben. Sie sollten entweder eine der festverdrahteten Einstellungen benutzen (und ggfs. die Einstellungen des Kernels anpassen), oder in UserConfig für den IRQ den Wert -1 eingeben. Damit teilen Sie dem Kernel mit, daß er die `soft' Konfiguration benutzen soll. Eine andere mögliche Ursache ist, daß Ihre Karte IRQ9 verwendet. IRQ 9 wird immer mit IRQ 2 geteilt, was immer wieder Probleme macht (besonders, wenn Sie eine VGA-Karte haben, die IRQ 2 benutzt!) Wenn möglich, sollten Sie IRQ 9 und IRQ 2 nicht benutzen. Ich habe meinen IBM ThinkPad (tm) Laptop von der Installationsdiskette gebootet, und die Tastaturbelegung ist völlig konfus. Ältere IBM Laptops verwenden nicht den normalen Tastaturcontroller, daher müssen Sie dem Tastaturtreiber (atkbd0) in einen speziellen ThinkPad-Modus schalten. Ändern Sie in UserConfig die 'Flags' für atkbd0 auf 0x4 und das Problem sollte gelöst sein. Die Einstellung finden Sie im Menü Input. Meine Intel EtherExpress 16 wird nicht erkannt. Sie müssen die Intel EtherExpress 16 so konfigurieren, daß 32K Speicher an der Adresse 0xD0000 eingeblendet werden. Benutzen Sie dazu das von Intel mitgelieferte Programm softset.exe. Wenn ich &os; auf meinem EISA HP Netserver installiere, wird der eingebaute AIC-7xxx SCSI Controller nicht erkannt. Dieses Problem ist bekannt, und wird hoffentlich bald gelöst werden. Damit Sie &os; installieren können, müssen Sie mit der Option booten, um UserConfig zu starten. Sie brauchen den CLI-Modus, nicht den Visual Modus (auch wenn er schöner aussieht). Geben Sie den folgenden Befehl ein: eisa 12 quit Statt `quit' können Sie auch `visual' eingeben, um die restliche Konfigurationsarbeit in diesem Modus erledigen. Die Erzeugung eines angepaßten Kernels wird zwar immer noch empfohlen, allerdings hat dset gelernt, diesen Wert zu speichern. Eine Erklärung der Ursachen dieses Problems und weitere Informationen finden Sie im FAQ. Wenn Sie die Distribution `doc' installiert haben, finden Sie den FAQ im Verzeichnis /usr/share/doc/FAQ auf Ihrer Festplatte. Mein Panasonic AL-N1 oder Rios Chandler Pentium Rechner hängt sich auf, obwohl das Installationsprogramm noch gar nicht gestartet ist. Aus unerfindlichen Gründen vertragen diese Rechner die neuen Anweisungen i586_copyout und i586_copyin nicht. Damit diese Anweisungen nicht verwendet werden, müssen Sie von der Bootdiskette booten. Im ersten Menü (die Frage, ob Sie UserConfig starten wollen oder nicht) wählen Sie den Punkt command-line interface (expert mode). Geben Sie den folgenden Befehl ein: flags npx0 1 Danach können Sie den Systemstart normal fortsetzen. Die Einstellung wird in Ihrem Kernel gespeichert, Sie müssen Sie also nur einmal machen. Ich habe diesen CMD640 IDE Controller, der angeblich broken ist. Das stimmt. &os; unterstützt diesen Controller nicht mehr. Auf meinem Compaq Aero Notebook erhalte ich die Meldung No floppy devices found! Please check ..., wenn ich von Diskette installieren will. Compaq ist immer etwas anders als andere und sah daher keinen Grund, das Diskettenlaufwerk im CMOS RAM der Aero Notebooks einzutragen. Da sich der Treiber auf diese Angaben verläßt, nimmt er an, daß kein Diskettenlaufwerk vorhanden ist. Starten Sie UserConfig und stellen Sie bei fdc0 unter flags den Wert 0x1 ein. Damit teilen Sie dem Treiber mit, daß ein 1.44 MByte Diskettenlaufwerk vorhanden ist, und daß er die Werte im CMOS ignorieren soll. Wenn ich &os; auf einem Dell Poweredge XE installiere, wird der Dell-eigene RAID Controller DSA (Dell SCSI Array) nicht erkannt. Benutzen Sie das EISA Konfigurationsprogramm, um den DSA auf AHA-1540 Emulation umzustellen. Danach wird er von &os; als Adaptec AHA-1540 SCSI Controller auf IRQ 11 und Port 340 erkannt. In diesem Modus können Sie das RAID des DSA nutzen, lediglich die DSA-spezifischen Funktionen wie die RAID-Überwachung stehen nicht zur Verfügung. Ich verwende eine Netzwerkkarte vom Typ IBM EtherJet PCI, die zwar vom Treiber &man.fxp.4; korrekt erkannt wird, aber trotzdem leuchten die Kontroll-LEDs nicht auf und ich habe auch keine Verbindung zum Netzwerk. Wir wissen nicht, was die Ursache dieses Problems ist. IBM hat das gleiche Problem (wir haben sie gefragt). Diese Netzwerkkarte ist eine ganz normale Intel EtherExpress Pro/100 mit einem IBM-Aufkleber, und diese Netzwerkkarten machen normalerweise gar keine Probleme. Das Problem tritt auch nur in einigen IBM Netfinity Servern auf. Die einzige Lösung ist, eine andere Netzwerkkarte zu verwenden. Wenn ich während einer Installation auf einer IBM Netfinity 3500 das Netzwerk konfiguriere, hängt sich das System auf. Es gibt Probleme mit der eingebauten Netzwerkkarte der IBM Netfinity 3500, die wir noch nicht genau einkreisen konnten. Die Ursache des Problems könnte eine falsche Konfiguration der SMP Unterstützung auf diesen Systemen sein. Sie müssen eine andere Netzwerkkarte verwenden und Sie dürfen die eingebaute Netzwerkkarte werden benutzen noch konfigurieren. Wenn ich &os; auf einer Festplatte konfiguriere, die an einem Mylex PCI RAID Controller abgeschlossen ist, kann ich das System nicht neu starten (Abbruch mit der Meldung read error). Ein Fehler im Mylex Treiber sorgt dafür, daß er die BIOS-Einstellung 8GB Geometrie ignoriert. Verwenden Sie den 2 GB Modus.