[Bericht] NetBSD auf dem Thinkpad

schrank21

New member
Registriert
22 Okt. 2006
Beiträge
1.354
Jo, ich habe den Text gerade für meine Webseite getippt. Da die aber eh niemand außer Suchmaschinenbots besucht, formatier ich den mal um poste ihn nochmal hier.
Wie immer der Disclaimer: Bei eventuell späteren Änderungen gibt es den aktuellen Artikel auf meiner Webseite.

Ich denke, es ist auch gerade hier interessant, wie sich das so auf einem Notebook, spezieller einem Thinkpad verhält... Ich selber hatte immer meine Vorurteile, dass da der Stromverbrauch und die Hardwareunterstützung nicht gut wäre.


Es kam der Tag, da erschien Slackware 13.0, ich machte ein Upgrade, war zu doof und verlor 18 Tage Daten.
Das Backup war zwar da, müsste aber eh neu eingespielt werden... Wieso nutzt man die Gelegenheit dann nicht einfach, um mal was neues auszuprobieren?

Bleiben also nur die diversen Solaris- oder BSD-Derivate als freie Unixe (Hurd, Plan9 und noch exotischere mal ausgenommen). Die Installations-CD von OpenSolaris war 700MB groß, die von NetBSD knapp über 50MB - der, der schneller unten und gebrannt war, hatte gewonnen...
Etwas rationaler: Die nicht richtig native Unterstützung von OpenSolaris für verschlüsselte Dateisysteme und mein Eindruck, dass es deutlich aufgeblähter ist, haben mich davon abgehalten.

Das hier ist NICHT als Anleitung zu verstehen, sondern als kleiner Erfahrungsbericht von einem Linuxuser.

Hard- und Software:
Alle Erfahrungen basieren auf einem NetBSD 5.0.1 mit einem pkgsrc vom 30.08.2009 und den Paketversionen rund um den 01.09.2009.
Die Maschine ist mein X300 mit einem Intel GS965-Chipsatz, einer Intel 82566MM-Netzwerkkarte (unter Linux mit dem Modul e1000e), einer Intel 4965agn-Netzwerkkarte (iwlagn), einer Sierra Wireless MC8775 UMTS-Karte (sierra) und "generischem" Broadcom-Bluetooth.


Dokumentation:
Anfangen tut man bei einem Betriebssystem mit der Dokumentation.
Auf der NetBSD-Webseite findet man gleich in der Navigation den Menüpunkt "Documentation", der alle Guides, Howtos und FAQs auflistet.
Besonders hervorzuheben für den User ist der "The NetBSD Guide", ein großer Guide, der einen gut durch die Installation und die Benutzung von NetBSD lotst. Alle wesentlichen Fragen zur Installation und zur Benutzung werden hier gut geklärt, ohne dabei zu tief ins Detail zu gehen. Auch die "port-specific FAQs" können interessant sein, v.a. wenn man NetBSD auf einem x86 einsetzt und noch nie mit BSD-Disklabeln zu tun hatte (ja, für speziellere Plattformen ist es noch wichtiger, aber davon gehe ich jetzt nicht aus). Gerade die Sache mit Disklabels und MBR sollte man sich aber als x86-Nutzer auf jeden Fall angucken und verstehen, da es hier wesentliche Unterschiede zu klassischen PC-Partitionstabellen gibt.
"The pkgsrc guide" kann auch noch nett sein und beschreibt die optionale pkgsrc-Paketverwaltung.

Lokalisierung habe ich gar nicht erst probiert (wollte ich auch nicht), aber ich habe zumindest ab und zu bei Google Ergebnisse auf der deutschen NetBSD-Webseite gefunden. Aber ich denke, wer's nicht so mit Englisch hat, sollte die Finger von NetBSD lassen.

Insgesamt muss man aber auf jeden Fall sagen: Die Dokumentation ist nicht für Einsteiger gedacht. Man sollte schon mal an einem Unix an einer Shell gesessen haben, bevor man probiert, mit NetBSD anzufangen. Der Guide ist zwar sehr umfänglich, aber eindeutig nicht wie eine Bedienungsanleitung zu verstehen. NetBSD ist auch nicht sehr suchmaschinenaffin, man merkt, dass es nur wenig Benutzer hat.


