Index: head/de_DE.ISO8859-1/books/handbook/boot/chapter.xml =================================================================== --- head/de_DE.ISO8859-1/books/handbook/boot/chapter.xml (revision 49188) +++ head/de_DE.ISO8859-1/books/handbook/boot/chapter.xml (revision 49189) @@ -1,1055 +1,992 @@ &os;s Bootvorgang Hans-ChristianEbkeÜbersetzt von Übersicht booten Bootstrap Das Starten des Computers und das Laden des Betriebssystems wird im Allgemeinen als Bootstrap-Vorgang, oder als Booten bezeichnet. &os;s Bootvorgang ermöglicht große Flexibilität, was das Anpassen dessen anbelangt, was passiert, wenn das System gestartet wird. Es kann zwischen verschiedenen Betriebssystemen, die auf demselben Computer installiert sind oder verschiedenen Versionen desselben Betriebssystems oder installierten Kernels gewählt werden. Dieses Kapitel zeigt die zur Verfügung stehenden Konfigurationsmöglichkeiten und wie man den Bootvorgang anpasst. Dies schließt alles ein, bis der Kernel gestartet worden ist, der dann alle Geräte gefunden hat und &man.init.8; gestartet hat. Dies passiert, wenn die Farbe des Textes während des Bootvorgangs von weiß zu grau wechselt. Dieses Kapitel informiert über folgende Punkte: Die Komponenten des &os;-Bootvorgangs und deren Interaktion. Die Optionen, mit denen der &os;-Bootvorgang gesteuert werden kann. Wie ein angepasster Willkommensbildschirm beim Booten konfiguriert wird. Wie Geräte mit &man.device.hints.5; konfiguriert werden. Wie das System in den Single-User-Modus und in den Mehrbenutzer-Modus gestartet wird und wie ein &os;-System ordnungsgemäß heruntergefahren wird. Dieses Kapitel erklärt den Bootvorgang von &os; auf Intel x86- und amd64-Plattformen. &os;s Bootvorgang Wenn der Computer eingeschaltet wird und das Betriebssystem gestartet werden soll, entsteht ein interessantes Dilemma, denn der Computer weiß per Definition nicht, wie er irgendetwas tut, bis das Betriebssystem gestartet wurde. Das schließt das Starten von Programmen, die sich auf der Festplatte befinden, ein. Wenn der Computer kein Programm von der Festplatte starten kann, sich das Betriebssystem aber genau dort befindet, wie wird es dann gestartet? Dieses Problem ähnelt einer Geschichte des Barons von Münchhausen. Dort war eine Person in einen Sumpf gefallen und hat sich selbst an den Riemen seiner Stiefel (engl. bootstrap) herausgezogen. In den jungen Jahren des Computerzeitalters wurde mit dem Begriff Bootstrap dann die Technik das Betriebssystem zu laden bezeichnet und wurde hinterher mit booten abgekürzt. BIOS Basic Input/Output System BIOS Auf x86-Plattformen ist das Basic Input/Output System (BIOS) dafür verantwortlich, das Betriebssystem zu laden. Das BIOS liest den Master Boot Record (MBR) aus, der sich an einer bestimmten Stelle auf der Festplatte befinden muss. Das BIOS kann den MBR selbstständig laden und ausführen und geht davon aus, dass dieser die restlichen Dinge, die für das Laden des Betriebssystems notwendig sind, selbst oder mit Hilfe des BIOS erledigen kann. &os; ermöglicht das Booten sowohl über den alten MBR-Standard, als auch über die neuere GUID-Partitionstabelle (GPT). GPT-Partitionen finden sich häufig auf Systemen mit dem Unified Extensible Extensible Firmware Interface (UEFI). &os; kann allerdings mit Hilfe von &man.gptboot.8; auch GPT-Partitionen über das alte BIOS booten. An der Unterstützung für ein direktes Booten über UEFI wird derzeit gearbeitet. Master Boot Record (MBR) Boot Manager Boot Loader Der Code innerhalb des MBRs wird für gewöhnlich als Boot-Manager bezeichnet, insbesondere, wenn eine Interaktion mit dem Anwender stattfindet. Der Boot-Manager verwaltet zusätzlichen Code im ersten Track der Platte oder des Dateisystems. Zu den bekanntesten Boot-Managern gehören boot0, der auch als Boot Easy bekannte Standard-Boot-Manager von &os;, sowie Grub, welches in vielen &linux;-Distributionen verwendet wird. Falls nur ein Betriebssystem installiert ist, sucht der MBR nach dem ersten bootbaren Slice (das dabei als active gekennzeichnet ist) auf dem Laufwerk und führt den dort vorhandenen Code aus, um das restliche Betriebssystem zu laden. Falls mehrere Betriebssysteme installiert sind, kann ein anderer Boot-Manager installiert werden, der eine Liste der verfügbaren Betriebssysteme anzeigt, so dass der Benutzer wählen kann, welches Betriebssystem er booten möchte. Das restliche &os;-Bootstrap-System ist in drei Phasen unterteilt. Die erste Phase besitzt gerade genug Funktionalität um den Computer in einen bestimmten Status zu verhelfen und die zweite Phase zu starten. Die zweite Phase führt ein wenig mehr Operationen durch und startet schließlich die dritte Phase, die das Laden des Betriebssystems abschließt. Der ganze Prozess wird in drei Phasen durchgeführt, weil der MBR die Größe der Programme, die in Phase eins und zwei ausgeführt werden, limitiert. Das Verketten der durchzuführenden Aufgaben ermöglicht es &os;, ein sehr flexibles Ladeprogramm zu besitzen. Kernel &man.init.8; Als nächstes wird der Kernel gestartet, der zunächst nach Geräten sucht und sie für den Gebrauch initialisiert. Nach dem Booten des Kernels übergibt dieser die Kontrolle an den Benutzer Prozess &man.init.8;, der erst sicherstellt, dass alle Laufwerke benutzbar sind und die Ressourcen Konfiguration auf Benutzer Ebene startet. Diese wiederum mountet Dateisysteme, macht die Netzwerkkarten für die Kommunikation mit dem Netzwerk bereit und startet alle Prozesse, die konfiguriert wurden, um beim Hochfahren gestartet zu werden. Dieser Abschnitt beschreibt die einzelnen Phasen und wie sie mit dem &os;-Bootvorgang interagieren. Der Boot-Manager Boot Manager Master Boot Record (MBR) - Der Code im MBR oder im Boot-Manager + Der Boot-Manager Code im MBR wird manchmal auch als stage zero des - Boot-Prozesses bezeichnet. Dieser Abschnitt beschreibt zwei - Boot-Manager: boot0 und - LILO. + Boot-Prozesses bezeichnet. In der Voreinstellung verwendet + &os; den boot0 Boot-Manager. - - Der <application>boot0</application> - Boot-Manager: - - Der vom &os;-Installationsprogramm oder &man.boot0cfg.8; + Der vom &os;-Installationsprogramm in der Voreinstelung installierte MBR basiert auf /boot/boot0. Die Größe und Leistungsfähigkeit von boot0 ist auf 446 Bytes beschränkt, weil der restliche Platz für die Partitionstabelle sowie den 0x55AA-Identifier am Ende des MBRs benötigt wird. Wenn boot0 und mehrere Betriebssysteme installiert sind, wird beim Starten des Computers eine Anzeige ähnlich der folgenden zu sehen sein: - <filename>boot0</filename>-Screenshot F1 Win F2 FreeBSD Default: F2 - Diverse Betriebssysteme, insbesondere &windows;, + Diverse Betriebssysteme überschreiben den existierenden MBR, wenn sie nach &os; installiert werden. Falls dies passiert, kann mit folgendem Kommando der momentane MBR durch den &os;-MBR ersetzt werden: &prompt.root; fdisk -B -b /boot/boot0 Gerät Bei Gerät handelt es sich um das Gerät, von dem gebootet wird, also beispielsweise ad0 für die erste IDE-Festplatte, ad2 für die erste IDE-Festplatte am zweiten IDE-Controller, da0 für die erste SCSI-Festplatte. Um eine angepasste Konfiguration des MBR zu erstellen, lesen Sie &man.boot0cfg.8;. - - - Der LILO-Boot-Manager: - - Damit dieser Boot-Manager auch &os; booten kann, starten - Sie zuerst Linux und fügen danach folgende Zeilen in die - Konfigurationsdatei /etc/lilo.conf - ein: - - - other=/dev/hdXY -table=/dev/hdX -loader=/boot/chain.b -label=FreeBSD - - Dabei muss die primäre Partition von &os; - sowie dessen Platte im Linux-Format angeben werden. Dazu wird - X durch die Linux-Bezeichnung der - Platte und Y durch die von Linux - verwendete Partitionsnummer ersetzt. Für ein - SCSI-Laufwerk wird - /dev/sd anstelle von - /dev/hd verwendet. Die Zeile - kann weggelassen werden, - wenn beide Betriebssysteme auf der gleichen Platte installiert - sind. Geben Sie danach /sbin/lilo -v - ein, um die Änderungen zu übernehmen. Achten Sie - dabei besonders auf etwaige Fehlermeldungen. Phase Eins und Phase Zwei Im Prinzip sind die erste und die zweite Phase Teile desselben Programms, im selben Bereich auf der Festplatte. Aufgrund von Speicherplatz-Beschränkungen wurden sie in zwei Teile aufgeteilt, welche jedoch immer zusammen installiert werden. Beide werden entweder vom - Installer oder von &man.bsdlabel.8; aus + &os;-Installationsprogramm oder bsdlabel aus der kombinierten /boot/boot kopiert. Beide Phasen befinden sich außerhalb des Dateisystems - im Bootsektor des Boot-Slices, wo boot0 () oder ein anderer Boot-Manager + im Bootsektor des Boot-Slices, wo + boot0 oder ein anderer Boot-Manager ein Programm erwarten, das den weiteren Bootvorgang - durchführen kann. Die Anzahl der dabei verwendeten - Sektoren wird durch die Größe von - /boot/boot bestimmt. + durchführen kann. - boot1 ist ein sehr einfaches - Programm, da es nur 512 Bytes groß sein darf, und es - besitzt gerade genug Funktionalität, um &os;s + Die erste Phase, boot1, ist ein sehr + einfaches Programm, da es nur 512 Bytes groß sein darf. + Es besitzt gerade genug Funktionalität, um &os;s bsdlabel, das Informationen über den Slice enthält, auszulesen, und um boot2 zu finden und auszuführen. - boot2 ist schon ein wenig + Die zweite Phase, boot2, ist schon ein wenig umfangreicher und besitzt genügend Funktionalität, um - Dateien in &os;s Dateisystem zu finden. Außerdem hat es - eine einfache Schnittstelle, die es ermöglicht, den zu - ladenden Kernel oder Loader auszuwählen. + Dateien in &os;s Dateisystem zu finden. Es kann eine einfache + Schnittstelle bereitstellen, die es ermöglicht, den zu + ladenden Kernel oder Loader auszuwählen. Es lädt den + loader, der einen weitaus größeren + Funktionsumfang bietet und eine Konfigurationsdatei + zur Verfügung stellt. Wenn der Boot-Prozess während der + zweiten Phase unterbrochen wird, erscheint der folgende + Bildschrim: - Da der &man.loader.8; einen weitaus größeren - Funktionsumfang hat und eine einfach zu bedienende - Boot-Konfigurations-Schnittstelle zur Verfügung stellt, wird - er gewöhnlich von boot2 gestartet. - <filename>boot2</filename>-Screenshot >> FreeBSD/i386 BOOT Default: 0:ad(0,a)/boot/loader boot: - &man.bsdlabel.8; kann dazu verwendet werden, dass - installierte boot1 und - boot2 zu ersetzen: + Um das installierte boot1 und + boot2 zu ersetzen, benutzen Sie + bsdlabel, wobei + diskslice das Laufwerk und die + Slice darstellt, von dem gebootet wird, beispielsweise + ad0s1 für die erste Slice auf der ersten + IDE-Festplatte: &prompt.root; bsdlabel -B diskslice - Wobei diskslice das Laufwerk - und die Slice darstellt, von dem gebootet wird, beispielsweise - ad0s1 für die erste Slice - auf der ersten IDE-Festplatte. - - Dangerously Dedicated Mode - Wenn man nur den Festplatten-Namen, also - z.B. ad0 benutzt, wird &man.bsdlabel.8; - eine "dangerously dedicated disk" erstellen, ohne Slices. + Wenn man nur den Festplatten-Namen benutzt, + beispielsweise ad0, wird + bsdlabel eine + dangerously dedicated disk erstellen, ohne + Slices. Das ist ein Zustand, den man meistens nicht hervorrufen möchte. Aus diesem Grund sollte man das - diskslice von &man.bsdlabel.8; + diskslice noch einmal prüfen, bevor Return gedrückt wird. Phase Drei boot-loader - Der boot-loader ist der letzte von drei Schritten im - Bootstrap-Prozess und kann im Dateisystem normalerweise unter - /boot/loader gefunden werden. - Der Loader soll eine interaktive + Der loader ist der letzte von + drei Schritten im Bootstrap-Prozess. Er kann im Dateisystem + normalerweise als /boot/loader gefunden + werden. + + Der loader soll eine interaktive Konfigurations-Schnittstelle mit eingebauten Befehlssatz sein, ergänzt durch einen umfangreichen Interpreter mit einem komplexeren Befehlssatz. - Der Loader sucht während seiner Initialisierung - nach Konsolen und Laufwerken, findet heraus, von welchem - Laufwerk er gerade bootet, und setzt dementsprechend - bestimmte Variablen. Dann wird ein Interpreter gestartet, - der Befehle interaktiv oder von einem Skript empfangen - kann. + Der loader sucht während seiner + Initialisierung nach Konsolen und Laufwerken, findet heraus, + von welchem Laufwerk er gerade bootet, und setzt + dementsprechend bestimmte Variablen. Dann wird ein + Interpreter gestartet, der Befehle interaktiv oder von einem + Skript empfangen kann. + loader loader Konfiguration - Danach liest der Loader die Datei - /boot/loader.rc aus, welche ihn + Danach liest der loader die Datei + /boot/loader.rc, welche ihn standardmäßig anweist /boot/defaults/loader.conf zu lesen, wo sinnvolle Standardeinstellungen für diverse Variablen festgelegt werden und wiederum /boot/loader.conf für lokale Änderungen an diesen Variablen ausgelesen wird. Anschließend arbeitet dann loader.rc entsprechend dieser Variablen und lädt die ausgewählten Module und den gewünschten Kernel. - In der Voreinstellung wartet der Loader + In der Voreinstellung wartet der loader 10 Sekunden lang auf eine Tastatureingabe und bootet den Kernel, falls keine Taste betätigt wurde. Falls doch eine Taste betätigt wurde wird dem Benutzer eine Eingabeaufforderung angezeigt. Sie nimmt einen Befehlssatz entgegen, der es dem Benutzer erlaubt, Änderungen an Variablen vorzunehmen, Module zu laden, alle Module zu entladen oder schließlich zu booten - bzw. neu zu booten. + oder neu zu booten. - + Die eingebauten Befehle des Loaders - Dies sind nur die gebräuchlichsten Befehle. - Eine vollständige Beschreibung aller verfügbaren Befehle - finden Sie in &man.loader.8;. + + + + Variable + Beschreibung + + - - - autoboot Sekunden + + + autoboot Sekunden + Es wird mit dem Booten des Kernels fortgefahren, + falls keine Taste in der gegebenen Zeitspanne betätigt + wurde. In der gegebenen Zeitspanne, Vorgabe sind + 10 Sekunden, wird ein Countdown angezeigt. + - - Es wird mit dem Booten des Kernels fortgefahren, - falls keine Taste in der gegebenen Zeitspanne - betätigt wurde. In der gegebenen Zeitspanne, Vorgabe - sind 10 Sekunden, wird ein Countdown angezeigt. - - + + boot + -Optionen + Kernelname + Bewirkt das sofortige Booten des Kernels mit + allen gegebenen Optionen, oder dem angegebenen + Kernelnamen. Das übergeben eines Kernelnamens ist nur + nach einem unload anwendbar, + andernfalls wird der zuvor verwendete Kernel + benutzt. + - - boot - -options - Kernelname + + boot-conf + Bewirkt die automatische Konfiguration der + Module, abhängig von den entsprechenden Variablen + (üblicherweise kernel). Dies nur dann + sinnvoll, wenn zuvor unload benutzt + wurde. + - - Bewirkt das sofortige Booten des Kernels mit allen - gegebenen Optionen, oder dem angegebenen Kernelnamen. - Das übergeben eines Kernelnamens ist nur nach einem - unload-Befehl anwendbar, - andernfalls wird der zuvor verwendete Kernel - benutzt. - - + + help + Thema + Zeigt die Hilfe an, die zuvor aus der Datei + /boot/loader.help gelesen wird. + Falls index als Thema angegeben + wird, wird die Liste der zur Verfügung stehenden + Hilfe-Themen angezeigt. + - - boot-conf + + include Dateiname + … + Das Einlesen und Interpretieren der angegebenen + Datei geschieht Zeile für Zeile und wird im Falle + eines Fehlers umgehend unterbrochen. + - - Bewirkt die automatische Konfiguration der Module, - abhängig von den entsprechenden Variablen (üblicherweise - kernel). Dies nur dann sinnvoll, wenn - zuvor unload benutzt wurde. - - + + load -t + Typ + Dateiname + Lädt den Kernel, das Kernel-Modul, oder die Datei + des angegebenen Typs. Optionen, die auf + Dateinamen folgen, werden + der Datei übergeben. + - - help - Thema + + ls -l + Pfad + Listet die Dateien im angegebenen Pfad auf, oder + das Root-Verzeichnis, falls kein Pfad angegeben wurde. + Die Option bewirkt, dass die + Dateigrößen ebenfalls angezeigt werden. + - - Zeigt die Hilfe an, die zuvor aus der Datei - /boot/loader.help gelesen - wird. Falls index als Thema angegeben - wird, wird die Liste der zur Verfügung stehenden - Hilfe-Themen angezeigt. - - + + lsdev -v + Listet alle Geräte auf, für die Module geladen + werden können. Die Option bewirkt + eine ausführliche Ausgabe. + - - include Dateiname - … + + lsmod -v + Listet alle geladenen Module auf. Die Option + bewirkt eine ausführliche + Ausgabe. + - - Verarbeitet die angegebene Datei. Das Einlesen und - Interpretieren geschieht Zeile für Zeile und wird im Falle eines - Fehlers umgehend unterbrochen. - - - - load -t - Typ - Dateiname + + more Dateiname + Zeigt den Dateinhalt der angegebenen Datei an, + wobei eine Pause alle LINES Zeilen + gemacht wird. + - - Lädt den Kernel, das Kernel-Modul, oder die Datei - des angegebenen Typs. Optionen, die auf - Dateinamen folgen, werden - der Datei übergeben. - - - - ls -l - Pfad + + reboot + Bewirkt einen umgehenden Neustart des + Systems. + - - Listet die Dateien im angegebenen Pfad auf, oder das - root-Verzeichnis(/), falls kein Pfad angegeben - wurde. Die Option bewirkt, dass die - Dateigrößen ebenfalls angezeigt werden. - - - - lsdev -v + + set Variable, set + Variable=Wert + Setzt die angegebenen Umgebungsvariablen. + - - Listet alle Geräte auf, für die Module geladen - werden können. Die Option bewirkt - eine detailreichere Ausgabe. - - + + unload + Entlädt sämtliche geladenen Module. + + + +
+
- - lsmod -v - - - Listet alle geladenen Module auf. Die Option - bewirkt eine detailreichere - Ausgabe. - - - - - more Dateiname - - - Zeigt den Dateinhalt der angegebenen Datei an, wobei - eine Pause alle LINES Zeilen gemacht - wird. - - - - - reboot - - - Bewirkt einen umgehenden Neustart des Systems. - - - - - set Variable - set - Variable=Wert - - - Setzt die Umgebungsvariablen des Loaders. - - - - - unload - - - Entlädt sämtliche geladenen Module. - - - - - - + Beispiele für die Loader Bedienung Hier ein paar praktische Beispiele für die Bedienung des Loaders. Single-User Modus Um den gewöhnlichen Kernel im Single-User Modus zu starten: boot -s Um alle gewöhnlichen Kernelmodule zu entladen und dann den alten, oder einen anderen Kernel zu laden: unload load kernel.old Verwenden Sie kernel.GENERIC, um den allgemeinen Kernel zu bezeichnen, der vorinstalliert wird. kernel.old bezeichnet den Kernel, der vor dem System-Upgrade installiert war. Der folgende Befehl lädt die gewöhnlichen Module mit einem anderen Kernel: unload set kernel="kernel.old" boot-conf Folgendes lädt ein Kernelkonfigurations-Skript (ein automatisiertes Skript, dass dasselbe tut, was der Benutzer normalerweise von Hand an der Eingabeaufforderung durchführen würde): load -t userconfig_script /boot/kernel.conf - Interaktion mit dem Kernel während des Bootens Kernel Interaktion während des Bootens Wenn der Kernel einmal geladen ist, entweder durch den Loader oder durch boot2, welches den Loader umgeht, dann überprüft er vorhandene Boot-Flags und passt sein Verhalten nach Bedarf an. Kernel Boot-Flags Es folgt eine Auflistung der gebräuchlichsten Boot-Flags: Bewirkt, dass während der Kernel-Initialisierung gefragt wird, welches Gerät als Root-Dateisystem eingehängt werden soll. Es wird von CD-ROM gebootet. Startet UserConfig, das Boot-Zeit Konfigurationsprogramm. Bewirkt den Start des Single-User Modus. Zeigt mehr Informationen während des Starten des Kernels an. Informationen zu den anderen Boot-Flags finden Sie in &man.boot.8;.
Willkommmensbildschirme während des Bootvorgangs konfigurieren Joseph J.BarbishContributed by BenedictReuschlingÜbersetzt von Der Willkommmensbildschirm erzeugt einen alternativen Boot-Bildschirm, der alle Bootmeldungen und Meldungen über startende Dienste bis zur Anzeige des Anmeldeprompts überdeckt. Es existieren zwei grundlegende Umgebungen in &os;. Die erste ist die altbekannte, auf virtuellen Konsolen basierte Kommandozeile. Nachdem das System den Bootvorgang abgeschlossen hat, wird ein Anmeldebildschirm auf der Konsole anzeigt. Die zweite Umgebung ist die graphische Umgebung, welche in . In diesem Kapitel finden Sie weitere Informationen zur Installation und Konfiguration eines grafischen Display-Managers und Login-Managers. Die Willkommensbildschirm-Funktionalität unterstützt 256-Farben in den Formaten Bitmap (.bmp), ZSoft PCX (.pcx) oder TheDraw (.bin). Die Willkommensbildschirm-Dateien dürfen eine Auflösung von 320 mal 200 Pixeln oder weniger besitzen, damit Standard-VGA Geräte damit arbeiten können. Damit grössere Bilder bis zu einer maximalen Auflösung von 1024 mal 768 Pixeln verwendet werden können, muss das VESA Modul beim Systemstart geladen werden. Für einen angepassten Kernel, wie in beschrieben, muss die VESA-Kernelkonfigurationsoption eingefügt werden. VESA-Unterstützung ermöglicht es, einen Willkommensbildschirm als Vollbild auf dem gesamten Bildschirm anzuzeigen. Wenn der Willkommensbildschirm beim Bootvorgang angezeigt wird, kann dieser jederzeit mit einem beliebigen Tastendruck ausgeschaltet werden. Der Willkommensbildschirm ist standardmässig so eingestellt, dass er als Bildschirmschoner verwendet wird. Nach einer bestimmten Zeit der Untätigkeit wird der Willkommensbildschirm angezeigt und wechselt durch verschiedene Stufen der Intensität von hell zu einem sehr dunklen Bild und wieder zurück. Das Verhalten des Willkommensbildschirms kann durch hinzufügen einer saver=-Zeile in /etc/rc.conf geändert werden. Es gibt mehrere eingebaute Bildschirmschoner, die in &man.splash.4; beschrieben werden. Die saver=-Option bezieht sich nur auf virtuelle Konsolen und hat keinen Effekt bei grafischen Display-Managern. Ein paar Nachrichten des Bootloaders und ganz besonders das Menü mit den Bootoptionen und dem Warte-Countdown werden zur Bootzeit angezeigt, selbst wenn der Willkommensbildschirm aktiviert ist. Dateien mit Beispiel-Willkommensbildschirmen können von der Galerie auf http://artwork.freebsdgr.org heruntergeladen werden. Durch die Installation des Ports sysutils/bsd-splash-changer können Willkommensbildschirme von einer zufällig ausgewählten Sammlung von Bildern bei jedem Neustart angezeigt werden. Die Willkommensbildschirm-Datei .bmp, .pcx oder .bin muss im Wurzelverzeichnis, z.B. /boot abgelegt werden. Für die Standard-Auflösung von 256-Farben, 320 mal 200 Pixel oder weniger, bearbeiten Sie /boot/loader.conf, so dass diese die folgenden Zeilen enthält: splash_bmp_load="YES" bitmap_load="YES" bitmap_name="/boot/splash.bmp" Für grössere Video-Auflösungen bis zum Maximum von 1024 mal 768 Pixeln ändern Sie die Datei /boot/loader.conf, damit diese die folgenden Zeilen enthält: vesa_load="YES" splash_bmp_load="YES" bitmap_load="YES" bitmap_name="/boot/splash.bmp" Dieses Beispiel geht davon aus, das /boot/splash.bmp als Willkommensbildschirm verwendet wird. Um eine PCX-Datei zu verwenden, benutzen Sie die folgenden Zeilen, inklusive der vesa_load="YES"-Zeile, abhängig von der Auflösung: splash_pcx_load="YES" bitmap_load="YES" bitmap_name="/boot/splash.pcx" Beginnend mit &os; 8.3 gibt es die Option, ASCII-Art im TheDraw-Format zu benutzen. splash_txt="YES" bitmap_load="YES" bitmap_name="/boot/splash.bin" Der Dateiname ist nicht, wie im obigen Beispiel gezeigt, auf splash beschränkt. Es darf ein beliebiger Name sein, solange die Datei von einem der unterstützten Typen ist, beispielsweise splash_640x400.bmp oder bluewave.pcx. Weitere interessante Optionen für loader.conf sind: beastie_disable="YES" Diese Option verhindert die Anzeige des Menüs mit den Bootoptionen, aber der Countdown ist immer noch aktiv. Selbst wenn das Bootmenü deaktiviert ist, kann während des Countdowns eine der korrespondierenden Optionen ausgewählt werden. loader_logo="beastie" Dies ersetzt die Standardanzeige des Wortes &os;. Stattdessen wird auf der rechten Seite des Bootmenüs das bunte Beastie-Logo angezeigt. Weitere Informationen finden Sie in &man.splash.4;, &man.loader.conf.5; und &man.vga.4;. Konfiguration von Geräten TomRhodesBeigetragen von device.hints Der Boot-Loader liest während des Systemstarts die Datei &man.device.hints.5;, die Variablen, auch device hints genannt, zur Konfiguration von Geräten enthält. Die Variablen können auch mit Kommandos in Phase 3 des Boot-Loaders, wie in beschrieben, bearbeitet werden. Neue Variablen werden mit set gesetzt, unset löscht schon definierte Variablen und show zeigt Variablen an. Variablen aus /boot/device.hints können zu diesem Zeitpunkt überschrieben werden. Die hier durchgeführten Änderungen sind nicht permanent und beim nächsten Systemstart nicht mehr gültig. Nach dem Systemstart können alle Variablen mit &man.kenv.1; angezeigt werden. Pro Zeile enthält /boot/device.hints eine Variable. Kommentare werden durch # eingeleitet. Die verwendete Syntax lautet: hint.driver.unit.keyword="value" Der Boot-Loader verwendet die nachstehende Syntax: set hint.driver.unit.keyword=value Der Gerätetreiber wird mit driver, die Nummer des Geräts mit unit angegeben. keyword ist eine Option aus der folgenden Liste: : Gibt den Bus, auf dem sich das Gerät befindet, an. : Die Startadresse des I/O-Bereichs. : Gibt die zu verwendende Unterbrechungsanforderung (IRQ) an. : Die Nummer des DMA Kanals. : Die physikalische Speicheradresse des Geräts. : Setzt verschiedene gerätespezifische Optionen. : Deaktiviert das Gerät, wenn der Wert auf 1 gesetzt wird. Ein Gerätetreiber kann mehr Optionen, als die hier beschriebenen, besitzen oder benötigen. Es wird empfohlen, die Optionen in der Manualpage des Treibers nachzuschlagen. Weitere Informationen finden Sie in &man.device.hints.5;, &man.kenv.1;, &man.loader.conf.5; und &man.loader.8;. Init: Initialisierung der Prozess-Kontrolle &man.init.8; Nachdem der Kernel den Bootprozess abgeschlossen hat, übergibt er die Kontrolle an den Benutzer-Prozess &man.init.8;. Dieses Programm befindet sich in /sbin/init, oder dem Pfad, der durch die Variable init_path im Loader spezifiziert wird. Der automatische Reboot-Vorgang stellt sicher, dass alle Dateisysteme des Systems konsistent sind. Falls dies nicht der Fall ist und die Inkonsistenz des UFS-Dateisystems nicht durch &man.fsck.8; behebbar ist, schaltet &man.init.8; das System in den Single-User-Modus, damit der Systemadministrator sich des Problems annehmen kann. Der Single-User Modus Single-User Modus Konsole Der Wechsel in den Single-User Modus kann durch den automatischen Reboot-Vorgang, das Booten mit der Option , oder das Setzen der boot_single Variable in &man.loader.8; erreicht werden. Weiterhin kann der Single-User Modus aus dem Mehrbenutzermodus () heraus durch den Aufruf von &man.shutdown.8;, ohne die Option oder , erreicht werden. Falls die System-Konsole (console) in /etc/ttys auf insecure (dt.: unsicher) gesetzt ist, fordert das System zur Eingabe des Passworts von root auf, bevor es den Single-User Modus aktiviert. Auf insecure gesetzte Konsole in <filename>/etc/ttys</filename> # name getty type status comments # # If console is marked "insecure", then init will ask for the root password # when going to single-user mode. console none unknown off insecure Eine Konsole sollte auf insecure gesetzt sein, wenn die physikalische Sicherheit der Konsole nicht gegeben ist und sichergestellt werden soll, dass nur Personen, die das Passwort von root kennen, den Single-User Modus benutzen können. Daher kann man insecure anstatt dem voreingestellten secure verwenden, um dieses Maß an Sicherheit zu ergänzen. Mehrbenutzermodus Mehrbenutzermodus Stellt &man.init.8; fest, dass das Dateisystem in Ordnung ist, oder der Benutzer den Single-User-Modus () beendet, schaltet das System in den Mehrbenutzermodus, in dem dann die Ressourcen Konfiguration des Systems gestartet wird. rc-Dateien Das Ressourcen Konfigurationssystem (engl. resource configuration, rc) liest seine Standardkonfiguration von /etc/defaults/rc.conf und System-spezifische Details von /etc/rc.conf. Dann mountet es die Dateisysteme gemäß /etc/fstab, startet die Netzwerkdienste, diverse System Daemons und führt schließlich die Start-Skripten der lokal installierten Anwendungen aus. Lesen Sie &man.rc.8; und ebenso die Skripte an sich, um mehr über das Ressourcen Konfigurationssystem zu erfahren. Der Shutdown-Vorgang &man.shutdown.8; Im Falle eines regulären Herunterfahrens durch &man.shutdown.8; führt &man.init.8; /etc/rc.shutdown aus, sendet dann sämtlichen Prozessen ein TERM Signal und schließlich ein KILL Signal an alle Prozesse, die sich nicht rechtzeitig beendet haben. &os;-Systeme, die Energieverwaltungsfunktionen unterstützen, können mit shutdown -p now ausgeschaltet werden. Zum Neustart des Systems wird shutdown -r now benutzt. Das Kommando &man.shutdown.8; kann nur von root oder Mitgliedern der Gruppe operator benutzt werden. Man kann auch &man.halt.8; und &man.reboot.8; verwenden. Weitere Informationen finden Sie in den Hilfeseiten der drei Kommandos. Die Energieverwaltungsfunktionen erfordern, dass die Unterstützung für &man.acpi.4; als Modul geladen, oder statisch in einen angepassten Kernel kompiliert wird.