[OpenBSD]

[FAQ-Index] [Zum Kapitel 3 - Mit OpenBSD durchstarten] [Zum Kapitel 5 - Das System aus dem Quelltext erzeugen]

4 - Installationsanleitung für OpenBSD 5.4


Inhaltsverzeichnis


4.1 - Eine Übersicht über die OpenBSD-Installationsprozedur

OpenBSD wird seit langem für seinen einfachen und geradlinigen Installationsprozess anerkannt, der auf allen Plattformen gleich aufgebaut ist.

Alle Plattformen besitzen eine sehr ähnliche Installationsprozedur, jedoch gibt es auf ein paar Plattformen einige kleine Unterschiede im Detail. In jedem Fall wird dringend dazu geraten, das plattformspezifische INSTALL-Dokument im Plattform-Verzeichnis auf der CD-ROM oder den FTP-Seiten (z. B. i386/INSTALL.i386, macppc/INSTALL.macppc oder sparc/INSTALL.sparc) durchzulesen.

Das OpenBSD-Installationsprogramm ist ein spezieller Kernel mit einigen Werkzeugen und Installationsskripten, die sich auf einem vorgeladenen RAM-Laufwerk befinden. Nachdem dieser Kernel gestartet wurde, wird das Betriebssystem aus einigen komprimierten tar(1) (.tgz) Dateien extrahiert, die sich nicht auf dem vorgeladenen RAM-Laufwerk befinden, und daher aus einer anderen Quelle bezogen werden müssen. Es existieren mehrere Wege, diesen Installationskernel zu starten:

Nicht jede Plattform unterstützt alle Startmöglichkeiten: Alle Plattformen können ebenfalls einen bsd.rd für eine Neuinstallation oder ein »Upgrade« verwenden.

Sobald der Installationskernel gestartet ist, gibt es mehrere Möglichkeiten, um die Dateisets der Installations zu beziehen. Wie üblich unterstützt nicht jede Plattform dieselben Optionen.

4.2 - Vor der Installation: Checkliste

Bevor du mit der eigentlichen Installation beginnst, solltest du dir darüber im Klaren sein, womit du am Ende dastehen willst. Zumindest die folgenden Punkte sollten bekannt sein:

4.3 - Startfähige OpenBSD-Installationsmedien erzeugen

Als Beispiele werden wir die Installationsmedien betrachten, die für die Plattformen i386 und sparc bereitstehen.

Die i386-Plattform besitzt sechs separate Installationslaufwerksabbilder, aus denen gewählt werden kann:

Die sparc-Plattform besitzt vier separate Installations-Laufwerksabbilder, aus denen gewählt werden kann:

Auf modernen Plattformen ist man am Besten beraten, wenn man eines der startfähige CD-ROM-Abbilder benutzt, da auf einigen der »größeren« Plattformen (wie etwa amd64, sparc64) eine Menge Treiber und Werkzeuge aus den Diskettenabbildern entfernt werden mussten, was die Installation schwierig gestalten kann. Ältere Plattformen, wie z. B. i386 und sparc, sind jedoch auch weiterhin sehr gut per Diskette installierbar.

4.3.1 - Erzeugung einer startfähigen CD-ROM

Um eine CD-ROM zu brennen, kannst du eine der Dateien cd54.iso und install54.iso verwenden. Es sei an dieser Stelle dem Leser selbst überlassen, die exakten Details für die zur Verfügung stehenden Anwendungen herauszufinden.

In OpenBSD selbst kann eine CD von einem ISO-Abbild mit Hilfe von cdio(1) erzeugt werden:
  # cdio tao cd54.iso

Den meisten CD-Brennern, die für Windows- und Macintosh-Systeme verkauft werden, ist eine Software beigelegt, die ISO-Abbilder auf »blanke« Medien brennen kann. Sollte deiner eine Ausnahme sein, gibt es verschiedene kostenlose Programme, die diese Aufgabe für dich übernehmen können.

Andere Unix-ähnliche Systeme benutzen Anwendungen wie cdrkit.

4.3.2 - Disketten unter Unix erzeugen

Präzise Details und Gerätenamen differieren von Unix-Variante zu Unix-Variante; benutze, was immer für dein System zutrifft.