Installation:
Der Download von NetBSD geht recht schnell vonstatten. Man geht auf die NetBSD-Webseite, läd sich ein CD-Image für seine Plattform runter und brennt es. Deutsche Mirror und Bandbreite sind zur Genüge vorhanden.
Die Installation selber wird durch "sysinstall" ausgeführt. Hierzu gibt es eine (imho schon zu) ausführliche und bebilderte Anleitung im Guide. Im wesentlichen partitioniert sysinstall die Platte und legt das Disklabel + Dateisysteme an, installiert das Basissystem, konfiguriert ein bisschen (Netzwerk, fstab, root) und ist auch schon fertig. Eine Installation mit einem anderen Betriebssystem auf der Platte habe ich nicht probiert, sollte aber auch keine Probleme machen (laut Doku ;).


Erste Schritte:
Insgesamt ändert sich bei NetBSD nicht viel zu einem Linux. Das Init ist ein anderes als SysV, aber schnell durchblickt, und für Slackware-Nutzer eh halbwegs vertraut.
Module werden mit anderen Befehlen geladen/angezeigt, wobei Module bei NetBSD nicht so viel genutzt werden.
Und man muss sich einige neue Optionen zu gängigen Befehlen angucken und strenger auf die Reihenfolge der Argumente achten... Aber sonst wird auch viel GNU-Software benutzt, gerade alles "höhere" (X und aufwärts).
Anpassen tut man sich am Anfang nur die rc.conf (fürs Init). Leider ist die ziemlich leer, was man eintragen will, muss man sich aus der Manpage raussuchen.
Man sollte zumindest immer ein anderes Terminal mit Manpages offen haben, um sich Konfigurationsdateien anzugucken oder wie man nun mit cp rekursiv kopiert...

Nach einer Weile merkt man dann aber, dass man irgendwie ein integrierteres System hat. UMTS-Karte? Läft problemlos, einfach so. Verschlüsselte Dateisysteme? Ein Programm (cgdconfig) erledigt das alles, schön dokumentiert im Guide. WLAN inklusive WPA? Out-of-the-box. Suspend2Ram und Aufwachen? Einfach ein sysctl und er schläft ein und läuft ohne irgendwelche Tricksereien wieder an.
Auf jeden Fall stellt sich am Anfang erstmal ein "Wow!" ein, was alles an Hardware erkannt wird und gut läft. Auch den Fingerprint-Reader hat er beim Booten erkannt (ich habe ihn aber nicht ausprobiert).

Was man auf jeden Fall tun sollte, wenn man NetBSD auf dem Desktop benutzt, ist, pkgsrc nachzuinstallieren, eine zusätzliche Paketverwaltung, die das Selberkompilieren sehr bequem macht.

Sound lief bei mir nicht, darum habe ich mich aber auch nicht sehr gekümmert, aber ich gehe davon aus, dass es einfach wäre, das noch einzurichten.


Benutzung:
Zur Benutzung ist nichts groß zu sagen. Es ist halt einfach ein Unix, und spätestens, wenn man eine grafische Oberfläche hat, ist kein Unterschied mehr zu Linux da.
Standardmäß ist leider einiges sehr seltsam. Man hat anfangs nur eine Bourne Shell, Korn Shell oder C Shell. Allesamt nicht wirklich komfortabel, eine bash muss man sich nachinstallieren.
Womit ich auch Stress hatte, war, das System auf unicode zu bringen. Zwar kann man X einfach auf ein anderes Layout bringen, aber dann ein Terminal mit Unicode und Ende-Taste zu bekommen... Wahrscheinlich war's eine Mischung aus meiner Unfähigkeit, urxvt und screen zu konfigurieren und aus bekannten ungefixten Bugs. Zumindest hab ich jetzt einiges über Termcap gelernt, Probleme blieben aber bestehen...
Etwas wie einen Framebuffer gibt es wohl nicht, man hat nur zwischen ein paar Terminal-Größen die Auswahl, aber bei großen Displays auch nichts brauchbares. Aber da es auch Leute gibt, die auf 15" mit 80x25 gut zurechtkommen, dürfte das nicht das KO-Kriterium sein.
Zwischendurch hatte ich auch kurz mal Stress, als er bei einem kaputten Root-Dateisystem der Meinung war, er müsste sich nach einer Weile aufhängen. Also richtig aufhängen mit Neustart und so. Ließ sich aber im Single-User-Mode schnell reparieren.
Dateien austauschen mit einem Linux? Jain, ein stinknormales ext2, wie es unter Linux erstellt, will nicht. Wurde wohl irgendwann mal was geändert, zumindest braucht er eine andere Inode-Größe, sonst weigert sich NetBSD, das Dateisystem zu mounten.

