Archiv der Kategorie: Linux

Angry Search (Dateisuche)

Die Dateisuche in Linux-Dateimanagern genügt für gelegentliche Suchläufe, für häufige Suche in großen Archiven ist sie zu langsam. Das Python-Script „Angry Search“ kann hier aushelfen. Dieser Beitrag bespricht Anspruch und Realität des Tools.

Angry Search hat die erklärte Absicht, das Vorbild „Everything“ unter Windows zu kopieren. Das ist ein ziemlich hoher Anspruch, denn die Freeware Everything gilt Windows-Kennern seit vielen Jahren als Muss: ein stupend schnelles Suchtool mit Suchoperatoren und Serverkomponente, das Millionen Dateien in Millisekunden filtert (www.voidtools.com). Angry Search leistet eine vergleichbar schnelle Instant-Suche beim Tippen der Suchbegriffe, bedarf aber mehr Pflege als sein Windows-Vorbild.

Beachten Sie, dass Angry Search ein reines Dateiwerkzeug ist, das nach Pfaden und Namen sucht, nicht nach Dateiinhalten. Das entspricht seinem Vorbild, das zwar neuerdings optional auch Dateiinhalte durchsuchen kann, dabei aber seinen Leistungsfokus aus den Augen verliert.

Download und Einrichtung

Angry Search ist ein Python-Script (mit drei weiteren Python Hilfsscripts) und somit unter Linux überall lauffähig, da ein Python-Interpreter zum Linux-Standard gehört. Unter https://github.com/DoTheEvo/ANGRYsearch/releases findet sich der Download als zip– oder tar.gz-Archiv, das Sie nach dem Download zunächst an beliebiger Stelle entpacken. Im Terminal suchen Sie dann den entpackten Ordner auf, schalten das kleine Install-Shellscript mit

chmod +x install.sh

ausführbar und starten dieses dann mit diesem Befehl:

sudo sh install.sh

Das war’s schon: Das Script kopiert lediglich einige Python-Scripts nach „/usr/share/angrysearch“ und legt den Link unter /usr/bin/angrysearch.py an. Daher ist spätere eine De-Installation mit dem manuellen Löschen dieser Dateien erledigt.

Nach der Einrichtung ist Angry Search als „ANGRYsearch“ im Hauptmenü oder im Gnome-Dash erreichbar, aber auch im Terminal über den Befehl angrysearch. Download-Archiv und der entpackte Ordner können danach im Prinzip gelöscht werden.

Neben dem benötigten Python-Interpreter hat das Tool nur zwei abhängige Pakete: Das Paket xdg-utils ist auf praktisch jeder Desktop-Distribution anzutreffen, das Paket python3-pyqt5 meistens auch. Sollte nach der Einrichtung der Aufruf scheitern, wiederholen Sie den Start im Terminal mit dem Befehl angrysearch, um die Ursache herauszufinden. Unter Ubuntu Gnome erhielten wir etwa die Meldung:

„No module named ‚PyQt5′“

In diesem Fall fehlt das genannte Paket python3-pyqt5, das Sie mit

sudo apt install python3-pyqt5

schnell nachinstalliert haben.

Suchoptionen und Konfiguration

Beim ersten Aufruf erhalten Sie einige Infos über die Konfigurationsdateien und die fundamentale Nutzung. Diese Startinfo lässt sich jederzeit wiederholen, indem der Dateiindex gelöscht oder der Suchmodus geändert wird. Konfiguration und Index liegen benutzerbezogen unter „~/.config/angrysearch/angrysearch.conf“ und „~/.cache/angrysearch/angry_database.db“. Den Index erstellen Sie im Tool mit der Schaltfläche „update“. Dabei berücksichtigt Angry Search standardmäßig das komplette Dateisystem. Die Indexierung erfolgt auf lokalen Datenträger extrem schnell, bei eingehängten Netzwerkressourcen kann der Vorgang zwei, drei Minuten dauern.

Wenn Sie bestimmte Pfade ausschließen wollen, tragen Sie diese in die angrysearch.conf nach

directories_excluded=

ein – und zwar mit Leerzeichen getrennt (etwa „directories_excluded=/bin /var /etc“). Umgekehrt müssen Sie dafür sorgen, dass der Index tatsächlich alle Ressourcen erfasst, die Sie durchsuchen möchten. Diese müssen also vor dem Klick auf „update“ ordnungsgemäß gemountet sein.

Anders als beim Vorbild Everything ist der Index statisch, muss also von Zeit zu Zeit erneuert werden. Der Entwickler empfiehlt einen Cronjob, wobei einfach das Hilfstool angrysearch_update_database.py alle sechs Stunden gestartet wird. Der Eintrag (nach crontab -e) sieht dann wie folgt aus:

0 */6 * * *
/usr/share/angrysearch/angrysearch_update_database.py

Im Prinzip reicht aber auch im grafischen Tool ein gelegentlicher Klick auf „update“, bevor Sie eine Kaffeepause machen.

Standardmäßig gilt eine einfache UND-Syntax, wobei Angry Search praktisch ohne Verzögerung auf Tippeingaben reagiert: Auf „büro steuer“ wird das Tool vom ersten Buchstaben an das Datenmaterial sofort auf die passenden Dokumente filtern. Teilstrings von Wörtern berücksichtigt das Script nur, wenn Sie das Häkchen rechts vom Suchfeld abschalten. Das Häkchen steht für den schnellsten Modus und ist der Standard, würde aber bei der Eingabe „büro teuer“ keine Dateien zu „Steuer“ finden.

Angry Search hat nach unserer Kenntnis keine darüber hinausgehenden Möglichkeiten mit „NOT“- oder „OR“-Operatoren – so jedenfalls mit dem Standardsuchfeld. Wer höhere Ansprüche hat, muss auf die komplexen Regular Expressions ausweichen, die das Tool mit der Taste F8 anbietet: Nach F8 erhält das Suchfeld eine Orange-Färbung und akzeptiert Regex-Syntax, etwa eine OR-Suche mit „händel|haendel“ oder etwas komplexer:

(händel|haendel).*trio

Angry Search ist auch im Regex-Modus richtig schnell, jedoch haben vermutlich nur wenige Anwender die Kompetenz, aus dem Handgelenk korrekte Regex-Abfragen zu tippen.

Die im Fenster angezeigten Suchergebnisse können Sie einfach per Doppelklick mit dem zugeordneten Standardprogramm laden. Außerdem gibt es nach Rechtsklick die Option „Open Path“, um das Verzeichnis der gewählten Datei im Dateimanager anzuzeigen. Je nach Distribution kann es hier eventuell Korrekturbedarf geben: Beim von uns zufällig genutzten Linux Mint Mate verabschiedete sich Angry Search regelmäßig kommentarlos, wenn für ein Suchergebnis „Open Path“ gewählt wurde. Offensichtliche Ursache war, dass das Paket xdg-utils den Dateimanager Nemo an Angry Search meldet, der Dateimanager in dieser Mint-Variante aber „Caja“ heisst. Dies lässt sich in der Konfigurationsdatei angrysearch.conf über die Zeile

file_manager=caja

leicht korrigieren, sofern man die Ursache erkannt hat.

Fazit: Eine empfehlenswerte Systemergänzung

Wer eine Menge Dateien an Bord hat und eine halbwegs systematische Namensgebung für Ordner und Dateien, sollte sich Angry Search einrichten. Das Tool ist ein phänomenaler Zeitsparer. Ein Beispiel: Die Suche mit dem Dateimanager nach der UND-Verknüpfung „metallica reed“ dauerte mehr als eine Minute, bis sie die Lulu-Suite dieser Band ans Licht beförderte. Etwa doppelt so schnell arbeitet ein find-Befehl im Terminal – mit allen Nachteilen der mühsamen Eingabe und Weiterverarbeitung der Suchergebnisse. Angry Search? Das Tool zeigt die Resultate sofort – noch während des Eintippens. Dabei sollten die Standardeinstellungen im Alltag die besten Ergebnisse liefern, für eine Berücksichtigung von Teilstrings genügt es, das Häkchen neben dem Suchfeld zu deaktivieren. Die optionale Regex-Suche dürfte hingegen die meisten Anwender überfordern. Etwas Erfahrung sollte der Suchtool-Nutzer aber in jedem Fall mitbringen, damit die indexierten Orte stets ordnungsgemäß eingehängt sind, der Index aktuell bleibt (Crontab) und eventuelle Korrekturen in der Konfigurationsdatei (angrysearch.conf) keine Hürde darstellen.

Ob der Entwickler den Vergleich zu Everything suchen sollte, bleibt aber fraglich: Das Windows-Tool aktualisiert dynamisch, bietet erweiterte Suchoperatoren und sogar eine Client-Server-Komponente für die Suche übers Netzwerk.


Schlanke Konfiguration: Die wenigen Einstellungen der Konfigurationsdatei sind auf der Projektseite https://github.com/DoTheEvo/ANGRYsearch gut dokumentiert.


Linux für ältere Hardware

Zurück zur Übersichtsseite…

Mit Hunderten unterschiedlich spezialisierter Distributionen lädt Linux dazu ein, für ältere Geräte passende Systeme und Rollen zu finden. Oder für benötigte Aufgaben sogar gezielt ältere Hardware einzukaufen.

„Linux auf älterer Hardware“ ist ein facettenreiches Thema: Zunächst ist es ja so, dass leichtgewichtige Linux-Desktops und erst recht Server-Distributionen ohne Desktop sehr genügsam sind und daher auf älterer Hardware (5-10 Jahre) und alter Hardware (10-15 Jahre) klaglos laufen. Und dann gibt es ja auch noch Distributionen mit dem spezialisierten Fokus, richtig alte Hardware (15-20 Jahre) mit wenig Speicher und moosalten CPUs wiederzubeleben. Auch 32-Bit-CPUs und CPUs ohne PAE-Erweiterung werden nach wie vor unterstützt.

Ab einer CPU der Pentium-III-Klasse oder AMD Athlon und einem Arbeitsspeicher ab 512 MB (theoretisch ab 256 MB) finden Sie in jedem Fall eine Linux-Distribution, die Windows XP leistungstechnisch ersetzen kann. Generell kommt alles mit den schlanken XFCE- und LXDE-Desktops schwächeren Rechnern entgegen. Die betreffenden Ubuntu-Varianten heißen Xubuntu (mit XFCE) sowie das noch schlankere Lubuntu (mit LXDE/LXQT). Noch Ressourcen-schonender arbeiten Bodhi Linux und Puppy-Varianten.

Das theoretisch mögliche Recycling obsoleter Hardware ist aber letztlich ein Sport ohne Endorphine. Uns geht es hier um ältere Hardware, die unter Linux noch einen richtig guten Job macht. Dabei gibt es eine Reihe von Aspekten und Gegenanzeigen, die manches Altgerät dann doch zum Elektronikschrott erklären. Neben der Hardware geht es natürlich auch um die Aufgabe, die diese Hardware erledigen soll: Geräte, die an einer Desktop-Rolle scheitern, können in anderer Rolle zur Starbesetzung werden.

Platinen-PCs gegen ältere Netbooks/Notebooks

Beim direkten Vergleich solider älterer Hardware kehrt nach etlichen Jahren des Raspberry-Hypes inzwischen gesunder Pragmatismus ein: Man kann und sollte kleine Platinenrechner nicht zu beliebigen Serveraufgaben prügeln. Selbst der aktuellste Raspberry Pi 3 ist mit USB 2.0 und Fast Ethernet oder gedrosseltem Gigabit-Ethernet kein Favorit für die Rolle als Datenserver.

Netbooks und Notebooks haben bauartbedingte Vorteile: Kontrollmonitor, Tastatur, Maus sind ohne Fummelei jederzeit verfügbar. Auch die Stromversorgung für passiv angeschlossene USB-Datenträger ohne eigenen Netzadapter funktioniert zuverlässig, was bei Platinen nicht immer gegeben ist. Mit der oft gar nicht so kleinen Festplatte ab 160, 200 und bis 500 GB ist auch schon mal ein Basislaufwerk an Bord, das neben dem System die wichtigsten Daten aufnehmen kann.

Die Leistung typischer Atom-CPUs von Netbooks liegt mindestens im Bereich des jüngsten Raspberry 3, lediglich schnellste Platinen wie Odroid XU4 oder Asus Tinker Board schneiden im CPU-Benchmark etwas schneller ab. 10 Jahre alte Notebooks sind meistens leistungsstärker als die ARM-CPUs von Platinen. Hinzu kommt auf Notebooks eine vergleichsweise üppige RAM-Ausstattung mit oft 4 GB (Raspberry 1 GB, Netbooks 1-2 GB).

Der Trend: Während der Raspberry-Hype etwas abflaut, ist der dadurch gewachsene Serverbedarf im Heimnetz ungebrochen. Die Home-Admins halten aber vermehrt Ausschau nach älteren, aber soliden Notebooks und Netbooks als Hardware-Basis für den Linux-Server.

Netbooks: Ideal für Nebenrollen

Netbooks hatten 2007 bis 2010 eine kurze Blütezeit, die durch noch handlichere Tablets ab 2010 jäh beendet wurde. Hardwaretechnisch sind die kleinen Geräte komplette PCs, die aber für den Preis von etwa 250 bis 450 Euro gezielt mit kostengünstigen, leistungsschwächeren und stromsparenden Komponenten bestückt wurden. Typisch sind stromsparende Intel-Atom-CPUs (seltener Celeron) mit bis zu 1,66 GHz, 1 GB RAM (seltener 2 GB), drei USB-2.0-Ports, Fast-Ethernet, WLAN (802.11n), Audio-Chip (Mikro-Eingang und Lautsprecher-Ausgang), Kartenleser, kleines Display mit der Auflösung 1024×600 sowie VGA-Ausgang für einen sekundären Monitor (auch Dual-Monitor-Betrieb). Die mechanische Festplatte bietet meistens 160 bis 250 GB. Netbooks arbeiten zwar nicht lüfterlos, sind aber in Regel sehr leise – leiser als Notebooks. Der Stromverbrauch liegt auch bei Hochlast unter 20 Watt, im Leerlauf unter 10 Watt.

Mit diesen Eigenschaften erreicht oder schlägt ein altes Netbook die meisten aktuellen Platinenrechner. Der Fast-Ethernet-Durchsatz (100 MBit/s) lässt sich mit der Investition in einen USB-to-Ethernet-Adapter zusätzlich verbessern. Der Delock Adapter (ca. 21,50 Euro etwa bei www.reichelt.de) mit schnellem USB 3.0 und schnellem Gigabit-Ethernet kommt am USB-2.0.Port eines Netbooks immerhin auf 300 MBit/s – das entspricht dem gleichermaßen gebremsten Gigabit-Netzadapter beim jüngsten Raspberry 3 B+.

Als komplette Arbeits-Desktops werden Netbooks trotzdem nicht befriedigen. Zum Surfen kann aber ein solches Gerät noch genügen, wenn am Desktop gespart, also etwa ein Lubuntu (www.lubuntu.net) oder Bunsenlabs (www.bunsenlabs.org) gewählt wird. Zudem empfiehlt sich als Webbrowser ein Leichtgewicht, das vielleicht nicht alles kann, aber dafür schnell ist. Falkon (Qupzilla) ist hier ein sehr guter Kompromiss und in allen Standardpaketquellen verfügbar – entweder als Paket „falkon“ oder zumindest als Vorgängerpaket „qupzilla“.

Noch besser eignen sich solide Kandidaten wie ein Asus EEE für kleine Serverrollen im Netzwerk. Flaschenhals für den Dienst als Dateiserver ist USB 2.0: Mit dem bereits erwähnten USB-to-Ethernet-Adapter und damit erreichbaren 300 MBit/s sind aber Heimnetzansprüche in der Regel gut erfüllt. Überhaupt keine Gegenanzeigen gibt es, wenn das Netbook Aufgaben übernimmt, die kein hohes Datenaufkommen haben: Das kann etwa ein Mediawiki (benötigt komplettes LAMP-Paket mit Linux, Apache, Mysql und PHP, siehe www.mediawiki.org) oder ein Dokuwiki sein (benötigt Linux, Apache und PHP, siehe www.dokuwiki.org), das alle wichtigen Notizen, Adressen, Bilder im Heimnetz anbietet. Das kann aber auch eine Web-basierte Dokumentensuche mit dem Tool Recoll sein oder eine PDF-Bibliothek mit der Software Calibre.

Professionelles Renovieren („Refurbish“) von Netbooks scheint sich für Händler nicht zu lohnen. Gebrauchte Netbooks finden Sie praktisch nur über Ebay und private Kleinanzeigen. Die typischen Preise liegen zwischen 50 und 100 Euro. Beim Kauf eines gebrauchten Netbooks sollten Sie Atom-CPUs wie N270, N280 oder höher bevorzugen, ferner eine – allerdings seltene – RAM-Ausstattung mit 2 GB.

Homeserver für 200 bis 300 Euro: Dieses gebrauchte Thinkpad-Notebook L440 ist für etwa 200 Euro erhältlich und bringt alles mit, was ein schneller und zuverlässiger Linux-Server braucht.

Notebooks: Refurbished oder B-Ware als Datenserver

Mit soliden älteren Notebooks können selbst leistungsstarke Platinenrechner wie Odroid XU4 oder Banana Pro kaum mithalten. Neben den allgemeinen Vorteilen des Notebooks wie Display, Tastatur, Maus, Stromversorgung für USB kann das Notebook in der Regel die schnellere CPU und mehr RAM vorweisen. Lediglich der Stromverbrauch ist beim Notebook etwas höher: Nicht allzu alte Notebooks verbrauchen bis zu 25 Watt, sehr alte bis zu 40 Watt (Platinenrechner nur circa 4 bis 10 Watt).

Wer keinen Notebook-Oldie vorrätig hat, sondern ein gebrauchtes Gerät für eine Rolle als Datenserver gezielt erwerben will, sollte penibel auf die Input/Output-Komponenten achten. Ideal wäre USB 3.0 in Verbindung mit Gigabit-Ethernet. Fehlendes USB 3.0 lässt sich kaum kompensieren, langsameres Fast Ethernet (100 MBit/s) hingegen relativ leicht durch einen externen USB-to-Ethernet-Adapter mit Gigabit-Leistung.

