Zwar arbeitet Linux heute auf vielen Notebooks problemlos, doch um das System perfekt zu konfigurieren und auszureizen gilt es noch an einigen Stellschrauben zu drehen.
Mobile Computer gewinnen nicht zuletzt aufgrund ihrer rasant gestiegenen Leistungsfähigkeit immer mehr an Beliebtheit. Längst eignen Sie sich auch für sehr anspruchsvolle Aufgaben wie etwa Video-Encoding oder CAD. Doch die meist speziell für den mobilen Einsatz entwickelte Hardware der Geräte birgt für Linux-Anwender so manche Tücken.
Aktuelle Mobilcomputer wandern in aller Regel mit einem Betriebssystem von Microsoft über den Ladentisch. Große Hersteller liefern gelegentlich auch Geräte mit einem DOS-Derivat oder ganz ohne Betriebssystem aus. Solche Notebooks gibt es allerdings meist exklusiv nur für Bildungs- und Forschungseinrichtungen, Privatanwender oder Geschäftskunden bleiben außen vor.
Zudem scheuen die Hersteller oft die Mühe, für ihre Consumer-Laptops auch Linux-Treiber bereitzustellen. Daher kommt es insbesondere bei Geräten mit aktueller Technik regelmäßig vor, dass unter Linux die Unterstützung für einzelne Komponenten fehlt. Hier springen oft freie Projekte in die Bresche und entwickeln entsprechende Module, sodass man zumindest nach einer gewissen Zeit die betroffene Hardware dann auch unter dem freien Betriebssystem nutzen kann. Für den Linux-Enthusiasten ist der Kauf eines solchen Gerätes jedoch stets mit mühseliger Treiber- und Tool-Suche verbunden. Letztlich besteht immer die Gefahr, dass sich einzelne Komponenten gar nicht zur Mitarbeit unter Linux bewegen lassen.
Es gibt auch Händler, die Notebooks mit vorkonfiguriertem Linux anbieten [1]. Dabei versehen sie meist verbreitete Distributionen mit den entsprechenden Hardware-Treibern. Hier entfällt die lästige Suche nach Modulen im Internet, auch Einsteiger kommen mit solchen Geräten auf ihre Kosten. Teils handelt es sich bei den angebotenen Notebooks um Geräte, die der jeweilige Händler exklusiv anbietet, teils jedoch auch um Systeme großer Hersteller, auf denen er Linux vorinstalliert. Oft fehlt den Händlern jedoch das Know-How, um die Geräte wirklich ausgewogen zu konfigurieren. Dabei gilt die Faustregel: Je anspruchsvoller die Hardware, umso größer die Zahl der Stolpersteine.
Problemfelder
Notebooks weisen im Vergleich zu Desktop-Systemen eine deutlich höhere Komplexität der Hardware auf. Oft bringen sie schon ab Werk Komponenten mit, die man bei Desktops teuer nachkaufen muss. Hier reicht die Palette von Authentifizierungssensoren über Firewire-Controller bis hin zu UMTS-Steckkarten.
Linux bietet zwar einen permanent wachsenden Bestand an Treibern, doch tauchen neue Entwicklungen für aktuelle Hardware in vielen Distributionen erst mit einer gewissen zeitlichen Verzögerung auf. Daher empfiehlt es sich, vor dem Kauf eines Notebooks die Kompatibilität des Geräts zum freien Betriebssystem mithilfe einer aktuellen Live-Distribution zu prüfen.
Besonders gut eignen sich dazu Systeme wie Knoppix [2], die darauf ausgelegt sind, mit möglichst vielen Hardware-Komponenten zu harmonieren. Im Menü Start | Systemwerkzeuge stellt Knoppix das Programm System Profiler and Benchmark bereit, das einen genauen Überblick über die erkannte und ins Betriebssystem eingebundene Hardware bietet. Links im Programmfenster listet das Tool im Reiter Kernel Modules die geladenen Hardware-Treiber auf, in den Kategorien Devices und Network zeigt es interessante Informationen zum Computersystem (Abbildung 1).
Da Knoppix seit Jahren eine der besten Erkennungsroutinen für Hardware jeglicher Art bietet, erhalten Sie mit dieser Distribution einen sehr zuverlässigen Überblick, für welche Komponenten eines Notebooks Linux Unterstützung bietet.
Hybride Grafik
Erfreulicherweise hat sich der Support für Grafikkarten unter Linux in den letzten Jahren sehr verbessert. Trotzdem kommt es speziell bei Notebooks mit Hybrid-Grafik gelegentlich noch zu Problemen. Solche Systeme bringen zwei komplette Grafikeinheiten mit.
Die einfachere, integrierte GPU nutzt vorhandenen Arbeitsspeicher zur Bilddarstellung und kommt bei weniger rechenintensiven Aufgaben zum Zug. Sie erwärmt sich im Betrieb nur wenig und spart Energie ein. Zusätzlich verfügt das Notebook über eine leistungsfähige GPU mit eigenem Grafikspeicher. Sie schaltet sich nur dann zu, wenn die integrierte Grafikkarte mit rechenintensiven Aufgaben überfordert wäre.
Um eine solche Hybrid-Grafik korrekt anzusprechen, braucht das Betriebssystem entsprechende Treiber. Unter Linux gibt es mittlerweile mehrere Projekte, die eine bessere Unterstützung von Hybrid-Grafik anstreben. Für Notebooks mit AMD/ATI-Grafik und zusätzlich integrierter Intel-GPU existieren gleich zwei mögliche Lösungen.
Der Hersteller AMD/ATI liefert den proprietären Catalyst-Treiber [3]. Er empfiehlt sich aufgrund der problemlosen Installation für alle Anwender, die sofort ohne Einarbeitung die Hybrid-Grafik automatisch nutzen möchten. Legen Sie Wert darauf, möglichst weitgehend freie Software einzusetzen und verwenden Ubuntu oder eines seiner Derivate, so steuern Sie die Hybrid-Hardware mit dem in jeder Linux-Distribution vorhandenen radeon-Treiber in Kombination mit dem PRIME-Kernelmodul ansteuern. PRIME sorgt für gute Performance, setzt allerdings zwingend Ubuntu 12.10 oder einen seiner Ableger voraus, da die verbesserten Kernelmodule in älteren Versionen noch nicht verfügbar waren. Zur Verlängerung der Akkulaufzeit nutzen Sie gegebenenfalls zusätzlich das in neueren Kerneln standardmäßig aktivierte Kernelmodul vga_switcheroo, welches das Umschalten zwischen den Grafikeinheiten gestattet. Zusätzlich lässt sich mit der Software auch eine der GPUs komplett abschalten.
Auf Rechnern mit Nvidia-Grafikkarte und einer zusätzlichen integrierten Intel-GPU sorgt die Optimus-Technologie [4] für das nahtlose Umschalten zwischen den einzelnen Grafikkarten. Nvidias proprietäre Linux-Treiber unterstützen diese jedoch bislang nicht. Um Optimus zu nutzen, bietet sich unter Ubuntu und dessen Derivaten die Kombination aus dem freien Nouveau-Treiber und PRIME an.
Eine Alternative für die meisten Distributionen bietet Bumblebee [5], das bei rechenintensiven Applikationen ein Umschalten auf die dedizierte Grafikeinheit ermöglicht. Bumblebee nutzt dazu jedoch einen zweiten X-Server und verwendet für den Datenaustausch zwischen den beiden X-Servern VirtualGL, woraus in bestimmten Anwendungsszenarien deutliche Geschwindigkeitseinbußen resultieren.
Daher entsteht mit Primus [6] derzeit ein weiteres Backend für Bumblebee, das VirtualGL ersetzen und durch das Reduzieren der Kommunikation zwischen den beiden X-Servern die Arbeitsgeschwindigkeit von Bumblebee signifikant erhöhen will. Es steht zudem zu erwarten, dass Nvidia in absehbarer Zeit zusätzlich eigene Treiber für Linux bereitstellt, die Optimus unterstützen [7].
UMTS
Immer mehr Notebooks bringen bereits ab Werk UMTS-Karten mit, die einen bequemen drahtlosen Zugang ins Internet per herkömmlicher SIM-Karte versprechen. Externe Karten für den USB-Anschluss oder den CardBus/ExpressCard-Slot verfügen über eine eingebaute Antenne. Interne Boards kommen in der Regel in Gestalt einer Mini-PCI-Express-Karte und nutzen oft Antennen, die im Display des Notebooks verbaut sind.
Neben einem Kernelmodul, das jede Karte zum Betrieb benötigt, gilt es in den meisten Fällen auch noch eine proprietäre Firmware zu laden. Sie befindet sich meist auf mitgelieferten Treiber-CDs für andere Betriebssysteme oder lässt sich von der Hersteller-Website herunterladen. Die meisten Linux-Distributionen liefern aus rechtlichen Gründen keine Firmware-Dateien der Hersteller mit.
@:Im Internet gibt es Kompatibilitätslisten ([8],[9]), die vor dem Kauf einer UMTS-Karte oder bei einer anstehenden Aufrüstung erste Hinweise zur Kompatibilität unter dem freien Betriebssystem liefern. Die Firmware-Dateien müssen Sie anschließend – sofern die verwendete Distribution sie nicht beinhaltet – ins Verzeichnis /lib/firmware/ kopieren, um die Initialisierung des Geräts zu ermöglichen.
Nach korrekter Initialisierung des UMTS-Modems finden Sie im Netzwerk-Manager der Distribution in aller Regel den Zugang per WWAN gelistet. Meist können Sie diesen auch sehr bequem konfigurieren, da viele Distributionen die Zugangsdaten der Provider bereits hinterlegt haben. Somit müssen Sie weder Modembefehle noch DNS-Serveradressen manuell eingeben (Abbildung 2).
Fingerübungen
In vielen hochwertigen Notebooks dienen Fingerabdrucksensoren zur Authentifizierung des Anwenders. Damit ersetzt ein Fingerabdruck die Passworteingabe – nicht nur beim Login, sondern auch im laufenden Betrieb bei der Wahrnehmung administrativer Aufgaben. Für viele Modelle der beiden führenden Hersteller entsprechender Sensoren, SGS Thomson Microelectronics und AuthenTec Inc., bringt Linux schon von Haus aus passende Treiber mit.
Zudem stehen mit Thinkfinger [10], Thinkfinger GUI [11] sowie Fprint [12] native Linux-Programme zur Nutzung der Fingerabdrucksensoren bereit. Da jedoch nicht alle Sensortypen der jeweiligen Hersteller unterstützt werden, empfiehlt es sich auch hier, vorab einen Blick in die Liste der vorhandenen Treiber [13] zu werfen.
ACPI und Festplatten
Nach wie vor stellen bestimmte ACPI-Einstellungen Linux vor Probleme. Insbesondere Notebook-Festplatten können dabei durch ein zu aggressiv eingestelltes Power-Management für die Massenspeicher auf Dauer Schaden nehmen. Grund hierfür ist die eigentlich positive Absicht, durch Abschalten der Festplattenmotoren im Leerlauf Energie einzusparen.
Da jedoch viele Festplattenhersteller beim Implementieren von Energiesparmaßnahmen eigene Wege gehen und die genauen Spezifikationen nicht offenlegen, fällt es den Entwicklern freier Software sehr schwer, eine dem jeweiligen Gerät adäquate Lösung zu finden. Daher kommt es noch immer oft vor, dass sich Festplatten im Akkubetrieb des Notebooks ständig ab- und wieder einschalten, was sie einem deutlich erhöhten mechanischen Verschleiß aussetzt. Hier hilft nur manuelles Nacharbeiten, das jedoch recht unkompliziert ausfällt.
Sie müssen dazu zunächst lediglich das Paket smartmontools installieren, das alle gängigen Distributionen in ihren Repositories führen. Enthält der Paketfundus der verwendeten Distribution die Smartmontools nicht, greifen Sie zu vorkompilierten Paketen aus dem Web [14]. Dort finden sich auch verschiedene Versionen von Gsmartcontrol, mit dessen Hilfe Sie den “Gesundheitszustand” Ihrer Festplatte bequem grafisch unter Gnome und XFCE ermitteln.
Nach dem Einrichten der Smartmontools rufen Sie die aktuellen Betriebsdaten der verbauten Festplatte im Terminal mit administrativen Rechten ab:
# smartctl -a /dev/Laufwerk
In der Ausgabe des Programms finden Sie neben technischen Angaben eine übersichtliche Tabelle mit Betriebszuständen (Abbildung 3). Hier interessieren vor allem die Werte in der Zeile Load_Cycle_Count: Je höher der in der letzten Spalte RAW_VALUE angegebene Wert ausfällt, desto öfter wurden die Schreib/Leseköpfe der Festplatte im Ruhezustand geparkt.
Die Hersteller von Notebook-Festplatten geben meist 30?000 solcher Parkzyklen als für den Massenspeicher unproblematisch an. Fahren jedoch die Köpfe aufgrund fehlerhafter ACPI-Tabellen und damit einhergehender Fehlinterpretation durch das Betriebssystem bereits nach wenigen Sekunden Inaktivität in den Parkbereich, ist diese zunächst hoch erscheinende Zahl von Zyklen schnell erreicht. Die Gefahr eines Ausfalls der Festplatte und damit auch von Datenverlusten steigt dann rapide an.
Um erhöhtem Verschleiß und mechanischen Ausfällen vorzubeugen, bietet Linux mithilfe des Programms Hdparm [15] die Option, ein zu aggressiv eingestelltes Power-Management abzuschalten. Sie geben dazu als Root im Terminal folgenden Befehl ein:
# hdparm -B 255 /dev/Laufwerk
Anschließend fahren die Festplattenköpfe selbst bei längeren Ruhepausen nicht mehr in die Parkposition, auch der Motor schaltet sich nicht mehr ab. Dadurch kann sich der Energieverbrauch der Festplatte im Dauerbetrieb sogar vermindern, sofern Ihre Festplatte aufgrund der implementierten ACPI-Tabellen zuvor vom sogenannten “Festplatten-Bug” [16] betroffen und ständig mit dem Parken und Wiederanfahren beschäftigt war.
Hdparm akzeptiert für die Option -B ganzzahlige Werte zwischen 1 und 255, wobei eigentlich jeder Wert gegenüber der nächstkleineren Zahl eine um fünf Sekunden längere Betriebsdauer des Massenspeichers im Leerlauf bedeuten soll. Da jedoch viele Festplattenhersteller ihre ACPI-Tabellen nicht normenkonform anlegen, kommt es häufig vor, dass Massenspeicher sich nicht an diese Fünf-Sekunden-Intervalle halten. In einem solchen Fall empfiehlt es sich, mit den Werten bei Hdparm etwas zu experimentieren.
Da die Einstellungen zum Power Management der Festplatte lediglich bis zum nächsten Neustart des Notebooks aktiv bleiben, sollten Sie den Befehl dauerhaft in die Startroutine einbinden. Die Vorgehensweise dazu fällt je nach Distribution unterschiedlich aus. Unter Fedora, Mandriva, Slackware sowie deren Derivaten tragen Sie die Hdparm-Befehlszeile in die Datei /etc/rc.d/rc.local ein. Unter OpenSuse ändern Sie den entsprechenden Eintrag in der Datei /etc/init.d/boot.local ab. Unter Ubuntu und dessen Varianten fügen Sie die entsprechende Zeile in die Datei /etc/hdparm.conf ein.
Um zu prüfen, ob die Festplatte sich zukünftig wirklich so verhält wie gewünscht, rufen Sie nach dem nächsten Start des Systems im Terminal mit Administratorrechten folgende Befehlsfolge auf:
# hdparm -I /dev/Laufwerk | grep "Advanced power"
Sie erhalten anschließend in der Ausgabe den Wert für das Power-Management-Level beziehungsweise den Betriebszustand des Power-Managements der Festplatte angezeigt (Abbildung 4).
Kerniges
In letzter Zeit sind im Kontext mit unterschiedlichen Kerneln vermehrt neue Begriffe aufgetaucht. Mancher Anwender musste feststellen, dass sich seine altbekannte Linux-Distribution plötzlich in einer neuen Version nicht mehr auf seinem Computersystem installieren ließ, weil sie einen sogenannten PAE-Kernel verwendet. Auch von BFS-Kerneln war bei manchen Distributionen die Rede.
PAE – das Kürzel steht für Physical Address Extension – ermöglicht es, auf einem 32-Bit-System mehr als 4 GByte Arbeitsspeicher zu adressieren, wie dies ein 64-Bit-System von Haus aus kann. Einige in Netbooks verbaute Intel-Atom-CPUs sowie die meisten älteren Centrino-Prozessoren der ersten Generation beherrschen jedoch hardwareseitig kein PAE, sodass sich ein Betriebssystem mit PAE-Kernel auf Notebooks mit diesen CPUs nicht installieren lässt. Obendrein bietet kein einziger älterer Desktop- und Notebook-Chipsatz überhaupt die Option, mehr als 4 GByte Arbeitsspeicher in den Rechner einzubauen.
Die Kürzel CFS und BFS dagegen beziehen sich auf im Kernel verwendete Scheduler, also jene Komponenten des Betriebssystemkerns, welche die Priorisierung von Prozessen regeln und damit die CPU-Zeit zwischen diesen aufteilen. Der von vielen Distributionen eingesetzte CFS-Kernel (“Completely Fair Scheduler”) harmoniert mit sämtlicher Hardware und weist keine sinnlosen Fallstricke auf.
Neuerdings setzen manche Distributionen einen BFS-Kernel ein. Dieser arbeitet ebenfalls auf allen gängigen Maschinen aktueller und älterer Bauart, bietet jedoch durch seinen modifizierten “Brain Fuck Scheduler” [17] auf älteren Systemen einen deutlich spürbaren Leistungsgewinn. Zu den Distributionen, die einen BFS-Kernel einsetzen, gehören Sabayon, PCLinuxOS, Porteus und Zenwalk. Der BFS-Kernel trägt zudem durch eine gleichmäßigere Lastaufteilung insbesondere bei Notebooks dazu bei, die Akkulaufzeit zu erhöhen. Somit bietet es sich an, den bei manchen Distributionen optional nachzuinstallierenden BFS-Kernel vor allem auf mobiler Hardware zu nutzen.
Fazit
Linux lässt sich auf den meisten gängigen Mobilcomputern im Prinzip schneller und einfacher einrichten als andere Betriebssysteme, bei denen Sie erst mühevoll einzelne Treiber von CD nachinstallieren müssen.
Nur noch relativ wenige Hersteller verweigern sich dem Linux-Markt, und im Zweifelsfall springen oft freie Projekte bei der Treiberentwicklung in die Bresche, sodass sich selbst exotische Hardware meist auch unter dem freien Betriebssystem ansprechen lässt. Bei der Konfiguration einzelner Komponenten gibt es dennoch nach wie vor Raum für Verbesserungen. Auch der Einsatz eines Kernels mit innovativen Scheduler kann die gefühlte Leistung des Computers deutlich steigern.
Das einmalige individuelle Anpassen der Software für die verbauten Komponenten verspricht zudem nicht nur einen Leistungsgewinn, sondern kann auch die Lebensdauer des Gerätes erhöhen.
Infos
[1] Test Tuxedo-Notebooks: Jörg Luther, “Herausgeputzt”, LU 03/2013, S. ###, https://www.linux-community.de/28270
[2] Knoppix: http://www.knoppix.org
[3] Catalyst-Treiber: http://support.amd.com/de/gpudownload/linux/Pages/radeon_linux.aspx
[4] Optimus: http://www.nvidia.de/object/optimus_technology_de.html
[5] Bumblebee: http://bumblebee-project.org/
[6] Primus: https://github.com/amonakov/primus
[7] Nvidia-Optimus-Treiber: http://www.linux-magazin.de/NEWS/Nvidia-werkelt-an-Optimus-Treiber
[8] Kompatibilität von WWAN-Karten: http://tuxmobil.org/linux_on_laptops_with_umts_cards.html
[9] Hardware Compatibility List: http://linuxhcl.com
[10] Thinkfinger: http://thinkfinger.sourceforge.net
[11] Fingerprint: http://www.n-view.net/Appliance/fingerprint/
[12] Fprint: http://www.freedesktop.org/wiki/Software/fprint/
[13] Unterstützte Sensoren: http://www.freedesktop.org/wiki/Software/fprint/libfprint/Supported%20devices
[14] Smartmontools-Pakete: http://sourceforge.net/apps/trac/smartmontools/wiki/Packages
[15] Hdparm: http://hdparm.sourceforge.net
[16] Festplatten-Bug: http://wiki.ubuntuusers.de/Notebook-Festplatten-Bug
[17] BFS-Kernel: https://www.linux-community.de/Internal/Nachrichten/Con-Kolivas-stellt-neuen-BFS-Scheduler-vor