Der Stromverbrauch war beeindruckend. Ich habe nichts getweakt, war aber trotzdem im Betrieb mit WLAN und Displayhelligkeit bei 60% bei unter 14W.
Unter Linux bin ich da deutlich höher, bis ich anfange, runterzutakten und Powertop-Vorschläge umzusetzen. Aber auch dann bin ich so bei 11W, wer weiß wie NetBSD sich da verhalten hätte, wenn man noch den Prozessor runtergetaktet, Stromsparen bei der WLAN-Karte angeschaltet und andere tiefere Tweaks probiert hätte?


Paketverwaltung:
Die Paketverwaltung ist ganz nett. Binaries verwaltet man einfach mit pkg_*, bei dem man sich fehlende Pakete einfach per ftp runterladen kann (wobei es keinen voreingestellten ftp-Server gibt, hier sollte man den Guide zur Hand haben, wie man das einstellt).
pkgsrc macht das ganze dann schon netter. Man hat in /usr/pkgsrc/ einen Baum von Kategorien und dadrin die einzelnen Anwendungen mitsamt Beschreibung in Textdateien. Benutzen tut man pkgsrc einfach mit 'make', das sich die Sourcen und Abhängigkeiten von verschiedenen ftp-Servern holt (der rotiert oder so) und sie mit 'make package' einfach als Paket in einen bestimmten Pfad installiert (/usr/pkg ist Standard).
Das ganze funktioniert erstaunlich gut, auch abgefahrenere Sachen (Gnome-Anwendungen ;) lassen sich so sehr einfach selber installieren.
Die Linux-Emulation funktioniert gut, die Installation von Opera hat sich die Pakete für die Linux-Emuliation mitgezogen und fertig. Mit der Konfiguration vom Linux-Zeug bin ich noch nichtmal in Berührung bekommen, aber der Guide legt nahe, dass auch das nicht sehr schwer sein sollte.


Fazit:
Naja, was gibt es groß zu berichten? Ich habe keinen Kernel selber kompiliert, bin also mit Kernelsachen nicht so sehr in Kontakt gekommen.
Die Paketverwaltung ist wirklich sehr nett. Man merkt dem System auch einfach an, dass vieles aus einer Hand kommt, alles wurde so schön erkannt und funktionierte einfach, ohne große Konfiguration.
Warum benutze ich es also nicht mehr?
Einmal habe ich es nicht hinbekommen, bash, urxvt, screen, vim und less so zu konfigurieren, dass sie alle die End- und Entf-Taste richtig benutzen und auch Umlaute direkt von der Tastatur nehmen. Mag meine Schuld sein, aber irgendwelche ungefixten Bugs gab's da auch.
Lösung wäre eventuell das Gnome-Terminal gewesen. Aber spätestens an dem Punkt war es mir zu nervig, mir jeden Mist selber zu kompilieren (ja, ich kann euch nicht leiden, Gentoo-User!).
Wirklich ausschlaggebend war aber, dass ich nicht meine UMTS- und Bluetooth-Karte nach dem Suspend nicht mehr einschalten konnte. Das ist eine Thinkpad-spezifische Sache, bei Linux macht man das über /proc/acpi/ibm/wan bzw. /proc/acpi/ibm/bluetooth, aber bei NetBSD habe ich dazu nichts gefunden.
Wäre das nicht gewesen, würde ich immer noch NetBSD benutzen und hätte das mit den Terminals schon irgendwie hinbekommen.

Wenn ich mir nochmal ein altes Notebook oder einen stationären Rechner anschaffe, wird da wohl NetBSD draufkommen, um weiterzuprobieren.


Ich kann es wirklich nur empfehlen, und wer kein Thinkpad mit UMTS- oder BT-Karte hat, wird wirklich seine Freude haben. Ist einfach mal was anderes...


