Ersterfahrungen mit NetBSD

Wie angekündigt will ich mal meine Erfahrungen mit NetBSD schildern. Ausgangsziel war ja, ein wenig Unix zu lernen und dabei ein System zum Produktivem Einsatz mit den allgemein bekannten und für die Textkonsole verfügbaren Werkzeugen aufzusetzen. Ganz gleich ob eine graphischen Oberfläche zum späteren Zeitpunkt noch zum Einsatz kommen soll oder nicht.
Doch warum aber jetzt unbedingt NetBSD anstatt eines Free- oder OpenBSD, welche sich einer größeren Beliebtheit erfreuen als das von mir gewählte. Die Nachteile von FreeBSD für mich waren zum einem, dass FreeBSD zur Installation und weiteren Konfiguration auf das Programm sysinstall setzt, welches einem dazu verleitet, nicht die entsprechenden Werkzeuge auf der Shell kennen und nutzen zu lernen. Auch wenn diese einem weiterhin zur Verfügung stehen. Dies würde nämlich auch wie bei einer (z.B. openSuse) den Effekt des Lernens nehmen, sodass man keine Chance bekommt, das Betriebssystem wirklich kennen zu lernen. Zum anderen ist FreeBSD ein System, dessen Anspruch auf den Einsatz im harten Produktivbereich liegt. Dies bedeutet, dass es selbst nach meiner subjektiven Beobachtung nach, schon bei der kompletten Basisinstallation sehr umfangreich ist und zusätzlich auf ca 18.000 Programme von Drittanbieter für allerlei Einsatzzwecke zurückgreifen kann. Und das eigentlich zurecht. Der Vorteil von NetBSD gegenüber OpenBSD ist, das es bei einer Erstinstallation auf einen Rechner weit aus einfacher und intuitiver anzuwenden ist. Außerdem gibt es bei NetBSD mit ca 7300 Binärpaketen zwar weniger als die Hälfte gegenüber FreeBSD, aber es sind immer noch weitaus mehr als bei OpenBSD mit ca 4900 zur Zeit.
Und da man zum Unix lernen keine neue große Hardware braucht, habe ich mir quasi den entsprechenden Rechner größtenteils zusammen geschenkt. Einen herzlichen Dank soll dabei noch mal an alle beteiligten Spender gehen, die diesem Computer möglich gemacht haben. Er besitzt folgende Spezifikationen:

– AT-Baby Desktop Gehäuse
– Asus P5A-B (Super-Sockel 7)
– AMD K6 2 @400 MHz
– 256 MB SD-RAM
– 32 MB ATI-Rage XPert AGP-Grafikkarte
– UDMA-IDE PCI-Karte
– 2 x 80 GB IDE-HDD (UDMA-6)
– 1,44 MB FDD
– 10 Mb NE2000-Karte (ISA)
– 100 Mb Realtek 8139 (PCI)
– SB 32 PnP ISA-Soundkarte

Da die hier aufgelistete und somit verwendete Hardware schon um einiges veraltet ist, kann man davon ausgehen, dass alle verwendeten Komponenten auf anhieb von dem verwendeten Betriebssystem unterstützt wird.
Eine weiter sehr schöne Eigenschaft von NetBSD (und bei einigen anderen BSD’s ist dies sicherlich auch der Fall) ist, dass man nicht gleich ein komplettes ISO-Image herunterladen muss. Sondern es reicht, wenn man die 1,44 MB großen Floppy-Images nimmt, diese auf zwei leere Disketten kopiert und man so dass System gemütlich über das Internet installieren kann. Auf den Disketten ist nämlich ein ausreichend kleiner Kernel zum Booten des System und die nötigen Werkzeuge zur Installation des Systems platzsparend untergebracht. So kann man sich auf alle Fälle schon einmal einen CD-Rohling sparen, was ja darin begründet liegt, dass das BSD-Derivat schließlich seinen Fokus auf die Portierbarkeit zu alten Workstations gesetzt hat und einige – wenn nicht sogar viele – dieser Rechnerarchitekturen zur ihrer damaligen Zeit einfach aus nicht Vorhandensein noch keine Unterstützung für optische Medien erfuhren. Als ein echtes Novum von NetBSD unter allen den von mir ausprobierten Unix-ähnlichen Betriebssystemen ist das Installationsprogramm „Sysinst“ zur Erst- oder Neuinstallation auf einem Rechner. Es ist ähnlich wie beim Sysinstall von FreeBSD ein textorientertes Dialogprogramm, welches im Gegensatz aller BSD’s und auch NetBSD im allgemeinen noch zusätzlich in der französischen, polnischen, italienischen und deutschen Sprache übersetzt ist. Einen weiteren Vorteil bietet das Programm, dass es bei jedem ausgeführten Schritt zur Einrichtung des Computer den jeweiligen Befehl am oberen Bildschirmrand anzeigt. So kann man, wenn man denn sich fit genug fühlt, beim nächsten mal auf Sysinst verzichten und die Befehle direkt auf der zur alternative stehenden Shell direkt eingeben. Sysinst bietet wie Eingangs schon erwähnt, gegenüber von sysinstall bei FreeBSD nur sehr wenige Optionen zur Konfiguration des Rechners. Alsbald währen das in Reihenfolge nach dem Booten vom Installationsmedium:

Auswahl der sprachlichen Übersetzung während der Installation in sysinst
Wahl des Tastaturschema
Hauptmenü

Im Hauptmenü stehen folgende Aktionen zur Verfügung

NetBSD auf die Festplatte installieren
Aktualisieren einer bestehenden NetBSD Installation
Erneute Installation oder zusätzliche Pakete installieren
Computer neu starten
Extras
Installationssystem beenden

