 |
» |
|
|
 |
Wenn Sie HP Peripheriegeräte und HP Standardtreiber
konfigurieren, wird diese Konfiguration von HP-UX automatisch
durchgeführt, vorausgesetzt, die Treiber wurden in der
Eingabedatei für den Systemkern angegeben. Es kann jedoch auch vorkommen, dass Sie für ein Peripheriegerät
einen angepassten Treiber benötigen. Angenommen, Sie haben
einen solchen Treiber auf einem Band erhalten und ihn auf Ihr System
geladen. Wenn Sie einen Treiber nur einem bestimmten Hardwarepfad
zuordnen wollen, müssen Sie den Treiber und die Peripherieadresse
in einer Treiberanweisung in der Datei /stand/system angeben. Vergewissern Sie sich, dass der Treiber
vom Hilfsprogramm zum Erstellen des Systemkerns gefunden wird, und
erstellen Sie den Systemkern neu.  |  |  |  |  | HINWEIS: Sie können mit dieser Methode einen beliebigen sio-Treiber oder wsio-Treiber laden. Mit dieser Methode können
Sie jedoch nicht die Konfiguration von wsio-Schnittstellentreibern an bestimmten Adressen
erzwingen. Sie können wsio-Schnittstellentreiber konfigurieren, sofern der
Treiber in die Systemdatei einbezogen wurde und kein anderer Schnittstellentreiber
in der Datei /stand/system die betreffende Karte anfordern kann. Weitere
Informationen hierzu finden Sie im Handbuch Driver Development
Guide. |  |  |  |  |
Erstellen Sie den Systemkern neu, und binden
Sie den hinzugefügten Gerätetreiber ein. Führen
Sie hierzu die folgenden Schritte aus: Wechseln
Sie in das Verzeichnis /stand/build. Starten Sie in diesem Verzeichnis mit dem folgenden
Befehl das Skript system_prep zur Vorbereitung des Systems. system_prep schreibt eine Systemdatei anhand des aktuellen
Systemkerns in Ihr aktuelles Verzeichnis (im Beispiel unten wird
die Datei /stand/build/system erstellt). Über die Option -v kann während der Ausführung
des Skripts ein Erläuterungstext zu den ausgeführten
Aktionen angezeigt werden. cd /stand/build /usr/lbin/sysadm/system_prep -v -s system |
Bearbeiten Sie die Datei /stand/build/system manuell an zwei Stellen,
und fügen Sie den angepassten Treiber hinzu:  |  |  |  |  | HINWEIS: Verwenden Sie bei diesem Schritt nicht den Befehl kmsystem,
sondern bearbeiten Sie die Datei direkt. |  |  |  |  |
Listen Sie den Treiber im oberen Teil der Datei system zusammen mit ähnlichen Treibern auf.
Die folgende Abbildung zeigt beispielsweise den oberen Teil einer Systemdatei, zu der der angepasste SCSI-Treiber disco hinzugefügt wurde. ********************************************************************** * Bus-Dependent subsystems ********************************************************************** * ccio = Cache Coherent I/O ccio ********************************************************************** * SCSI drivers ********************************************************************** disco sdisk sflop stape ... |
Fügen Sie eine Treiberanweisung am Ende
der Datei hinzu, wenn Sie das Laden des Treibers nur für
einen bestimmten Hardwarepfad erzwingen wollen. Die Treiberanweisung teilt HP-UX mit, dass der Treiber
einer bestimmten Hardwareadresse zugeordnet werden soll. Die Anweisung
hat folgendes Format: driver Hardwarepfad Treibername |
Beispiel: Eine Treiberanweisung zum Zuordnen des angepassten Treibers disco zu der Schnittstellenkarte an Adresse 2/0/7.6.0 bei einem Modell 755 könnte folgendermaßen
aussehen: Auch wenn im Systemkern ein HP-UX Treiber für
eine Platte (z. B. sdisk) vorhanden ist, bewirkt die Treiberanweisung,
dass HP-UX den Treiber disco für die Platte an der Adresse 2/0/7.6.0 verwendet, und zwar ausschließlich.
Für andere Platten verwendet HP-UX weiterhin die
Standardgerätetreiber für Platten. Wenn disco alle Versionen von sdisk im Systemkern ersetzen soll, entfernen Sie einfach
die Angabe sdisk aus der Systemdatei, und ersetzen Sie diese durch disco. Sie müssen nur eine Treiberanweisung
einfügen, wenn Sie die Konfiguration des Treibers für
bestimmte Pfade erzwingen wollen.
Erstellen Sie eine kleine Datei im Verzeichnis /usr/conf/master.d, auf die beim Neuerstellen des Systemkerns von
der Datei /stand/system aus verwiesen wird. Sie können dieser
Datei einen beliebigen Namen geben; verwenden Sie hierbei das folgende
Format (dieses Format ähnelt dem Format des Abschnitts DRIVER_INSTALL der Datei /usr/conf/master.d/core-hpux): $Driver_Install <Treibername> -1 -1 $$$ |
Das folgende Beispiel zeigt eine solche Datei für
den Treiber disco. $Driver_Install disco -1 -1 $$$ |
Vergewissern Sie sich, dass der zu installierende Treiber
in eine Bibliothek einbezogen wurde, die vom Hilfsprogramm mk_kernel gefunden werden kann. Wenn Sie diesen Treiber von einem anderen Hersteller erhalten haben,
wurde der Treiber wahrscheinlich in eine Bibliothek kompiliert,
die Sie beim Laden des Bands auf Ihr System in /usr/conf/lib geladen haben. Überprüfen Sie das Archiv. Geben Sie hierzu
den Befehl ar mit der Option -t ein, und geben Sie die Bibliothek als Argument
an. Wenn die Datei (z. B. disco.o bzw. der Name der Datei, die den Treiber enthält)
in dieser Bibliothek vorhanden ist, wird sie in der Ausgabe dieses Befehls
angezeigt. /usr/ccs/bin/ar -t /usr/conf/lib/libdisco.a |
Wenn Sie die Datei nicht finden, müssen Sie den Treiber
in eine Bibliothek in /usr/conf/lib einfügen. Verwenden Sie hierzu die Option -r beim Befehl ar. Wenn Sie beispielsweise den Treiber disco.o in
die Bibliothek /usr/conf/lib/libhp-ux.a einfügen wollen, geben Sie den folgenden
Befehl ein: /usr/ccs/bin/ar -r /usr/conf/lib/libhp-ux.a disco.o |
Nachdem Sie sich vergewissert haben, dass die .o-Datei in einer Bibliothek enthalten ist, die von mk_kernel, erkannt wird, können Sie den Systemkern
neu erstellen, um den Treiber einzubinden. Vergewissern Sie sich, dass Sie sich wieder im Verzeichnis /stand/build befinden. Geben Sie den Befehl mk_kernel ein. Mit dieser Aktion wird der Systemkern /stand/build/vmunix_test erstellt, mit dem Sie anschließend die
gewünschten Funktionen testen können. /usr/sbin/mk_kernel -s system |
Vergewissern Sie sich, dass der Systemkern erfolgreich
erstellt wurde. Verwenden Sie dazu den Befehl nm, und suchen Sie mit grep nach dem Namen des Treibers. Die Ausgabe dieses
Befehls sollte mindestens einen Eintrag melden wie den im folgenden
Beispiel: /usr/ccs/bin/nm vmunix_test | grep disco disco_install | 524264|extern|entry |$CODE$ |
Sichern Sie die alten Versionen der Systemdatei und
des Systemkerns, indem Sie diese an eine andere Position verschieben. Verschieben
Sie dann die neue Systemdatei an die richtige Position. mv /stand/system /stand/system.prev mv /stand/build/system /stand/system |
Bereiten Sie einen erneuten Systemstart durch Aufrufen
des Befehls kmupdate vor. Dadurch wird eine Markierung aktiviert, durch
die das System beim erneuten Starten den neuen Systemkern verwendet.
Benachrichtigen Sie die Benutzer, dass ein Systemstart
durchgeführt werden muss. Geben Sie den Befehl /usr/sbin/shutdown -h ein, um das System zu stoppen. Schalten Sie die Systemeinheit aus. Installieren Sie das Peripheriegerät. Vergewissern
Sie sich, dass die Hardwareadresse des Peripheriegeräts
auf den Hardwarepfad eingestellt ist, der in der Treiberanweisung
in der Datei /stand/system angegeben wurde. Schalten Sie alle Peripheriegeräte und dann
erst die Systemeinheit ein. Beim Systemstart vom neuen Systemkern können Sie
sich vergewissern, dass der angepasste Treiber in den Systemkern
konfiguriert wurde. Geben Sie hierzu den Befehl /usr/sbin/ioscan -f ein. Der Treiber sollte dem betreffenden Gerät
an dem Hardwarepfad zugeordnet sein, den Sie in Schritt 2 angegeben
haben.
Weitere Informationen zu Treiberanweisungen und anderen Möglichkeiten
zur Anpassung der Datei /stand/system finden Sie auf der HP-UX Hilfeseite config(1M).
Das Programm config wird von mk_kernel beim Erstellen eines neuen Systemkerns verwendet. In den meisten Fällen erstellt insf beim Systemstart brauchbare Gerätedateien.
Für bestimmte Spezialfälle müssen Sie
diese Dateien mit mknod selbst erstellen.
|