/Edit: Na super, da haben wir diesen bescheuerten OSX-Präfix, der bisher 15 mal benutzt wurde, anstatt einfach einen Präfix BSD zu nehmen (wer MacOS aufm Thinkpad benutzt, wird schon wissen, worum's geht). Und ohne Präfix kann ich nichts einstellen... Dann halt OSX, dem kommt's nahe.
-> Dafür, OSX abzuschaffen udn dafür BSD zu nehmen. Hab auch schon mehr Leute mit Daemonen- als Apfel- oder X-Avatar gesehen.
 
Als ich noch nicht studierte, habe ich auch gerne mit *BSD rumexperimentiert. NetBSD war zwar gut, aber ich fand FreeBSD immer subjektiv für mich besser und passender =) Aber mein letztes FreeBSD war die Version rund um 4^^
 
Hm. Ich habe auch mal FreeBSD auf meinem T61 installiert, was *wesentlich* zuverlässiger lief als jedes Linux. Was aber vor allem an den beschissenen wlan Treibern unter Linux liegt. Der iwn aus FreeBSD 8 (damals noch pre-alpha) lief sowas von extrem stabil und brachte höhere Durchsatzraten als der jetzt schon seit Jahren in Entwicklung befindliche iwlagn.

Stromverbrauch kann ich bestätigen, der war unter BSD auch nicht höher als mit Linux. Vermutlich gibt es noch vor dem Release von Freebsd 8 einen amd64 Treiber von Nvidia, dann kommt das wieder auf mein Thinkpad drauf.

Die BSD's sind schon eine feine Sache, kernel kompilieren ist da einfach nur Kinderkram, total trivial (musste ich tun, um den debug Kram loszuwerden). Alles läuft Rocksolid :)


Bluetooth Probleme hatte ich mit FreeBSD übrigens nicht.. Auch nicht nach dem ootb funktionierenden Suspend (ja, das ist durchaus genial!)

Was hat dich eigentlich dazu bewogen NetBSD zu nehmen, und nicht FreeBSD oder OpenBSD? Ich bin mit der BSD Sache nicht allzusehr bewandert, weiss nur dass FreeBSD eben das verbreitetste ist und recht schnell neue Sachen adaptiert..
 
Hm, wie hast du denn die Karte wieder aktiviert? Habe alle sysctls durchgeforstet und lange gesucht. Hab aber dazu nichts gefunden, mir fehlten aber auch gute Suchbegriffe. Im Endeffekt immer Linux-Lösungen, wo irgendwo mal das Wort "netbsd" vorkam (meist in der Navigation).

Kernel kompilieren ist ja nun bei Linux auch nicht schwer...
make, make modules_install (oder gleich make all), Kernel kopieren [und danach evtl noch lilo draufbügeln]. Konfiguration ist auch bei BSDs imho nicht sehr trivial bzw. man muss schon wissen, was man tut.

Den iwlagn von Linux fand ich acuh zum Kotzen, deswegen war ich so begeistert, dass er unter NetBSD ootb lief. Seit ich dann aber auf Slackware 13.0 und nen 2.6.30.5 geupgradet hatte, läuft die Karte auch unter Linux super. Keine Ahnung, wie das vorher aussah bei NetBSD, aber zwischen Slackware 13.0 und NetBSD 5.0.1 liegen nur wenige Tage/Wochen.

Ich wollte halt, wie gesagt, mal was neues ausprobieren. OpenBSD hatte mich einfach abgeschreckt. Die Community davon ist seltsam und mir kam schon die Doku krass arrogant vor.
FreeBSD finde ich zwar interessant, aber da ist die Standardinstallation größer (dafür fehlt eben bei NetBSD einiges) und ich bekomme damit eh demnächst zu tun (ebenso OpenBSD).
Dazu kommt, dass ich von jemandem mal die Aussage hörte, NetBSD habe wohl saubereren Code (da er portabler sein muss) und ich bin auch schon so schon lange davon fasziniert, das OS überall zu installieren, wenn man es denn wollte (und könnte).
Auf dem 240 habe ich auch NetBSD drauf. Hier war der Grund, dass das einzige BSD-Derivat, das ich als fertiges Image mit normalem Dateisystem finden konnte (die Distro nennt sich picoBSD). Musste so sein, da ich ohne anderen BSD-Rechner kein BSD auf einer fremden Platte installieren konnte und das 240 von nirgendwo booten kann (außer Floppy, und das wär mir zu viel Bastelei). Und was mir da begegnet ist, das fand ich schon sehr nett, dass ich das ganze acuh mal produktiver auf dem Desktop testen wollte.
Und außerdem hat NetBSD das coolste Logo. ;-)
 