Will man also nun auf einen Computer NetBSD installieren, so wählt man im Hauptmenü den ersten Punkt, welcher folgende Optionen in Reihenfolge ausführt:

die Wahl des Installationsumfang
Auswahl des Festplattenlaufwerk (wenn mehrere im Rechner vorhanden)
Bestätigung bzw. Abänderung der Festplattengeometrie
die Wahl, ob die gesamte Festplatte verwendet werden soll oder die Partitionstabelle abgeändert werden soll
Entscheidung ob der Bootcode in den MBR kopiert werden soll
setzen der Partitinsgrößen
setzen eines Namen für die Festplatte
Auswahl der Bootblöcke
Auswahl des Installtionsmediums
Auswahl der Netzwerkschnittstelle
Art der Netzwerkverbindung bzw Konfiguration per DHCP ermitteln
Auswahl über die Verfügung von IPv6
Möglichkeit zur Änderung der Host-Adresse
die Möglichkeit zur Übernahme der vorkonfigurierten Netzwerkeinstellung in das installierte System
setzen der Zeitzone
Wahl über das Passwort-Verschlüsselungsverfahren
die Möglichkeit das Root-Passwort bereits zu setzen
Wahl der Standartshell

Nach der Installation wird man direkt auf die Root-Shell geworfen und man kann zum Beispiel (man sollte sogar) mit den Textkomandos einen Benutzer erstellen. Denn wie gesagt: Ab hier kann man zur weiteren Konfiguration des System nicht auf sysinst setzen und muss stattdessen mit dem eingebauten Werkzeugen und der dazugehörigem Dokumentation sich auseinandersetzen. Das hieß für mich unter anderem, um die zweite Festplatte im Computer dann mit dem hauseigenen Dateisystem nutzbar zu machen, muss man die doch nicht so intuitiven Befehle disklabel, fdisk und newfs verwenden. Dies war eben aber mit ein relevanter Punkt, warum meine Wahl eben nicht auf OpenBSD fiel. Nicht gerade leichte Kost! Insbesondere dann, wenn das dann Laufwerke sind, die bereits schon Partitionen mit wichtigen Daten enthalten.
Ein Blick in den Aufbau und die Struktur des Dateisystems zeigt einen echt großen Vorteil der BSD-Linie im allgemeinen zu Linux. Es ist schlicht und ergreifend viel strukturierter und übersichtlicher aufgebaut. Gerade der Blick in das /etc -Verzeichnis sagt einem, wo man denn überhaupt hin muss.
Neben grundlegenden Unterschieden der BSD’s gegenüber z.B. Linux gibt es auch einige feinere von NetBSD zu den anderen. So werden alle zusätzliche installierten Programme nicht wie meistens üblich in das Verzeichnis /usr/bin abgelegt, sondern es wird ein eigener Baum /usr/pkg im Wurzelverzeichnis angelegt. Unter /usr/pkg/bin findet man so die Binärdateien und deren globalen Config-Dateien entsprechend unter /usr/pkg/etc. Also quasi ein weiteres usr-Verzeichnis unter /usr. Auch sehr schön, will man auf den Rechner mittels der SSH zugreifen, muss man nicht erst den entsprechenden openssh-Server nachinstallieren, sonder man aktiviert diesen lediglich in der /etc/rc.conf durch hinzufügen der Zeile sshd=YES. Und überhaupt kann man sagen, dass der Distributionsgedanke, der sich mit Linux sehr stark entwickelte und weiter verbreitet wurde, unter den BSD’s viel konsequenter weitergeführt wird. Man installiert sich eben das komplette Basisset und hat dann eben auch alle wichtigen Werkzeuge wie den GNU C-Compiler sofort an Bord und kann sofort loslegen zu programmieren und kompilieren. Und das ohne, dass gleich mehrere Gigabyte an Festplattenplatz belegt sind und erst einmal vor der Entscheidung steht: „Welche Grafische Oberfläche nehme ich den nun?“. Das spiegelt sich auch in der Verfügbarkeit von Dokumentationen und Hilfen aus dritter Hand wieder. Während es unzählige Linux-Distributionen und nochmal so viel zum Quadrat an Büchern und Internetforen zu der jeweiligen gibt, gibt es lediglich inzwischen eben nur vier BSD-Varianten und ein paar ganz wenige Modifikationen und Fork’s für eine Spezialanwendung von diesen. Das heißt, die Menge an bisher verfügbaren Printmedien und Howto’s im Internet kann man zwar an beiden Händen abzählen, sind aber absolut inhaltlich auf den Punkt und somit brauchbar. Auf NetBSD herunter gebrochen kann man beispielsweise sagen: Kommt man in diesem nicht weiter, so kann man hier die Online-Dokumentation von OpenBSD zu Rate ziehen (OpenBSD ist schließlich eine Abspaltung von NetBSD).
NetBSD hat aber auch einige Schwächen. So kann man zum Beispiel das System nicht über mehrere Festplattenlaufwerke verteilt installieren. Desweiteren ist es mit dem ifconfig Befehl nicht möglich, die MAC-Adresse des Netzwerkinterface zu ändern. Leider ist es mir auch bisher nicht gelungen, es unter VirtualBox als eine virtuelle Maschine zu installieren.

Hiermit seien somit noch ein paar Links genannt:

Offizielles Online-Handbuch von NetBSD

Die deutsche Ausgabe des FreeBSD Online-Handbuch

Die deutsche Ausgabe des OpenBSD Online-Handbuch

Wiki von bsdgroup.de

NetBSD – Einführung von Dirk Lindloff