Gute gebrauchte Notebooks, die alle diese Voraussetzungen mitbringen und sich mit i3-CPU aufwärts und 4 GB RAM aufwärts für Serveraufgaben ideal eignen, kosten typischerweise 150 bis 300 Euro. Solche Notebooks bieten viele Fachhändler an – zum Teil B-Ware mit leichten Mängeln, ferner Vorführgeräte sowie fachmännisch renovierte („refurbished“) Gebrauchtgeräte. Besonders zu empfehlen sind nach unserer Erfahrung die unverwüstlichen Thinkpads von Lenovo, ferner auch Pro Books oder Elitebooks von HP. Andere HP-Serien wie Pavilion sind hingegen qualitativ allenfalls ausreichend. Dell-Notebooks werden im Server-Dauerbetrieb gerne zu heiß.

Eine größere Auswahl finden Sie bei folgenden Händlern (Stand: Anfang 2019):

www.amazon.de (z. B. „Thinkpad gebraucht“ ab 150 Euro)

www.conrad.de („Refurbished“ oder „Vorführware“ ab 199 Euro)

www.pollin.de („Refurbished“ ab 229 Euro)

www.itsco.de/notebooks („B-Ware“ ab 179 Euro)

www.gebrauchtcomputer24.de/ (ab 89 Euro)

www.luxnote-hannover.de (ab 199 Euro)

www.esm-computer.de (ab 219 Euro)

Wer auf die Sicherheit, die der Kauf bei einem Händler bietet, verzichten kann, wird bei Ebay und Co noch günstigere Angebote finden.

Beachten Sie, dass der größte Schwachpunkt gebrauchter Notebook für den Einsatz als stationärer Linux-Server keine Rolle spielt – der Akku nämlich. Wenn Netbooks oder Notebooks im Dauerbetrieb an der Steckdose hängen, können Sie den Akku komplett entfernen. Das verringert auch den Stromverbrauch, weil das Gerät dann keine Veranlassung mehr hat, den Akku nachzuladen. Das Display, das ebenfalls nur eine Nebenrolle spielt und auch mit Pixelfehler für einen Server taugt, sollte per Funktionstasten so dunkel wie möglich eingestellt werden.

Ältere Platinenrechner, PCs und NUCs

Sieben Jahre nach dem ersten Raspberry Pi werden die Nachteile von Einplatinenrechnern deutlich: Sie sind nicht skalierbar und veralten rasend schnell. Wer von Anfang an mitgespielt hat und mehrfach auf leistungsstärkere Nachfolger oder Alternativplatinen umgestiegen ist, hat jetzt vermutlich die eine oder andere Platine in der Schublade, mit der sich nichts Ernsthaftes mehr anstellen lässt. Im Vergleich zu aktuellen Platinen sind die frühen Einkerner mit 512 MB RAM, langsamen Ethernet und fehlendem WLAN bestenfalls noch Bastlermaterial. Wer nicht gerne und hobby-mäßig mit Platinen experimentiert, sondern einfach eine nachhaltige Server-Hardware betreiben will, fährt vermutlich mit einem älteren Netbook, Notebook oder Intel NUC besser.

Schlecht steht es auch um die Verwertbarkeit älterer PCs: Die Größe spricht ebenso gegen einen Einsatz im Wohnzimmerschrank wie die typischen Betriebsgeräusche durch alte Lüfter und Festplatten. Außerdem verbrauchen alte wie neue Tower-PCs typischerweise 50 bis 100 Watt pro Stunde (ohne Monitor) und sind damit per se keine idealen Kandidaten für den Dauerbetrieb. Wenn diese Kriterien für Sie keine Rolle spielen, stellen sich immer noch die üblichen Fragen zur Tauglichkeit von CPU, RAM und I/O-Schnittstellen.

Die für den Servereinsatz attraktiven Mini-PCs der Sorte Intel NUC oder Zotac Zbox sind bei kommerziellen Händlern noch kaum anzutreffen. Auf Ebay und privaten Kleinanzeigen müssen Sie bei dieser Geräteklasse besonders genau verifizieren, ob das angebotene Gerät ein Laufwerk und RAM-Bausteine mitbringt.

HDT: Der Hardware-Check