[quote='schrank21',index.php?page=Thread&postID=653996#post653996]Hm, wie hast du denn die Karte wieder aktiviert? Habe alle sysctls durchgeforstet und lange gesucht. Hab aber dazu nichts gefunden, mir fehlten aber auch gute Suchbegriffe. Im Endeffekt immer Linux-Lösungen, wo irgendwo mal das Wort "netbsd" vorkam (meist in der Navigation).[/quote]
Wenn ich das noch wüsste. hm. Bald werd ichs ja sehen :D

Kernel kompilieren ist ja nun bei Linux auch nicht schwer...
make, make modules_install (oder gleich make all), Kernel kopieren [und danach evtl noch lilo draufbügeln]. Konfiguration ist auch bei BSDs imho nicht sehr trivial bzw. man muss schon wissen, was man tut.
kopieren brauchste nichtmal, make install machts. Wie gesagt, ich hab auch kein Problem den Linux kernel zu confen und zu kompilieren, habe bestimmt schon locker 300-500 kernels gebaut und experimentiert (ja als Schüler hatte man Zeit), die Konfiguration ist unter FreeBSD ein gutes Stück trivialer finde ich.

Den iwlagn von Linux fand ich acuh zum Kotzen, deswegen war ich so begeistert, dass er unter NetBSD ootb lief. Seit ich dann aber auf Slackware 13.0 und nen 2.6.30.5 geupgradet hatte, läuft die Karte auch unter Linux super. Keine Ahnung, wie das vorher aussah bei NetBSD, aber zwischen Slackware 13.0 und NetBSD 5.0.1 liegen nur wenige Tage/Wochen.
Ich habe unter FreeBSD immer einen höheren Datendurchsatz gehabt als mit dem iwlagn und vor allem war die Verbindung viel stabiler. Dass die kernelpanics ausblieben muss man wohl nicht extra erwähnen :D

Ich wollte halt, wie gesagt, mal was neues ausprobieren. OpenBSD hatte mich einfach abgeschreckt. Die Community davon ist seltsam und mir kam schon die Doku krass arrogant vor.
FreeBSD finde ich zwar interessant, aber da ist die Standardinstallation größer (dafür fehlt eben bei NetBSD einiges) und ich bekomme damit eh demnächst zu tun (ebenso OpenBSD).
Dazu kommt, dass ich von jemandem mal die Aussage hörte, NetBSD habe wohl saubereren Code (da er portabler sein muss) und ich bin auch schon so schon lange davon fasziniert, das OS überall zu installieren, wenn man es denn wollte (und könnte).
Auf dem 240 habe ich auch NetBSD drauf. Hier war der Grund, dass das einzige BSD-Derivat, das ich als fertiges Image mit normalem Dateisystem finden konnte (die Distro nennt sich picoBSD). Musste so sein, da ich ohne anderen BSD-Rechner kein BSD auf einer fremden Platte installieren konnte und das 240 von nirgendwo booten kann (außer Floppy, und das wär mir zu viel Bastelei). Und was mir da begegnet ist, das fand ich schon sehr nett, dass ich das ganze acuh mal produktiver auf dem Desktop testen wollte.
Und außerdem hat NetBSD das coolste Logo. ;-)
Ja das Logo ist echt das coolste :D Dass der Code sauberer ist, glaube ich jetzt nicht unbedingt, da die BSD's untereinander den Code in vielen Teilen austauschen. Der iwn Treiber z.B. ist von OpenBSD.

Ich denke dass ich auf meine alte HDD mal wieder FreeBSD oder NetBSD installiere, der nouveau läuft da mittlerweile auch sehr gut.
 
  • ok1.de
  • thinkstore24.de
  • Preiswerte-IT - Gebrauchte Lenovo Notebooks kaufen
Zurück
Oben