Um eine formatierte Diskette zu erzeugen, benutze das Kommando fdformat(1), das sowohl formatiert, als auch auf schlechte Sektoren untersucht.

  # fdformat /dev/rfd0c
  Format 1440K floppy `/dev/rfd0c'? (y/n): y
  Processing VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV done.

Ist deine Ausgabe wie im obigen Beispiel, dann ist die Diskette in Ordnung. Wenn du andererseits nicht ALLE »V«s siehst, dann ist die Diskette höchstwahrscheinlich fehlerhaft und du solltest eine andere versuchen.

Um das Abbild auf das Laufwerk zu schreiben, benutze dd(1). Ein Beispiel für dd(1):

  # dd if=floppy54.fs of=/dev/rfd0c bs=32k

Ist das Abbild geschrieben, überprüfe mit Hilfe des Kommandos cmp(1), ob das kopierte Abbild mit dem Original identisch ist. Wenn die Diskette mit dem Abbild identisch ist, so wirst du keine Ausgabe erhalten, sondern einfach nur den nächsten Prompt sehen.

  # cmp /dev/rfd0c floppy54.fs

4.3.3 - Disketten unter Windows erzeugen

Um eine Diskette in Windows vorzubereiten, benutze die eingebauten Formatierungswerkzeuge, um die Diskette zu formatieren, und verifiziere, dass die Diskette keine schlechten Sektoren hat.

Um das Installationsabbild auf die vorbereitete Diskette zu schreiben, kannst du ntrw.exe benutzen, das sich im Verzeichnis tools jedes OpenBSD FTP-Spiegelservers findet.

Ein Beispiel für ntrw:

  C:\> ntrw floppy54.fs a:
  3.5", 1.44MB, 512 bytes/sector
  bufsize is 9216
  1474560 bytes written

4.4 - Starten eines OpenBSD-Installationsmediums

i386/amd64 starten

Ein Installationsabbild auf den PC-Architekturen i386 und amd64 zu starten ist nichts Neues für die meisten Leute. Dein System muss instruiert werden, von welchem Medium es zu starten hat, was normalerweise durch eine BIOS-Option geschieht. Wenn du von CD starten willst, so muss das System-BIOS dazu imstande sein und so konfiguriert werden, dass es von CD startet. Einige ältere Systeme besitzen diese Option nicht, sodass eine Diskette benutzt werden muss, um das Installationsabbild zu starten. Dies ist jedoch kein Grund, beunruhigt zu sein; selbst wenn du von Diskette startest, kannst du immer noch von der CD installieren, wenn das CD-Laufwerk von OpenBSD unterstützt wird (d. h. praktisch alle IDE-Laufwerke).

Du kannst ebenfalls installieren, indem du bsd.rd von einer existierenden OpenBSD-Partition oder unter Verwendung des PXE-Startprozesses über das Netzwerk startest.

sparc/sparc64 starten

HINWEIS: Auf der sparc64-Plattform können nur die SBus-Maschinen (Ultra 1, Ultra 2) von einer Diskette gestartet werden.

Das System muss sich an einem Monitor-ROM-Prompt befinden, der typischerweise so aussieht: »ok «. Benutzt du eine Sun-Tastatur, drücke und halte »STOP« während du »A« drückst. Wenn du eine serielle Konsole benutzt, sollte dich ein »BREAK« zum Monitor-Prompt zurückbringen.

Benutze das folgende Kommando, um von Diskette zu starten:

  ok boot floppy

Normalerweise kannst du vom CD-ROM-Laufwerk eines Sun-Systems vom »Boot«-Prompt aus starten, indem du »boot cdrom« eingibst:

  ok boot cdrom

4.5 - Eine einfache Installation durchführen

OpenBSDs neuer Installationsprozess ist so konzipiert, dass er OpenBSD mit sehr wenig Benutzerinteraktion zu einer schon sehr benutzbaren Umgebung installiert und konfiguriert. Tatsächlich genügt es oft, einfach nur einige Male ENTER zu drücken, um eine sehr gute OpenBSD-Installation zu erhalten, sodass du deine Hand eigentlich nur zur Eingabe des »root«-Passworts auf andere Regionen der Tastatur bewegen musst.

Das Installationsprogramm wird ein Partitionsschema basierend auf der Größe deiner Festplatte erstellen. Obwohl dies KEINE perfekte Einteilung für alle ist und sein kann, so bietet es doch einen guten Ansatzpunkt und eine gute grundlegende Strategie, um herauszufinden, was du benötigst.

Wir starten mit einer sehr einfachen Installation, mit kurzen Beschreibungen der gezeigten Optionen und benutzen die Magie von Hypertext-Verweisen, um es dir zu ermöglichen, mehr über die Themen zu lesen, die dich interessieren, und deine Möglichkeiten herauszufinden.

Plattformspezifische Anmerkungen zur Installation finden sich auf den Installations-CDs und FTP-Servern in den Dateien INSTALL.<plat>, wobei <plat> durch deine Plattform ersetzt werden muss, z. B. i386.

4.5.1 - Mit der Installation beginnen

Was auch immer für eine Startmethode gewählt wurde - nun ist es an der Zeit, sie zu benutzen. Während des Startens werden der Kernel und alle für die OpenBSD-Installation nötigen Programme in den Hauptspeicher geladen. Ist der Installationskernel erst einmal geladen, wird daher das Startmedium nicht länger benötigt, da sich alle Dateien im RAM-Laufwerk befinden. Deshalb kann die CD oder Diskette, von der gestartet wurde, an diesem Punkt aus ihrem Laufwerk entfernt werden; vorausgesetzt, sie wird nicht mehr als Quelle für zu installierende Dateisets gebraucht.

Der OpenBSD-Installationsprozess kann an praktisch jeder Stelle durch Drücken von STRG-C abgebrochen und durch den am Shell-Prompt einzugebenden Befehl install ohne Neustart von vorne begonnen werden. Außerdem ist es während eines Großteils der Installation möglich, durch die Eingabe von »!« einen Shell-Prompt zu bekommen; ein Beenden dieses Shell-Prozesses führt automatisch zur Installation zurück.

Bei einem erfolgreichen Startvorgang wirst du eine Menge Textmeldungen vorbeiziehen sehen. Dieser Text (auf vielen Plattformen in weißer Schrift auf blauem Hintergrund) ist die sogenannte »dmesg«, in der der Kernel über gefundene Geräte, und wie diese Geräte mit anderen Geräten verknüpft sind, Auskunft gibt. Eine Kopie dieser Meldungen wird in der Datei /var/run/dmesg.boot gespeichert.

Dann wirst du Folgendes sehen:

  ...
  root on rd0a swap on rd0b dump on rd0b
  erase ^?, werase ^W, kill ^U, intr ^C, status ^T

  Welcome to the OpenBSD/i386 5.4 installation program.
  (I)nstall, (U)pgrade or (S)hell? i

Und damit erreichen wir auch schon die erste Frage. Du bekommst drei Möglichkeiten angeboten:

Wir nehmen im Folgenden an, dass du »(I)nstall« auswählst.

4.5.2 - Die Fragen der Installation

Nun beginnen die Fragen, die definieren, wie das System konfiguriert wird. Du wirst bemerken, dass in den meisten Fällen erst die Fragen gestellt werden, woraufhin dann im Anschluss die Installation stattfindet. Auf diese Weise kannst du bei einem langsamen Computer oder einer langsamen Internetverbindung zuerst Fragen beantworten, dann das System in Ruhe arbeiten lassen, und brauchst später nur noch neu zu starten, um die Installation abzuschließen.

  At any prompt except password prompts you can escape to a shell by
  typing '!'. Default answers are shown in []'s and are selected by
  pressing RETURN.  You can exit this program at any time by pressing
  Control-C, but this can leave your system in an inconsistent state.

  Choose your keyboard layout ('?' or 'L' for list) [default] Enter

In den meisten Fällen wird die vorgewählte Tastaturbelegung (oder der Terminaltyp, sollte die Installation über eine serielle Konsole erfolgen) die Richtige sein; es sollte jedoch nicht einfach der Standard genommen werden, antworte angemessen.

  System hostname? (short form, e.g. 'foo') puffy

Dieser Wert wird, gemeinsam mit dem DNS-Domänennamen (der weiter unten definiert wird), in der Datei /etc/myname gespeichert, welche während eines normalen Startvorgangs dazu benutzt wird, den Hostnamen des Systems zu setzen. Wird der Domänenname des Systems nicht gesetzt, so wird stattdessen der Standardwert »my.domain« benutzt.

  Available network interfaces are: fxp0 vlan0.
  Which one do you wish to configure? (or 'done') [fxp0] Enter

vlan0 ist die virtuelle VLAN-Schnittstelle. Für unsere Zwecke hier haben wir diese Option ignoriert und uns stattdessen an die physisch vorhandenen Schnittstellen gehalten. Wenn der Rechner mehrere physikalische Schnittstellen besitzt, so sollten sie hier aufgelistet sein. Wie zu sehen ist, werden sie über ihren Gerätetreiber identifiziert und tauchen nicht als generische Ethernetgeräte auf. In unserem Fall meint »fxp0« also das erste Gerät, das den fxp(4)-Treiber benutzt; fxp1 wäre das zweite Gerät etc. ... Mehr zum Thema Gerätenamen findet sich in FAQ 6.

Nachdem das zu konfigurierende Gerät ausgewählt wurde, wirst du es jetzt konfigurieren. In vielen Fällen wirst du es über DHCP automatisch konfigurieren wollen:

  IPv4 address for fxp0? (or 'dhcp' or 'none') [dhcp] Enter
  Issuing hostname-associated DHCP request for fxp0.
  DHCPDISCOVER on fxp0 to 255.255.255.255 port 67 interval 1
  DHCPOFFER from 192.168.1.250 (08:00:20:94:0b:c8)
  DHCPREQUEST on fxp0 to 255.255.255.255 port 67
  DHCPACK from 192.168.1.250 (08:00:20:94:0b:c8)
  bound to 192.168.1.199 -- renewal in 43200 seconds.

DHCP wird die IP-Adresse, die Subnetzmaske, den Standardzugang, den DNS-Domänennamen und die DNS-Server automatisch konfigurieren. Wenn DHCP nicht benutzt wird, so müssen alle genannten Dinge von Hand eingegeben werden; siehe auch die detailliertere Diskussion weiter unten.

Sollte es nötig sein, IPv6 oder andere Geräte zu konfigurieren (oder dir deine vorherige Konfiguration nicht mehr gefallen), so kannst du dies nun tun. In unserem Fall sind wir aber fertig:

  IPv6 address for fxp0? (or 'rtsol' or 'none') [none] Enter
  Available network interfaces are: fxp0 vlan0.
  Which one do you wish to configure? (or 'done') [done] Enter
  Using DNS domainname example.org
  Using DNS nameservers at 192.168.1.252

Nun setzen wir das Passwort für das Benutzerkonto root:

  Password for root account? (will not echo) PaSsWoRd
  Password for root account? (again) PaSsWoRd

Benutze ein sicheres Passwort für das Benutzerkonto root. Bedenke: im Internet TRACHTEN SIE danach, in deinen Computer zu gelangen - und sie werden eine ganze Menge häufig benutzter Passwörter ausprobieren, von denen man denkt, dass sie wirklich clever seien.

Später wird es noch die Möglichkeit geben, ein Administrations-Benutzerkonto zu erzeugen, und den Zugang von entfernten Rechnern (Remotezugang via SSH) für das Benutzerkonto root auszuschalten, aber nichtsdestotrotz ist ein gutes Passwort für das Benutzerkonto root sehr wichtig.

  Start sshd(8) by default? [yes] Enter

Üblicherweise will man den sshd(8) laufen haben. Sollte dein Anwendungsgebiet jedoch keinen Bedarf für ihn haben, so ergibt sich ein kleiner theoretischer Sicherheitsgewinn dadurch, ihn nicht zu benutzen.

  Start ntpd(8) by default? [no] y
  NTP server? (hostname or 'default') [default] Enter

Hier wird die Möglichkeit geboten, den OpenNTPD, OpenBSDs NTP-Implementierung, laufen zu lassen. OpenNTPD braucht wenig Ressourcen und ist ein problemloser Weg, die eingebaute Uhr des Rechners akkurat zu synchronisieren. Die Standardkonfiguration nutzt pool.ntp.org und bindet damit eine große Anzahl frei zugänglicher und über die ganze Welt verstreuter Zeitserver ein.

Ein Grund, warum man den ntpd(8) NICHT benutzen will, kann sein, dass man ein »Multiboot«-System benutzt, auf dem meistens ein anderes System läuft, welches seine Uhr nicht mit einer auf GMT-Zeit eingestellten Hardwareuhr abstimmen kann, da man schwerlich möchte, dass OpenBSD die Uhr des anderen Betriebssystems verstellt.

  Do you expect to run the X Window System? [yes] Enter

Nicht alle Plattformen werden nach X fragen, und die, die es tun, verlangen das Setzen eines sysctl, um X benutzbar zu machen. Antwortet man hier mit »y«, so wird die Datei /etc/sysctl.conf derart modifiziert, dass sich, abhängig von der Plattform, entweder machdep.allowaperture=1 oder machdep.allowaperture=2 darin findet.

Wenn du nicht vorhast, X auf deinem System laufen zu lassen, oder dir darüber nicht sicher bist, so antworte einfach »N«, denn es ist später durch einfaches Editieren von /etc/sysctl.conf, gefolgt von einem Neustart, möglich, das Verhalten entsprechend zu ändern. Es liegt ein potenzieller Sicherheitsvorteil darin, den »aperture«-Treiber xf86(4) nicht zu benutzen, da die Maschinerie einer Grafikkarte potentiell dazu benutzt werden kann, Speicherbereiche ohne Kontrolle des Prozessors zu verändern. Es ist anzumerken, dass nicht-grafische Programme, die X-Bibliotheken und -Werkzeuge benutzen, das Setzen dieses sysctls NICHT benötigen.

  Do you want the X Window System to be started by xdm(1)? [no] y

xdm(1) startet die X-Umgebung während des Systemstarts. Wir empfehlen dies nur dann während der Installation zu setzen, wenn man sich gewiss ist, dass X auf dem System direkt und ohne Anpassungen laufen wird. Anderenfalls sollte man X konfigurieren, bevor man xdm(1) benutzt.
  Change the default console to com0? [no] Enter
Manchmal möchte man, dass ein System eine serielle Schnittstelle anstatt einer Tastatur mit Monitor als Konsole nutzt. Hier mit »y« zu antworten wird die Installation veranlassen, dich nach einer seriellen Bitrate zu fragen und das System für die Nutzung der seriellen Schnittstelle als Konsole zu konfigurieren, anstatt Monitor und Tastatur dafür zu nutzen. Einige Plattformen machen dies automatisch wenn keine Tastatur vorhanden ist, in welchem Fall diese Frage nicht gestellt wird.

  Setup a user? (enter a lower-case loginname, or 'no') [no] Enter

Es wird dir die Möglichkeit geboten, einen Benutzer für die Systemwartung zu erzeugen, der NICHT root ist. Dieser Benutzer wird Mitglied der Gruppe wheel und kann daher sowohl su(1) benutzen als auch als Empfänger für an root adressierte E-Mails eingesetzt werden. Du wirst nach einem Passwort gefragt.

Wenn du diesen Benutzer erzeugen willst, so gib den gewünschten Namen des Nutzers ein und nicht »y« oder »yes«.
What timezone are you in? ('?' for list) [Canada/Mountain] US/Michigan

OpenBSD erwartet, dass die Echtzeituhr (»Real-Time-Clock«, RTC) des Rechners auf GMT-Zeit eingestellt ist. Du musst aber außerdem die Zeitzone angeben, in der du dich befindest. Es kann mehrere gültige Antworten für deinen physischen Aufenthaltsort geben. Die Eingabe von »?« am gezeigten Prompt sollte dir Assistenz zum Auffinden des richtigen Zeitzonennamens geben.

Sehr oft wird das Installationsprogramm einfach den korrekten Namen für deine Zeitzone erraten, sodass du nur »Enter« zu drücken brauchst.

Mehr über das Setzen der Zeitzone findet sich hier.

4.5.3 - Laufwerke einrichten

Wichtiger Hinweis: Benutzer mit einer großen Festplatte (größer als das, was normal war, als der Rechner hergestellt wurde) sollten sich unbedingt diese Sektion anschauen, bevor sie weiterlesen.

Die passende Unterteilung für das Laufwerk zu finden, ist vielleicht der schwierigste Teil einer OpenBSD-Installation. Die gute Nachricht ist, dass das Standardlayout gut genug zum Erlernen von OpenBSD ist.

Die Einrichtung von Laufwerken unter OpenBSD variiert ein wenig zwischen den Plattformen. Für i386, amd64, macppc, zaurus und armish geschieht es in zwei Ebenen. Zuerst wird der Abschnitt (»slice«) der Festplatte, der OpenBSD beherbergen soll, mit fdisk(8) festgelegt, woraufhin dann dieser »slice« mit Hilfe von disklabel(8) in OpenBSD-Partitionen aufgeteilt wird.

Einige Benutzer mögen ein wenig verwundert oder gar ein bisschen verwirrt über die verwendete Terminologie sein. Es sieht aus, als ob wir das Wort »Partition« auf zwei verschiedene Art und Weisen benutzen. Diese Beobachtung ist korrekt. Es gibt zwei Schichten der Partitionierung auf den oben genannten Plattformen; die erste, die man als die Betriebssystem-Partitionierung bezeichnen könnte, beschreibt, wie verschiedene Betriebssysteme auf einem Computer den ihnen zugewiesenen Bereich der Festplatte als für sich reserviert ausweisen, während die zweite beschreibt, wie die OpenBSD-Partition in einzelne Dateisysteme unterteilt ist. Die erstgenannte Schicht ist als Festplattenpartition für DOS, Windows und jedes andere Betriebssystem sichtbar, das dieses Festplatten-Partitionierungssystem benutzt, währenddessen die zweite Schicht nur für OpenBSD und andere Betriebssysteme, die direkt ein OpenBSD-Dateisystem lesen können, sichtbar ist.

Das neue Installationsprogramm von OpenBSD versucht, die Einrichtung von Laufwerken einfacher zu machen, indem es eine akzeptable Standardeinteilung für die »durchschnittliche« Nutzung anbietet. Sicher werden viele Leute diesen Standard für ihre eigenen Bedürfnisse anpassen oder ihre komplett eigene Laufwerksbelegung definieren wollen, aber neue Benutzer sollten vielleicht mit der Standardkonfiguration starten, bis sie wissen, was sie anders machen müssen. Zu bemerken ist, dass die Standardkonfiguration abhängig von der Größe des Dateisystems ist.

Fürs erste nehmen wir die Voreinstellung für unsere 40 G Platte.

  Available disks are: wd0.
  Which one is the root disk? (or 'done') [wd0] Enter
  Use DUIDs rather than device names in fstab? [yes] Enter
  Disk: wd0       geometry: 5221/255/63 [40960 Megabytes]
  Offset: 0       Signature: 0xAA55
              Starting         Ending         LBA Info:
   #: id      C   H   S -      C   H   S [       start:        size ]
  -------------------------------------------------------------------------------
   0: 06      0   1   1 -    521 254  63 [          63:     8385867 ] DOS > 32MB
   1: 00      0   0   0 -      0   0   0 [           0:           0 ] unused
   2: 00      0   0   0 -      0   0   0 [           0:           0 ] unused
   3: 00      0   0   0 -      0   0   0 [           0:           0 ] unused
  Use (W)hole disk or (E)dit the MBR? [whole] Enter
  Setting OpenBSD MBR partition to whole wd0...done.

Es ist zu erwähnen, dass diese Festplatte eine bereits existierende Partition besitzt - das Auswählen von »whole disk« würde sie entfernen!

Das Auswählen von »whole disk«, und damit die Zuweisung des gesamten Laufwerks für OpenBSD, initiiert eine Reihe wichtiger Dinge:

Es gibt eine Reihe von Gründen, warum dies nicht gewünscht sein könnte, einschließlich: Es ist äußerst wichtig, dass ein neues Laufwerk (oder eines, von dem noch nie gestartet wurde) einen gültigen MBR, eine gültige Signatur, eine OpenBSD-Partition, sowie eine als »aktiv« markierte Partition besitzt. Durch Anwählen der »whole disk«-Option werden diese Schritte vom Installationsprogramm automatisch durchgeführt; anderenfalls muss sichergestellt sein, dass sie manuell durchgeführt werden.

Mehr Informationen über die fdisk-Partitionierung deines Laufwerks finden sich weiter unten.

Jetzt werden wir unsere OpenBSD fdisk-Partition in OpenBSD-Laufwerkspartitionen mit Hilfe von disklabel(8) unterteilen:

  Setting OpenBSD MBR partition to whole wd0...done.
  The auto-allocated layout for wd0 is:
  #                size           offset  fstype [fsize bsize  cpg]
    a:          1024.0M               64  4.2BSD   2048 16384    1 # /
    b:           199.0M          2097216    swap                   
    c:         40960.0M                0  unused                   
    d:          2822.9M          2504768  4.2BSD   2048 16384    1 # /tmp
    e:          4295.0M          8286112  4.2BSD   2048 16384    1 # /var
    f:          2048.0M         17082240  4.2BSD   2048 16384    1 # /usr
    g:          1024.0M         21276544  4.2BSD   2048 16384    1 # /usr/X11R6
    h:          5426.7M         23373696  4.2BSD   2048 16384    1 # /usr/local
    i:          1699.7M         34487520  4.2BSD   2048 16384    1 # /usr/src
    j:          2048.0M         37968576  4.2BSD   2048 16384    1 # /usr/obj
    k:         20367.4M         42162880  4.2BSD   2048 16384    1 # /home
  Use (A)uto layout, (E)dit auto layout, or create (C)ustom layout? [a] Enter

Das Installationsprogramm hat uns seinen Vorschlag einer »Automatischen Einteilung« für die OpenBSD-Partitionen auf dem Laufwerk präsentiert, was wir in dieser Form akzeptieren werden.

Sollte die vorgeschlagene Einteilung für deine Zwecke nicht angemessen sein, ist es selbstverständlich möglich, den Vorschlag zu bearbeiten oder gar eine komplett eigene Einteilung zu kreieren; mehr Details über die disklabel-Partitionierung finden sich weiter unten.

ANMERKUNG für Wieder-Installierer: Das neue Installationsprogramm löscht nicht das alte disklabel, wenn »(C)ustom Layout« ausgewählt wurde; stattdessen muss jeder Einhängepunkt mit Hilfe der disklabel(8)-Option »m« neu spezifiziert werden.

Nun erzeugt das Installationsprogramm die Partitionen, kreiert darauf Dateisysteme mit Hilfe des Programms newfs(8) und hängt sie danach für die Installation ein (es »mount«et sie):

  /dev/rwd0a: 1024.0MB in 2097152 sectors of 512 bytes
  6 cylinder groups of 202.47MB, 12958 blocks, 25984 inodes each
  /dev/rwd0k: 20367.4MB in 41712448 sectors of 512 bytes
  101 cylinder groups of 202.47MB, 12958 blocks, 25984 inodes each
  /dev/rwd0d: 2822.9MB in 5781344 sectors of 512 bytes
  14 cylinder groups of 202.47MB, 12958 blocks, 25984 inodes each
  /dev/rwd0f: 2048.0MB in 4194304 sectors of 512 bytes
  11 cylinder groups of 202.47MB, 12958 blocks, 25984 inodes each
  /dev/rwd0g: 1024.0MB in 2097152 sectors of 512 bytes
  6 cylinder groups of 202.47MB, 12958 blocks, 25984 inodes each
  /dev/rwd0h: 5426.7MB in 11113824 sectors of 512 bytes
  27 cylinder groups of 202.47MB, 12958 blocks, 25984 inodes each
  /dev/rwd0j: 2048.0MB in 4194304 sectors of 512 bytes
  11 cylinder groups of 202.47MB, 12958 blocks, 25984 inodes each
  /dev/rwd0i: 1699.7MB in 3481056 sectors of 512 bytes
  9 cylinder groups of 202.47MB, 12958 blocks, 25984 inodes each
  /dev/rwd0e: 4295.0MB in 8796128 sectors of 512 bytes
  22 cylinder groups of 202.47MB, 12958 blocks, 25984 inodes each
  /dev/wd0a on /mnt type ffs (rw, asynchronous, local)
  /dev/wd0k on /mnt/home type ffs (rw, asynchronous, local, nodev, nosuid)
  /dev/wd0d on /mnt/tmp type ffs (rw, asynchronous, local, nodev, nosuid)
  /dev/wd0f on /mnt/usr type ffs (rw, asynchronous, local, nodev)
  /dev/wd0g on /mnt/usr/X11R6 type ffs (rw, asynchronous, local, nodev)
  /dev/wd0h on /mnt/usr/local type ffs (rw, asynchronous, local, nodev)
  /dev/wd0j on /mnt/usr/obj type ffs (rw, asynchronous, local, nodev, nosuid)
  /dev/wd0i on /mnt/usr/src type ffs (rw, asynchronous, local, nodev, nosuid)
  /dev/wd0e on /mnt/var type ffs (rw, asynchronous, local, nodev, nosuid)

Du wirst bemerkt haben, dass es so aussieht, als ob wir die Partition c ignoriert hätten. Diese Partition identifiziert das gesamte Laufwerk; versuche nicht, sie zu verändern.

4.5.4 - Auswahl des Installationsmediums und der Dateisets

Als Nächstes steht die Auswahl des Installationsmediums an. In diesem Fall installieren wir von einem FTP-Server.

  Location of sets? (cd disk ftp http or 'done') [cd] ftp
  HTTP/FTP proxy URL? (e.g. 'http://proxy:8080', or 'none') [none] Enter
  Server? (hostname, list#, 'done' or '?') [ftp5.usa.openbsd.org] mirror.example.org

Solltest du dich nicht an die Adresse deines favorisierten (oder jedweden) Spiegelservers erinnern können, wird das Installationsprogramm meistens in der Lage sein, dir einen funktionierenden Spiegelserver vorzuschlagen. Anderenfalls drücke »?«, um dir eine Liste von Spiegelservern aufzeigen zu lassen, und wähle die Nummer dessen aus, der dir am meisten zusagt.

  Server directory? [pub/OpenBSD/5.4/i386] Enter
  Login? [anonymous] Enter

Die öffentlichen FTP-Spiegelserver unterstützen natürlich alle das anonyme Herunterladen von Dateien, aber da du eine lokale Maschine haben könntest, die nach Login und Passwort verlangt, besteht die Möglichkeit zur Eingabe dieser Werte.

Nun kann die Liste der Dateisets angepasst werden.

  Select sets by entering a set name, a file name pattern or 'all'. De-select
  sets by prepending a '-' to the set name, file name pattern or 'all'. Selected
  sets are labelled '[X]'.
      [X] bsd           [X] etc54.tgz     [X] xbase54.tgz   [X] xserv54.tgz
      [X] bsd.rd        [X] comp54.tgz    [X] xetc54.tgz
      [ ] bsd.mp        [X] man54.tgz     [X] xshare54.tgz
      [X] base54.tgz    [X] game54.tgz    [X] xfont54.tgz
  Set name(s)? (or 'abort' or 'done') [done] Enter

Als absolutes Minimum wird ein Kernel (bsd) benötigt, sowie die Dateisets base54.tgz und etc54.tgz. Solange du nicht genau weißt, was du tust, solltest du vielleicht einfach bei der Standardauswahl bleiben. Dateisets können durch das Voranstellen der Zeichen »+« und »-« an- und abgewählt werden; aber auch die Benutzung von Wildcards ist möglich:

Wir entscheiden uns auch hier für die Voreinstellung. Diese Maschine ist ein Einprozessorsystem, sodass bsd.mp nicht installiert wird, alles andere jedoch schon. Wenn die Maschine später zu einem Mehrfachprozessorsystem ausgebaut werden könnte, so kann es sein, dass du zusätzlich bsd.mp installieren willst.

Und nun ... starten wir unsere Installation! Dies ist der Punkt, an dem du als Besitzer eines langsamen Computers oder einer langsamen Internetverbindung vielleicht gehen und später wiederkommen möchtest; mit einem schnellen Computer und lokal vorhandenen Dateisets mag diese Prozedur jedoch nur einige Minuten oder auch noch weniger dauern!

  bsd          100% |*************************************|  9399 KB    00:05
  bsd.rd       100% |*************************************|  6350 KB    00:03
  base54.tgz   100% |*************************************| 55803 KB    00:26
  etc54.tgz    100% |*************************************|   511 KB    00:00
  comp54.tgz   100% |*************************************| 47533 KB    00:28
  man54.tgz    100% |*************************************|  9761 KB    00:06
  game54.tgz   100% |*************************************|  2568 KB    00:02
  xbase54.tgz  100% |*************************************| 10562 KB    00:06
  xetc54.tgz   100% |*************************************| 64774       00:00
  xshare54.tgz 100% |*************************************|  4373 KB    00:04
  xfont54.tgz  100% |*************************************| 38869 KB    00:17
  xserv54.tgz  100% |*************************************| 25954 KB    00:15
  Location of sets? (cd disk ftp http or 'done') [done] Enter

Ja, es fragt uns erneut, aus welchen Quellen wir Dateisets beziehen wollen. Dies geschieht, damit fehlende oder vergessene Dateisets, oder solche, deren Installation fehlgeschlagen ist, erneut installiert werden können, und außerdem, um die Installation von selbst angepassten Dateisets zu ermöglichen.

Erneut wählen wir die Voreinstellung, denn wir habe alle benötigten Dateien installiert.

  Saving configuration files...done.
  Generating initial host.random file...done.

  CONGRATULATIONS! Your OpenBSD install has been successfully completed!
  To boot the new system, enter 'reboot' at the command prompt.
  When you login to your new system the first time, please read your mail
  using the 'mail' command.

  #

4.5.5 - Der erste Start!

OpenBSD ist jetzt auf deinem System installiert und bereit für den ersten Start, aber vorher ...

Vor dem Neustart

An diesem Punkt ist dein System installiert und bereit, neu gestartet und für den Dienst konfiguriert zu werden. Bevor dies getan wird, wäre es jedoch ratsam, auf der Errataseite nachzuschauen, ob nicht wie auch immer geartete Fehler bekannt sind, die dein System direkt betreffen könnten.

Nach dem Neustart

Während des ersten Starts werden Schlüssel für SSH generiert. Auf modernen Computern benötigt dieser Prozess nur wenige Sekunden, und es mag nicht einmal auffallen, dass er abläuft. Auf älteren Systemen kann er jedoch viele Minuten benötigen, und potenziell ist eine Stunde und mehr auf wirklich langsamen Systemen nicht unmöglich.

Eines der ersten Dinge, die nach der Installation des Systems gelesen werden sollten, ist afterboot(8).

Du könntest auch die folgenden Links nützlich finden:

4.5.6 - Eine letzte Sache ...

Die OpenBSD-Entwickler bitten dich darum, eine Kopie deiner »dmesg« einzuschicken. Dies wird von den Entwicklern wirklich sehr geschätzt und, letztendlich, von allen Benutzern.

4.6 - Details für eine komplexere Installation

Manchmal kann man einfach nicht die Standardvorgaben benutzen. Hier sind ein paar mehr Details zu einigen Aspekten des Installationsprozesses.

4.6.1 - Einrichtung des Netzwerks

Ist kein DHCP-Server verfügbar, so muss man seine Netzwerkschnittstellen manuell einrichten. Hier ist ein Beispiel:

  Which one do you wish to configure? (or 'done') [xl0] Enter
  IPv4 address for xl0? (or 'dhcp' or 'none') [dhcp] 192.168.1.37
  Netmask? [255.255.255.0] 255.255.254.0
  IPv6 address for xl0? (or 'rtsol' or 'none') [none] Enter

Nach diesen Fragen bekommt man die Möglichkeit, die anderen Netzwerkschnittstellen der Maschine zu konfigurieren. Spezifizierst du hier eine andere Schnittstelle, so wiederholen sich obige Fragen.

  Available network interfaces are: xl0 vlan0.
  Which one do you wish to configure? (or 'done') [done]

Jetzt richten wir den Standardzugang und DNS-Server ein; Dinge, die alle Netzwerkschnittstellen betreffen:

  Default IPv4 route? (IPv4 address, 'dhcp' or 'none') 192.168.1.1
  add net default: gateway 192.168.1.1
  DNS domain name? (e.g. 'bar.com') [my.domain] example.org
  DNS nameservers? (IP address list or 'none') [none] 192.168.1.250 192.168.1.251

Es ist hier möglich, mehrere durch Leerzeichen getrennte DNS-Server anzugeben.

Manchmal wird man etwas darüber hinaus zu tun haben, zum Beispiel die Einrichtung eines drahtlosen Zugangsschlüssels, oder aber die Festlegung von Duplex- oder Geschwindigkeitsangaben (was man nicht machen sollte, wenn es nicht ABSOLUT NÖTIG ist, da das Anpassen der Switch-Konfiguration eine viel bessere Idee ist!). Es wird nun die Möglichkeit geboten, zu einer Shell zu gelangen, wo man jedwede manuelle Konfiguration durchführen kann.

  Do you want to do any manual network configuration? [no] y
  Type 'exit' to return to install.
  # ifconfig xl0 media
  xl0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
          lladdr 00:08:74:2c:df:9c
          groups: egress
          media: Ethernet autoselect (100baseTX full-duplex)
          status: active
          supported media:
                  media 10baseT
                  media 10baseT mediaopt full-duplex
                  media 100baseTX
                  media 100baseTX mediaopt full-duplex
                  media autoselect
          inet 192.168.1.37 netmask 0xfffffe00 broadcast 192.168.1.255
  # ifconfig xl0 media 100baseTX mediaopt full-duplex
  # ifconfig xl0
  xl0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
          lladdr 00:08:74:2c:df:9c
          groups: egress
          media: Ethernet 100baseTX full-duplex
          status: active
          inet6 fe80::208:74ff:fe2c:df9c%xl0 prefixlen 64 scopeid 0x1
          inet 192.168.1.37 netmask 0xfffffe00 broadcast 192.168.1.255
  # exit
...setup resumes...

(zurück dorthin, wo wir vielleicht gewesen sind)

4.6.2 - Festlegung der Zeitzone

Zeit ist in Unix keine einfache Sache (oder anders formuliert: Zeit in Unix ist eine wirklich einfache Sache, da menschliche Zeit ein politisch manipuliertes Durcheinander ist). Zeitzonendateien helfen dem System, Unix-Zeit (die Anzahl von Sekunden, die seit dem 1.1.1970, Schlag Mitternacht GMT [Greenwhich-Mean-Time], vergangen sind) in menschliche Zeit zu konvertieren, und dabei Dinge wie Zeitzonen, Sommerzeiten (DST, »Daylight Saving Time«), Sommerzeitregeländerungen etc. in Betracht zu ziehen. Sie beinhalten auch die Geschichte der Änderungen.

Mehrere Zeitzonendefinitionsdateien werden manchmal dieselbe Jetztzeit angeben, aber vielleicht eine unterschiedliche Historie haben. Zum Beispiel besitzen EST5EDT und US/Michigan HEUTE dieselbe Zeit, aber im Jahre 1975 waren die Regeln unterschiedlich, sodass Berechnungen mit Daten und Zeiten, die das Jahr 1975 betreffen, sich Gedanken über die Unterschiede machen müssen. Aus diesen Gründen solltest du jene Zeitzonendatei benutzen, die die am meisten spezifische und akkurateste für deine Region ist, und nicht nur eine, die im Moment eine korrekte Zeit kreiert.

Das Installationsprogramm von OpenBSD bietet Hilfe zum Auffinden der passenden Zeitzonendatei, solltest du dir nicht sicher sein. Drücke einfach »?« an jedem Prompt und es wird dir Optionen anbieten. Bietet dir die erste Antwortsebene keine passende Datei, wähle einen Kontinent oder ein Land aus, und schaue dir an, welche Optionen sich dort auftun:

  What timezone are you in? ('?' for list) [right/EST5EDT] ?
  Africa/      Chile/       GB-Eire      Israel       NZ-CHAT      UCT
  America/     Cuba         GMT          Jamaica      Navajo       US/
  Antarctica/  EET          GMT+0        Japan        PRC          UTC
  Arctic/      EST          GMT-0        Kwajalein    PST8PDT      Universal
  Asia/        EST5EDT      GMT0         Libya        Pacific/     W-SU
  Atlantic/    Egypt        Greenwich    MET          Poland       WET
  Australia/   Eire         HST          MST          Portugal     Zulu
  Brazil/      Etc/         Hongkong     MST7MDT      ROC          posix/
  CET          Europe/      Iceland      Mexico/      ROK          posixrules
  CST6CDT      Factory      Indian/      Mideast/     Singapore    right/
  Canada/      GB           Iran         NZ           Turkey
  What timezone are you in? ('?' for list) [right/EST5EDT] US
  What sub-timezone of 'US' are you in? ('?' for list) ?
  Alaska          Central         Hawaii          Mountain        Samoa
  Aleutian        East-Indiana    Indiana-Starke  Pacific
  Arizona         Eastern         Michigan        Pacific-New
  What sub-timezone of 'US' are you in? ('?' for list) Michigan

Wir haben nun die Zeit auf »US/Michigan« festgelegt. Dies erzeugt einen symbolischen Link in /etc, der auf die ausgewählte »zoneinfo«-Datei in /usr/share/zoneinfo zeigt, etwas wie:

  /etc/localtime -> /usr/share/zoneinfo/US/Michigan
Nun wende deine Aufmerksamkeit für einen Moment dem Verzeichnis »right/« (im Sinne von »korrekt«) zu. Es dupliziert die Standard-»zoneinfo«-Auswahl, beinhaltet jedoch Anpassungen für Schaltsekunden. Mehr dazu kann hier gefunden werden.

(zurück dorthin, wo wir vielleicht gewesen sind)

4.6.3 - Anpassung der fdisk(8)-Konfiguration

Bemerkung: Nur einige OpenBSD-Plattformen benutzen überhaupt fdisk und normalerweise müssen sich nur Benutzer von i386 und amd64 mit fdisk anfreunden. Benutzer der meisten anderen fdisk(8)-nutzenden Plattformen müssen sich im allgemeinen keinerlei Gedanken über »Multibooting« oder Setup- und Diagnose-Partitionen machen. Aus diesem Grunde beschränkt sich dieser Abschnitt auf i386 und amd64.

fdisk(8) wird dazu benutzt, einen Teil der Festplatte für OpenBSD zu reservieren. Es hilft, den Abschnitt des Laufwerks, der von OpenBSD benutzt wird, von denen anderer Betriebssysteme oder Systemfunktionen abzugrenzen.

Sollte es eine Partition auf dem Laufwerk geben, die Bestand haben soll, oder solltest du es wünschen, Speicher für eine weitere Partition zu reservieren, dann wirst du NICHT »(W)hole disk« wählen wollen, sondern die Partitionstabelle mit Hilfe von fdisk(8) zu editieren wünschen. Mehr Informationen zum manuellen Aufruf von fdisk(8) kann hier gefunden werden. Bevor du mit irgendeinem System arbeiten willst, dessen Daten du nicht verlieren möchtest, stelle sicher, das eine gute Sicherungskopie vorhanden ist. Es ist sehr einfach, im folgenden Schritt wichtige Daten zu vernichten, deshalb stelle sicher, das du sie wiederherstellen kannst, sollte es nötig werden.

Wenn du OpenBSD zu einem bestehenden System hinzufügen willst, wirst du vielleicht ein wenig freien Speicher auf deinem System erzeugen müssen, bevor OpenBSD installiert werden kann. Dies wird im Normalfall das Löschen oder möglicherweise die Verkleinerung von bestehenden Partitionen beinhalten. Das Programm gparted wurde zur Verkleinerung von Partitionen vieler populärer Betriebssysteme für nützlich befunden und macht es möglich, OpenBSD auf dem freigegebenen Speicher zu installieren.

In diesem Beispiel gehen wir davon aus, dass wir auf einer leeren 40 G Festplatte ein »Multiboot«-System erzeugen möchten, mit einer 5 G großen, für Windows reservierten Partition am Anfang der Festplatte und für OpenBSD den gesamten Rest reservieren. Beachte, dass auf ein leeres Laufwerk ein gültiger MBR-Startcode und eine Signatur geschrieben werden müssen, bevor von ihm gestartet werden kann.

Für den Fall, dass eine bereits vorhandene Partition um eine OpenBSD-Partition ergänzt werden soll, so ist der Ablauf praktisch identisch. Blättere einfach über jene Abschnitte hinweg, in denen wir die Windows-Partition erzeugen und uns um die Installation des MBR-Startcodes kümmern.

  Available disks are: wd0.
  Which one is the root disk? (or 'done') [wd0] Enter
  MBR has invalid signature; not showing it.

Wenn das Laufwerk bereits einen gültigen MBR hätte, würde hier die existierende Partitionstabelle dargestellt werden, was auch ein guter Anhaltspunkt dafür sein kann, ob sich auf dem Laufwerk schon Daten befinden oder nicht.

  Use (W)hole disk or (E)dit the MBR? [whole] e

  You will now create a single MBR partition to contain your OpenBSD data. This
  partition must have an id of 'A6'; must *NOT* overlap other partitions; and
  must be marked as the only active partition.  Inside the fdisk command, the
  'manual' command describes all the fdisk commands in detail.

  Disk: wd0       geometry: 4998/255/63 [80293248 Sectors]
  Offset: 0       Signature: 0x0
              Starting         Ending         LBA Info:
   #: id      C   H   S -      C   H   S [       start:        size ]
  -------------------------------------------------------------------------------
   0: 00      0   0   0 -      0   0   0 [           0:           0 ] unused
   1: 00      0   0   0 -      0   0   0 [           0:           0 ] unused
   2: 00      0   0   0 -      0   0   0 [           0:           0 ] unused
   3: 00      0   0   0 -      0   0   0 [           0:           0 ] unused
Enter 'help' for information
fdisk: 1>

Nimm als Erstes Notiz vom fdisk-Prompt. Die Zahl »1« zeigt an, dass es sich um die erste Partitionstabellenebene handelt - würdest du eine erweiterte Partition bearbeiten, so würde hier »2« stehen (oder eine noch größere Zahl). Erweiterte Partitionen sind Partitionen, die ihre eigene Unterpartitionstabelle besitzen, und damit die Vier-Partitionen-Designbeschränkung vom IBM AT umgehen. Erweiterte Partitionen werden hier nicht weiter behandelt.

Als Erstes erzeugen wir Partition »0«, eine 5 G große Windows-Partition (die das NTFS-Dateisystem benutzt), und Partition »1« wird als unsere OpenBSD-Partition den gesamten Rest der Festplatte einnehmen.

  fdisk: 1> e 0
              Starting         Ending         LBA Info:
   #: id      C   H   S -      C   H   S [       start:        size ]
  -------------------------------------------------------------------------------
   0: 00      0   0   0 -      0   0   0 [           0:           0 ] unused
  Partition id ('0' to disable)  [0 - FF]: [0] (? for help)

Da wir gerade die gültige Partitions-ID für NTFS nicht aus unserer Erinnerung rekapitulieren können, drücken wir »?«, um eine Liste zu erhalten.

  Partition id ('0' to disable)  [0 - FF]: [0] (? for help) ?
  Choose from the following Partition id values:
  00 unused         20 Willowsoft     66 NetWare 386    A9 NetBSD
  01 DOS FAT-12     24 NEC DOS        67 Novell         AB MacOS X boot
  02 XENIX /        27 Win Recovery   68 Novell         AF MacOS X HFS+
  03 XENIX /usr     38 Theos          69 Novell         B7 BSDI filesy*
  04 DOS FAT-16     39 Plan 9         70 DiskSecure     B8 BSDI swap
  05 Extended DOS   40 VENIX 286      75 PCIX           BF Solaris
  06 DOS > 32MB     41 Lin/Minux DR   80 Minix (old)    C0 CTOS
  07 NTFS           42 LinuxSwap DR   81 Minix (new)    C1 DRDOSs FAT12
  08 AIX fs         43 Linux DR       82 Linux swap     C4 DRDOSs < 32M
  09 AIX/Coherent   4D QNX 4.2 Pri    83 Linux files*   C6 DRDOSs >=32M
  0A OS/2 Bootmgr   4E QNX 4.2 Sec    84 OS/2 hidden    C7 HPFS Disbled
  0B Win95 FAT-32   4F QNX 4.2 Ter    85 Linux ext.     DB CPM/C.DOS/C*
  0C Win95 FAT32L   50 DM             86 NT FAT VS      DE Dell Maint
  0E DOS FAT-16     51 DM             87 NTFS VS        E1 SpeedStor
  0F Extended LBA   52 CP/M or SysV   8E Linux LVM      E3 SpeedStor
  10 OPUS           53 DM             93 Amoeba FS      E4 SpeedStor
  11 OS/2 hidden    54 Ontrack        94 Amoeba BBT     EB BeOS/i386
  12 Compaq Diag.   55 EZ-Drive       99 Mylex          EE EFI GPT
  14 OS/2 hidden    56 Golden Bow     9F BSDI           EF EFI Sys
  16 OS/2 hidden    5C Priam          A0 NotebookSave   F1 SpeedStor
  17 OS/2 hidden    61 SpeedStor      A5 FreeBSD        F2 DOS 3.3+ Sec
  18 AST swap       63 ISC, HURD, *   A6 OpenBSD        F4 SpeedStor
  19 Willowtech     64 NetWare 2.xx   A7 NEXTSTEP       FF Xenix BBT
  1C ThinkPad Rec   65 NetWare 3.xx   A8 MacOS X
  Partition id ('0' to disable)  [0 - FF]: [0] (? for help) 07

Nun definieren wir die Start- und Endpunkte:

  Do you wish to edit in CHS mode? [n]

Der CHS-Modus ermöglicht es dir, den Speicherplatz in Zylindern, Köpfen und Sektoren zu spezifizieren. Behalte in Erinnerung, dass für moderne Festplatten die CHS-Nummern absolut nichtssagend sind: einfach nur drei Zahlen, die zu einem Sektor auf der Platte übersetzt werden, der dann auf die physikalische Geometrie der Platte übersetzt wird (welche vielleicht auch noch, über die gesamte Kapazität der Platte hinweg betrachtet, variabel ist).

Antwortest du hier mit »y«, so wirst du für Zylinder, Kopf und Sektor nach Start- und Endwerten gefragt. Solltest du mit »no« antworten (wie wir es tun), so wirst du nach dem Start- und Endsektor und der Größe gefragt. Die Bearbeitung via CHS ist oft einfacher, wenn eine bestehende Partition eingebunden werden soll, während die Angabe von Sektor und Größe oft einfacher ist, wenn man schnell eine Partition einer bestimmten Größe erzeugen möchte.

  offset: [0] 64

Die fdisk-Plattformen benötigen einen Zwischenraum vor der ersten Partition. Die exakte Größe spielt auf modernen Maschinen keine Rolle, OpenBSD benutzt standardmäßig 64 Sektoren. Dies wird aus Performancegründen für moderne Laufwerke empfohlen, bei älteren Laufwerken spielt es keine Rolle.

  size: [0] 5g
  Rounding to nearest cylinder: 10490382

Der Wert »size« (Größe) kann als Anzahl von Sektoren (jeder von 512 Byte Größe) angegeben werden, oder aber als gewünschte Kapazität, wenn als Suffix »k«, »m« oder »g« benutzt wird. Wenn die Bearbeitung mit Hilfe von »offset« (Abstand) und »size« erfolgt, so rundet fdisk die Partitionsgröße derart, dass die Partition auf einer Zylindergrenze endet (OpenBSD kümmert sich nicht darum, und es mag möglich sein, dass sich kein einziges modernes Betriebssystem darum kümmert, aber einige mögen es einmal getan haben).

Jetzt lass uns einen Blick auf unsere neue Partition werfen:

  fdisk:*1> p
  Disk: wd0       geometry: 4998/255/63 [80293248 Sectors]
  Offset: 0       Signature: 0x0
              Starting         Ending         LBA Info:
   #: id      C   H   S -      C   H   S [       start:        size ]
  -------------------------------------------------------------------------------
   0: 07      0   1   1 -    652 254  63 [          63:    10490382 ] NTFS
   1: 00      0   0   0 -      0   0   0 [           0:           0 ] unused
   2: 00      0   0   0 -      0   0   0 [           0:           0 ] unused
   3: 00      0   0   0 -      0   0   0 [           0:           0 ] unused
  fdisk:*1>

Beachte, dass der Prompt nun ein »*« beinhaltet, wodurch angezeigt wird, dass ungesicherte Änderungen vorliegen.

Wir haben nun die Windows-Partition erzeugt. Im Moment ist sie allerdings nichts weiter als reservierter Speicher auf der Platte. Sie ist nicht formatiert, d. h. kein Dateisystem befindet sich darauf. Darum musst du dich kümmern, wenn du Windows installierst; in jedem Fall haben unser Ziel des Reservierens von Speicher für eine später zu erzeugende Windows-Partition erreicht.

Jetzt erzeugen wir unsere OpenBSD-Partition. In diesem Fall wird die Partitions-ID »A6« lauten.

  fdisk:*1> e 1
              Starting         Ending         LBA Info:
   #: id      C   H   S -      C   H   S [       start:        size ]
  -------------------------------------------------------------------------------
   1: 00      0   0   0 -      0   0   0 [           0:           0 ] unused
  Partition id ('0' to disable)  [0 - FF]: [0] (? for help) a6
  Do you wish to edit in CHS mode? [n] Enter
  offset: [0]

Uh! Oh! Was ist unser »offset«? Einfach: Der der vorherigen Partition plus ihrer Größe. In diesem Fall 63+10490382 = 10490445.

  offset: [0] 10490445
  size: [0] *
  fdisk:*1>

Die Eingabe von »*« meint in diesem Fall »den gesamten Rest des Laufwerks«. Wieder hätten wir die Größe in Sektoren oder mit »m«- oder »g«-Suffix spezifizieren können, wenn wir Speicher für etwas anderes hätten übrig lassen wollen.

Jetzt schauen wir auf unsere Partitionstabelle:

  fdisk:*1> p
  Disk: wd0       geometry: 4998/255/63 [80293248 Sectors]
  Offset: 0       Signature: 0x0
              Starting         Ending         LBA Info:
   #: id      C   H   S -      C   H   S [       start:        size ]
  -------------------------------------------------------------------------------
   0: 07      0   1   1 -    652 254  63 [          63:    10490382 ] NTFS
   1: A6    653   0   1 -   4998   5  63 [    10490445:    69802803 ] OpenBSD
   2: 00      0   0   0 -      0   0   0 [           0:           0 ] unused
   3: 00      0   0   0 -      0   0   0 [           0:           0 ] unused
  fdisk:*1>

WIR SIND NOCH NICHT FERTIG!
Von diesem Laufwerk kann noch nicht gestartet werden! Da es ein komplett neues Laufwerk war, ist der MBR komplett leer. Die Meldung »Signature: 0x0« hier zeigt, dass keine gültige Signatur (0xAA55) vorhanden ist, was indiziert, dass definitiv kein gültiger »Bootcode« existiert. Natürlich ist es möglich, zwar eine gültige Signatur, aber dennoch keinen gültigen »Bootcode« zu haben, z. B. durch zufälliges Pech oder einem Schaden an dem existierenden »Bootcode«, aber eine ungültige Signatur indiziert mit hoher Wahrscheinlichkeit, dass der »Bootcode« fehlt, weshalb wir ihn jetzt mit Hilfe des Kommandos »update« installieren:

  fdisk:*1> update
  Machine code updated.
  fdisk:*1>

Wir müssen außerdem eine Partition als »aktiv« »markieren«, sodass der »Boot-ROM« weiß, von welcher Partition er booten soll:

  fdisk:*1> f 1
  Partition 1 marked active.

Jetzt lass uns mal schauen, wie es aussieht:

  fdisk:*1> p
  Disk: wd0       geometry: 4998/255/63 [80293248 Sectors]
  Offset: 0       Signature: 0xAA55
              Starting         Ending         LBA Info:
   #: id      C   H   S -      C   H   S [       start:        size ]
  -------------------------------------------------------------------------------
   0: 07      0   1   1 -    652 254  63 [          63:    10490382 ] NTFS
  *1: A6    653   0   1 -   4998   5  63 [    10490445:    69802803 ] OpenBSD
   2: 00      0   0   0 -      0   0   0 [           0:           0 ] unused
   3: 00      0   0   0 -      0   0   0 [           0:           0 ] unused
  fdisk:*1>

Eine Checkliste von Dingen, die du sicherstellen solltest, bevor du fdisk(8) verlässt:

(zurück dorthin, wo wir vielleicht gewesen sind)

4.6.4 - Anpassung der disklabel-Konfiguration

Innerhalb der OpenBSD fdisk(8)-Partition benutzen wir disklabel(8), um OpenBSD-Dateisysteme zu erzeugen. OpenBSD benennt seine Dateisystem-Partitionen mit Hilfe von sechzehn Buchstaben, »a« bis »p«. Partition »a« auf dem Startlaufwerk ist als Wurzelpartition definiert, »b« auf dem Startlaufwerk ist die Standard-Auslagerungspartition. »c« ist auf allen Laufwerken identisch mit einer »das gesamte Laufwerk«-Partition, und wird von Programmen benutzt, die direkten Zugriff auf das physikalische Laufwerk benötigen, wie zum Beispiel fdisk(8) und disklabel(8). Die Partition »c« wird automatisch erzeugt und sollte weder gelöscht noch verändert werden. Die verbleibenden Buchstaben sind für dich frei verfügbar, um sie als Einhängepunkte zu definieren. Man kann Buchstaben auslassen, sie in jedweder Reihenfolge definieren und sie können in jeglicher Reihenfolge auf dem Laufwerk auftauchen (obwohl einige Plattformen Bedingungen an die Position der Partition »a« stellen). Du kannst auch Zwischenräume auf dem Laufwerk unbenutzt lassen und sie später zuteilen, oder eventuell vorhandene Partitionen mit Hilfe von growfs(8) in den nicht zugeteilten Speicher hinein vergrößern.

Alle Partitionen, die native FFS-Partitionen beherbergen, sollten sich innerhalb OpenBSDs fdisk(8)-Partition befinden, jedoch können Nicht-OpenBSD-Partitionen außerhalb OpenBSDs fdisk-Partition liegen (und normalerweise sollten sie das auch).

Mehr Informationen über die Benutzung von disklabel kann hier gefunden werden.

Mehr Informationen darüber, warum Partitionierung gut ist und wie man eine Strategie für einen guten Partitionierungsplan findet, finden sich weiter unten.

Das OpenBSD-Installationsprogramm wird, basierend auf der Größe des Laufwerks versuchen, für dein Laufwerk einen benutzbaren, »für jeden Zweck tauglichen« Partitionierungsplan zu erstellen. Ist das Laufwerk groß genug, wird verbleibender freier Speicher der Partition /home zugeschrieben. Obwohl dies oft nützlich ist, befriedigt es doch nicht die Bedürfnisse aller Nutzer.

Für unser Beispiel nehmen wir an, dass wir einen statischen Webserver für einige unserer Freunde aufbauen. Wir haben eine Maschine, die eine durchschnittliche Internetverbindung besitzt, mit einer 40 G Festplatte, von der das meiste für die Benutzung durch OpenBSD zur Verfügung steht (mit derselben 5 G Windows-Partition wie in dem Beispiel weiter oben. Warum? Vielleicht weil dieses System einen RAID-Controller besitzt, der zwar von OpenBSD unterstützt, jedoch nur aus Windows heraus verwaltet werden kann. Eher wahrscheinlich ist es allerdings, dass der Verfasser dieser »FAQ« sich nicht danach fühlte, viele unterschiedliche Beispiele verwalten zu müssen).

Die Internetseiten, serviert von einem OpenBSD-Webserver, befinden sich in /var/www und nur sehr wenig wird in /home abgespeichert werden, sodass dies eine klare Änderung der Standardvorgabe erfordert. Zum Zwecke der Diskussion nehmen wir weiterhin an, dass wir auf dieser Maschine das Betriebssystem nicht aus den Quellen heraus neu zu erzeugen brauchen (das machen wir woanders). Das System wird ohne X laufen, aber da einige Webanwendungen ein installiertes X erwarten, werden wir es zumindest installieren. Die Maschine ist nicht wirklich schnell, sie kann nicht mehr als 1 G RAM beherbergen, und es ist unwahrscheinlich, dass unsere Anwendung jemals mehr als dies verlangen wird.

Nach ein wenig Nachdenken ist dies unser Plan zur Partitionierung des Systems:

  The auto-allocated layout for wd0 is:
  #                size           offset  fstype [fsize bsize  cpg]
    a:          1024.0M         10490445  4.2BSD   2048 16384    1 # /
    b:           252.1M         12587597    swap
    c:         39205.7M                0  unused
    d:          2319.3M         13103933  4.2BSD   2048 16384    1 # /tmp
    e:          3653.9M         17853877  4.2BSD   2048 16384    1 # /var
    f:          1149.8M         25337016  4.2BSD   2048 16384    1 # /usr
    g:          1024.0M         27691862  4.2BSD   2048 16384    1 # /usr/X11R6
    h:          3422.6M         29789014  4.2BSD   2048 16384    1 # /usr/local
    i:          5122.3M               63    NTFS
    j:          1848.7M         36798433  4.2BSD   2048 16384    1 # /usr/src
    k:          1848.7M         40584654  4.2BSD   2048 16384    1 # /usr/obj
    l:         17540.2M         44370875  4.2BSD   2048 16384    1 # /home
  Use (A)uto layout, (E)dit auto layout, or create (C)ustom layout? [a] c

Wenn wir nur einige kleine Änderungen vorhätten, könnten wir auch die automatische Einteilung editieren, anstatt mit einem reinen Tisch zu beginnen, aber wir gehen hier den harten Weg.

  You will now create an OpenBSD disklabel inside the OpenBSD MBR
  partition. The disklabel defines how OpenBSD splits up the MBR partition
  into OpenBSD partitions in which filesystems and swap space are created.
  You must provide each filesystem's mountpoint in this program.

  The offsets used in the disklabel are ABSOLUTE, i.e. relative to the
  start of the disk, NOT the start of the OpenBSD MBR partition.

  Label editor (enter '?' for help at any prompt)
  > p
  OpenBSD area: 10490445-80293248; size: 69802803; free: 69802803
  #                size           offset  fstype [fsize bsize  cpg]
    c:         80293248                0  unused
    i:         10490382               63    NTFS
  >

Wie du siehst, sind bereits zwei Partitionen vorhanden - die Partition »c« ist immer präsent und wird automatisch erzeugt, aber disklabel(8) hat ebenfalls die bestehende NTFS-Partition wahrgenommen und ihr eine disklabel-Partition zugewiesen, sodass es theoretisch möglich wäre, sie aus OpenBSD heraus zu benutzen (anzumerken ist jedoch, dass im Moment die Unterstützung für NTFS experimentell ist und einen angepassten Kernel benötigt; die Unterstützung für FAT/FAT32 ist hingegen ziemlich gut).

Wir werden nun unsere Partitionen erzeugen. Wir starten mit der Partition »a«, unserer root-Partition:

  > a a
  offset: [10490445] Enter
  size: [69802803] 100m
  Rounding to cylinder: 208845
  FS type: [4.2BSD]  Enter
  mount point: [none] /
  >

disklabel hat hier automatisch den ersten frei verfügbaren OpenBSD-Sektor auf dem Laufwerk eingesetzt, was genau das ist, was wir wollen. Allerdings hat es als Größenvorgabe den gesamten freien Speicher eingesetzt, was NICHT das ist, was wir wollen. Hier haben wir diesen Wert mit unserer gewünschten Größe überschrieben, die in Sektoren »M« oder »G« angegeben werden kann.

Normalerweise wirst du den Standard-Dateisystemtyp »4.2BSD« für eine FFS- (»Fast File System«) oder FFS2-Partition wollen, obwohl andere Typen, die du nützlich finden könntest, »swap« und »RAID« beinhalten.

Das letzte ist der Einhängepunkt. Unsere Partition »a« ist die root-Partition, durch Definition.

Nun erzeugen wir Auslagerung, das ist unsere Partition »b« (dies ist wieder eine Bedingung - »b« auf dem Startlaufwerk ist Auslagerung):

  > a b
  offset: [10699290] Enter
  size: [69593958] 1g
  Rounding to cylinder: 2104515
  FS type: [swap] Enter
  >

Wieder hat disklabel den Startsektor korrekt kalkuliert und uns als Größe den »kompletten verbleibenden Speicherplatz« vorgeschlagen, was wir wiederum mit unserer gewünschten Größe überschrieben haben. Weil dies die »b«-Partition ist, nahm disklabel an, dass sie für Auslagerungszwecke bestimmt ist, und als wir das bestätigten, hielt es sich gar nicht mehr damit auf, uns nach einem Einhängepunkt zu fragen.

Wir sind nun bereit, die restlichen Partitionen zu erzeugen.

  > a d
  offset: [12803805] Enter
  size: [67489443] 2g
  Rounding to cylinder: 4209030
  FS type: [4.2BSD] Enter
  mount point: [none] /usr
  > a e
  offset: [17012835] Enter
  size: [63280413] 100m
  Rounding to cylinder: 208845
  FS type: [4.2BSD] Enter
  mount point: [none] /tmp
  > a f
  offset: [17221680] Enter
  size: [63071568] 2g
  Rounding to cylinder: 4209030
  FS type: [4.2BSD] Enter
  mount point: [none] /usr/local
  > a g
  offset: [21430710] Enter
  size: [58862538] 1g
  Rounding to cylinder: 2104515
  FS type: [4.2BSD] Enter
  mount point: [none] /usr/X11R6
  > a h
  offset: [23535225] Enter
  size: [56758023] 1g
  Rounding to cylinder: 2104515
  FS type: [4.2BSD] Enter
  mount point: [none] /home
  > a j
  offset: [25639740] Enter
  size: [54653508] 1g
  Rounding to cylinder: 2104515
  FS type: [4.2BSD] Enter
  mount point: [none] /var
  > a k
  offset: [27744255] Enter
  size: [52548993] Enter
  FS type: [4.2BSD] Enter
  mount point: [none] /var/www
  >

Bei der /var/www-Partition (»k«) haben wir einfach den Standardwert genommen und nutzen damit den gesamten freien Speicherplatz auf dem Laufwerk. Mit den modernen monströs riesigen Laufwerken ist dies normalerweise eine schlechte Idee. Wenn du weißt, das du ihn nie benutzen wirst, teile ihn nicht zu, sondern hebe ihn für einen zukünftigen Zweck auf.

Nun lass uns mit Hilfe der Kommandos »p« und »p m« einen Blick auf unser Ergebnis werfen:

  > p
  OpenBSD area: 10490445-80293248; size: 69802803; free: 0
  #                size           offset  fstype [fsize bsize  cpg]
    a:           208845         10490445  4.2BSD   2048 16384    1 # /
    b:          2104515         10699290    swap
    c:         80293248                0  unused
    d:          4209030         12803805  4.2BSD   2048 16384    1 # /usr
    e:           208845         17012835  4.2BSD   2048 16384    1 # /tmp
    f:          4209030         17221680  4.2BSD   2048 16384    1 # /usr/local
    g:          2104515         21430710  4.2BSD   2048 16384    1 # /usr/X11R6
    h:          2104515         23535225  4.2BSD   2048 16384    1 # /home
    i:         10490382               63    NTFS
    j:          2104515         25639740  4.2BSD   2048 16384    1 # /var
    k:         52548993         27744255  4.2BSD   2048 16384    1 # /var/www
  > p m
  OpenBSD area: 10490445-80293248; size: 34083.4M; free: 0.0M
    #                size           offset  fstype [fsize bsize  cpg]
    a:           102.0M         10490445  4.2BSD   2048 16384    1 # /
    b:          1027.6M         10699290    swap
    c:         39205.7M                0  unused
    d:          2055.2M         12803805  4.2BSD   2048 16384    1 # /usr
    e:           102.0M         17012835  4.2BSD   2048 16384    1 # /tmp
    f:          2055.2M         17221680  4.2BSD   2048 16384    1 # /usr/local
    g:          1027.6M         21430710  4.2BSD   2048 16384    1 # /usr/X11R6
    h:          1027.6M         23535225  4.2BSD   2048 16384    1 # /home
    i:          5122.3M               63    NTFS
    j:          1027.6M         25639740  4.2BSD   2048 16384    1 # /var
    k:         25658.7M         27744255  4.2BSD   2048 16384    1 # /var/www
  >

Genau wie bei fdisk- sollten auch die OpenBSD-disklabel-Partitionen einander nicht überlappen (anders als die Partition »c«, die selbstverständlich alles überlappt).

Schreibe die Änderungen und beende disklabel:

  > w
  > q
  No label changes.
  newfs: reduced number of fragments per cylinder group from 13048 to 12992 to
  enlarge last cylinder group
  /dev/rwd0a: 102.0MB in 208844 sectors of 512 bytes
  5 cylinder groups of 25.38MB, 1624 blocks, 3328 inodes each
  /dev/rwd0h: 1027.6MB in 2104512 sectors of 512 bytes
  6 cylinder groups of 202.47MB, 12958 blocks, 25984 inodes each
  newfs: reduced number of fragments per cylinder group from 13048 to 12992 to
  enlarge last cylinder group
  /dev/rwd0e: 102.0MB in 208844 sectors of 512 bytes
  5 cylinder groups of 25.38MB, 1624 blocks, 3328 inodes each
  /dev/rwd0d: 2055.2MB in 4209028 sectors of 512 bytes
  11 cylinder groups of 202.47MB, 12958 blocks, 25984 inodes each
  /dev/rwd0g: 1027.6MB in 2104512 sectors of 512 bytes
  6 cylinder groups of 202.47MB, 12958 blocks, 25984 inodes each
  /dev/rwd0f: 2055.2MB in 4209028 sectors of 512 bytes
  11 cylinder groups of 202.47MB, 12958 blocks, 25984 inodes each
  /dev/rwd0j: 1027.6MB in 2104512 sectors of 512 bytes
  6 cylinder groups of 202.47MB, 12958 blocks, 25984 inodes each
  /dev/rwd0k: 25658.7MB in 52548992 sectors of 512 bytes
  127 cylinder groups of 202.47MB, 12958 blocks, 25984 inodes each
  /dev/wd0a on /mnt type ffs (rw, asynchronous, local)
  /dev/wd0h on /mnt/home type ffs (rw, asynchronous, local, nodev, nosuid)
  /dev/wd0e on /mnt/tmp type ffs (rw, asynchronous, local, nodev, nosuid)
  /dev/wd0d on /mnt/usr type ffs (rw, asynchronous, local, nodev)
  /dev/wd0g on /mnt/usr/X11R6 type ffs (rw, asynchronous, local, nodev)
  /dev/wd0f on /mnt/usr/local type ffs (rw, asynchronous, local, nodev)
  /dev/wd0j on /mnt/var type ffs (rw, asynchronous, local, nodev, nosuid)
  /dev/wd0k on /mnt/var/www type ffs (rw, asynchronous, local, nodev, nosuid)

  Let's install the sets!
...

(zurück dorthin, wo wir vielleicht gewesen sind)

4.7 - Welche Dateien werden für die Installation benötigt?

Eine vollständige OpenBSD-Installation ist in eine Reihe separater Dateisets aufgeteilt. Nicht jede Anwendung benötigt jedes Dateiset, jedoch wird neuen Benutzern geraten, ALLE zu installieren. Hier ist ein Überblick über jedes Einzelne:

Die Dateisets etc54.tgz und xetc54.tgz werden als Teil eines »Upgrades« nicht installiert, sondern nur als Teil einer kompletten Installation, sodass Anpassungen, die du eventuell gemacht hast, nicht verloren gehen. Du musst die Verzeichnisse /etc, /dev und /var manuell aktualisieren.

Warum muss ich X für meine nicht-grafische Anwendung installieren?

Selbst wenn du es nicht vorhaben solltest, X laufen zu lassen, werden einige Pakete von Dritten die Bibliotheken oder andere Werkzeuge von X auf deinem System voraussetzen. Diese Anwendungen können manchmal einfach durch die Installation von lediglich xbase54.tgz zufrieden gestellt werden, der Rest von X wird nicht immer benötigt. Manchen Leute widerstrebt es, X auf ihrem System zu installieren, jedoch ohne gültigen Grund: Leute verschwenden manchmal eine Menge Zeit und Mühe bei dem Versuch, sich aus xbase50.tgz nur die Dateien herauszupicken, die sie für die Installation ihrer Applikation benötigen. Dies geschieht nicht nur ohne Grund, es ist auch eine Mühe, die für jeden Upgrade-Zyklus erneut durchgeführt werden muss, was vielleicht bedeutet, dass du dein System nicht vernünftig aktualisierst und damit ECHTE Sicherheitsprobleme erzeugst.

WENN du X benötigst, installiere es einfach. Es wird dich nicht mehr schmerzen als die Applikation, für die du es benötigst.

Ich möchte die Quelltext-Übersetzer nicht installieren

Na gut, dann lass es, aber bitte rede dir nicht selbst ein, dass es aus »sicherheitstechnischen Gründen« geschieht. Wenn jemand derart tief in dein System eingedrungen ist, dass die An- oder Abwesenheit eines Übersetzers eine Rolle spielt, dann sind sie in jedem Fall weit genug, um selbst einen Übersetzer installieren zu können. Nichtsdestotrotz, das Dateiset compXX.tgz ist relativ groß und beinhaltet eine Menge Dateien, sodass es eine Weile dauern kann, es zu installieren oder upzugraden. Auf langsamen oder kleinen Systemen kann dies einen Unterschied machen.

Wenn du dich dazu entscheidest, den Übersetzer nicht zu installieren, so wirst du wahrscheinlich ein anderes System benötigen, um aktualisierte Software zu warten und zu bauen. Es gibt weit mehr Systeme, die durch untaugliche Wartung komprimittiert wurden, als solche, die komprimittiert wurden, weil ein Übersetzer installiert war.

4.8 - Wie sollte ich mein Laufwerk partitionieren?

Offensichtlich variiert die Antwort auf diese Frage kolossal in Abhängigkeit von deiner Nutzung des Systems. OpenBSD kann selbst in wenigen 512 MB installiert werden, allerdings ist die Nutzung auf einem so kleinen Gerät eine Sache für fortgeschrittene Benutzer. Bis du ein wenig Erfahrung besitzt, ist eine Festplatte mit 8 G oder mehr die Empfehlung für den Anfang.

Anders als viele andere Betriebssysteme bestärkt OpenBSD seine Benutzer, ihre Laufwerke in eine ganze Reihe von Partitionen zu unterteilen, anstatt nur eine oder zwei große Partitionen zu nutzen. Es gibt einige Gründen, das Laufwerk zu unterteilen:

Ausreichenden Speicherplatz auf dem Laufwerk vorausgesetzt, wird das Installationsprogramm von OpenBSD die folgenden Partitionen standardmäßig vorschlagen:

Einige weitere Gedanken über Partitionierung:

4.9 - »Multibooting« OpenBSD (amd64, i386)

»Multibooting« bezeichnet den Umstand, mehrere Betriebssysteme auf einem Computer zu haben, und ein bisschen auch die Auswahl des zu startenden Betriebssystems. Dies ist keine triviale Sache! Wenn du nicht weißt, was du machst, kann dies zum Verlust von großen Datenmengen auf deinem Computer führen. Neue Benutzer von OpenBSD werden nachdrücklich dazu aufgefordert, mit einer leeren Festplatte auf einer extra dafür bestimmten Maschine zu beginnen, um dann die gewünschte Konfiguration auf einer nicht für den realen Einsatz vorgesehenen Maschine auszuprobieren, bevor man eine »Multiboot«-Konfiguration auf einer Maschine im produktiven Einsatz einsetzt. FAQ 14 hat mehr Informationen über den Startprozess von OpenBSD.

Vorzugsweise nutzt man eine der vier primären MBR-Partitionen, um OpenBSD zu starten (d. h. dass erweiterte Partitionen eventuell nicht funktionieren).

Anzumerken ist, das Windows 7 und Vista ihre Systempartitionen in der Größe verändern können: öffne die Systemsteuerung, suche nach »Datenträgerverwaltung« und benutze dieses Werkzeug. Ein Rechtsklick auf das »Volume« (Partition) und du wirst bemerken, dass du sie schrumpfen kannst. Die Hauptbeschränkung des Werkzeugs ist, dass die Windows-Auslagerungsdatei nicht bewegt werden kann, d. h. wenn du mehr Speicher brauchst, muss zuerst diese Datei bewegt oder ausgeschaltet werden.

Hier sind mehrere Optionen für das »Multibooting«:

Einstellung der aktiven Partition

Dies ist vielleicht die am meisten übersehene, aber nichtsdestotrotz manchmal die beste Lösung für das »Multibooten«. Welches Betriebssystem du auch immer gerade benutzt, setze einfach die aktive Partition auf jene, die du als Nächstes starten willst. Nahezu jedes Betriebssystem offeriert ein Programm, das dies tun kann; das von OpenBSD heißt fdisk(8), Programme gleichen Names gibt es in Windows 9x und DOS und vielen anderen Betriebssystemen. Dieser Weg kann für Betriebssysteme oder Systeme, die eine sehr lange Zeit für das Herunterfahren und den Neustart benötigen, sehr wünschenswert sein - setze die aktive Partition und leite den Neustart ein, entferne dich für eine Tasse Kaffee, und komme zurück zu einem System, das auf die gewünschte Art und Weise gestartet ist: kein Warten auf den magischen Moment, um das korrekte Betriebssystem auszuwählen.

Startdiskette

Wenn du ein System besitzt, das OpenBSD nur unregelmäßig startet (oder nicht willst, dass andere Nutzer des Systems bemerken, dass sich etwas geändert hat), so ziehe eine Startdiskette in Erwägung. Benutze einfach eine der OpenBSD-Standardinstallationsdisketten und erzeuge eine Datei /etc/boot.conf (ja, du wirst auch ein Verzeichnis /etc auf der Diskette erzeugen müssen) mit folgendem Inhalt:
     boot hd0a:/bsd
um das System von Festplatte 0, OpenBSD-Partition »a«, Kernel-Binärdatei /bsd starten zu lassen. Mit einer Zeile wie »boot hd2a:/bsd« ist es auch möglich, von anderen Laufwerken zu starten, im Beispiel von der dritten Festplatte des Systems. Um OpenBSD zu starten, lege die Diskette ein und starte das System neu. Um das andere Betriebssystem zu starten, entferne die Diskette und starte das System neu. (Du kannst natürlich diese Diskette auch zum Erzeugen einer startfähigen CD benutzen.)

Das Programm boot(8) wird von der Diskette geladen, sucht nach und liest die /etc/boot.conf. Die Zeile »boot hd0a:/bsd« instruiert boot(8), woher der Kernel zu laden ist - in diesem Fall die erste Festplatte, die vom BIOS gesehen wird. Behalte in Erinnerung, dass nur eine kleine Datei (/boot) von der Diskette gelesen wird. Das System lädt den gesamten Kernel von der Festplatte, sodass dies nur fünf Sekunden auf den Prozess des Startens aufschlägt.

Windows NT/2000/XP NTLDR

Für das »Multibooten« von OpenBSD und Windows NT/2000/XP kann man NTLDR benutzen, den »Bootloader«, den NT benutzt. Um mit NT »multibooten« zu können, benötigt man eine Kopie des OpenBSD-»Partition Boot Record« (PBR). Nach dem Aufruf von »installboot« kann man diesen mit Hilfe von dd(1) wie gezeigt in eine Datei kopieren:
        # dd if=/dev/rsd0a of=openbsd.pbr bs=512 count=1
Anmerkung: Dies ist wirklich ein guter Zeitpunkt, um daran zu erinnern, dass das blinde Tippen von Kommandos, die man nicht versteht, eine wirklich schlechte Idee ist. Diese Zeile wird auf den meisten Computern, so wie gezeigt, nicht funktionieren. Es wird dem Leser überlassen, es auf seine eigene Maschine zu übertragen.

Nun starte NT und schreibe openbsd.pbr nach C:. Füge eine Zeile wie die Folgende an das Ende von C:\BOOT.INI an:

        c:\openbsd.pbr="OpenBSD"

Wenn du neu startest, sollte es möglich sein, OpenBSD aus dem NT-Starter-Menü auszuwählen. Es sind viele Informationen zu NTLDR beim NTLDR Hacking Guide verfügbar.

Unter Windows XP kannst du die Startinformationen auch grafisch editieren; lies das XP Boot.ini HOWTO.

Es sind Programme verfügbar, die dir viel von dieser Arbeit abnehmen, zum Beispiel BootPart. Dieses Programm kann unter Windows NT/2000/XP laufen, kann den OpenBSD-PBR auslesen, ihn auf der NT/2000/XP-Partition platzieren und ihn zu der C:\BOOT.INI hinzufügen.

Anmerkung: Der Windows NT/2000/XP »Bootloader« ist ausschließlich dazu in der Lage, Betriebssysteme von der primären Festplatte zu starten. Du kannst ihn nicht dazu benutzen, OpenBSD von der zweiten Platte des Systems zu starten.

Windows Vista

Mit Vista hat Microsoft die Unterstützung von NTLDR zugunsten des neueren »Boot Configuration Data« (BCD)-Speichers, der zur Kontrolle der Startumgebung benutzt wird, aufgegeben. Da BOOT.INI für die Anpassung nicht länger zur Verfügung steht, nimmt das Kommandozeilenwerkzeug bcedit seinen Platz ein.

Sobald OpenBSDs PBR auf die Vista-Systempartition kopiert wurde, sind die folgenden drei Kommandos nötig, um OpenBSD auszuwählen und zu starten, wenn das System neu gestartet wird:

C:\Windows\system32> bcdedit /create /d "OpenBSD/i386" /application bootsector
The entry {05a763ce-d81b-11db-b3ec-000000000000} was successfully created.

C:\Windows\System32>

Die GUID, die hier zurückgegeben wurde (05a763ce-d81b-11db-b3ec-000000000000) wird für illustrative Zwecke gezeigt. Beachte die GUID, die gezeigt wird, wenn du das Kommando laufen lässt, da dieser Wert für die folgenden Kommandos gebraucht wird. Das einfache Kopieren der oben gezeigten GUID wird nicht funktionieren.

Die folgenden zwei Kommandos werden ebenfalls benötigt:

C:\Windows\system32> bcdedit /set {05a763ce-d81b-11db-b3ec-000000000000} device boot
The operation completed successfully.

C:\Windows\system32> bcdedit /set {05a763ce-d81b-11db-b3ec-000000000000} path \openbsd.pbr
The operation completed successfully.

C:\Windows\system32>

Diese müssen in einer Shell mit Administratorrechten ausgeführt werden. Sobald du cmd.exe lokalisiert hast, rechtsklicke es, um in der Lage zu sein, "run as administrator" auszuwählen.

Beachte den absolute Pfadnamen der importierten PBR-Datei. Füge keinen Laufwerksbuchstaben hinzu, da angenommen wird, dass die Datei auf der Systempartition platziert wird. bcdedit wird sich über einen explizit spezifizierten Laufwerksbuchstaben nicht beschweren, aber der »Bootmanager« wird später stocken und angeben, dass er den designierten Pfadnamen nicht auflösen kann.

Während des Neustarts wird Vista als Erstes im »Bootmanager« gelistet, direkt gefolgt von OpenBSD. Die Auswahl eines Eintrags startet das entsprechende Betriebssystem.

Wenn nichts geschieht, schaue in der Systemsteuerung nach Startinformationen. Sehr wahrscheinlich ist der Start von Windows so eingestellt, dass er keine Verzögerung benutzt, sodass du das Startmenü nicht zu sehen bekommst. Du kannst dieses Werkzeug auch benutzen, um OpenBSD standardmäßig zu starten.

Für mehr Informationen konsultiere bcdedits Hilfe durch die Eingabe von:

C:\Windows\system32> bcdedit /?

oder durch die Suche in Microsofts Dokumentation und auf ihrer Webseite. Eine gute Einführung kann in dem TechNet-Artikel »Frequently Asked Questions« gefunden werden.

Für diejenigen, die manuelle Konfiguration erschreckend finden, bietet EasyBCD eine grafische Alternative.

Windows 7

Seit der Veröffentlichung von Vista hat Microsoft BCD verbessert, sodass es nun mehrere Versionen von Windows über bcdedit starten kann. Weil dies eine viel größere Kontrolle ermöglicht, sind nun fünf Kommandos nötig, um eine »Multiboot«-Umgebung mit OpenBSD einzurichten.

Nach dem Kopieren des OpenBSD-PBR auf die Systempartition von Windows 7 benutze die folgenden Kommandos, um die erforderlichen Registraturdaten zu initialisieren:

C:\Windows\system32> bcdedit /create /d "OpenBSD/i386" /application bootsector
The entry {0154a872-3d41-11de-bd67-a7060316bbb1} was successfully created.

C:\Windows\system32>

Wie zuvor schon geschildert, ist die gezeigte GUID {0154a872-3d41-11de-bd67-a7060316bbb1} systemabhängig. Merke dir den Wert, den du bei der Ausführung erhältst, und benutze ihn mit den folgenden Kommandos:

C:\Windows\system32> bcdedit /set {0154a872-3d41-11de-bd67-a7060316bbb1} device boot
The operation completed successfully.

C:\Windows\system32> bcdedit /set {0154a872-3d41-11de-bd67-a7060316bbb1} path \openbsd.pbr
The operation completed successfully.

C:\Windows\system32> bcdedit /set {0154a872-3d41-11de-bd67-a7060316bbb1} device partition=c:
The operation completed successfully.

C:\Windows\system32> bcdedit /displayorder {0154a872-3d41-11de-bd67-7060316bbb1} /addlast
The operation completed successfully.

C:\Windows\system32>

Andere »Bootloader«

Andere »Bootloader«, die Benutzer von OpenBSD erfolgreich benutzt haben: GAG, The Ranish Partition Manager, rEFIt, und GRUB.

OpenBSD und Linux (i386)

Bitte lies INSTALL.linux, das detaillierte Instruktionen beinhaltet, um OpenBSD und Linux gemeinsam zum Laufen zu bringen.

Probleme mit der Zeitzone

OpenBSD erwartet, dass die Echtzeituhr des Computers auf UTC (Universal Coordinated Time) eingestellt ist. Andere Betriebssysteme erwarten, dass diese Uhr auf lokale Zeit eingestellt ist. Offensichtlich kann dies zu Problemen führen, wenn beide Betriebssysteme auf demselbem Computer laufen. Das eine oder andere von Ihnen muss sehr wahrscheinlich angepasst werden. Mehr Informationen zu diesem Thema findet sich in FAQ 8 - Warum geht meine Uhr um mehrere Stunden falsch?

4.10 - Das Senden deiner »dmesg« an dmesg@openbsd.org nach der Installation

Nur um es den Leuten in Erinnerung zu rufen: Es ist wichtig für die OpenBSD-Entwickler, auf dem Laufenden zu bleiben, welche Hardware läuft, und welche nicht richtig funktioniert, und dies schließt die Hardwaresensoren ein, die in den Maschinen gefunden werden können.

Ein Zitat aus /usr/src/etc/root/root.mail

If you wish to ensure that OpenBSD runs better on your machines, please do us
a favor (after you have your mail system configured!) and type something like:
 # (dmesg; sysctl hw.sensors) | \
        mail -s "Sony VAIO 505R laptop, apm works OK" dmesg@openbsd.org
so that we can see what kinds of configurations people are running.  As shown,
including a bit of information about your machine in the subject or the body
can help us even further.  We will use this information to improve device driver
support in future releases.  (Please do this using the supplied GENERIC kernel,
not for a custom compiled kernel, unless you're unable to boot the GENERIC
kernel.  If you have a multi-processor machine, dmesg results of both GENERIC.MP
and GENERIC kernels are appreciated.)  The device driver information we get from
this helps us fix existing drivers. Thank you!

Versichere dich, dass du die E-Mail von einem Benutzerkonto sendest, das nicht nur senden, sondern auch E-Mail empfangen kann, sodass dich Entwickler kontaktieren können, wenn sie wollen, dass du etwas testest oder änderst, um dein Setup zum Laufen zu bringen. Es ist überhaupt nicht wichtig, diese E-Mail von derselben Maschine zu senden, auf der OpenBSD läuft; sollte diese Maschine keine E-Mail empfangen können, so mache einfach das Folgende:

$ (dmesg; sysctl hw.sensors) | mail your-account@yourmail.dom
und dann »forward«e diese Nachricht an
 dmesg@openbsd.org
wobei hier your-account@yourmail.dom für dein reguläres E-Mail-Benutzerkonto steht.

ANMERKUNGEN

Die oben gezeigte Methode ist sehr einfach, aber wenn du dich dazu entschieden hast, E-Mail auf deinem OpenBSD-System nicht zu konfigurieren, so solltest du dennoch deine »dmesg« an die Entwickler schicken. Speichere deine »dmesg« in einer Textdatei.

$ (dmesg; sysctl hw.sensors) > ~/dmesg.txt
Dann transferiere diese Datei (mit Hilfe von FTP/scp/Diskette/Brieftaube/...) an das System, das du normalerweise für E-Mail benutzt. Da die »dmesg«-Ausgabe, die du einsendest, automatisch abgearbeitet wird, solltest du die folgenden Punkte sicherstellen, wenn du alternative E-Mail-Programme/-Systeme benutzt:

4.11 - Ein Dateiset nach der Installation hinzufügen

»Oh nein! Ich habe bei der Installation ein Dateiset vergessen!«

Manchmal erkennt man zu spät, dass man WIRKLICH comp54.tgz (oder eine andere Systemkomponente) benötigt hätte, es aber zum Zeitpunkt der Installation nicht installiert hat. Gute Nachrichten: Es gibt zwei einfache Wege, Dateisets nach der eigentlichen Installation aufzuspielen:

Durch Nutzung des Upgrade-Prozesses

Starte einfach das Installationsmedium (CD-ROM oder Diskette) und wähle »Upgrade« (anstatt »Install«). Wenn du zu der Liste der zu installierenden Dateisets kommst, wähle jene Sets aus, die du bei der ersten Installation vergessen hast, wähle die Quelle, und lass sie dir installieren.

Durch Benutzung von tar(1)

Die Installations-Dateisets sind einfach nur komprimierte tar-Dateien, und du kannst sie manuell aus dem Verzeichnis, in welchem die Dateisets liegen, heraus entpacken:

  # tar -C / -xzvphf comp54.tgz

Vergiss NICHT die Option »p« im oben gezeigten Kommando, da sie dafür sorgt, dass die Dateirechte korrekt wiederhergestellt werden!

Ein häufig gemachter Fehler ist, zu denken, dass man pkg_add(1) benutzen kann, um fehlende Dateisets hinzuzufügen. Das funktioniert nicht. pkg_add(1) ist das Verwaltungswerkzeug für Pakete zur Installation von Software Dritter. Es kann mit Paketdateien umgehen, nicht mit generischen tar-Dateien, wie es die Dateisets sind.

Wenn du das Dateiset xbase zum ersten Mal auf deinem System mit Hilfe von tar(1) und ohne Neustart installierst, so muss der Cache für dynamisch gelinkte Bibliotheken durch einen Aufruf von ldconfig(8) nach der Installation aktualisiert werden. Um alle Bibliotheken von X zu dem Cache hinzuzufügen:

# ldconfig -m /usr/X11R6/lib
Alternativ kann man auch einfach sein System neu starten, da das Skript rc(8), das beim Starten des Systems läuft, diese Schritte automatisch ausführt.

4.12 - Was ist »bsd.rd«?

bsd.rd ist ein RAM (»Random Access Memory«, Hauptspeicher)-Laufwerk-Kernel. Diese Datei kann sehr nützlich sein; viele Entwickler achten sorgsam darauf, sie immer im Wurzelverzeichnis ihres Systems präsent zu haben.

Ihn einen RAM-Laufwerk Kernel zu nennen, beschreibt das Wurzel-Dateisystem des Kernels - anstatt sich auf einem physischen Laufwerk zu befinden, befinden sich die Werkzeuge, die nach dem Start von bsd.rd vorhanden sind, im Kernel und werden von einem RAM-basierten Dateisystem ausgeführt. bsd.rd enthält ein brauchbares Set an Werkzeugen für die Systemwartung und -installation.

Auf manchen Plattformen ist bsd.rd sogar die bevorzugte Installationstechnik. Du platzierst diesen Kernel auf einem vorhandenen Dateisystem, startest ihn, und führst darauf hin von ihm aus die Installation durch. Auf den meisten Plattformen kannst du, solltest du eine ältere Version von OpenBSD laufen haben, eine neue Version von bsd.rd per FTP beziehen, damit neu starten und eine neue Version von OpenBSD installieren - unter Auslassung jeglicher Wechselmedien.

Hier ist ein Beispiel des Startens von bsd.rd auf einem i386-System:

  Using Drive: 0 Partition: 3
  reading boot.....
  probing: pc0 com0 com1 apm mem[639k 255M a20=on]
  disk: fd0 hd0+
  >> OpenBSD/i386 BOOT 3.18
  boot> boot hd0a:/bsd.rd
. . . normal boot to install . . .

Wie schon gesagt wirst du in das Installationsprogramm gelangen, aber du kannst auch auf die Shell zurückgreifen, um Wartungsarbeiten auf dem System auszuführen.

Die einfache Regel zum Starten von bsd.rd ist schlicht der Austausch des »Boot-Kernels« von /bsd zu bsd.rd, wie auch immer dies auf deiner Plattform zu bewerkstelligen ist.

4.13 - Geläufige Installationsprobleme

4.13.1 - Mein Compaq erkennt nur 16 MB RAM

Einige Compaq-Systeme haben das Problem, dass nicht der gesamte Hauptspeicher von OpenBSDs »Secondstage-Bootloader« ordentlich erkannt wird, sondern nur 16 MB erkannt und von OpenBSD verwendet werden. Du kannst dieses Problem beheben, indem du entweder /etc/boot.conf erstellst/editierst oder Befehle am Prompt boot> eingibst, bevor OpenBSD lädt. Falls du eine Maschine mit 64 MB RAM hast, aber OpenBSD nur die ersten 16 MB erkennt, wird der Befehl
     machine mem +0x3000000@0x1000000
48 MB (0x3000000) nach den ersten 16 MB (0x1000000) hinzufügen. Wenn du ein System mit diesem Problem hättest, würdest du typischerweise den oben angegeben Befehl am Installationsprompt boot> der Diskette/CD-ROM eingeben, neu starten und eine Datei /etc/boot.conf anlegen, die den oben angegebenen Befehl beinhaltet, sodass alle zukünftigen Starts des Systems den ganzen verfügbaren Speicher erkennen können.

Es wurde ebenfalls berichtet, dass ein ROM-Update dieses Problem auf einigen Systemen löst.

4.13.2 - Mein i386 startet nach der Installation nicht

Deine Installation verlief gut, doch beim ersten Start erkennst du keine Anzeichen dafür, dass OpenBSD versucht zu starten. Es existieren einige bekannte Gründe für dieses Problem:

4.13.3 - Mein System startete, hing aber bei der SSH-Schlüsselgenerierung

Es ist sehr wahrscheinlich, dass dein System einwandfrei funktioniert, aber eine Weile benötigt, um die SSH-Schlüssel zu generieren. Auf einer SPARCStation2 oder einem Macintosh Quadra können mehrere Stunden vergehen, bis die drei ssh-keygen(1)-Schritte ausgeführt sind. Lass diesen Prozess einfach durchlaufen - es wird nur ein einziges Mal pro Installation gemacht.

Benutzer von sehr langsamen Maschinen können ihre Schlüssel auch auf einem anderen Computer generieren, in einer site54.tgz genannten Datei abspeichern und sie zusammen mit den restlichen Dateisets installieren.

4.13.4 - Ich bekam die Meldung »Failed to change directory« als ich die Installation durchführte

Wenn du eine FTP-Installation eines Schnappschusses während der »-beta«-Phase des OpenBSD-Entwicklungszyklus durchführst, könntest du dies lesen:


  Display the list of known ftp servers? [no] yes
  Getting the list from 192.128.5.191 (ftp.openbsd.org)... FAILED
  Failed to change directory.
  Server IP address or hostname?

Dies ist normal und ein erwartetes Verhalten während der Vor-Release-Phase des Zyklus. Das Installationsprogramm sucht nach der FTP-Liste auf dem primären FTP-Server in einem Verzeichnis, das bis zum Release-Datum nicht verfügbar ist, sodass du die oben genannte Meldung bekommst.

Verwende einfach eine FTP-Spiegelserverliste, um deinen favorisierten FTP-Spiegelserver zu finden, und gib seinen Namen manuell ein, wenn du danach gefragt wirst.

Hinweis: Du solltest die Meldung nicht sehen, wenn du »-release«, oder von einer CD-ROM installierst.

4.13.5 - Meine fdisk-Partitionstabelle ist kaputt oder leer!

Gelegentlich finden Benutzer ein funktionsfähiges System vor, das aber bei Verwendung von fdisk wd0 eine vollständig leere (oder ab und zu vermüllte) Partitionstabelle aufweist. Dies wird normalerweise dadurch verursacht, dass eine Partition in fdisk(8) erstellt wurde, die einen »offset« von 0 Sektoren besitzt, anstatt den »offset« einer Spur, den sie haben sollte (Hinweis: Dies nimmt an, dass es sich um die i386- oder amd64-Plattform handelt. Andere Plattformen benötigen andere »offsets«, einige sogar GAR KEINEN »offset«). Das System startet dann unter Verwendung des PBR und nicht des MBR.

Obwohl diese Konfiguration funktionieren kann, kann dies ein Wartungsproblem darstellen und sollte korrigiert werden. Um dies zu korrigieren, muss das Dateisystem der Platte normalerweise von Grund auf neu erstellt werden (obwohl, wenn du WIRKLICH weißt, was du tust, könntest du in der Lage sein, nur das disklabel und den MBR neu zu erstellen, und dadurch nur die erste OpenBSD-Partition der Festplatte zu verlieren, und neu erzeugen zu müssen).

4.13.6 - Mein System besitzt weder Disketten- noch CD-ROM-Laufwerk

Einige Computer, auf denen Leute OpenBSD laufen lassen möchten, besitzen keinen offensichtlichen Weg, um OpenBSD installieren zu können, da sie weder Disketten- noch CD-ROM-Laufwerk besitzen. Entweder wurde die Maschine so designt (zum Beispiel viele Laptops und »Flash«-basierte Maschinen, wie Soekris- oder ALIX-Systeme), oder die Startlaufwerke gingen kaputt oder wurden entfernt, und es wäre schwierig, sie zu ersetzen. Hier sind einige Tipps und Techniken, die man benutzen kann, um OpenBSD auf solchen Systemen installiert zu bekommen. Erinnere dich in allen Fällen daran, dass auf der Maschine einmal ein Betriebssystem installiert war. Es war normalerweise vorgesehen, dass das Betriebssystem neu aufgespielt werden kann. Wie dies ursprünglich vorgesehen war, gibt dir oft eine gute Idee, wie du nun OpenBSD darauf installieren kannst.

4.13.7 - Ich bekam einen SHA256-Prüfsummenfehler während der Installation!

Prüfsummen sind für jene Dateisets, die für die Systeminstallation benötigt werden, fest im Installationskernel verdrahtet.

Dateisets, die für »-release« benutzt werden, sollten alle ihren gespeicherten Prüfsummen entsprechen.

Es kann vorkommen, dass für Schappschüsse keine korrekte Prüfsumme im Installationskernel gespeichert ist. Dies geschieht aus verschiedenen Gründen während der Erzeugung, und ist kein Grund, in Panik über Entwicklungs-Schnappschüsse auszubrechen. Wenn du dir darüber Sorgen machst, so warte auf den nächsten Schnappschuss.

4.14 - Anpassung des Installationsprozesses

Die siteXX.tgz-Datei

Die OpenBSD-Installations- und »Upgrade«-Skripte erlauben die Auswahl eines vom Benutzer erzeugten Sets, das »siteXX.tgz« genannt wird, wobei hier XX für die Release-Version (z. B. 54) steht. Das Dateiset siteXX.tgz ist wie die anderen Dateisets ein mit gzip(1) komprimiertes tar(1)-Archiv, das im Wurzelverzeichnis »/« beheimatet ist, und wie die anderen Dateisets auch mit den Optionen xzphf ausgepackt werden muss. Dieses Set wird zuletzt, nach allen anderen Dateisets, installiert.

Dieses Dateiset erlaubt es dem Benutzer, Dateien hinzuzufügen oder Solche zu überschreiben, die von den »normalen Sets« installiert worden sind, und erlaubt daher die Anpassung der Installation oder des Upgrade.

Es ist ebenfalls möglich, hostnamenspezifische Installationssets zu erzeugen und zu benutzen; diese müssen dem Schema siteXX-<hostname>.tgz folgen, zum Beispiel »site54-puffy.tgz«. Dies erlaubt die einfache hostspezifische Anpassung für Installationen, Upgrades oder dem Wiederherstellen nach Katastrophen.

Einige Beispiel-Anwendungen einer siteXX.tgz-Datei:

install.site/upgrade.site-Skripte

Als letzten Schritt im Installations-/Upgradeprozess wird im Wurzelverzeichnis des neu installierten/aktualisierten Systems je nach aktuellem Prozess nach install.site oder upgrade.site gesucht und das Skript in einer Umgebung ausgeführt, die auf das Wurzelverzeichnis des installierten/aktualisierten System ge»chroot«et ist. Denke daran, dass das Upgrade von einem gestarteten Dateisystem aus ausgeführt wird, sodass dein Ziel tatsächlich auf /mnt eingehängt ist. Trotzdem kann das Skript aufgrund des »chroot« so geschrieben werden, als ob es im »normalen« Wurzelverzeichnis des Dateisystems läuft. Da dieses Skript ausgeführt wird, nachdem alle anderen Dateien installiert wurden, ist der größte Teil der Funktionalität eines vollständigen Systems verfügbar. Aber vergiß nicht, dass nur ein minimaler Kernel läuft, nicht alle Möglichkeiten verfügbar sind und aufgrund von Platzbeschränkungen Dinge, die heute funktionieren, in einem zukünftigen Release nicht mehr funktionieren könnten.

Beachte, dass das Skript install.site in einer siteXX.tgz-Datei liegen sollte, während das Skript upgrade.site vor dem Upgrade in das Wurzelverzeichnis gelegt werden kann - oder in eine siteXX.tgz-Datei.

Die Skripte können für viele Dinge verwendet werden:

Die Kombination von siteXX.tgz- und install.site-/upgrade.site-Dateien soll den Benutzern ein breites Angebot an Möglichkeiten zur Anpassung der Installation eröffnen, ohne dass es nötig ist, dass sie ihre eigenen, angepassten Installationssets erzeugen müssen.

Hinweis: Wenn du über einen HTTP-Server installierst, so musst du die Datei(en) site*.tgz in der Datei index.txt des Quellverzeichnisses auflisten, damit sie während der Installation als Option angezeigt wird. Dies gilt nicht für FTP- oder andere Installationsmethoden.

4.15 - Wie kann ich eine Anzahl gleichartiger Systeme installieren?

Hier sind einige Anwendungen aufgelistet, die du verwenden kannst, wenn du mehrere ähnliche OpenBSD-Systemen installieren musst.

siteXX.tgz- und install/upgrade.site-Dateien

Siehe den vorherigen Artikel.

Ein dump(8) wiederherstellen

Auf den meisten Plattformen beinhaltet das Startmedium das Programm restore(8), welches verwendet werden kann, um ein Backup zu extrahieren, das mit Hilfe von dump(8) erstellt wurde. Du kannst daher von Diskette, CD oder bsd.rd-Datei starten, dann »fdisk« und »disklabel« ausführen und mittels restore die gewünschte Konfiguration von Band oder einem anderen Medium wiederherstellen und die »Bootblöcke« installieren. Weitere Details gibt es hier.

Plattenabbildung (»imaging«)

Leider ist kein Platten-Abbildungsprogramm bekannt, das FFS unterstützt und so nur den tatsächlich benutzten Speicher abbilden würde. Viele der großen bekannten Abbildungslösungen behandeln eine OpenBSD-Partition als »generische« Partition, und können daher nur ein Abbild der kompletten Partition erzeugen. Damit ist dein Ziel zwar meistens erreicht, jedoch werden dabei normalerweise gigantische Mengen Speicher verschwendet - eine leere 10 G große Partition /home wird 10 G Speicher im Abbild benötigen, selbst wenn sich keine einzige Datei darin befindet. Und während man normalerweise ein Laufwerksabbild auf ein größeres Laufwerk installieren kann, würde es nicht möglich sein, den überzähligen Speicher zu nutzen, und du würdest nicht in der Lage sein, das Abbild auf ein kleineres Laufwerk zu installieren.

Sollte dies eine akzeptable Situation darstellen, so magst du in dem Kommando dd eine Lösung finden, die das tut, was du brauchst, und dir erlauben, ein Laufwerk in ein anderes zu kopieren, Sektor für Sektor. Dies würde dieselbe Funktionalität bieten wie die kommerziellen Programme, jedoch ohne Kosten.

4.16 - Woher bekomme ich eine dmesg(8), damit ich ein Installationsproblem melden kann?

Wenn man ein Problem meldet, ist es entscheidend, eine komplette dmesg(8) des Systems einzufügen. Wie auch immer - oft ist es so, dass du dies machen musst, wenn das System nicht ordnungsgemäß funktioniert, oder nicht installieren will, sodass du weder Platten-, Netzwerk- oder andere Ressourcen zur Verfügung hast, um deine »dmesg« an die passende Mailingliste zu senden. Es gibt aber andere Wege:

[FAQ-Index] [Zum Kapitel 3 - Mit OpenBSD durchstarten] [Zum Kapitel 5 - Das System aus dem Quelltext erzeugen]


[back] www@openbsd.org
$OpenBSD: faq4.html,v 1.147 2013/11/11 07:18:59 ajacoutot Exp $