Wer ein gebrauchtes Notebook gekauft oder ein altes Netbook aus dem Keller gekramt hat, muss erst einmal wissen, welche Hardware in diesem Gerät tatsächlich steckt. Was leistet die CPU tatsächlich, wieviel RAM steckt auf dem Motherboard? Funktioniert die Festplatte noch und wie groß ist sie? Dafür nutzen Sie am besten das Hardware Detection Tool (HDT, http://hdt-project.org). Falls das Gerät kein optisches Laufwerk besitzt, können Sie HDT im Handumdrehen mit

sudo dd if=hdt-0.5.2.img of=/dev/sd[x]

oder unter Windows mit dem Win 32 Disk Imager auf einen USB-Stick kopieren.

In HDT verwenden Sie vorzugsweise den „Menu mode“. Dieser zeigt unter „Summary“ schon mal das CPU-Modell mit Angabe über 32 oder 64 Bit sowie die aktuelle RAM-Kapazität. Genauer wird es unter den Kategorien „Processor“ und „Memory“, die sich mit den Cursortasten ausklappen lassen. Unter „Processor“ erscheinen das CPU-Modell, ferner die Architektur-Info („x86_64“ – „Yes“ oder „No“) sowie alle CPU-Eigenschaften als „Flags“ („pae“, „mmx“ etc.). Infos zu internen Festplatten liefert HDT unter „Disks“,

Fast noch wichtiger für die Tauglichkeit als Datenserver sind aber die Angaben unter „PCI-Devices“: Sie informieren über Grafikkarte, Soundchip, Ethernet (Fast oder Gigabit?), WLAN-Chip (altes 801.11g, brauchbares 801.11n oder sogar aktuelles 801.11ac?). Ein K.O.-Kriterium ist ferner die USB-Version. Wenn das Altgerät optimales USB 3.0 anbietet, erkennen Sie das schon äußerlich leicht an den blauen USB-Buchsen. Ob jedoch tolerierbares USB 2.0 vorliegt oder inakzeptables USB 1.x, ist äußerlich nicht erkennbar und auch unter HDT nicht ganz eindeutig zu ermitteln: Was HDT unter „PCI-Devices“ für den „USB (Host) Controller“ anzeigt, ist oft erst anhand der gezeigten Produkt-IDs zu recherchieren. Allgemein indizieren unter HDT die Abkürzungen „OHCI“ eine USB-Version 1.1, „EHCI“ Version 2.0 und „XHCI“ Version 3.0. Ganz eindeutig ist dies nicht, da auch Bezeichnungen wie OHCI2 auftauchen, was dann immerhin für USB 2.0 spricht.

Wissen, was drinsteckt: Das unabhängige, bootfähige Tool HDT (auf Heft-DVD) analysiert die komplette Hardware.

32- oder 64-Bit-CPU? PAE oder Non-PAE?

Wie Sie einem Rechner Informationen über die CPU-Architektur und die CPU-Eigenschaften entlocken, erklärt der obige Abschnitt „HDT: Der Hardware-Check“. Hier geht es um die Konsequenzen dieser Recherche.

Im Prinzip ist ein 32-Bit-Prozessor kein K.O.-Kriterium. Es gibt immer noch viele prominente 32-Bit-Systeme wie Lubuntu/Xubuntu 18.04/18.10 oder Debian 9.0.5. Auch Ubuntu 18.04 Server ist als 32-Bit-Variante zu finden (http://cdimage.ubuntu.com/netboot/bionic/). Spezialisten für ältere Hardware und damit allesamt auch in 32-Bit-Ausführung verfügbar sind Antix (https://antixlinux.com), Q4-OS (https://q4os.org/) und Bodhi Linux (www.bodhilinux.com). Im Umfeld von Linux-Distributionen erkennen Sie 32-Bit-Varianten an der Kennzeichnung „i386“ und 64-Bit-System an „amd64“, was in diesem Fall keine Einschränkung auf AMD-CPUs bedeutet.

Auch ein fehlendes PAE-Flag ist kein K.O-Kriterium: PAE steht für Physical Address Extension und befähigt 32-Bit-CPUs, mehr als 3,2 GB Arbeitsspeicher zu nutzen. Fehlt dem Prozessor diese Eigenschaft, kann Linux normalerweise nicht starten. Es gibt aber immer noch Distributionen mit einem speziellen Non-PAE-Kernel. Von Bodhi Linux 5.0 gibt es unter (https://sourceforge.net/projects/bodhilinux/files/5.0.0/) ein ISO-Image mit dem Zusatz „legacy“. Antix 17.2 ist auf Altrechner spezialisiert und bietet konsequenterweise auch noch eine Non-PAE-Variante (https://antixlinux.com/download/).

So viel zur Theorie. In der Praxis halten wir Recycling-Experimente mit 32-Bit-CPUs und erst recht mit CPUs ohne PAE-Erweiterung für grenzwertig. Praktisch alle 32-Bit-CPUs und solche ohne PAE sind älter als 15 Jahre und lohnen sich kaum mehr für neue Aufgaben. Nennenswerte Ausnahmen sind die 10 bis 12 Jahre alten Netbooks mit Intel-Atom-CPUs, die zwar größtenteils mit 32 Bit arbeiten, aber für kleine Serverrollen durchaus genügen.

32-Bit-Linux auf 64-Bit-Hardware: Wo nicht mehr taufrische 64-Bit-Hardware vorliegt, müssen Sie nicht unbedingt ein 64-Bit-Linux installieren. Die Vorteile von 64 Bit kommen erst bei mehr als vier GB RAM zur Geltung. Daher empfehlen wir für 64-Bit-CPUs und einer RAM-Ausstattung bis zu 4 GB 32-Bit-Systeme, die mit RAM und Datenträger sparsamer umgehen.

Viel RAM und 32-Bit-Linux? Das folgende Sonderproblem sollten Sie kennen, auch wenn es in der Praxis selten auftreten dürfte: Ein 32-Bit-Linux kann zwar per PAE (Physical Address Extension) mehr als 4 GB RAM nutzen, jedoch muss man jenseits von 8 GB RAM mit einer irritierenden und dramatischen Verlangsamung aller Festplattenzugriffe rechnen. 32-Bit-Systeme schalten den Festplattencache nämlich paradoxerweise ab, wenn mehr als 8 GB RAM vorhanden sind. Abhilfe schafft eine künstliche Begrenzung auf 8 GB in der Datei „/etc/default/grub“:

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash mem=8G"

Besser als diese Maßnahme ist bei solcher Speicherausstattung natürlich die Wahl eines 64-Bit-Systems. Das Dilemma, auf einem Rechner mit 16 GB RAM ein 32-Bit-System wählen zu müssen, weil noch eine 32-Bit-CPU vorliegt, dürfte sich kaum ergeben.

Distributionen ohne Risiko: Lubuntu und Mint MATE

Wenn Sie ältere Hardware pragmatisch, schnell und ohne Lernaufwand wiederbeleben möchten, ist Lubuntu oder Antix Mate erste Wahl: Lubuntu läuft notfalls schon mit 256 MB RAM, bei besser ausgestatteten Rechnern nimmt sich dieses System etwa 300 MB ab Start, als CPU reicht ein Pentium III.

Beide Systeme sind nicht nur sehr genügsam, sondern bieten durch ihren konservativen Desktop mit Hauptleiste inklusive Startmenü jedem XP-Nutzer auf Anhieb eine neue Heimat. Es kommt hinzu, dass beide Distributionen eine zwar anspruchslose, aber vollständige Softwareausstattung mitbringen. Nach der Installation können Sie sofort loslegen.

Infos und Download zu Lubuntu: www.lubuntu.net

Infos und Download zu Antix: https://antixlinux.com

Anpassungen erwünscht: Xubuntu mit XFCE

Das nicht mehr ganz so schlanke Xubuntu sollte sich mit 512 MB RAM und einer CPU ab Pentium IV zufriedengeben. Auf besser ausgestatteter Hardware nimmt es sich aber ab Start bereits circa 400 MB. Für ordentliche Reserven bei der Software ist daher 1 GB RAM zu empfehlen – also noch im Rahmen der typischen Netbook-Ausstattung.

Xubuntu zeigt nach der Erstinstallation kaum Vorzüge gegenüber dem schlankeren Lubuntu oder Mint LXDE. Auch hier findet sich ein klassisches Anwendungsmenü in der Hauptleiste. Der exzellente und ausgereifte XFCE-Desktop zeigt seine Überlegenheit erst bei genauerem Hinsehen: Zum XFCE-Feinschliff gehört das zusätzlich nach Rechtsklick am Desktop stets verfügbare Anwendungsmenü oder das Drag & Drop von Dateien mit rechter Maustaste und folgendem Kontextmenü, wie Sie es unter Windows kennen. Im Hauptmenü unter „Einstellungen“ finden Sie zahlreiche Angebote, Themes, Dateimanager-Verhalten oder die Fensteroptik einzustellen. Die Anpassungsmöglichkeiten für Symbolleisten, Desktop und Dateimanager sind unerschöpflich detailliert, und dies nicht nur optisch. Xubuntu eignet sich besonders für etwas erfahrenere Nutzer, die sich die Oberfläche gerne optimal und individuell anpassen.

Infos und Download zu Xubuntu: http://xubuntu.org

Xubuntu 13.10
Ausgereiftes System für schwächere Hardware: Xubuntu mit XFCE lädt ein zur individuellen Anpassung und hat dabei etwas höhere RAM-Ansprüche als ein Windows XP.

Empfehlung für Bastler: Bodhi Linux

Auch Bodhi Linux basiert auf Ubuntu, davon sieht man aber nichts. Bodhi nutzt als Oberfläche die Eigenentwicklung Enlightenment 17 (E17). Hier wird es Hardware-technisch wirklich minimalistisch, nicht aber optisch-ästhetisch: Bodhi läuft angeblich schon mit 128 MB und einer 300-MHz-CPU. Auf unserem Test-Netbook mit einem GB RAM schlägt Bodhi nach der Anmeldung tatsächlich mit nur 103 MB zu Buche, mehr als 150 MB sind für das reine System auch im Dauerbetrieb nie zu messen. Mit 512 MB oder einem GB RAM hat Bodhi somit richtig Reserven für Browser und Anwendungen.

Was Bodhi noch spektakulärer macht: E17 ist ein ästhetisch ansprechender Desktop, der sich sogar noch verspielte Effekte leistet. Mit der „Einstellungskonsole“ lässt sich jedes winzige Detail der Oberfläche minutiös konfigurieren, Starterleiste „Engage“ und Hauptpanel „Shelf“ können Sie nach Belieben bestücken. Ein globales Startmenü ist beim Klick auf den Desktop jederzeit abrufbereit.

Bodhi hat leider auch Nachteile: So ist ein gemischtsprachiges System in Kauf zu nehmen, und die vorinstallierte Software bringt kaum das Mindeste mit. Neben Nachinstallationen muss der Bodhi-Nutzer auch Geduld mit einigen Ungereimtheiten in den unzähligen Einstellungsoptionen mitbringen.

Ein ganz großer Mangel: Der E17-eigene Dateimanager kann keinen LAN-Zugriff. Daher ist es erste Pflicht, einen zusätzlichen Dateimanager zu installieren. Hier kommen nicht beliebige in Frage, da etwa Nautilus oder Nemo die Desktop-Arbeitsfläche verändern und damit das E17-Design empfindlich stören. Es bietet sich der schlanke pcmanfm an (sudo apt-get install pcmanfm).

Infos und Download zu Bodhi Linux: www.bodhilinux.com
Zukunft und Weiterentwicklung von Bodhi Linux sind leider ungewiss. Die lange angekündigte Version 3.0 kam über den Status als Release Candidate nicht hinaus. Die Aufgabe des vielversprechenden Projekts wäre sehr bedauerlich.

Bodhi Linux
Unglaublich sparsam: Bodhi Linux begnügt sich mit 100 bis 150 MB und bietet trotzdem einen eleganten Desktop – ein System für Nutzer, die sich auf Neues einlassen und kleinere Mängel tolerieren.

Ausgereifter Minimalist: Puppy Linux

Puppy Linux spielt als spezialisierter Minimalist etwa in der Öko-Liga von Bodhi Linux und bietet dabei eine Reihe von Varianten. In erster Linie kommt Precise Puppy in Betracht, weil Sie damit die komplette Software der Ubuntu-Repositories nutzen können. Nach der Anmeldung benötigt das System circa 115 MB, als CPU genügt ein 400 MHz-Prozessor. Anders als Bodhi Linux sieht man Puppy, das primär für den mobilen Einsatz auf USB- und CD-Medien konzipiert ist, seinen Sparkurs deutlich an. Installation und Einrichtung setzen etwas Erfahrung voraus. Ungeachtet seiner pragmatisch-spröden Bedienung hat Puppy Linux 10 Jahre Entwicklung hinter sich und ist neben Bodhi Linux der reifere Minimalist.

Einen ausführlichen Beitrag zu den Puppy-Varianten bietet der Artikel Puppy-Systeme – klein und schnell

Infos und Download zu Puppy Linux: http://puppylinux.org

Zurück zur Übersichtsseite…

Manjaro Architect

https://manjaro.org
Download ca. 600 MB (Installer – kein Livesystem

Der aus Deutschland stammende Manjaro Architect ist ein Installer für Bastler, die sich ihr System selbst maßschneidern wollen. Das Prozedere ist keine ganz große Herausforderung, aber etwas Basiswissen über Partitionen, Dateisysteme, Linux-Desktops und Kernel sollte man schon mitbringen. Da bei Manjaro Architect das Endergebnis offen ist, macht es hier keinen Sinn, Desktop-Eigenschaften oder Software-Ausstattung zu beschreiben. Vielmehr geht es um eine kurze Charakterisierung des Installers:

Nach dem Booten können Sie optional die deutsche Tastatur und Sprache einstellen. Danach wählen Sie den Eintrag „Boot: Manjaro.x86_64 architect“, melden sich auf der Konsole als „manjaro“ mit Passwort „manjaro“ an und starten mit der Eingabe „setup“ die Einrichtung. Der Installer arbeitet mit vorgegebenen Optionen und Auswahl mit Cursor- und Tab-Taste, ist also quasi halb grafisch (Ncurses-Basis), logisch vorbildlich, aber durchaus komplex.

Nach Auswahl der Sprache „German“ geht es im Hauptdialog zum ersten Punkt „1 Installation vorbereiten“. Hier sind nicht alle Unterschritte notwendig, aber mindestens „Konsolensprache einstellen“, „Festplatte partitionieren“ und „Partitionen einhängen“. Der schwierigste Punkt „Festplatte partitionieren“ zeigt mehrere Optionen, die das jeweils gewählte Kommandozeilentool starten. Auf unserem Test-Notebook mit einer Festplatte sda wählen wir ein Bios-Installation mit dem Tool cfdisk. Dabei muss das Partitionierungsschema (etwa „dos“ oder „gpt“) und ein Dateisystem gewählt werden (etwa „ext4“). Ferner wird die Größe des Swapfiles abgefragt. Die Zielpartition muss danach mit „Partitionen einhängen“ gemountet werden.

Zurück im Hauptmenü geht es zum nächsten Hauptpunkt „2 Desktop-System installieren“ – der eigentliche Hauptspaß, denn die hier gebotene Auswahl an Desktops, Kernel-Versionen, Kernel-Modulen (Netztreiber, Dateisysteme) und Software-Paketen baut ein System nach Maß. An Oberflächen bietet Manjaro Architect nicht weniger als 14 (!).

Vergessen Sie nach der Installation der Pakete nicht, den Grub-Bootloader zu installieren. Dies wird vom Installer als nächster Schritt angeboten und darf keinesfalls übersprungen werden. Weitere Schritte sind „Basis konfigurieren“ (root-Kennwort, weitere Konten, Hostname, fstab einrichten, Treiber etc.) und optionale „Tweaks“. Am Ende steht ein Arch-System nach Wunsch. Der Software-Bezug erfolgt am einfachsten über die grafische Zentrale „Software hinzufügen/entfernen“. Anpassungen und Optimierungen folgen den Standards des gewählten Desktops.

Manjaro Architect: Die Collage zeigt ein fertig installiertes Manjaro mit Cinnamon-Desktop und rechts oben den Hauptdialog des eigentlichen Architect-Installer.

Die Linux-Desktops

Die Linux-Vielfalt hat zwei Ebenen: Neben der Auswahl des System-Unterbaus steht auch noch die Entscheidung für eine bestimmte Oberfläche. Derselbe Unterbau kann viele Desktop-Gesichter haben, derselbe Desktop verschiedenen Systemen dienen.

Eine saubere Grenzziehung zwischen Distributions- und Desktop-Vielfalt ist schwierig bis unmöglich. Ubuntu hat sich je nach Standarddesktop unterschiedliche „Distributionsnamen“ wie Kubuntu oder Xubuntu gegeben, obwohl dabei nur ein anderer Desktop (KDE und XFCE) auf demselben Ubuntu arbeitet. Wenn sich eine Linux-Mint-Variante als „Linux Mint XFCE Edition“ bezeichnet, darf man die Frage stellen, wieviel „Mint“ noch drinsteckt, da doch ein Ubuntu bei Mint den Systemunterbau legt und Linux Mint sich primär durch seinen Stammdesktop Cinnamon definiert. Wie Mint definieren sich auch andere Distributionen wie Elementary OS, Solus oder Bodhi Linux hauptsächlich durch ihren Desktop. Die Entscheidung für einen Desktop gibt aber nicht nur die Systembedienung vor: Sie bestimmt maßgeblich die Hardwareansprüche an RAM, CPU, GPU sowie Reaktions- und Startgeschwindigkeiten. Ein nackter Ubuntu Server ohne Desktop konsumiert etwa 50 MB RAM, während ein Ubuntu mit KDE-Oberfläche (Kubuntu) schon ab Start das 15-fache fordert (750 MB). Die richtige Einschätzung, was ein Desktop kann und für welche Hardware er taugt, ist daher für die Wahl des richtigen Systems unverzichtbar.

Desktops und Distributionen

Ein Linux-System kann bekanntlich mehrere Desktops aufnehmen. Folglich sollte es möglich sein, Desktops wie einen Mediaplayer oder eine Office-Suite als unabhängige Software zu beschreiben. Tatsächlich ist aber die Verzahnung zwischen Systembasis und Desktop dann doch komplexer als bei einer beliebigen Anwendungs-Software:
1. Die Parallelinstallation von Desktopumgebungen ist ein erheblicher Systemeingriff, und längst nicht alle Desktops vertragen sich überall problemlos nebeneinander.
2. Eine Desktop-Umgebung ist mehr als der Desktop: Sie bringt ein mehr oder weniger umfangreiches Softwarepaket mit, mindestens mit Dateimanager und Editor, oft mit Audio-und Video-Player sowie PDF- und Text-Viewer.
3. Der mit der Distribution ausgelieferte Desktop ist in der Regel sorgfältig vorkonfiguriert und unterscheidet sich von einem nachinstallierten Desktop. Diese Vorkonfiguration erspart oft erheblichen Anpassungsaufwand.
Einsteiger, Anfänger, Pragmatiker fahren daher am besten, wenn sie eine Linux-Distribution mit ihrer angestammten und mitgelieferten Standardoberfläche wählen.
Die nachfolgende Tabelle nennt 16 populäre bis exotische Linux-Desktops in alphabetischer Abfolge. Die nachfolgenden Kurzbeschreibungen orientieren sich hingegen an der Verbreitung und beginnen mit der Prominenz.

Stammdesktop unter Hardware-Anspruch Flexibilität Merkmale
Budgie Ubuntu Budgie / Solus noch moderat mittel klar und übersichtlich, gewöhnungsbedürftige Seitenleiste
Cinnamon Linux Mint moderat hoch einfache, klassische Basisbedienung und sehr flexibel
Fvwm (nur optional, z. B. in Debian) minimal mittel minimalistisch
Gnome Ubuntu Gnome / Fedora hoch gering elegant, modern, einfach, aber gewöhnungsbedürftig
KDE Kubuntu / Open Suse hoch exzellent komplexes, aber gereiftes Konzept
LXDE Lubuntu / Knoppix gering mittel einfach, klassisch, funktional, altmodische Optik
LXQT (LXDE-Nachfolger) (nur optional, z. B. in Manjaro) gering mittel einfach, klassisch, funktional
Mate Ubuntu Mate moderat hoch einfache, klassische Basisbedienung und flexibel
Moksha (E17) Bodhi Linux sehr gering hoch exotisch bis konfus, aber klein und schnell
Openbox Bunsenlabs minimal mittel minimalistisch, Anpassung anspruchsvoll
Pantheon Elementary OS mittel gering sehr einfach, elegant, aber puristisch
Pixel Raspbian (Raspberry Pi) gering mittel relativ einfach und klassisch
Trinity Q4-OS sehr gering hoch komplexer KDE-3-Fork, altmodische Optik
Unity Ubuntu noch moderat gering sehr einfach, intuitiv
Wmii (nur optional, z. B. in Debian) minimal gering minimalistisch und exotisch – ohne Mausunterstützung
XFCE Xubuntu gering bis moderat hoch klassisch, ausgereift, flexibel, etwas altmodisch

 

Für anspruchsvolle Linux-Anwender: Das komplexe KDE bietet maximale Anpassungsfähigkeit und hat mit KDE Plasma 5 ein geradliniges Gewand bekommen.

KDE: Anpassungsfähig bis detailverliebt

Eine der dienstältesten (seit 1996) und populärsten Desktop-Umgebungen ist KDE, das sich mit Version 4 erfolgreich neu erfand. KDE ist eine opulente Oberfläche für aktuellere Rechner mit Mehrkern-CPU, Open-GL-fähigen Grafikchip und vier GB RAM. Der Desktop ist ideal für fortgeschrittene Nutzer, die detaillierte Anpassungsoptionen zu schätzen wissen.
Der Plasma-Desktop stellt die Arbeitsoberfläche bereit mit Mini-Programmen (Plasma-Widgets) und dem Window-Manager Kwin, der für Fensterdarstellung und Effekte sorgt. Standardmäßig befinden sich die KDE-Bedienelemente am unteren Bildschirmrand. Ganz links gibt es in der Standard-Konfiguration das K-Menü mit Kategorien und Suchfeld. Neben dem K-Menü liegen die Taskleiste und daneben die Kontroll-Leiste mit Mini-Programmen (Lautstärke, Network-Manager, Zwischenablage). Eine aufgeräumte Übersicht aller Optionen bieten die „Systemeinstellungen“ im KDE-Menü. Daneben enthält die KDE-Umgebung herausragende Software wie den Dateimanager Dolphin, den Bildbetrachter Gwenview oder die Bildverwaltung Digikam. Empfohlene KDE-Distributionen sind Kubuntu, Ubuntu KDE Neon und Open Suse Leap.

Gnome 3: Der moderne Desktop

Gemessen an der Zahl der Gnome-affinen Nachfolger (Unity, Mate, Cinnamon, Pantheon, implizit auch XFCE, LXDE, LXQT) ist Gnome der produktivste Linux-Desktop. Mit dem fast 20 Jahre alten Ur-Gnome hat heutiges Gnome 3 freilich nicht mehr viel gemein. Version 3 war ein radikaler Neuanfang, der bewährte Elemente über Bord warf. Das neue Gnome-Bedienkonzept ist modern, schick, funktional, aber reduziert. An den Grundfunktionen lässt Gnome kaum Eingriffe zu. Flexibilität erhält Gnome hauptsächlich durch externe Erweiterungen (https://extensions.gnome.org). Gnome ist ein Desktop für aktuellere Hardware mit Mehrkern-CPU, 3D-Grafik und vier GB RAM.
Obwohl Gnome auf Elemente wie das Startmenü verzichtet, findet sich jeder Einsteiger schnell zurecht. Als Umschalter und Programmstarter dient die Übersichtsseite „Aktivitäten“, die über die Windows-Taste oder über die linke obere Ecke erreichbar ist. Dort gibt es Schnellstart-Icons und das wichtige Suchfeld. Die „Einstellungen“ liefern ein aufgeräumtes Menü für allgemeine Optionen wie Sprache, Hintergrundbild und Hardwarekonfiguration. Weitere Optionen sind in der Extra-Anwendung Gnome-Tweak-Tool untergebracht. Empfohlene Gnome-Distributionen sind Ubuntu Gnome, Fedora, Manjaro Gnome.

Elegant und modern: Gnome 3 zeigt auf Windows-Taste oder aktive Ecke links oben diese Übersicht mit Fenster- und Arbeitsflächenansicht sowie dem Suchfeld.

Ubuntus Unity: Vereinfachtes Gnome 3

Unity, seit 2011 und bis vor kurzem die Standardoberfläche von Ubuntu, ist ein reduziertes Gnome 3. Das einfache Bedienkonzept versteht jeder Nutzer auf Anhieb, allerdings bezahlt der Unity-Anwender den intuitiven Bedienkomfort mit dem Preis geringer Anpassungsmöglichkeiten. Trotz einfach wirkender Oberfläche bleibt Unity ein Gnome 3 mit nur geringfügig geringeren Hardware-Ansprüchen (siehe dort).
Die Bedienung erfolgt über zwei Standardleisten, die Starterleiste links und das Hauptpanel oben. Die Starterleiste ist eine Kombination aus Taskleiste und Favoritenleiste: Sie zeigt die aktuell laufenden Programme und zusätzlich die Programmfavoriten. Das oberste Symbol mit dem Ubuntu-Logo öffnet das Dash – die Suchzentrale für Programme und Dateien. Das Hauptpanel am oberen Rand bietet das Sitzungsmenü sowie Indikatoren wie Zeitanzeige und Netzwerk-Manager. Im Gnome-Control-Center („Systemeinstellungen“) gibt es fundamentale Funktionen der Hardware- und Desktop-Anpassung. Zusätzliche Möglichkeiten bietet das Unity Tweak Tool, das nachinstalliert werden muss. Die einzige Distribution mit Unity als Standarddesktop war bis Version 17.04 die Ubuntu-Hauptedition.

Cinnamon: Der Mint-Desktop

Cinnamon ist seit 2011 als konservative Alternative zum modernen Gnome 3/Unity entwickelt worden. Über die Jahre reifte eine sehr attraktive Oberfläche, die viele Elemente der Windows-Welt aufgreift und auf optimale Anpassungsfähigkeit Wert legt. Die ältere Gnome-2-Basis macht sich noch in einigen altmodischen Details bemerkbar (Leistenbearbeitung), insgesamt ist Cinnamon aber so ansehnlich wie flexibel und vergleichsweise sparsam. Der Desktop läuft auch auf nicht mehr taufrischen Geräten und ist mit 2 GB RAM alltagstauglich.
Die Systemleiste enthält ein klassisches und anpassungsfreudiges Startmenü und typische Elemente wie Fensterliste, Netzwerk-Manager und Arbeitsflächenwechsler. Großzügig sind auch die Optionen, um die Optik an eigene Wünsche anzupassen. Moderne Fensterthemen und Hintergründe für die Arbeitsfläche sind mit wenigen Mausklicks geändert. Generell ist das Angebot der zentralen „Systemeinstellungen“ breiter als das der reduzierenden Gnome/Unity-Desktops. Cinnamon ist Standard unter Linux Mint, der Einbau in andere Distributionen ist möglich, aber nicht ohne Risiko.

Mate: Klassisch und flexibel

Mit Mate entstand ebenfalls 2011 in Ablehnung des modernen Gnome 3 ein weiterer Fork von Gnome 2. Mate ist seither eine weitere Alternative für Anwender, die einen traditionellen Desktop bevorzugen. Die Oberfläche erhielt trotz althergebrachter Bedienkonzepte ein modernisiertes Äußeres und reicht an die Anpassungsfähigkeit von Cinnamon heran. Dabei gehört Mate zu den sparsamen Desktops und kommt notfalls ohne 3D-Grafikchip und schon mit 1 GB RAM aus.
Die wesentlichen Elemente der Arbeitsfläche sind die Leisten, die sich mit diversen Applets füllen und per Rechtsklick im Detail konfigurieren lassen. Die Systemeinstellungen heißen hier „Kontrollzentrum“, das alle Optionen zu Aussehen, Verhalten, Hardware-Einstellungen, Autostart-Programmen in einer aufgeräumten Übersicht zusammenfasst. Bekannteste Distribution mit Mate ist Ubuntu Mate, jedoch gibt es inzwischen von fast allen namhaften Distributionen eine Mate-Edition (Linux Mint, Debian, Fedora u. a.).

Klassisch und anpassungsfreudig: Mit dem Mate-Desktop lebt die Oberfläche von Gnome 2 in einer modernisierten Variante weiter.

XFCE: Linientreuer Klassiker

XFCE („X-Face“) gehört seit 1996 mit KDE und Gnome zu den Urgesteinen der Linux-Desktops, hat sich aber im Gegensatz zu diesen stets geradlinig entwickelt und nie revolutioniert. XFCE ist etwas angestaubt, aber perfekt für Nutzer, die klassische Elemente schätzen und selbst Hand anlegen mögen. Die funktionalen wie optischen Möglichkeiten sind umfassend, die Bedienung gelegentlich altmodisch, aber überall ausgereift und logisch. Nicht zuletzt hat XFCE bescheidene Ansprüche an die Hardware – 1 GB RAM ist üppig, ein 3D-Grafikchip nicht erforderlich.
Mit dem Dateimanager Thunar hat XFCE einen der wenigen seiner Art an Bord, die ein Drag & Drop von Dateien mit rechter Maustaste mit Kontextmenü beantworten. Im Konfigurationszentrum („Einstellungen“) sind alle Basics wie Monitor-Einstellung, Benutzerverwaltung, Themes, Fensteroptik oder Treibersuche. Hauptmenü („Whisker“) und Symbolleisten von XFCE sind eine lohnende Spielwiese: Es gibt diverse vorgegebene Elemente wie Arbeitsflächenumschalter, Sitzungsmenü („Aktionsknöpfe“) oder eine Mini-Kommandozeile. Auch bei Aussehen, Größe, Farbe, Transparenz oder Ausblendverhalten lassen XFCE-Panels keine Wünsche offen. Praktisch alle Distributionen bieten eine Variante dieses Klassikers. Ein sorgfältig konfiguriertes XFCE liefert etwa Xubuntu.

Xubuntu mit angepasstem XFCE-Desktop

LXDE/LXQT: Schlank und komplett

LXDE zeigt seit über 10 Jahren, dass ein kompletter Desktop keine Gigahertz-CPU braucht und dass 512 MB eine Menge Speicher sein können. Die funktionale Oberfläche benötigt inklusive System nur gut 150 MB. LXDE kombiniert für das Ziel einer möglichst sparsamen Lösung heterogene Elemente wie den Window-Manager Openbox und eigene Komponenten wie Lxpanels (Leisten) oder Lxappearance (Optik-Konfiguration). Die per Voreinstellung oft unnötig spröde Optik ist durch individuelle Anpassung deutlich optimierbar. LXQT ist der Nachfolger von LXDE, der die Integration von Software mit jüngeren QT-Bibliotheken leistet. Bei LXDE folgen solche Programme nicht der systemweit eingestellten Fensteroptik. Einfachster Weg zu einem sorgfältig vorkonfigurierten LXDE ist die Distribution Lubuntu.

Moksha (E17): Der schnelle Exot

Enlightenment („E“, aktuelle Version ist E19) vereint minimale Hardwareansprüche mit ansprechender Ästhetik und exorbitanter Konfigurierbarkeit. Verwirrende bis konfuse Optionen erschweren allerdings den Zugang. Moksha, der Standard-Desktop unter Bodhi Linux, hat als Fork von E17 etwas aufgeräumt, bleibt aber ein Desktop-Abenteuer. Die besonders schnelle und sparsame Oberfläche läuft auf älterer bis alter Hardware ohne 3D-Grafikchip und 512 MB bis 1 GB RAM.

Bodhi Linux mit angepasstem Moksah-Desktop

Trinity: Sparsames Retro-KDE

Trinity führt die längst eingestellte KDE-Version 3.5 als Fork weiter. Das Ergebnis ist eine schlanke Oberfläche, die allerdings im altbackenen Retro-Design daherkommt. Die Ansprüche des Desktops liegen etwa zwischen LXDE und XFCE. Hauptargument für Trinity ist die Tatsache, dass der KDE-Fork auch auf angestaubter Hardware die detaillierten Anpassungsoptionen eines KDE mitbringt. Unter den prominenten Distributionen ist Trinity rar. Der einfachste Weg ist der Einsatz der Distribution Q4-OS, wo Trinity als Standard arbeitet.

Der Trinity Desktop zeigt ein altes KDE 3.5, das als Abspaltung (Fork) mit kleinen Verbesserungen weiterlebt und von Kubuntu-Entwicklern nebenher gepflegt wird.

Schönlinge und Puristen

Pantheon: Dieser Desktop ist Standard der Distribution Elementary OS. Der aufgeräumte und ästhetische Desktop mit Mac-OS-Optik zeigt nur Starterdock und Systemleiste und bietet nur fundamentale Einstellungsoptionen. Zielgruppe sind Software-orientierte Desktop-Nutzer, die ohne Ehrgeiz individueller Anpassung eine hübsche Oberfläche suchen.

Budgie: Technisch ambitionierter als Pantheon liefert diese Oberfläche neben der üblichen Systemleiste eine multifunktionale Seitenleiste. Entwickelt wird Budgie für die Distribution Solus, hat aber inzwischen als Ubuntu Budgie Einzug in die offiziellen Ubuntu-Varianten gefunden. Budgie hat Potential zum echten Cinnamon-Konkurrenten durch seine klare, kontrastive Benutzerführung.

Ubuntu Budgie: Der sehr ansehnliche und klare Desktop hat noch ein paar Reifemängel.

Openbox: Eigentlich ist Openbox nur ein alt-ehrwürdiger Window-Manager, ist aber über diese Rolle hinausgewachsen. Pures Openbox liefert am Desktop nicht mehr als ein simples Startmenü per Mausklick, mit Ergänzungen und Konfigurationstools wird daraus aber eine Arbeitsumgebung, die kaum mehr als 100 MB Speicher beansprucht. Die manuelle Einrichtung von purem Openbox ist mühsam. Ein sorgfältig vorkonfiguriertes Openbox liefert die Distribution Bunsenlabs „Deuterium“ auf Basis von Debian 8.

Fvwm-Crystal: Einer der ältesten Fenstermanager für Linux ist der „F Virtual Window-Manager“ (Fvwm). Dem originalen Fvwm von 1993 sieht man sein Alter deutlich an. Viel getan hat sich aber bei der Variante Fvwm-Crystal mit Taskleiste, Menü und virtuellen Arbeitsflächen. Trotz minimaler Ansprüche (unter 100 MB RAM) sieht Fvwm-Crystal mit Transparenz-Effekten schick aus. Eine fertige Distribution mit diesem Fenstermanager gibt es nicht, jedoch ist das Fossil noch als Paket unter Debian und Ubuntu erhältlich (fvwm-crystal).

Wmii: Wmii (Window-Manager Improved) geht grenzwertig noch als Fenster-Manager durch: Alle Aktionen zum Öffnen und Anordnen von Fenstern erfolgen per Tastatur. Der Hotkey Windows-Taste plus Eingabetaste öffnet ein neues Terminal, Windows-P einen Ausführen-Dialog. Fenster arrangiert Wmii nebeneinander oder in Spalten. Dieser minimalistische Ansatz ist sinnvoll, wo ein Linux-Rechner stets nur einige wenige Programmfenster anzeigen soll. Wmii ist unter vielen Distributionen unter gleichnamigem Paketnamen zu erreichen.

PIXEL: Dieser Desktop ist eine junge Entwicklung der Raspberry Pi Foundation. Er dient als verbesserter Ersatz für das bisher genutzte LXDE auf dem Raspberry-System Raspbian. Die Änderungen sind vorwiegend kosmetischer Natur.

Terminal- und Bash-Optimierung

Grafische Terminals und die darin laufende Kommando-Shell bieten reichhaltige Optionen, um sie optisch und funktional zu optimieren und zu individualisieren. Das ist zum Teil einfach, zum Teil knifflig. Die notwendigen Tipps finden Sie hier.

Dieser Artikel zeigt alle wichtigen Optionen, um das grafische Terminal, aber auch die virtuellen Konsolen und die SSH-Konsole so komfortabel wie möglich einzurichten. Nur Punkt 1 bezieht sich ausschließlich auf den Desktop und das grafische Terminalfenster. Alle anderen Punkte 2 bis 6 zur Bash-Optimierung gelten auch für SSH und für die Konsolen (Strg-Alt-F1 und weitere). Bei den grafischen Terminal-Emulatoren nehmen wir das Gnome-Terminal als Referenz, wie es in Ubuntu-Varianten und Linux Mint zum Einsatz kommt. Andere Terminal-Emulatoren wie etwa die „konsole“ unter KDE bieten ganz ähnliche Einstellungen, aber nicht immer an gleicher Stelle. Bei der Shell selbst, also dem eigentlichen Kommandointerpreter, gehen wir von der Bash-Shell aus, die praktisch überall Standard ist.

1. Das grafische Terminal

Terminals in Gestalt des Gnome-Terminal, Mate-Terminal, Xfxe4-Terminal oder Konsole (KDE) sind grafische Programme mit zahlreichen Einstellungen. Sie sind unabhängig von der Shell, die im Terminal läuft. Die Optionen und Optimierungen, die Sie dort vornehmen, haben daher mit der Bash-Shell zunächst nichts zu tun. Lediglich bei Farbeinstellungen für das grafische Terminal und solchen für die Bash-Shell gibt es Kombinationen, welche die Lesbarkeit und Übersicht fördern – oder eben nicht. Insbesondere engagierte Nutzer, die sich das Terminal optisch bestmöglich einrichten möchten, sollten sich beim Aussehen des grafischen Terminals farblich festlegen, bevor sie Ausgabefarben und Prompt der Bash-Shell optimieren.

Einstellungen und Profile: Das Gnome-Terminal zeigt im Menü „Bearbeiten“ die zwei Untermenüs „Einstellungen“ und „Profileinstellungen“. Beides sind benutzerspezifische Optionen: Was unter „Einstellungen“ festgelegt wird, gilt für jedes Terminal im aktuellen Konto. Die „Profileinstellungen“ erlauben darüber hinaus verschiedene Layouts, die man entweder im Gnome-Terminal selbst mit „Terminal -> Profil wechseln“ umschalten oder auch über Programmstarter schon beim Aufruf anwählen kann:

gnome-terminal --profile big_black

Ob Sie tatsächlich verschiedene Profile brauchen, ist Ihre Entscheidung. Das als „Unbenannt“ oder als „Vorgabe“ betitelte Standardprofil sollten Sie aber unter „Bearbeiten -> Profileinstellungen“ in jedem Fall bearbeiten. Die Registerkarte „Allgemein“ bestimmt die Größe des Terminalfensters über die Spaltenzahl (Breite) und Zeilenzahl (Länge) sowie die verwendete Schriftart. Beachten Sie, dass Sie das Terminal-Fenster unabhängig von der Schrift mit Strg-+ und Strg– skalieren können, in einigen Terminals auch mit Strg und mittlerer Maustaste. Die Registerkarte „Farben“ definiert die Farb- und Transparenzeinstellungen (in einigen Terminals auch als Extra-Registerkarte „Hintergrundtyp“). Wer Experimente mit eventuell kontrastarmen Ergebnissen vermeiden will, kann das Systemschema oder vorgegebene Schemata verwenden.

Unter „Bildlauf“ sollte der „Zeilenpuffer“ deutlich vierstellig eingestellt sein, damit Sie auch bei umfangreichen Dateilisten (find, ls, rsync) bis zum Beginn zurückblättern können.

Der allgemeinere Punkt „Bearbeiten -> Einstellungen“ spielt für die Terminal-Optik keine Rolle. Hier können Sie aber unter „Tastenkürzel“ die Hotkeys ermitteln oder neu bestimmen, die in Ihren Terminals gelten. Der Tipp, hier auch die Hotkeys für Kopieren (Strg-Shift-C) und Einfügen (Strg-Shift-V) auf gebräuchliches Strg-C und Strg-V umzustellen, ist zweischneidig, weil Strg-C in der Bash-Shell traditionell für den Abbruch des aktuellen Befehls reserviert ist.

Startparameter: Größe und Position des Terminals können Sie auch per Startparameter festlegen. Global und mit zusätzlicher Angabe der Fensterposition arbeitet der Parameter „–geometry“ (fast überall Standard: Gnome, KDE, XFCE, Mate):

gnome-terminal --geometry=120x24+1+1

Dies würde ein Terminal mit 120 Zeichen Breite und 24 Zeilen Länge in der linken oberen Ecke starten (1 Pixel von links, 1 Pixel von oben). Diesen Aufruf definieren Sie am besten in der globalen Verknüpfung „/usr/share/applications/gnome-terminal.deskop“ in der Zeile „Exec=“ mit root-Recht.

Neben dem schon genannten „–profile“-Schalter gibt es weitere Optionen via Startparameter, welche die grafischen Profileinstellungen nicht vorsehen:

gnome-terminal --zoom=1.4 --working-directory=/media/ha

Dies erhöht den Zoomfaktor um 40 Prozent und startet gleich im gewünschten Verzeichnis. Letzteres ist natürlich auch über die Bash-Shell leicht zu erzielen.

Terminal-Profile: Wer im Terminal verschiedene Profile anlegt, kann mit drei Mausklicks zu einer komplett anderen Darstellung wechseln.

2. Bash-Zeileneditor und History

Kaum ein Terminalthema klingt langweiliger als die Regeln des „line editing“ – also Texteingabe, Textbearbeitung, Autocompletion und Befehlssuche am Bash-Prompt. Es entscheidet aber fundamental darüber, wie viel oder wenig Sie tippen müssen – und „Tippen“ bedeutet hier ja meistens nicht das Schreiben von natürlicher Sprache, sondern von oft komplexen Befehlen oder gar von Escape- und Regex-Sequenzen.

Autocompletion: Lange Dateinamen müssen nicht getippt werden: Wenn Sie die ersten zwei, drei Buchstaben eingeben und dann die Tab-Taste drücken, ergänzt das Terminal den vollständigen Namen automatisch, desgleichen Ordnerpfade, sofern die eingegebenen Buchstaben stimmen (Groß- und Kleinschreibung beachten!).

History: Das Terminal vergisst nichts – jedenfalls nicht so schnell. Die Befehle werden im Speicher und dauerhaft in der ~/.bash_history gespeichert. Damit die Befehle über Sitzungen und Neustarts hinaus gesammelt werden, sorgt diese Anweisung:

shopt -s histappend

Diese werden Sie in jeder Standardstartdatei ~/.bashrc antreffen. Bei welcher Zeilenmenge Schluss sein soll, also die ältesten Einträge gelöscht werden, bestimmen folgende Variablen:

HISTSIZE=5000
HISTFILESIZE=5000

Auch diese stehen in jeder ~/.bashrc, wenn auch eventuell mit geringeren Zeilenangaben. „HISTSIZE“ ist die maximale Zeilenmenge im Speicher, „HISTFILESIZE“ die maximale Zeilenmenge in der Datei ~/.bash_history. Je höher die Zahlen, desto umfangreicher wird das Gedächtnis der Bash-Shell. Mit der Variablen

HISTCONTROL=ignoredups

können Sie verhindern, dass die History von Dubletten wimmelt: Bereits vorhandene, identische Kommandos werden dann nicht aufgenommen. Eine weitere Option, die History effizienter zu machen, ist der Ausschluss von Allerweltsbefehlen:

HISTIGNORE="ls:cd*:free"

Soviel zur Optimierung der History. Für die eigentliche, praktische Verwendung gibt es mehrere Möglichkeiten. Fast jedem Anwender bekannt ist das Zurückblättern zu den letzten Kommandos mit der Taste Cursor-oben, die den gewünschten Befehl wieder auf den Prompt holt. Eine systematische Suche bietet der Hotkey Strg-R: Nach Eintippen etwa von „tar“ erscheint der letztgenutzte tar-Befehl in kompletter Länge. Ist dieser passend, kann er mit Eingabetaste sofort ausgeführt oder mit Alt-Eingabetaste (eventuell auch Strg-Eingabetaste) zum Editieren auf den Prompt geholt werden. Ist der angezeigte History-Treffer nicht der passende, geht es mit Strg-R zum vorletzten und so fort.

Eine einfache Alternative oder auch Ergänzung zur Rückwärtssuche mit Strg-R ist eine Filtersuche mit der Taste Bild-oben. Nach Eingabe etwa von „tar“ befördert diese Taste den letzten, kompletten tar-Befehl direkt auf den Prompt, ein weiteres Bild-oben den vorletzten und so fort. Diese Suche funktioniert aber nur, wenn Sie Taste entsprechend belegen – und zwar in der Datei /etc/inputrc. Das Editieren erfordert root-Recht. Sie werden dort die beiden Zeilen

\"e[5~\": history-search-backward
\"e[6~\": history-search-forward

antreffen und müssen dort nur das führende Kommentarzeichen „#“ entfernen.

Zum Editieren vorhandener Zeilen, seien es selbst getippte oder aus der History gefischte, helfen Lösch- und Rücktaste, Pos1, Ende, Strg-Cursor-rechts/links (wortweise springen), Strg-K und Strg-U (Löschen nach und vor der Cursorposition, siehe dazu auch Punkt 4).

History-Filter: Mit dieser Einstellung in der Datei /etc/inputrc filtert die Bash nach Bild-oben/Bild-unten die Einträge, die mit dem bereits eingegebenen Teilbefehl übereinstimmen.

Hübsche Prompts sind hartes Handwerk. Ein funktionaler Prompt liefert aber automatisch Informationen, für die Sie sonst externe Systemwerkzeuge starten müssten.

3. Farben am Prompt und in Dateilisten

Der Prompt, also die Anzeige bei jeder Befehlseingabe, kann beliebige statische und dynamische Informationen anbieten, die Sie zur Orientierung erwarten. Die Prompt-Anzeige definieren Sie interaktiv zum Testen mit dem Befehl „PS1=‘…‘“. und dauerhaft in der Datei ~/.bashrc. Einige dynamische Variablen wie das aktuelle Verzeichnis, Datum oder Uhrzeit bietet der Prompt durch vordefinierte Escape-Zeichenfolgen selbst an, etwa „\w“ für das aktuelle Verzeichnis, „\u“ für das angemeldete Konto oder „\h“ für den Rechnernamen. Einfache Prompts sehen dann so aus:

PS1="\w => "
PS1="\u@\h:\w => "

Eine gute Infoquelle für alle Prompt-Optionen ist die Seite https://wiki.archlinux.de/title/Bash-Prompt_anpassen. Über die eingebauten Codes hinaus können Sie jede allgemeine oder selbst definierte Variable einfach mit „$Variable“ in die PS1-Definition setzen:

PS1="\w [$LOGNAME] => "

Mehr noch: Der Prompt kann sogar beliebige Befehle aufnehmen. Wir demonstrieren das mit einem Beispiel, das freilich als Prompt dauerhaft nicht praktikabel ist:

PS1="\nSPEICHERAUSLASTUNG: \n\$(free -m)\[\033[0m\]\n\n => "

Um Infos gegeneinander abzugrenzen, sind ferner Farbdefinitionen vorgesehen, die stets mit der Sequenz „\[\033“ starten. Ein komplexer Prompt wie

PS1="\n\[\033[47;30m\]\d, \A \[\033[41;37m\] \u on \H \[\033[47;30m\] MB free=$freemem \[\033[41;37m\] $CPU \[\033[40;37m\] [$timediff] \[\033[42;30m\] \w \[\033[0m\]\n"

ist praktisch unlesbar. Immerhin geht es Schritt für Schritt von einer Escape-Sequenz zur nächsten – „\n“ bedeutet einen Zeilenumbruch, „\[\033“ schaltet dann die Farben um, „\d“ setzt das Datum ein, „\A“ die Uhrzeit. Erläuternder Text oder Zeichen wie Komma oder Blank sind an jeder Stelle möglich, ferner auch Variablen mit „$“.Wichtig ist, Farbdefinitionen am Ende wieder zurückzusetzen

(*\[\033[0m\]“).

Die unsäglichen Farbsequenzen einerseits, die Variablen-Tauglichkeit des Prompts andererseits veranlassen Bash-Freaks, alle nötigen Codes in Variablen abzulegen (in der ~/.bashrc)

GREEN="\[\033[01;32m\]"

und dann als handlichere Variablen ($GREEN) in den Prompt einzubauen. Auch dies ist aber ein mühsamer Notbehelf, dem wir folgende Online-Hilfe vorziehen:

Easy Bash PS1 Generator: Ein nützlicher Helfer für farbenfrohe Prompts ist die Seite http://ezprompt.net/. Hier gehen Sie von ersten Position zur letzten durch, was der Prompt zeigen soll, und bestimmen für das jeweils markierte Element Vorder- und Hintergrundfarbe („FG“ und „BG“). Die einzelnen Elemente lassen sich auch nachträglich umsortieren. Im untersten Feld erscheint der zugehörige Code für die PS1-Variable, den Sie einfach kopieren, im Terminal einfügen und mit Eingabetaste testen. Wenn das Ergebnis passt, übernehmen Sie die Codezeile in Ihre Datei ~/.bashrc. Die Webseite deckt längst nicht alle Möglichkeiten des Bash-Prompts ab, liefert aber zuverlässig die heiklen Farbcodes.

Dynamische Infos durch Prompt_Command: Wenn Variablen Echtzeit-aktuell im Prompt landen sollen (etwa die CPU-Auslastung), dann muss diese Variable unmittelbar vor der Prompt-Darstellung ermittelt werden. Dafür bietet die Bash-Shell einen speziellen Service: Mit

PROMPT_COMMAND=[function-name]

definieren Sie eine Function der Datei .bashrc, die bei jedem Befehl in der Kommandozeile abgerufen wird. Da dies sehr oft geschieht, sollten Sie den Rechenaufwand in Grenzen halten. Ein Beispiel für einen selbstgebauten Prompt mit Echtzeitinfos aus einem Prompt_Command sehen Sie in der Abbildung auf dieser Seite.

Farbige Dateien und Ordner: Das Terminal stellt Dateitypen und Ordner standardmäßig in unterschiedlichen Farben dar. Wenn Sie bestimmte Farben ändern möchten, erstellen Sie mit folgendem Befehl eine persönliche Konfigurationsdatei im Home-Verzeichnis:

dircolors -p > ~/.dircolors

Die versteckte Datei .dircolors können Sie dann mit einem beliebigen Editor bearbeiten. So werden zum Beispiel Ordnernamen gelb gefärbt:

DIR 01;33

Die Einstellungen dieser eigenen Farbtabelle dominieren über die Standardeinstellungen. Die Farbcodes können Sie der bereits genannten Seite https://wiki.archlinux.de/title/Bash-Prompt_anpassen entnehmen. Achten Sie auf die Tatsache, dass solche Farbdefinitionen durch Umstellen der allgemeinen Terminalfarben (siehe Punkt 1) unter Umständen unlesbar bis unbrauchbar werden. Wer hier Zeit investiert, sollte an der allgemeinen Terminaloptik nichts mehr verändern.

Diese Seite erspart das Recherchieren der Farbcodes: Auf http://ezprompt.net/ stellen Sie sich die Basis des Bash-Prompts per Mausklicks zusammen.

4. Bash-Aliases und Bash-Hotkeys

Ohne in das Bash-Scripting einzusteigen, das dieser Beitrag weitestgehend ausklammert, können einfachste Alias-Kurzbefehle und (weniger einfache) Bind-Hotkeys die Effektivität der Bash-Shell enorm steigern.

Bash-Hotkeys: Mit Tastendefinitionen sollte man sparsam umgehen, damit der Durchblick nicht verlorengeht, jedoch sind einige Nachbesserungen sinnvoll und produktiv. So ist etwa beim Editieren am Prompt zwar das Löschen vor und nach der Cursorposition mit den Hotkeys Strg-U und Strg-K vorgesehen, aber nicht das Löschen der kompletten Zeile mit einem Hotkey. Folgende Bind-Kommandos

bind '“\C-l“:kill-whole-line'
bind '“\el“:kill-whole-line'

legen den internen Befehl „kill-whole-line“ auf die Hotkeys Strg-L und Alt-L. Die Strg-Taste ist mit „\C“ einzugeben, Alt mit „\e“. Dass bei Strg die Folgetaste mit Bindestrich abzugrenzen ist, bei der Alt-Taste hingegen nicht, ist kompliziert, aber nicht zu ändern.

Folgender Befehl

bind '"\e[15~":"xdg-open . \n"'

belegt die Funktionstaste F5 so, dass sie den Standarddateimanager mit dem aktuellen Verzeichnis auslöst. Die Funktionstasten sind mit „\e[nn~“ anzugeben, wobei die Ziffer „nn“ in der Regel den Wert plus 10 der tatsächlichen Taste benötigt. Im Zweifel kann der Befehl „read“ und anschließendes Drücken der Funktionstaste über die Ziffer „nn“ informieren.

Bind-Befehle können Sie interaktiv ausprobieren; sie gelten dann bis zum Schließen des Terminals. Für permanente Gültigkeit benötigen sie einen Eintrag in die Datei ~/.bashrc.

Aliases: Kurzbefehle können die schnelle Ordnernavigation vereinfachen oder komplexe Befehle abkürzen. Der Platz für Aliases ist wieder die Datei ~/.bashrc, und die Befehle werden in einfachsten Fällen so aussehen:

alias ini='$EDITOR ~/bashrc'
alias mc='mc /srv/dev-disk-by-label-Data /srv'
alias ll='ls -alF --group-directories-first'

Aliases entschärfen die interaktive Nutzung mächtiger Terminaltools erheblich. Ein Beispiel ist etwa folgendes Alias für den Find-Befehl:

alias fn='read -p "Dateimaske (z.B. *.pdf): " TMP; find . -type f -name "$TMP"'

Nach Aufruf des Kürzels fn werden Sie mittels „read“ nach der Dateimaske gefragt, die dann etwa „*.odt“ oder auch „2018*.jpg“ lauten kann (ohne Anführungszeichen). Diese Eingabe wird mit der Variable $TMP an find weitergereicht. Das Alias geht davon aus, dass man zuerst in das gewünschte Verzeichnis gewechselt hat, denn dort startet find seine Suche (Punkt nach „find .“).

Ähnlich übergibt hier

alias ft='read -p "Alter in Tagen (z.B. 7): " TMP; find . -type f -mtime "-$TMP"'

die Variable $TMP eine Zahl an find, das dann über den Schalter „-mtime“ alle Dateien ermittelt, die in den letzten Tagen erstellt wurden.

Hotkeys für die Bash-Shell: Mit bind können Sie Tasten und Tastenkombinationen neu definieren und Programme auslösen. „bind -P“ informiert über aktuelle Belegungen.

Weniger tippen und nicht über die Syntax nachdenken: Aliases machen komplexe Bash-Kommandos – wie hier find – deutlich komfortabler.

5. Ordnernavigation im Terminal

Verzeichniswechsel mit cd gehören zu den meistgenutzten Kommandos. Auch hier gibt es eine Reihe kleiner Optimierungen.
Die häufigsten Zielordner sind am besten über ein knappes Alias zu erreichen – etwa um nach

alias d = 'cd ~/Schreibtisch'

mit der Eingabe „d“ zum Desktop zu gelangen.
Eine effiziente Lösung für schnelles Springen in wichtige Verzeichnisse ist die Variable CDPATH. In ihr lassen sich mehrere Ordnerpfade speichern. Danach kann man überall mit „cd [Verzeichnis]“ in ein Unterverzeichnis eines der gespeicherten Verzeichnisse springen. Um also etwa den Pfad „/var/www/html“ in die Variable CDPATH aufzunehmen, geben Sie

export CDPATH='.:/var/www/html/'

ein. Danach wechseln Sie von beliebiger Stelle mit „cd htdocs“ und „cd logs“ in Unterordner von „/var/www/html/“. Die CDPATH-Variable lässt sich durch eine beliebige Anzahl weiterer Verzeichnisse erweitern – jeweils durch Doppelpunkt getrennt:

export CDPATH='.:~:/var/www/html/:/media/985c9fb3-14a6-449e-bec5-4666a283fbf4/'

Hier besteht der „CDPATH“ aus dem aktuellen Verzeichnis („.“), dem Home-Verzeichnis („~“), dem Webserver-Verzeichnis und einem Mountordner. Am Anfang sollte mit „.:“ immer das aktuelle Verzeichnis stehen, damit dieses die höchste Priorität behält. Für einen dauerhaften „CDPATH“ müssen Sie die Export-Anweisung in die Datei .bashrc eintragen.

Die meisten Nutzer verwenden cd für den Verzeichniswechsel, obwohl die Alternativen pushd und popd mehr Komfort bieten, vor allem dann, wenn es häufig von einem Ordner zum anderen und wieder zurückgehen soll. Daher sorgen folgende simplen Alias-Definitionen:

alias +='pushd'
alias _='popd'

dafür, dass sich die Bash-Shell nach „+“ das letzte Verzeichnis merkt. Mit „_“ kehren Sie danach umstandslos zurück zum letzten Verzeichnis. Das normale Minuszeichen („-„) ist als Alias-Kürzel nicht möglich.

Die Bash besitzt eine optionale Autokorrektur, um Vertipper bei Verzeichnisnamen auszubessern. Diese Autokorrektur ist standardmäßig abgeschaltet, erst diese drei Befehle schalten sie ein:

shopt -s direxpand
shopt -s dirspell
shopt -s cdspell

Danach wird die Shell den Eingabefehler

cd /ect/samba/

nach /etc/samba/ korrigieren und korrekt landen. Soll die Autokorrektur permanent aktiv sein, dann müssen die Befehle in die ~/.bashrc eingetragen werden.

Effiziente Navigationshilfe: Einträge wichtiger Verzeichnisse in die Variable CDPATH erlauben den direkten Ordnerwechsel quer über Verzeichnisstruktur und Laufwerke.

6. Die wichtigsten Terminaltools

Die Aufwertung der Shell durch externe Tools ist für SSH-administrierte Server unentbehrlich, für die virtuellen Konsolen im Falle des Falles sinnvoll und selbst am Desktop erwünscht. Der letztgenannte Aspekt gilt vor allem für Nutzer, die für Datei- und Verwaltungsaufgaben generell das Terminal bevorzugen.

Taskmanager Htop: Htop (mit gleichnamigem Paketnamen) zeigt beliebig detaillierte Infos zu allen laufenden Prozessen, CPU- und Speicherauslastung und Uptime. Es beherrscht sämtliche Kill-Methoden für randalierende Tasks. Über „F2 Setup“ lässt sich das Tool hinsichtlich Anzeigeinfos und Optik sorgfältig einrichten.

Dateimanager MC: Der Midnight Commander (Paketname „mc“) kann es mit jedem grafischen Pendant aufnehmen und dabei mit 256-Farben-Skins auch noch attraktiv aussehen („Optionen -> Appearance“). Voraussetzung dafür ist der Befehl „TERM=xterm-256color“ in der Datei ~/.bashrc.

Multiterminal Screen: Terminal-Multiplexer wie Screen (mit gleichnamigem Paketnamen) verwalten mehrere Terminal-Sitzungen in einem Fenster. Solche Tools sind auf der grafischen Oberfläche unnötig, aber alternativlos auf Servern, die per SSH verwaltet werden. Wenn Sie Screen starten, scheint gar nichts zu passieren. Um die Vorzüge zu erkennen, beginnen Sie am besten von vornherein mit einer Konfigurationsdatei ~/.screenrc im Home-Verzeichnis. Diese könnte etwa so aussehen wie in der nebenstehenden Abbildung. Hier werden beim Aufruf screen drei Terminals gestartet. Die „Caption“-Anzeige sorgt dafür, dass Sie in der Fußzeile über die geladenen Terminals informiert bleiben. Die Escape-Sequenzen für „Caption“ sind mühsam, aber unter www.gnu.org/software/screen/manual gut dokumentiert.

Fundamentaler Hotkey ist Strg-a, gefolgt von einer Kommandotaste: Strg-a und nachfolgendes n oder p wechselt zur nächsten oder vorherigen Konsole. Strg-a und c startet ein weiteres Terminal, Strg-d schließt das aktuelle. Ein wichtiger Hotkey ist außerdem Strg-a und Esc, weil Sie nur dann im Screen-Fenster mit Taste oder Maus in Listen scrollen können.

Datenträgerbelegung mit Ncdu: Ncdu (mit gleichnamigem Paketnamen) sortiert Verzeichnisse nach der enthaltenen Datenmenge und bietet eine sehr viel bequemere Festplattenanalyse als das Standardwerkzeug du. Denn Ncdu beherrscht wie ein Dateimanager die Navigation zwischen den Verzeichnissen und kann aktiv löschen. Die einzig wichtige Bedienregel, die sich nicht sofort erschließt, ist die Auswahl des Startordners. Ist Ncdu nämlich einmal gestartet, wird es in keine höhere Verzeichnisebene wechseln. Wenn Sie daher das komplette Dateisystem durchforsten wollen, sollten Sie ncdu mit

ncdu /

starten. Ncdu sortiert nach Ordnergrößen, kann aber mit Taste „n“ auch nach Namen sortieren, mit „s“ wieder nach Größe („size“).

Screen und seine Konfigurationsdatei: Das Tool screen macht die typische Terminalvermehrung bei Administratoren zur übersichtlichen Angelegenheit.

7. Befehle suchen

Bash-History mit Schlüsselwörter: Ein hübscher Trick, um interessante, aber seltener genutzte Befehle bei Bedarf schnell wiederzufinden, besteht in der Kommentierung der Kommandos durch Schlüsselwörter. Ein Beispiel:

lsblk -o name,fstype,uuid,size,owner,type,mountpoint,label,model # disk partition detail

Der interaktiv so eingegebene Befehl funktioniert wie gewohnt; alles ab dem Kommentarzeichen „#“ wird einfach ignoriert. Der Befehl landet aber inklusive Kommentar in der Datei ~/.bash_history. Folglich können Sie später in der History-Suche mit Strg-R ein Schlüsselwort wie „detail“ oder „partition“ eingeben, und die Suche wird Ihnen die Befehle mit diesem Kommentar anbieten. Die Wahl der Stichwörter ist dabei die anspruchsvollste Aufgabe: Sie sollten so assoziativ ausfallen, dass Sie bei späterer Suche die Sache schnell eingrenzen können – etwa durch Kategorien wie „task, folder, partition, disk, size, user, right, info, hardware“. Natürlich sind auch deutsche Kommentierungen möglich. Wer diese Möglichkeit nicht nur künftig, sondern rückwirkend nutzen möchte, kann seine .bash_history nachträglich mit solchen Kommentaren erweitern.

Exkurs: Falls Ihre Bash-Shell interaktive Eingaben mit Kommentarzeichen nicht akzeptiert, ist eine Standardeinstellung verstellt. Sie lautet „interactive_comments“ und kann bei Bedarf mit

shopt -s interactive_comments

in der Datei ~/.bashrc explizit aktiviert werden.

Apropos-Programmsuche mit Stichwort: Eine gewaltige Hürde bei der Verwendung der Shell ist die schlichte Frage, welches Kommando sich für welche Aufgabe eignet. Infoportale im Internet sind da oft enttäuschend: Alphabetische Listen sind denkbar unpraktisch, vollständige Bash-Referenzen definitiv nicht das, was man für eine schnelle Kommando-Recherche benötigt, und vorsortierte Präsentationen der „wichtigsten“ Befehle verzichten von vornherein auf Vollständigkeit.

Für eine grobe thematische Suche eignet sich der Befehl apropos, der die Datenbank der Man-Pages nach Stichworten durchsucht (identischer Befehl „man -k [Stichwort]“). So liefert apropos zumindest einen ersten Überblick:

apropos samba

Hier erhalten Sie alle Befehle, die im Zusammenhang mit Samba-Netzwerkfreigaben stehen. Mit dem Schalter „–and“

apropos --and file rename

ist ein UND-Suche nach mehreren Stichwörtern möglich.

Whatis: Was kann ein bestimmter Befehl? Whatis ist das Gegenstück zu Apropos: Es liefert für einen angegebenen Befehl genau dieselbe Kurzbeschreibung aus den Man-Pages wie Apropos. Während Sie also mit Apropos geeignete Programme für eine bestimmte Aufgabe suchen, fragen Sie mit Whatis ab, was ein bestimmtes Programm kann:

whatis diff

Wer einen systematischen Überblick über alle auf seinem System installierten Kommandozeilenprogramme erreichen will, kann diese mit

compgen -c

auflisten und diese Liste gleich mit whatis kombinieren:

for p in $(compgen -c|sort);do whatis $p >> liste.txt;done

Das Ergebnis ist eine Textdatei liste.txt mit alphabetischer Abfolge sämtlicher Systembefehle und jeweiliger Kurzcharakterisierung durch whatis.

8. Alternative Terminals

Wie Punkt 1 zeigte, geben die Standard-Terminals der Linux-Distributionen kaum Anlass, nach Alternativen zu suchen. Die gibt es natürlich: So ist Terminator (mit gleichnamigem Paketnamen) eine Fortentwicklung von Gnome-Terminal mit etlichen Zusatzfunktionen, die etwa den Textzoom mit Strg-Mausmitteltaste erlauben (wie die Konsole unter KDE) oder automatisches Ausblenden bei Fokusverlust. Weitere Funktionen fallen gegenüber dem Gnome-Terminal eher marginal aus.

Das Terminal Terminology (mit gleichnamigem Paketnamen) stammt aus dem Enlightenment-Desktop und ist so eigenwillig wie jener. Terminology entspricht weitgehend dem Gnome-Terminal, hält aber Spezialitäten bereit, die sich nach Rechtsklick automatisch einblenden. Die hier angebotenen Split-Funktionen sowie Kopieren und Einfügen per Mausklick erhöhen den Terminal-Komfort. Unter „Einstellungen“ gibt es weitere Raffinessen wie Hintergrundbilder. Trotz dieser Vorzüge ist Terminology insgesamt gewöhnungsbedürftig und hat auch Nachteile: Schriften-, Farbdarstellung und Zoomfunktion fallen gegenüber den Standard-Terminals ab.

Tilda und Guake: Diese Dropdown-Terminals haben kein interaktiv skalierbares Fenster und keine Titelleiste, sondern blenden sich in fester, aber exakt einstellbarer Größe nach Hotkey F1 (Tilda) oder F12 (Guake) ein und aus. Das Ausblenden kann auch automatisch bei Fokusverlust eingestellt werden, also durch beliebigem Klick außerhalb des Terminalbereichs. Die Einstellungen bieten Transparenz, Einblendanimation, Farbanpassung, Shell-Tabs, Suchleiste und vieles mehr. Im Fenster läuft die Bash – alle Bash-Einstellungen werden also übernommen. Für Terminal-Vielnutzer sind diese stets im Hintergrund wartenden Bash-Dauerläufer eine klare Empfehlung. Die Unterschiede zwischen Tilda und Guake sind marginal und letztlich Geschmackssache. Tilda und Guake sind über die gleichnamigen Paketnamen überall verfügbar.

Fish ist kein alternatives Terminal, sondern eine eigene Shell. Sie ist über den Paketnamen „fish“ überall verfügbar, die aktuellste Version über ein PPA (ppa:fish-shell/nightly-master). Fish bringt Farbe ins Spiel, macht selbständig ergänzende Angebote zu partiellen Eingaben und informiert bei Syntaxfehlern vorbildlich über Korrekturen. Ein Alleinstellungsmerkmal ist die Konfiguration im Browser nach diesem Befehl:

fish_config

Unter „colors“ und „prompt“ wählen Sie aus vorgegebenen Farbschemata und Prompts, und mit „Set Theme“ oder „Set Prompt“ übernehmen Sie das Ergebnis. Wichtig sind die „abbreviations“, da Sie damit Alias-Kurzbefehle anlegen können. Für Scripts verwendet Fish „functions“ mit eigener Syntax. Zielgruppe für die Fish-Shell sind Einsteiger, denen Fish den Terminal-Umgang zunächst in der Tat vereinfacht. Das Problem ist nur, dass sich Bedienung und Script-Konzept von den Standard-Terminals stark unterscheidet: Wer der Fish-Shell wieder den Rücken kehrt, fängt mit Gnome-Terminal & Co. sowie Bash praktisch wieder von vorne an.

Fensterlos und automatisch im Hintergrund: Das Dauerterminal Tilda kann sich in den Hintergrund verabschieden, wenn ein Desktop-Element außerhalb geklickt wird (Fokusverlust).

Zurück zur Linux-Übersichtsseite…

True OS mit Datenschutz-Extra

True OS basiert auf Free BSD. Dieser Unix-Abkömmling hat viele Ähnlichkeiten mit Linux, aber auch signifikante Unterschiede. Zu den Besonderheiten von True OS zählen das Dateisystem ZFS und die portable Home-Verschlüsselung mit „PersonaCrypt“.

Auf http://distrowatch.com klopft in der letzten Zeit häufiger die Distribution True OS an die Top Ten. Ihre bisherige Top-Platzierung ist Platz 11, während sie bis vor ein, zwei Jahren noch unter „ferner liefen“ zu suchen war. Was ist dran an diesem System? Eine Frage, die ich an dieser Stelle gerne beantworte, zumal True OS ein schnelles Ausprobieren in einem Livesystem nicht vorsieht. Echtes Installieren ist unvermeidlich, um das System zu testen.

Download und Installation

Erste Informationen über True OS finden Sie auf der Projektseite: https://www.trueos.org/. Wer sich vorab detaillierter über die Hardware-Voraussetzungen und den Praxisalltag unter True OS informieren will, sollte einen Blick auf das Online-Handbuch https://www.trueos.org/handbook/trueos.html, das auch direkt über die Projektseite erreichbar ist. Aufgrund des Dateisystems ZFS sind für das an sich schlanke System etwa 4 GB RAM empfohlen, absolutes Minimum ist 1 GB.

Auf der Downloadseite https://www.trueos.org/downloads/ finden Sie Angebote aus dem Stable- und Unstable-Zweig (Stable empfohlen). Der Download des „Latest TrueOS Stable“ beträgt etwa 2,5 GB. Das ISO-Image schreiben Sie dann mit einem Tool Ihrer Wahl am besten auf eine DVD (Brasero unter Linux, Imgburn unter Windows). Eigentlich sollte auch ein USB-Stick als Installationsgerät funktionieren, jedoch war dies in unserem Fall weniger zuverlässig als das optische Medium.

Installer mit mäßiger Partitionierungshilfe: Die Einrichtung ist nichts für Anfänger. So fehlt etwa jeder Hinweis, dass eine MBR-Installation unter „Customize“ explizit eingestellt werden muss.

Wenn Sie den Zielrechner damit starten, erhalten Sie kein Livesystem, sondern einen reinen Installer. Neben der typischen Abfrage der Systemsprache geht es um die Entscheidung, ob eine grafische Oberfläche installiert und ein proprietärer Treiber für die Grafikkarte genutzt werden soll. Dann geht es zur Partitionierung: Wenn True OS die erste Festplatte „ada0“ nicht oder nicht in vollem Umfang übernehmen darf, ist der Klick auf „Customize Disk Settings“ erforderlich. Die Schaltfläche „Customize Disk Settings“ ist unbedingt auch dann notwendig, wenn True OS das alte MBR-Partitionierungsschema verwenden soll. Standardmäßig geht es von einer UEFI/GPT-Installation aus. Der hiermit gestartete „TrueOS Disk Wizard“ ist für Erfahrene akzeptabel, für Anfänger eher riskant. Wer Multiboot oder die umfassenden Pool- und RAID-Optionen von ZFS einrichten will, sollte unbedingt Erfahrung mitbringen und parallel das angesprochene Online-Handbuch benutzen.

Ersteinrichtung von True OS

Nach erfolgreicher Installation und dem ersten Start fordert das System ein Passwort für den Root-Zugang und danach ein erstes Benutzerkonto.

Die PersonaCrypt-Verschlüsselung: Schon bei Einrichtung des Erstkontos fällt die zweite Registerkarte „PersonaCrypt“ ins Auge, die auch später im „Usermanager“ für alle Benutzerkonten auftaucht. Es handelt sich um die optionale Verschlüsselung des jeweiligen Home-Verzeichnisses. Wie bei Linux-Systemen kann das Home-Verzeichnis geschützt werden, indem bei „Device“ die Option „On Disk Encryption (PEFS)“ gewählt wird. True OS kann aber an dieser Stelle mehr: Bei angeschlossenem USB-Datenträger wird dieser als „Device“ angezeigt und kann dann als Ziel für die verschlüsselten Dateien definiert werden. Das unter „PersonaCrypt“ eingegebene Passwort ist unabhängig vom Systempasswort, kann aber der Einfachheit halber auch identisch gewählt werden.

Im späteren Betrieb reagiert True OS auf PersonaCrypt-Konten wie folgt: Konten mit lokaler „On-Disk-Verschlüsselung“ werden am Anmeldebildschirm immer angezeigt, selbstverständlich auch alle Konten ohne jede Verschlüsselung. PersonaCrypt-Konten mit externen USB-Medien erscheinen jedoch nicht, sofern der Datenträger nicht angeschlossen ist. Mit anderen Worten: Die Anmeldung eines solchen Kontos ist nur möglich, wenn der Nutzer seinen Datenträger dabei hat und anschließt. Für die Anmeldung von PersonaCrypt-Konten sind immer zwei Kennwörter nötig – das Systempasswort und zusätzlich das Verschlüsselungspasswort.

Der Lumina-Desktop: Standardmäßig startet True OS seinen Stammdesktop Lumina. Diese Oberfläche ist keine Schönheit, orientiert sich aber mit Startmenü, Systemleiste und Rechtsklickmenü am Desktop weitgehend an geläufigen Standards. Über den Desktop-Rechtsklick und „Einstellungen -> Desktop Actions“ kann der Desktop als Ordner und Dateiablage genutzt werden. Wer es ganz minimalistisch haben will, kann am Anmeldebildschirm auch auf Fluxbox umstellen.

Das Software-Center: Die Software-Ausstattung ist standardmäßig ausreichend, aber eher spartanisch. Ihre Ausstattung ergänzen Sie recht komfortabel mit dem grafischen Paketmanager „AppCafe“. Ähnlich wie bei Ubuntu gibt es verschiedene Paketquellen, zwischen denen Sie über das Listenfeld in der Mitte wechseln. Stöbern Sie in den Kategorien oder suchen Sie gezielt nach Programmen. Viele der bekannten Linux-Klassiker wie Libre Office, VLC, Filezilla, MC oder Gimp sind auch in Versionen für True OS (Free BSD) zu bekommen. Auch alternative Desktops wie Mate oder XFCE sind verfügbar. Das „AppCafe“ bietet nicht den Umfang von Debian/Ubuntu-Distributionen, aber alles Wesentliche ist hier erhältlich.

Fazit: Viele Kompromisse

Das Hauptmotiv für True OS ist wohl nicht das mächtige Dateisystem ZFS mit vielen Server-relevanten Optionen für Festplattenpools und System-Snapshots. Vielmehr dürfte bestimmte Nutzer das ungewöhnliche „PersonaCrypt“ faszinieren: Die eigenen Daten sind unzugänglich, das maßgebliche Konto am Login-Bildschirm nicht einmal ersichtlich, solange der Nutzer nicht das passende USB-Gerät aus seiner Schublade holt und anschließt. Ob man solche Zwei-Geräte-Sicherheit als konsequente Datenschutzmaßnahme interpretieren oder doch überwiegend in der Ecke schmuddeliger Versteckspiele verorten will, überlassen wir dem Urteil des Lesers.

Deutlich ist, dass der Anwender für das eine oder andere interessante True-OS-Feature einige Kompromisse in Kauf nehmen muss: True OS kann weder beim Installer-Komfort noch bei der Hardware-Erkennung einem Debian/Ubuntu das Wasser reichen. Mit dem voreingestellten Lumina-Desktop gibt es dann eine allenfalls brauchbare Bedienoberfläche – selbst ein einfaches LXDE (auf Lubuntu oder Debian) kann da mindestens mithalten. Nebenbei ist das System kein Schnell-Booter und fordert, gemessen am grafischen Komfort, relativ viel Arbeitsspeicher (wegen ZFS).

Hier gibt es ein unverschlüsseltes Konto „hanna“ und ein verschlüsseltes Konto „klaus“, dessen Verschlüsselungsgerät vorliegt („Ready“). Die Anmeldung fordert zwei Kennwörter.

Zurück zur Linux-Übersichtsseite…

Odroid-Miniserver (2018)

Seit fünf Jahren versuchen zahlreiche Platinenrechner, sich neben dem erfolgreichen Raspberry Pi zu positionieren. Die Odroid-Familie war und ist dabei besonders umtriebig. Dieser Beitrag bringt einen Überblick über die Mini-Rechner aus Südkorea.

Wer meint, die koreanische Firma Hardkernel mit ihren diversen Odroid-Produkten („Open Droid“) sei ein typischer Raspberry-Trittbrettfahrer, liegt mindestens teilweise falsch. Die Firma gibt es schon länger und ihr erster Platinenrechner „Odroid-PC“ datiert aus dem Jahr 2011, also ein Jahr vor dem ersten Raspberry Pi. Richtig ist aber, dass Hardkernel früh und umtriebig auf den Erfolg des Raspberry Pi reagiert hat und seit 2012 die komplette Produktpalette als Raspberry-Konkurrenz ausrichtet. Der Raspberry-Boom veranlasste Hardkernel zur Fokussierung auf Mini-Server und Platinenrechner.
Die an sich vernünftige Kernstrategie war offenbar immer, für moderat höhere Preise deutlich mehr Leistung anzubieten als der Raspberry Pi. Die zahlreichen Odroid-Varianten der Jahre 2012 bis 2015 zeugen allerdings von hektischer Betriebsamkeit, die beim Konsumenten eine gewisse Ratlosigkeit hinterlässt, inwiefern sich die Produkte unterscheiden. Nachhaltigkeit und Weitblick war hier nicht zu erkennen, und diverse Odroid-Projekte kamen und starben wie Eintagsfliegen: Die sehr lange Spalte „Obsolete products“ auf der Herstellerseite http://www.hardkernel.com/main/products/prdt_info.php spricht für sich. Inzwischen hat Hardkernel seine Produktpalette konsolidiert. Der Durchblick ist heute einfacher, verlangt aber immer noch genaueres Hinsehen. Dies sollen die nachfolgenden Seiten leisten. Die aktuell noch gepflegten Odroid-Platinen verdienen diese Übersicht, da sie qualitativ und zumeist auch in der Komponentenzusammensetzung überzeugen. Eine Produktübersicht des Herstellers bietet die oben genannte Hardkernel-Webseite. Deutscher Vertreiber für alle Odroid-Platinen und Odroid-Zubehör ist Pollin (www.pollin.de).

Odroid XU4: Das aktuelle Spitzenmodell

Die Platine Odroid XU4 ist nicht nur das aktuelle Spitzenmodell der Hardkernel-Palette, sondern zugleich die Basis für die Varianten HC1, HC2 und MC1. Der Achtkerner arbeitet mit zwei Quadcore-CPUs, wobei je nach Auslastung der Vierkerner Cortex A15 mit 2 GHz oder der sparsamere Vierkerner Cortex A7 mit 1,4 GHz zum Zuge kommt. Mit 2 GB DDR3-RAM ist die Platine für den Serverbetrieb mehr als ausreichend bestückt. Entscheidender noch für den Datendurchsatz ist die stimmige Kombination von USB 3.0 (zweimal) mit echtem Gigabit-Ethernet. Die damit theoretisch möglichen 1000 MBit/s (125 MB/s) erreicht die Platine zwar nicht, aber 80 bis 90 MB/s sind maximal möglich. Damit gerät auch das Hantieren mit ISO-Abbildern und Filmen zur flotten Aufgabe. Als Boot- und Systemmedium kommt sowohl die typische Micro-SD-Karte als auch eine eMMC-Karte infrage. Die Auswahl des Medium erfolgt über einen kleinen Schalter auf der Platine. Für Erweiterungen und Bastellösungen gibt es zwei Pin-Anschlüsse (30 plus 12), die allerdings nicht Raspberry-kompatibel sind und daher eigene Produktlösungen benötigen. Die Platine verbraucht unter Volllast bis zu 11 Watt, im Normalbetrieb etwa 4-8 Watt.

Odroid XU4 mit und ohne Lüfter: Die flexible Platine bleibt mit Netzteil und Gehäuse knapp unter 100 Euro. Wer einen lautlosen Job erwartet, greift zur XU4Q-Variante mit passivem Kühlkörper.

Odroid XU4 als Desktop: Mit den genannten Spezifikationen ist die Platine ein idealer Datenserver für das private Netzwerk und Home Office. CPU, RAM, Mali-GPU T628 MP6 und HDMI-Port scheinen auch zum Einsatz als Desktop-Zweitrechner einzuladen, aber hier muss man nach unserer Erfahrung einige Einschränkungen akzeptieren. Das von uns getestete Ubuntu Mate 16.04.3 ist als Ersatzsystem durchaus akzeptabel, läuft aber nicht wirklich flüssig. Die Ladezeiten von großen Programmen wie Browser oder Libre-Office-Komponenten sind unbefriedigend. Alles, was mit grafischen Fenstern zu tun hat, reagiert etwas zäher als vom PC gewohnt, mit gelegentlichem Verschwinden des Mauszeigers und sporadischen Artefakten am Bildschirm. Selbst der deutlich schwächere Raspberry schlägt sich hier besser. Da die Hardware des Odroid XU4 an sich eine bessere Leistung verspricht, liegt es vermutlich an der mangelhaften Treiberanpassung.
Lüfter oder Kühlkörper: Das Kühlkonzept des Odroid XU4 wurde seit seinem Erscheinen 2015 vielfach kritisiert. Von Platinenrechnern erwarten die Kunden lautlosen, lüfterlosen Betrieb. Der XU4 kommt aber standardmäßig mit einem Lüfter, der seine kleine Maße mit hoher Drehzahl ausgleicht. Im Serverbetrieb läuft er vor allem bei größeren Datentransfers und beim Booten, im Desktop-Betrieb sehr häufig. Der Lüfter ist nicht laut, aber aufgrund der hohen Frequenz unüberhörbar. Beim Einsatz als Medienserver im Wohnzimmer kann das je nach Anspruch durchaus stören.
Hardkernel hat inzwischen doppelt reagiert: Erstens gibt es für Neukunden die Variante Odroid XU4Q mit einem passiven Kühlkörper („Q“ für „quiet“). Die ist etwas günstiger als die Variante mit Lüfter, aber etwas leistungsärmer, weil die XU4 hier häufiger auf die schwächere A7-CPU schaltet. Wer bereits einen XU4 besitzt, kann den Lüfter durch den passiven Kühlkörper ersetzen, der mittlerweile als Einzelzubehör für etwa acht Euro verkauft wird.
Preis und Ausstattung: Der Odroid XU4 kostet etwa 80, der lüfterlose XU4Q circa 75 Euro (www.pollin.de). Das sind Preisangaben, die allerdings so nicht realistisch sind: Denn dafür gibt es nur die pure Platine ohne Netzteil, ohne Gehäuse. Mit Gehäuse (8 Euro) und Netzteil (10 Euro) liegt man dann bei knapp 100 Euro Gesamtkosten.

Odroid HC1/HC2: Kleine Home-Server

„HC“ steht für „Home Cloud“. Diese beiden Odroid-Varianten basieren auf dem Modell XU4 und sind hinsichtlich CPU, GPU, RAM und Gigabit-Ethernet identisch ausgestattet. Als Betriebssysteme kommt daher alles in Betracht, womit auch dem XU4 läuft. Statt schnellem USB 3.0 (nur einmal USB 2.0) gibt es eine SATA-3-Schnittstelle für eine Festplatte oder SSD, die ähnlich typischen NAS-Geräten direkt in das Alu-Gehäuse eingeschoben und dadurch angeschlossen wird. HC1 und HC2 fokussieren ganz klar auf einen kleinen, schnellen Netzwerkspeicher für private Zwecke: klein, weil nur ein SATA-Anschluss vorliegt – schnell, weil die Kombination SATA und Gigabit-LAN noch etwas mehr Tempo liefert als die Kombination mit USB 3.0.
Achtung: HC1 und HC2 haben kein HDMI oder sonstigen Monitor-Anschluss: Das System kann nur über das Netzwerk mit SSH oder Nginx/Apache-Server (etwa mit dem NAS-System Openmediavault) erreicht und verwaltet werden.
Preis und Ausstattung: Die lüfter- und lautlosen HC1 und HC2 kosten circa 60 und 65 Euro. Der einzige Unterschied der beiden Varianten ist das Alu-Gehäuse, das beim kleinen HC1 nur ein 2,5-Zoll-Laufwerk, beim HC2 auch eine größere 3,5-Zoll-Festplatte aufnimmt. Das Gehäuse ist im Preis inbegriffen, das unentbehrliche Netzteil (ca. 8 Euro) beim Hauptvertreiber Pollin hingegen nicht.

Odroid HC1 („Home Cloud“): HC1 und HC2 können am SATA-Port genau eine Festplatte aufnehmen. Wo dies genügt, bieten die HC-Platinen ein aufgeräumtes Mini-NAS.

Odroid MC1: Rechenknecht ohne Schnittstellen

„My Cluster One“ (MC1) ist kein Produkt für Normalverbraucher. Das Gehäuse mit großem Lüfter stapelt vier abgespeckte Odroid XU4 zu einem Rechner-Cluster. Die vier Platinen besitzen lediglich Gigabit-Ethernet und einmal USB 2.0. Damit ist weder ein Server-Dienst realistisch noch ein Monitor-Output möglich. Zum Rechner-Cluster wird MC1 nicht direkt über Gehäuseanschlüsse, sondern über das Netzwerk. Dabei übernimmt eine Platine die Master-Rolle, die drei übrigen dienen als Nodes. Anleitungen zur nicht trivialen Einrichtung bietet unter anderem das hauseigene Odroid-Magazine (https://magazine.odroid.com/article/odroid-mc1-docker-swarmgetting-started-guide/). Der circa 260 Euro teure 4-Platinen-Cluster kann dann etwa komplexe mathematische Berechnungen erledigen, und dies schneller als vergleichsweise teure x86-CPUs.

Odroid MC1 („My Cluster One“): Es handelt sich um vier gestapelte, abgespeckte XU4-Platinen, die durch Cluster-Software zu einer Recheneinheit gekoppelt werden.

[[Odroid N1 wurde aus technischen Gründen eingestellt und nie verkauft…]]
Odroid N1: Das künftige Spitzenmodell

Mit einem Sechskerner, der noch leistungsstärker ausfällt als die CPU des XU4, ferner mit 4 GB RAM, einer neueren Mail-GPU (T860MP4) und zwei SATA-3-Anschlüssen ist das nächste Spitzenmodel Odroid N1 angekündigt. Die beiden USB-3.0-Ports und das Gigabit-Ethernet wie beim Odroid XU4 wird diese Platine ebenfalls mitbringen und damit weiter Richtung Highspeed-NAS gehen. Die SATA-Ports sollen einen Durchsatz von mehr als 400 MB/s erreichen, was dann allerdings nur den Transfer zwischen zwei angeschlossenen Platten optimieren wird, denn via Gigabit-Ethernet ist ja bei 125 MBit/s Schluss. Mit Netzteil und Gehäuse wird der Odroid N1 etwa 120 Euro kosten. Die Platine kommt demnächst, voraussichtlich Juni/Juli 2018, auf den Markt.

Odroid N1 ab Sommer 2018: Dieser Mini-Rechner übertrifft das bisherige Spitzenmodell XU4 noch einmal in allen Komponenten. Zudem gibt es zwei schnelle SATA-3-Anschlüsse.

Odroid H2 mit Intel-Prozessor

Die südkoreanische Firma Hardkernel hat seine Odroid-Modelle um einen neuen Platinenrechner erweitert, der in jeder Beziehung aus der Reihe tanzt. Der Odroid H2 nutzt statt ARM-Prozessor den Intel Quadcore-Celeron J4105, der laut CPU-Benchmarks annähernd die Leistung von i3-CPUs erreicht. DDR4-RAM ist von 4 bis 32 GB individuell bestückbar, ebenso der Steckplatz für eine NVMe-SSD oder jener der eMMC-Karte. Als I/O-Schnittstellen gibt es zwei SATA-3-Anschlüsse, zweimal USB 3.0, zweimal USB 2.0, zweimal Gigabit-Ethernet, HDMI, Displayport sowie Audio-In/Out. Diese für jeden Heimserver exzellenten Komponenten haben allerdings ihren Preis: Für etwa 130 Euro gibt es nur die nackte Platine, welche noch mit RAM, Netzteil, Gehäuse und optionaler NVMe-SSD erweitert werden muss und dann schnell 250 Euro aufwärts kostet. Beim Betriebssystem gibt es aufgrund der Intel-CPU keine Beschränkung.

Das neue Hardkernel-Spitzenmodell Odroid H2 war Anfang Dezember 2018 beim deutschen Händler Pollin nach einem Tag ausverkauft und bis März 2019 nicht mehr verfügbar.

Odroid H2: passive Kühlung – 2 x Ethernet, 2 x USB 3.0, HDMI, 2 x SATA 3, Audio In/Ou

Odroid C1+ und C2: Die Raspberry-Konkurrenz

Die größeren C-Varianten verstehen sich als etwas leistungsstärkere Raspberry-Konkurrenten, können aber spätestens jetzt, neben dem eben erschienenen Raspberry 3 B+ kaum noch bestehen. Odroid C1+ hat bei CPU (Quadcore, 1,5 GHz), GPU (Mali 450) und RAM (1 GB) keine überzeugenden Vorteile gegenüber dem Raspberry, und der Wert des Gigabit-Ethernet wird durch die vier USB-2.0-Ports relativiert, die den Durchsatz auf 25 bis 30 MB/s ausbremsen. Die I/O-Leistung ist damit vergleichbar mit dem jüngsten Raspberry (siehe Exkurs unten zum Raspberry Pi 3 B+). In dieser Situation wird man besser zum Original greifen. Der Odroid C2 hat zwar einen moderneren Prozessor (Cortex-A53) und 2 GB RAM, die Einschränkungen bei der I/O-Leistung gelten aber auch hier.
Preis und Ausstattung: Odroid C1+ und C2 kosten 45 und knapp 60 Euro. Diese Preise bei Pollin beinhalten weder Netzteil (5 Euro) noch Gehäuse (7 Euro).

Odroid C1+: Für diese Platine sind die Tage wohl gezählt, nachdem das jüngste Raspberry-Modell 3 B+ leistungstechnisch praktisch gleichzieht.

Odroid C0: Nackte Bastlerplatine

Odroid C0 ist ein extrem reduzierter C1+ und System-kompatibel mit diesem. Anders als der C1+ richtet sich die kleinste C-Variante aber ausschließlich an Elektronikbastler. Abgesehen vom HDMI-Ausgang ist die Platine praktisch unbestückt. Ethernet gibt es nicht, USB-Ports und GPIO-Pins können von Bastlern bei Bedarf manuell nachgerüstet werden. Die 16-Gramm-Platine bietet für circa 35 Euro praktisch nur die CPU (ARM Cortex-A5, Quadcore mit 1.5 GHz), Mali-GPU, HDMI-Port und 1 GB DDR3-RAM.

Odroid C0 nur für Elektronikbastler: Die nackte Platine hat keine Input-Schnittstellen. Schon die Einrichtung eines Systems erfordert vorab den manuellen Einbau etwa eines USB-Ports.

Alle Odroids: WLAN gibt es nur als Extra

Falls Sie bei obigen Beschreibungen den Hinweis auf WLAN vermisst haben: Die Odroid-Platinen haben tatsächlich allesamt keinen Funkchip an Bord. Das ist letztlich konsequent, weil die typischen Serveraufgaben eines XU4 oder HC1 nur mit Ethernet Sinn machen. Wer trotzdem Wifi benötigt, muss dies über einen Wifi-USB-Dongle nachrüsten. Die Hardkernel-eigenen Sticks sind allerdings in Deutschland kaum zu bekommen und müssten direkt aus Südkorea bestellt werden. Jedoch werden die Platinen auch jeden anderen Linux-kompatiblen Wifi-USB-Dongle wie den Edimax EW-7811UN, Asus N10 Nano oder CSL 300 akzeptieren. Der uns zufällig vorliegende Hercules 300 N mini funktionierte ebenfalls auf Anhieb.

Auswahl der Betriebssysteme

Für alle Odroid-Platinen gibt es ordentliche Auswahl an Linux- und Android-Betriebssystemen, die Sie nur herunterladen und mit den üblichen Werkzeugen auf Micro-SD schreiben müssen (Etcher, dd, Win 32 Disk Imager). Der Weg zu den passenden Systemen ist aber nicht optimal organisiert, weil man auf der Hersteller-Hauptseite www.hardkernel.com nicht fündig wird. Anlaufstelle ist vielmehr das Wiki https://wiki.odroid.com, das auch über die Hauptseite erreichbar ist (wenn man weiß, wo man hin muss). Hier finden Sie in der linken Spalte die Platinenmodelle, unter dem einzelnen Modell jeweils den Eintrag „os_images“. Hier erscheinen dann die offiziellen Android- und Linux-Images, ferner inoffizielle „Third party OS images“. Mit den Hardkernel-Images sind Sie auf der sicheren Seite, jedoch lohnt sich unbedingt auch die Durchsicht der inoffiziellen Systeme: Darunter befinden sich interessante Spezialsysteme wie Libreelec, Openmediavault, Volumio, Kali Linux oder Diet Pi.

Betriebssysteme für Odroid-Platinen: Der schnellste Weg zum passenden System führt über das Wiki https://wiki.odroid.com.

Exkurs 1: X86 und ARM – ein CPU-Vergleich am Beispiel Odroid XU4

Die Octacore-CPU des Odroid XU4 mit 2 GHz klingt nach mächtig viel Leistung. Jedoch handelt es sich um zwei Quadcore-ARM-Einheiten, die je nach Anforderung zur schnelleren oder stromsparenderen umschalten. Vor allem aber darf man generell die Taktraten und die Kernzahlen von ARM-Prozessoren nicht annähernd den x86-CPUs von PCs und Notebooks gleichsetzen. Die kleine Tabelle zeigt, dass die Intel Atom-CPU eines 10 Jahre alten Netbooks immer noch knapp vor der ARM-Quadcore-CPU eines Raspberry 3 liegt. Die Platine Odroid XU4 lässt diese Netbook-CPU zwar deutlich hinter sich, kommt aber nicht annähernd an Notebook- und PC-Prozessoren heran. Unser Vergleich wurde mit Sysbench auf der Kommandozeile ausgeführt.

Exkurs 2: Der neue Raspberry Pi 3 B+

Mitte März hat der Raspberry ein Upgrade erhalten. Das Modell Raspberry Pi 3 B+ ist im einschlägigen Elektronikhandel bereits erhältlich, zum üblichen Preis von knapp 40 Euro. Der Takt des Quadcore-Prozessors ist von 1,2 auf 1,4 GHz erhöht. Entscheidender sind aber die Neuerungen beim Funkmodul und beim Ethernet-Port: Der Raspberry funkt nun schneller nach dem aktuellen 802.11ac-Standard und neben dem bisherigen 2,4-GHz auch im 5-GHz-Frequenzbereich. Ebenso bemerkenswert ist der neue Gigabit-Ethernet-Port: Das ist zweifellos die Komponente, die sich Raspberry-Kunden seit Jahren am meisten wünschen. Allerdings handelt es sich um einen Kompromiss, der nicht alle zufriedenstellen wird: Da die Daten vom Ethernet-Anschluss über die USB-2.0-Schnittstelle laufen, ist der Durchsatz von 1000 MBit/s auf die maximalen 320 MBit/s von USB 2.0 gedrosselt. Im Alltag wird der Raspberry mit dieser Konstellation erfahrungsgemäß kaum mehr als 250 MBit/s schaffen, also etwa 30 MB/s. Das ist gegenüber dem bisherigem Fast Ethernet mit 100 MBit/s (etwa 12,5 MB/s) ein signifikanter Schub, aber natürlich nicht das erhoffte Gigabit-LAN. Echtes Gigabit-Ethernet wird es frühestens beim Raspberry 4 geben, der voraussichtlich 2019 erscheinen wird.

Seit März 2018: Raspberry Pi 3 B+ mit gedrosseltem Gigabit-Ethernet und WLAN 802.11ac

Zurück zur Linux-Übersichtsseite…

AppImages: Portable Software für Linux

Die traditionelle Paketverwaltung unter Linux hat fundamentale Vorzüge gegenüber dem Software-Wildwuchs à la Windows. Es ist aber andererseits auch unflexibel und wartungsaufwendig. Appimages sind eine willkommene Ergänzung.

Containerformate haben Konjunktur. Sie bieten Distributions-unabhängige Software, umgehen das Problem der Paketabhängigkeiten und erlauben den portablen Einsatz der Software. Gegenüber den technisch aufwendigeren Techniken Snap, Flatpak und Docker haben hier die Appimages einen entscheidenden Vorteil: Auf dem Zielrechner ist keinerlei Werkzeug erforderlich – keine Laufzeitumgebung, kein Paketwerkzeug. Die Images werden einfach heruntergeladen, ausführbar geschaltet und – laufen. Da Appimages keine Sandbox-Isolation (wie Docker & Co.) gegenüber dem übrigen System gewährleisten, wird der Einsatz allerdings zur Vertrauensfrage – ganz ähnlich zu Windows. Wer sich an die vertrauenswürdigen Quellen hält, hat jedoch eine überaus komfortable Technik an der Hand, seine Software-Ausstattung zu ergänzen oder gezielt auf den portablen Einsatz auszurichten.

Das Appimage-Format

Appimages gehen auf das schon 2004 geschaffene Format „klik“ zurück. Über dessen Folgeprojekt „Portable Linux Apps“ erhielt die Weiterentwicklung 2013 die Bezeichnung „Appimage“. Es gilt das Prinzip „1 app = 1 file“. Typischerweise hat diese eine Containerdatei die Endung .appimage oder nur .app. Dies dient nur der Erkennung für den Nutzer, technisch ist die Endung bedeutungslos und kann nach dem Download auch gelöscht werden. Die Containerdatei enthält neben dem eigentlichen Programm alle notwendigen Komponenten und Bibliotheken. Beim Start durch Doppelklick mountet ein Wrapper-Script zur Laufzeit alle Komponenten in das Dateisystem und lädt dann das eigentliche Programm. Typischerweise erscheint die Software in Taskmanagern dann zweimal – eine Instanz für das eigentliche Programm, die zweite für den Start-Wrapper. Der gesamte Ladevorgang ist komplexer als bei einer nativ installierten Software, was sich aber auf modernen Rechnern allenfalls messbar, aber nicht spürbar auswirkt. Der autarke Container benötigt kein besonderes Ausgangverzeichnis, sondern ist an beliebiger Stelle, auch auf externen USB-Medien lauffähig.

Appimages in der Praxis

Die wichtigsten und vertrauenswürdigen Quellen für Appimages sind folgende: https://github.com/AppImage/AppImageKit/wiki/AppImages: Diese Liste wurde zwar inzwischen durch https://appimage.github.io/apps/ ersetzt, ist aber einfacher und übersichtlicher als sein Nachfolger. Hier finden Sie namhafte Software wie Avidemux, Etcher, Gimp, Kdenlive, Krita, Openshot, Qupzilla, Scribus oder Xnview. Zum Download führt jeweils der Link „Releases“ neben dem Produktnamen und nachfolgend der Download-Link mit der Extension „.AppImage“ im Dateinamen.
https://bintray.com/probono/AppImages/ ist eine weitere große Fundgrube für Appimages unter anderem mit relativ aktuellen Browsern (Firefox, Chromium, Vivaldi) und viel Software-Prominenz wie Calibre, Clementine, Fritzing, Geany, Inkscape, Nightingale, Thunderbird, VLC, Wireshark. Nutzen Sie hier bei der jeweiligen Software den Link „Files“ und dort das Download-Angebot mit der Endung „.AppImage“. Hier lohnt es sich ferner, auf den Zeithinweis „Updated“ zu achten, um das möglichst aktuelle Image auszuwählen.
Ergänzend kann das kleinere Angebot auf https://www.linux-appimages.org/ besucht werden. Es führt aber aktuell nur in Einzelfällen über den Umfang der beiden bereits genannten Quellen hinaus.
Nach dem Download sollten Sie bei aller Portabilität des Pakets dieses in ein Verzeichnis verschieben, wo es dann voraussichtlich verbleiben wird. Das dient erstens der Ordnung und ist zweitens sogar notwendig, wenn Sie die spätere Option zur Systemintegration wahrnehmen wollen (siehe unten). Danach schalten Sie die Imagedatei ausführbar, entweder mit

chmod +x [name]

im Terminal oder über „Eigenschaften -> Zugriffsrechte“ im Dateimanager. Ab sofort ist die Software einsatzbereit. Beim ersten Start erscheint häufig die Abfrage „Would you like to integrate…“. Wenn Sie mit „Yes“ zustimmen, schreibt das Programm unter /usr/share/app-install/desktop seine .desktop-Datei. Dies führt dazu, dass es künftig im Startmenü oder Such-Dash des Systems auftaucht, außerdem im „Öffnen mit“-Dialog des Dateimanager, was die Verknüpfung mit Dateitypen erlaubt. Kurz: Das portable Programm ist damit praktisch wie eine echt installierte Software in das System integriert.
Beachten Sie ferner, dass die Image-Software selbst zwar „readonly“ ist, aber durchaus anpassungsfähig, da sie die Einstellungen im Home-Verzeichnis des Benutzers unter ~/.config/[Software], zum Teil auch direkt unter ~/.[Software] speichert. Das gewährleistet eine weitestgehend normale Nutzung. Ein Chromium-Appimage kann also durchaus Designs integrieren, eine Software wie Openshot kann wie gewohnt individuell eingerichtet werden.
Die „De-Installation“ ist natürlich ebenso einfach: Es genügt, die Appimage-Datei auf Dateiebene manuell zu löschen, gegebenenfalls auch noch den Konfigurationsordner unter ~/.config.
Da Appimages nicht update-fähig sind, sind sicherheitskritische Programme wie Browser und Mail nicht unbedingt erste Kandidaten. Einschlägig sind hingegen Tools wie Avidemux, Etcher, Krita, Openshot, Xnview, die man immer wieder mal und eventuell auf verschiedenen Linux-Systemen benötigt.

Theoretisch sind Appimages Update-fähig: Auf https://github.com/AppImage/AppImageUpdate/releases gibt es das Tool „AppImageUpdate“ – bei Redaktionsschluss AppImageUpdate-233-628bef8-x86_64.AppImage. Das Tool ist noch Beta und seinerseits ein Appimage. Nach dem Aufruf navigiert man im Dialog „Please choose an AppImage for updating“ zum fraglichen Appimage. Nach Doppelklick sucht das Tool nach Versions- und URL- Informationen im Image. Gibt es eine aktuellere Version, dann verbindet sich das Update-Tool mit der Seite des Entwicklers und lädt diese Version. Dabei sorgt eine Delta-Analyse für minimalen Download-Aufwand. Die ältere Version bleibt bestehen, kann aber natürlich gelöscht werden, wenn die neue Version problemlos läuft. Eine noch bequemere Integration in die Systemshell, die für Appimages ein Kontextmenü „Update“ anzeigt, ist noch nicht in allen Distributionen umgesetzt.

Unterm Strich ist AppImageUpdate eine sehr vielversprechende Technik, portable Linux-Programme aktuell zu halten. Leider haben viele Appimage-Entwickler die Update-Technik noch nicht auf dem Radar. Fehlen die nötigen Infos im Container, dann zeigt AppImageUpdate eine Fehlermeldung und den Rat, man solle den Entwickler informieren.

Appimages: Vorteile und Nachteile

+ universelles, Distributions-unabhängiges Format: Appimages laufen auf den allermeisten Linux-Distributionen

+ keine Installation, keine Paketabhängigkeiten

+ keine root-Rechte erforderlich, da keine Systemdateien berührt werden

+ eine Software = eine einzige Datei: läuft portabel aus jedem Ordner – auch von USB oder DVD

+ Appimages erlauben die Verwendung verschiedener Versionen nebeneinander

+ simple „De-Installation“ durch Löschen der Appimage-Datei

+ individuelle Einstellungen durch Konfigurationsdateien unter ~/.config/[Software] oder ~/.[Software]

+ optionale Systemintegration (Menü, „Öffnen mit“-Dialog) durch .desktop-Datei

– Appimages sind readonly. Für Updates ist eine besondere Technik erforderlich (siehe oben das Tool „AppImageUpdate“).

– Appimage bieten keine Sandbox-Isolation

– Appimages stammen ohne Drittkontrolle direkt vom Software-Entwickler

Der Clementine-Player ist nur als Appimage präsent, aber dennoch über die Gnome-Suche erreichbar. Dafür sorgt die beim Erststart erstellte .desktop-Datei.

Zurück zur Linux-Übersichtsseite…

Clu Linux Live

Ja, das gibt es auch noch: ein gut ausgestattetes Linux-Livesystem ohne grafischen Desktop. Beim Start des Livesystems sind vier Fragen zu beantworten, erstens nach dem (root-) Kennwort, ferner ob alle lokalen Laufwerke gemountet und ob Samba- und SSH-Server aktiviert werden sollen. Diese Entscheidungen sind alles andere als grundlos, denn wenn Sie allem zustimmen, sind sämtliche Laufwerke des darunterliegenden Rechners automatisch im Windows-Netz und via SSH freigegeben (mit dem angegebenen root-Kennwort und über die IP-Adresse). Eventuelle Datenrettung erfordert daher gar kein Terminal unter Clu Linux, sondern läuft bequem über Samba oder SSH im Netz.

Am System selbst sind alle typischen Kommandotools vorrätig, nicht zuletzt der Midnight Commander, der seinerseits als SSH-Client auf Linux-Rechner zugreifen kann. Clu Linux bootet nur von CD/DVD, kann aber als Bestandteil eines Multiboot-Sticks auf USB kopiert werden (etwa mit „Multiboot USB“).

Download (ca. 420 MB):
https://sourceforge.net/projects/clu-linux-live

Puppy-Systeme – klein und schnell

Sie sind optimale Zweitsysteme für die Hosentasche – zum Arbeiten, Surfen oder Reparieren. Die Puppy-Systeme, die Barry Kauler vor 15 Jahren entwickelt hat, sind ausgereift und flexibel, aber nicht ganz simpel.

Wer die Puppy-Familie mit Tahrpup, Slacko, Quirky, Fatdog, Macpup, Lxpup, Simplicity ignoriert, verschenkt das Potential großartiger Livesysteme: Die Puppies bringen auf typischerweise nur 200 bis 300 MB großen ISO-Abbildern kaum glaubliche Software-Sammlungen unter, haben einen RAM-Eigenbedarf von nur 60 bis 150 MB, booten fix (mit Ausnahmen) und bieten ein Konzept, um die an sich unveränderlichen Livesysteme über persistenten Speicher individuell anzupassen. Die Einrichtung birgt allerdings einige Hürden und wird begleitet von einer Dialogflut mit Frickler-Tonalität. Diese Hürden muss man erst mal nehmen. Dieser Beitrag erklärt das Puppy-Konzept, die Einrichtung der Systeme sowie Ausrichtung und Unterschiede einiger populärer Puppy-Varianten.

Einsatzgebiete: Warum Puppy?

Kleine Linux-Live-Distributionen, die sich für schwachbrüstige Hardware oder für den mobilen Einsatz als Zweitsystem eignen, gibt es zuhauf. Puppy-Varianten sind aber nicht nur besonders klein und sparsam (bei reicher Software-Ausstattung), sondern kombinieren die Sicherheit eines nicht kompromittierbaren Livesystems mit der Anpassungsfähigkeit eines installierten Linux. Das erreichen sie dadurch, dass die schreibgeschützten Squash-FS-Archive (Dateien mit der Endung -sfs) für das Kernsystem ergänzt werden durch persistenten Speicher, der System- und Software-Einstellungen sowie nachinstallierte Software bereithält. Dieser persönliche Speicher kann als einzige große Datei „pup_save.4fs“ (oder je nach Puppy-Variante ähnlich, etwa „thar_save.4fs“) oder als Ordner (etwa „tharsave“) vorliegen. Dieser Speicher wird beim Booten automatisch geladen, es sei denn, es gibt mehrere persönliche Speicher (auch das ist möglich), die eine vorherige Abfrage des Benutzer erfordern.

Livesystem mit Persistenz und individuellen Einstellungen? Auch das ist natürlich kein Alleinstellungsmerkmal von Puppy: Typische Livesysteme wie Tails oder Porteus beherrschen das ebenfalls, und sämtlichen Ubuntu-basierten Systemen kann das Tool Unetbootin zur Persistenz verhelfen, sofern man sie als Livesysteme nutzen will. Aber keine andere Linux-Linie neben Puppy hat sich so fokussiert, live, schnell, klein und optimal anpassungsfähig zu sein. Es ist letztlich ganz egal, ob der Einsatzzweck ein mobiler Werkzeugkasten, eine Arbeitsumgebung, ein Surfsystem oder sicheres Home-Banking sein soll.

Im Kern ist Puppy eine Methode, vorhandene Distributionen auf ein möglichst kleines Livesystem zu reduzieren. Während viele Projekte Linux-Systeme als Grundlage nehmen, die mit weiteren Ergänzungen ausgebaut werden, geht Puppy den umgekehrten Weg und entfernt zunächst viele Komponenten. Dazu dient das Baukastensystem „Woof-CE“ (https://github.com/puppylinux-woof-CE/woof-CE), das die Reduktion einer Distribution mit Scripts vereinfacht. Die Resultate sind Livesysteme mit eigener Bootumgebung und komfortablen Tools aus dem Puppy-Baukasten. Puppies laden sich während des Starts komplett in den Arbeitsspeicher. Im Unterschied zu typischen Linux-Verhältnissen wird der Anwender automatisch angemeldet und hat root-Rechte. Puppy ist somit kein Mehrbenutzersystem, jedoch ist möglich, Benutzerprofile mit unterschiedlichen Einstellungen zu verwenden.

Faszinierend sparsam: Auf diesem Netbook mit bescheidenem 1 GB Arbeitsspeicher meldet Puppy Tahr nur knapp 60 MB Eigenbedarf.

Die Einrichtungsmöglichkeiten

Offizielle Webseite der Puppy-Systeme ist http://puppylinux.org. Dort gibt es grundsätzliche Informationen und als Download-Link zumeist den Server http://distro.ibiblio.org/puppylinux/, der alle offiziellen Puppy-Varianten versammelt, ferner auch zahlreiche „Pets“ – Software-Pakete für Puppy-Systeme. Eine schnellere Quelle für einige prominente Puppies ist http://puppylinux.com/download.html. Download-Quellen für weniger prominente Varianten müssen Sie gegebenenfalls recherchieren. So liegt Lxpup etwa auf Sourceforge (https://sourceforge.net/projects/lxpup) oder Macpup auf http://macpup.org.

Puppy-Systeme laufen an sich hervorragend von CD und können dabei auch Benutzeranpassungen in einem Persistenz-Speicher nutzen, der dann allerdings auf einer internen Festplatte oder einem zusätzlichen USB-Stick gespeichert werden muss. Ein von CD bootendes Puppy durchläuft dabei einfach sämtliche angeschlossene Datenträger und sucht nach Persistenz-Ordnern oder Dateien in deren Hauptverzeichnis. Ungeachtet der technischen Möglichkeit und der Schnelligkeit auf CD ist Puppy aber auf CD nicht ideal, denn für Anpassungen brauchen Sie immer noch ein zweites Medium. Und als reines Livesystem auf CD ohne Persistenz ist Puppy auch nicht ideal, da Sie dann bei jedem Start der unkomfortable „Quick-Setup“-Dialog begrüßt, wo Sie zumindest die deutsche Tastaturbelegung einstellen müssen.

Ideal für Puppies sind USB-Sticks, weil Sie damit das Livesystem plus Speicher für Anpassungen an Ort und Stelle auf einem Datenträger haben. Die Größe des Sticks spielt praktisch keine Rolle: Für die meisten Puppies sind schon 1 oder 2 GB üppig und bieten ausreichend Platz für Nachinstallationen und Anpassungen. Andererseits ist es keine Platzverschwendung, eine heute übliche Stick-Größe mit entsprechender Leistung zu wählen, da der Stick zusätzlich auch als normaler Datenträger genutzt werden kann.

Die Installation aller Puppy-Varianten ist identisch. Die nachfolgende Anleitung zeigt die Einrichtung am Beispiel eines Puppy Tahr („Tahrpup“) auf USB-Stick. Dabei nehmen wir den Umweg über das Puppy Livesystem auf einer CD, weil der Puppy-Installer dies als den Normalfall annimmt und unter dieser Voraussetzung am einfachsten zu durchlaufen ist.

Vom ISO-Abbild zum Puppy auf USB

Schreiben Sie das gewählte ISO-Image zunächst auf eine CD. Alle Puppies passen locker auf CD, eine DVD wäre Verschwendung. Die heruntergeladene ISO-Datei brennen Sie unter Linux mit einem Tool wie Brasero und der Option „Abbild brennen“, unter Windows mit der Freeware Imgburn und der Option „Imagedatei auf Disc schreiben“. Danach booten Sie einen Rechner mit optischem Laufwerk über die CD.

  1. Das Puppy-System wird am Desktop den Dialog „Quick Setup“ anzeigen. Eigentlich brauchen Sie für das temporäre Livesystem keine Einstellungen, aber es kann für die nachfolgende Einrichtung hilfreich sein, die Tastatur auf „de (Germany)“ zu setzen. Wer die Installationsdialoge in Deutsch sehen will, kann auch die Ländereinstellung auf Deutsch setzen und über den Puppy-Paketmanager (unter „Setup“ im Hauptmenü) sogar das langpack_de installieren. Wirklich notwendig ist das nicht, weil dies an dieser Stelle nur temporär bliebe und die englischsprachigen Dialoge im Installer meist klarer sind als die deutschen.
  2. Stecken Sie den USB-Stick ein, der das Puppy aufnehmen soll, und starten Sie über die Menü-Kategorie „Setup“ den „Puppy Universal Installer“ (in einigen Varianten auch nur „Puppy Installer“). Der oberste Eintrag „USB Flash Drive“ ist der richtige. Wenn nur ein Stick angeschlossen ist, wird der Installer diesen anbieten und mit Angabe der Gerätebezeichnung (etwa /dev/sdb1 oder /dev/sdc1) um Bestätigung bitten.

Puppy (Universal) Installer: Dieses Tool des Livesystems ist notwendig für die Einrichtung auf USB-Stick.

  1. An dieser Stelle besteht noch die Möglichkeit, den USB-Stick mit Gparted zu bearbeiten. Notwendig ist die Neupartitionierung nicht, weil auch die Systempartition zusätzlich als ganz normaler Datenspeicher dienen kann. Der Abstecher zu Gparted ist jedoch manchmal nötig, wenn dem USB-Stick das Boot-Flag fehlt. Der Puppy-Installer meldet das, korrigiert es aber nicht selbst. Die Korrektur erledigt dann Gparted nach Rechtsklick auf die Partition und „Markierungen bearbeiten -> Boot“.
  2. Nun folgt die Abfrage, aus welcher Quelle der Puppy Installer die maßgeblichen Systemdateien kopieren soll. In diesem Szenario mit dem Livesystem auf CD können Sie die Option „CD“ wählen.
  3. Der nächste Dialog bietet eine Auswahl von Bootsektoren. Gemäß der Empfehlung scheint mbr.bin die zuverlässigste Wahl. Vor allem aber ist wichtig, überhaupt einen Bootsektor zu wählen, denn die Voreinstellung fährt ohne Bootsektor fort. Damit wäre der Stick nicht bootfähig.
  4. Der Rest des Installer geht bei einigen Puppies grafisch weiter, oft aber im Terminal. Zunächst müssen Sie dem Vorgang noch einmal generell zustimmen, danach erscheint noch eine Option für den künftigen Systemstart, die Sie nach der Empfehlung mit „yes“ oder „ja“ beantworten.

Die nachfolgende Kopieraktion (initrd.gz, sfs-Dateien) ist angesichts der Kompaktheit schnell erledigt. Damit hat das Livesystem auf CD seinen Dienst getan. Starten Sie nun den Rechner mit dem USB-Stick.

Bootsektor nicht übersehen! Als Voreinstellung, falls Sie hier einfach weiterklicken, schreibt der Puppy Installer keinen Bootsektor auf den USB-Stick.

Einrichtung des Puppy-Systems

Auch das Puppy auf USB begrüßt Sie wieder mit dem Dialog „Quick Setup“. Hier lohnt es sich nun, alles sorgfältig einzustellen, erste Anpassungen am Desktop vorzunehmen und im Puppy-Paketmanager das langpack_de oder andere Software nachzuinstallieren. Das Systemtool, solche Änderungen außerhalb des Livesystems zu sichern, also den persönlichen Speicherbereich anzulegen, suchen Sie vergebens. Es startet aber automatisch, sobald Sie das neue Puppy zum allerersten Mal herunterfahren („Exit“ im Hauptmenü). Dann erscheint „Erstmals: Sitzung speichern“ („First shutdown…“). Optik und Wortwahl dieses wichtigen Vorgangs unterscheidet sich bei den Puppy-Varianten erheblich, jedoch ist das Prinzip identisch:

Antworten Sie in jedem Fall mit „Speichern“ (oder „Ja“, „Yes“). Die Auswahl einer Partition entfällt beim USB-Stick, weil das Tool hier sinnvollerweise den USB-Stick als Ziel nimmt. Verwenden Sie als Speichertyp die empfohlene Option „Folder“ („Ordner“), denn dies ist flexibler als eine Speicherdatei mit fixer Größe. Weitere Entscheidungen betreffen die optionale Verschlüsselung des Speichers und einen individuellen Namenszusatz. Danach legt das System den Speicherbereich an, kopiert die bereits angefallenen Daten und fährt herunter.

Die künftige Puppy-Nutzung gestaltet sich äußerst komfortabel: Störende Bremsen wie „Quick-Setup“ und „First shutdown“ entfallen, Software-Nachinstallationen sind durch „Quickpet“ und den „Puppy Package Manager“ schnell und einfach. Für Desktop-Anpassungen ist die Menü-Rubrik „Desktop“ einschlägig, die unter anderem den JWM Configuration Manager anbietet. Joe’s Window Manager ist die typische Puppy-Oberfläche, jedoch gibt es auch Varianten mit LXDE.

Der persönliche Speicherbereich, der alle Änderungen aufnimmt, ist auf Dateiebene unter /mnt/data/ leicht zugänglich und erlaubt damit auch einfache Experimente: Es genügt den kompletten Save-Ordner oder die Save-Datei auf gleicher Ebene und neuem Namen zu kopieren – etwa „tharsave“ als „tharsave-sepp“. Dadurch entsteht praktisch ein neues Benutzerprofil, das Sie mit eigenen Einstellungen ausstatten können. Das Puppy-System wird dann künftig beim Start eine Auswahl der Form

  • 0 none
  • 1 sdd1 /tahrsave
  • 2 sdd1 /tahrsave-sepp

anbieten, was nebenbei auch den Start des puren Livesystems (mit „none“) ermöglicht.

Alle lokalen Laufwerk zeigt Puppy standardmäßig als Desktop-Links an. Netzwerkfreigaben erreichen Sie über das Pnethood-Tool unter „Netzwerk“. Falls eine manuelle Einrichtung des Netzwerks notwendig ist, versammelt das Tool „Internet Connection Wizard“ (unter „Setup“) alle LAN-, WLAN-, Internet-, Proxy- und Firewall-Einstellungen.

Persönlichen Speicher anlegen: Die Meldung oben erscheint automatisch beim ersten Shutdown. Danach gibt es einige Entscheidungen zu treffen. Die Prozedur ist aber nur einmal zu durchlaufen.

Einfache Installationen: Puppy hat sein eigenes Paketformat (PET), macht dem Nutzer die Sache aber mit dem Package Manager und außerdem einer „Quickpet“-Vorauswahl sehr bequem.

Einige Puppy-Varianten im Steckbrief

Der ursprüngliche Entwickler Barry Kauler ist im Ruhestand und arbeitet nur noch sporadisch an Puppy. Seit den Anfangszeiten ab 2003 entstanden unzählige Varianten auf Basis des Buildsystems Woof-CE. Die offizielle Puppy-Familie unterteilt sich in zwei Hauptlinien. Die erste Puppy-Linie nennt sich „Slacko“, das die besonders kompakte Slackware als Systembasis nutzt. Die zweite Hauptlinie namens „Tahrpup“ basiert auf Ubuntu 14.04 LTS „Trusty Tahr“. Daneben gibt es inoffizielle Puppy-Systeme sowie die große Unterfamilie der „Puplets“. Dies sind mit speziellen Software-Paketen ausgestattete Puppy-Varianten, die meist im Puppy-Forum vorgestellt werden (siehe „Puplet for special features“ unter http://puppylinux.org/main/).

Im Allgemeinen fahren Sie am besten mit Puppy Slacko (Slackware) oder Puppy Thar (Ubuntu 14.04). Das auf Ubuntu 16.04 basierende und längst überfällige Xenialpup ist noch Beta. Das teilweise aus Ubuntu 16.04 gebaute Quirky vom Puppy-Gründer Barry Kauler (http://barryk.org/quirky/) ist experimentell und nicht für den Produktiveinsatz empfohlen. Das inspirierende Puppy-Konzept treibt aber allerlei Blüten, die je nach Einsatzzwecke ebenfalls interessant sein könnten:

Lxpup nutzt statt des JWM-Fenstermanagers einen soliden LXDE-Desktop, der für manche Anwender vertrauter ausfällt (https://sourceforge.net/projects/lxpup). Die vorinstallierten Programme fallen mit der Firefox-Abspaltung Palemoon, Mailclient Sylpheed oder Gparted ebenso Puppy-typisch aus wie die große Zahl kleiner System-Tools. Hauptmotiv für Lxpup ist eindeutig der LXDE-Desktop.

Simplicity ist ein Abkömmling Lxpup und geht einen Schritt weiter Richtung Desktop-System. Mit einem fast 600-MB-ISO-Abbild (http://simplicitylinux.org/) übertrifft Simplicity übliche Puppies um das Dreifache, liefert dafür aber ein komplettes Desktop-System unter einer LXDE-Oberfläche (Firefox, Skype, VLC, Libre Office). Aufgrund dieser Software sind die Hardware-Anforderungen etwas höher als bei einem reinen Puppy. Nach unserer Ansicht widerspricht Simplicity dem Konzeptkern der Puppy-Livesysteme, hat aber eine gewisse Popularität.

Macpup ist ein Puppy mit dem ganz hübschen, aber exotischen Enlightenment-Desktop (http://macpup.org) – nur für Enlightenment-Fans! Wer ein pragmatisches Zweitsystem sucht, handelt sich damit nur weitere Komplikationen ein. Immerhin handelt es sich um ein typisches Puppy mit einem nur 220 MB großen Abbild, das sogar für einen ausgewachsenen Firefox Platz findet.

Fatdog ist ein witziger Name für ein kleines Puppy-System, dessen ISO-Abbild etwa 360 MB beträgt (http://distro.ibiblio.org/fatdog/iso/). In der Runde der sonstigen Puppy-Winzlinge darf Fatdog aber in der Tat als dicker Hund gelten. Dies geht in erster Linie auf die erweiterte Software zurück, da bereits ein komplettes Libre Office, ferner Gimp und der VLC an Bord sind. Als Desktop dient LXDE mit Openbox.

Lxpup mit LXDE-Desktop: Outfit und Dialoge der Puppy-Varianten unterscheiden sich oft deutlich, die Arbeitsweise ist aber immer identisch – hier das Anlegen des Savefiles beim ersten Shutdown.

Zurück zur Linux-Übersichtsseite…