Archiv der Kategorie: Uncategorized

Bash: Filterkommandos

Die Filterbefehle Grep, Awk, Xargs & Co sind unentbehrlich, um den Textoutput von Terminalbefehlen zielsicher zu filtern. Der Beitrag erklärt die wichtigsten Filter und die Prinzipien der Benutzung.

Grep: Der horizontale Zeilenfilter

Grep ist der häufigste Textfilter, um eine eventuell seitenlange Liste auf die relevante(n) Zeile(n) abzukürzen. Grep ist relativ eingängig, weil man einfach den Textstring angibt, den die benötigten Zeilen enthalten müssen (oder nicht enthalten dürfen).

Im einfachsten Fall geht es im interaktiven Terminal nur darum, die Ausgabe übersichtlich zu halten. So zeigt etwa der mount-Befehl auf Ubuntu-Systemen mit zahlreichen Snaps überwiegend Mountpunkte, die für den Benutzer irrelevant sind. Der Befehl

mount | grep "/dev/sd"

verkürzt auf die physischen Laufwerke. In manchen Fällen ist es sinnvoll, den Filter mit „-v“ umzudrehen, um nur die Zeilen zu erhalten, wo der String nicht vorkommt:

apt list --installed | grep -v "automatisch"

Dies zeigt alle installierten Software-Pakete, die manuell nachinstalliert wurden, also nicht zum „automatisch“ mitgelieferten Umfang gehören.

Für Scripts ist es oft erforderlich, genau eine einzige Ausgabezeile eines Standardbefehls auszuwerten. Der Suchstring muss dann entsprechend eindeutig ausfallen:

free -m | grep "Speicher:"

Die weitere Auswertung der verbleibenden Zeile kann dann das Werkzeug Awk übernehmen (siehe unten). Für Scripts ist ferner die Tatsache wichtig, dass Grep den Errorlevel „1“ zurückmeldet (abzufragen mit „$?“), wenn der Textstring nicht gefunden wird:

echo $file | grep -i ".7z"
if [ $? -eq 0 ] then …

Im Prinzip eignet sich Grep auch für die Textrecherche in vielen Dateien. Das Kommando

grep -r "Bunsenlabs" .

durchsucht ab dem aktuellen Verzeichnis rekursiv alle Dateien nach dem Suchstring. Da es sich aber um reine Textdateien handeln muss, wenn die Ausgabe lesbar sein soll, bleibt der Nutzwert von Grep als Desktopsuche begrenzt. Textprofis werden dafür eher zu Recoll oder Docfetcher greifen. Die Parameter „–after-context=“ und „–before-context=“, die auf Wunsch Zeilen nach und vor dem Suchtreffer ausgeben, zielen ebenfalls auf solche Textrecherche und seien hier zumindest erwähnt.

Hinweis: Die Varianten Egrep, Fgrep, Rgrep bleiben hier unberücksichtigt. Sie sind allesamt über Grep-Schalter zu erreichen.

Grep macht Datenfluten übersichtlich: Hier kontrolliert der String „deleting“, was ein rsync-Befehl bei tatsächlicher Ausführung löschen würde.

Sort: Zeilenreihenfolge umstellen

Sort ist ein Filter, der die Datenmenge insgesamt unverändert lässt (Ausnahme Schalter „-u“). Das Sortieren kann aber die Daten in völlig neue Zusammenhänge setzen, die besseren Überblick und schnelle Auswertung ermöglichen.

Sort sortiert die Ausgaben anderer Befehle alphabetisch (Standard) oder numerisch (Schalter „-n“), bei Bedarf auch nach der gewünschten Spalte (Schalter „-k“). Vor allem die Sortierung von Listen nach einer beliebigen Spalte bringt rückt Informationen zusammen, die aus den ursprünglichen Daten nie ersichtlich wären: Der Befehl tree -isa listet alle Dateien unterhalb des aktuellen Verzeichnisses mit Bytezahl auf. Mit

tree -isa |sort -k2 -n

wird die Liste numerisch („-n“) nach dieser Größenangabe sortiert, sodass die größten Dateien am Ende erscheinen. Sortiert werden muss – etwas irritierend – nach Spalte 2, weil die beginnende Klammer „[ “ als erste Spalte zählt.

Als weiteres Beispiel sei der Befehl ps –A angeführt, der alle laufenden Prozesse zeigt. Die Ausgabe ist standardmäßig nach der PID (Prozess-ID) sortiert, was bei der Suche nach einem bestimmten Programm unübersichtlich ist. Sort macht daraus mit

ps –A | sort –k4

eine alphabetische Liste:

Sort kann nicht nur nach einer bestimmten Spalte sortieren („-k“), sondern dies auch dort, wo ungewöhnliche Spalten- und Feldbegrenzer vorliegen (Schalter „-t“). Typisch ist etwa das Semikolon in CSV-Dateien:

cat Buchungen.csv | sort -t ";" -n -k7

Wenn Spalte 7 die Buchungsbeträge enthält, wird die komplette Tabelle numerisch nach diesen Werten sortiert.

Mit Schalter „-u“, der ausschließlich horizontal und zeilenbezogen arbeitet, filtert Sort bei der Ausgabe langer Listen oder Dateien doppelte, identische Zeilen weg:

cat .bash_history | sort -u

Wer diesen Räumdienst direkt in der Originaldatei übernehmen will, nutzt am besten Sponge:

cat .bash_history | sort -u | sponge

Dies erspart den lästigen Umweg über eine sekundäre, temporäre Datei.

Hinweis Uniq: „sort -u“ macht das kleine Hilfsprogramm Uniq weitgehend überflüssig. Der Mehrwert gegenüber „sort -u“ liegt allenfalls bei der Analyse, zumal Uniq grundsätzlich nur funktioniert, wenn ein Sort-Filter vorangestellt wird:

cat .bash_history | sort | uniq -c

Dies zeigt alle Zeilen mit der Anzahl eventueller Wiederholungen. Jeder Wert größer als „1“ bedeutet einen doppelten oder vielfachen Eintrag.

Sort schafft Ordnung: Wichtige Eigenschaften sind die Sortierung nach Spalten (-k) und der Schalter für numerische Werte (-n).

Awk: Der vertikale Spaltenfilter

Awk ist das umfangreichste Filterwerkzeug und zerlegt die Textausgabe von Terminalkommandos in Spalten und Felder. Damit können Sie Spalten einer Liste ausblenden oder umstellen oder in einer Ausgabezeile genau einen bestimmten, einzelnen Wert ermitteln und weiterverarbeiten. Awk kann außerdem vorgefundene Werte gleich mathematisch verrechnen und etwa Additionen oder Divisionen erledigen.

Awk ist ein selbständiges Programmiertool. Die folgenden Beispiele können diesen Umfang nicht annähernd wiedergeben und fokussieren sich auf wichtige Aufgaben im interaktiven Einsatz oder für einfache Bash-Alias oder Funktionen. Die Arbeitsweise von Awk zeigt ein ganz simples Beispiel:

echo Anna Sepp Hans Berta | awk '{print $1 $4 $3 $2}'

Die Felder (hier Namen) werden umgestellt, sind aber ohne Trenner schlecht lesbar – also:

echo Anna Sepp Hans Berta | awk '{print $1 "\t" $4 "\t" $3 "\t" $2}'

Dies setzt einen Tabulator zwischen die Felder.

Nun wird es ernster: Awk soll aus dem Standardbefehl Top die aktuelle CPU-Last abgreifen und nur diesen einzigen Wert anzeigen:

top -n1 | grep "CPU(s)" | awk '{print 100-$8"%"}'

Feld 8 in der Zeile „CPU(s)“, die Grep vorfiltert, enthält den aktuellen Idle-Wert. Von 100 subtrahiert, ergibt sich die aktuelle CPU-Last.

Eigentlich ist Awk in diesem Fall gar nicht auf Grep angewiesen: Wenn eine Befehlsausgabe wie der Header von Top genau normiert ist, also von vornherein klar, in welcher Zeile welche Information erscheint, dann kann Awk auf die Nachhilfe von horizontalen Filtern verzichten. Mit „NR==“ lässt sich die exakte Zeilennummer einstellen und nachfolgend auswerten. Das folgende Beispiel ermittelt die aktuelle RAM-Belegung aus Zeile 4 des Top-Kommandos:

top -n1 | awk 'NR==4 {print int($8) " MB belegt von " int($4) " MB"}'

Dies wird ein Ergebnis wie „524 MB belegt von 3732 MB“ erzeugen. Die Funktion „int“ ist nicht zwingend, bereinigt aber auf gut lesbare Ganzzahlen.

Auf diese Weise wird es relativ einfach, gesuchte Werte nicht nur auszugeben, sondern als Bash-Variable zur Weiterverarbeitung abzulegen:

RAM_used=$(top -n1 | awk 'NR==4 {print int($8)}')

Danach steht die Variable $RAM_used für Scripts oder Funktionen zur Verfügung.

Awk kann auch eine Zeilennummerierung ausführen:

find . | awk '{print NR "\t" $0}'

Hier will offenbar jemand wissen, wie viele Dateien sich im aktuellen Ordner befinden: Awk nummeriert die Zeilen und hängt nach Tabulator die komplette Zeile an, wie sie Find anliefert („$0“ bedeutet die gesamte Zeile ohne Feldauswahl).

Wenn statt einer klaren Tabellenstruktur die Felder durch Trenner wie Semikolon, Doppelpunkt oder Slash definiert sind, dann hilft der Awk-Schalter „-F“ („Field“):

cat /etc/passwd | awk -F: '{print $3 "\t" $1}'

Die Datei /etc/passwd nutzt den Doppelpunkt als Feldtrenner, daher „-F:“. Die Ausgabe wird dann auf Username und UID reduziert, die Spalten umgedreht (Name zuerst) und zur besseren Lesbarkeit ein Tabulator zwischengeschaltet (Tipp: Der Backslash ist das typische Signal für Sonderzeichen in Bash-Filtern – hier „\t“ für den Tabulator).

Das letzte Beispiel zeigt zugleich noch einmal, dass Awk die Spalten eines Ausgangbefehls beliebig umstellen und unnötige Spalten ausblenden kann.

Awk pickt sich jeden Wert aus Zeilen und Spalten. Dieser Filter ist für Scripts und Aliases absolut unentbehrlich.

Column: Spaltenzerlegung

Dieses Tool verbessert die Lesbarkeit unformatierter Listen signifikant. Wer Awk beherrscht, wird Column zwar nicht oft brauchen, aber das Tool ist handlich und setzt passende Tabulatoren nach Berechnung aller Daten. Es kann auch als Vorbereitung dienen, um eine weitere Zerlegung durch Awk zu erleichtern.

Vergleichen Sie die überaus schlecht lesbare Ausgabe von mount mit dieser Variante

mount | column -t

oder den Befehl cat /etc/passwd mit dieser Tabellendarstellung:

cat /etc/passwd | column -s: -t

Column ersetzt hier das Trennzeichen „:“ (Schalter „-s“ steht für Separator) durch Tabulatoren. Sortiert man das Ganze dann noch mit

cat /etc/passwd | column -s: -t | sort -n -k3

numerisch nach der User-ID in Spalte 3, ist das Resultat mit der Originaldatei kaum noch zu vergleichen. Anders als Awk oder Sed, die ebenfalls Tabulatoren einsetzen können, errechnet Column eine passende Tabulatorweite für alle Spalten der gesamten Datenmenge.

Column schafft aber auch Felder, wo vorher keine waren. Der schon früher genannte Befehl

apt list --installed

trennt die Paketnamen durch einen „/“-Slash von der nachfolgenden Paketquelle. Mit

apt list --installed | column -s/ -t

wandeln Sie den Slash-Trenner um in eine gut lesbare Tabelle und mit

apt list --installed | column -s/ -t | awk '{print $1}'

bleiben nur noch die Paketnamen der ersten Spalte übrig, die sich dann für eine Masseninstallation verwenden lässt. Hierfür ist das Tool Xargs einschlägig (siehe unten).

Hinweis: Für genau dasselbe Ergebnis des letzten Befehls reicht mit

apt list --installed | awk -F/ '{print $1}'

auch das begabte Awk allein.

Column macht Listen mit seltsamen Trennzeichen lesbar und ist vor allem zur Darstellung größerer Tabellen die optisch ansprechendste Lösung.

Cut: Spalten definieren und entfernen

Column und vor allem Awk bieten alle Möglichkeiten, um vertikale Spalten und Felder darzustellen, zu analysieren oder bei Bedarf durch Umwandlung von Trennzeichen erst herzustellen. Das Tool Cut ist technisch weitaus einfacher, aber gerade deswegen oft die unkompliziertere Alternative.

Cut eignet sich ideal, um eine bestimmte Spalte aus einer Liste zu filtern, die ihre Felder mit einem Delimiter-Zeichen wie Semikolon, Komma, Doppelpunkt, Bindestrich oder Slash trennt. Die wichtigsten Schalter von Cut sind „-d“ (Delimiter), der das Trennzeichen definiert, und „-f“ für die Angabe der gewünschten Spalten (Fields). Der Befehl

echo Anna Sepp Hugo | cut -d" " -f2

wird folglich mit „Sepp“ antworten. Das letzte Beispiel oben, das mit Column und Awk eine Paketliste erstellte, ist daher mit dem Tool Cut noch einfacher zu realisieren:

apt list --installed | cut -d/ -f1

Mit dem Schalter „-d“ wird hier der Slash „/“ als Spaltentrenner definiert und mit „-f1“ nur noch die erste Spalte angezeigt, also die puren Paketnamen. Im folgenden Beispiel

cut -d: -f1,3 /etc/passwd

reduziert Cut die genannte Datei auf die zwei Felder Usernamen und UID.

Cut ist ein relativ einfaches Tool, um gezielt eine oder mehrere Spalte(n) einer Liste zu isolieren.

Sed: Zeichen ersetzen oder löschen

Der Streameditor Sed eignet sich sowohl zur Dateibearbeitung als auch zur Korrektur des Terminaloutputs. Er ersetzt einzelne Zeichen oder Zeichenfolgen durch einen anderen String, löscht störende Zeichen oder fügt zusätzliche ein.

Sed kann automatische Textersetzungen oder Löschungen in allen Dateien des aktuellen Verzeichnisses erledigen. Ferner kann es auch als Kosmetik für schlecht lesbare Terminalbefehle dienen. Wenn das mächtige Werkzeug viele Dateien bearbeiten soll, ist Vorsicht geboten und zumindest ein vorhergehender Test zu empfehlen, der nur im Terminal angezeigt wird:

sed 's/domain.org/neue.domain.de/g' *.html

Jedes Vorkommen von „domain.org“ wird durch die neue Adresse korrigiert. Mit zusätzlichem Schalter „-i“ (oder „–in-place“) erledigt Sed die Aktion tatsächlich.

Hocheffizient, aber auch riskant sind Löschkommandos mit „d“:

sed -i '/bind /d' ~/.bashrc

Hier wird jede Zeile der angegebenen Datei gelöscht, die mit dem Kommando „bind “ beginnt.

Sed ist aber auch für die interaktive Kosmetik am Terminaloutput nützlich. Die Ausgabe des Systempfads mit

echo $PATH

trennt die Ordner bekanntlich schlecht lesbar mit Doppelpunkt. Folgende Alternative

echo $PATH | sed 's/:/\n/g'

ersetzt alle Doppelpunkte durch einen Zeilenumbruch („\n“) und macht die Ausgabe übersichtlich. Wie schon bei Awk angemerkt, ist der Backslash wieder das typische Signal für ein nachfolgendes Sonderzeichen.

Streameditor Sed: Das Tool ist ein phänomenaler Zeitsparer, erfordert aber sehr präzise und eindeutige Angaben.

Xargs: Andere Befehle füttern

Das Tool Xargs gehört in diesen Kontext, obwohl es selbst keine Filterleistung bietet. Aber es gibt vorher gefilterte Argumente oder den Inhalt einer Dateiliste direkt an einen anderen Befehl weiter. Damit ist es eine nützliche Abkürzung, die eine weitaus umständlichere Scriptverarbeitung erspart.

Im ersten einfachen Beispiel wird eine vorher angelegte Paketliste

apt-mark showmanual > liste.txt

später an diesem oder auf einem anderen System mit

cat liste.txt | xargs apt install

in einem Rutsch installiert. Xargs übergibt einfach den kompletten Inhalt der Textdatei an den Paketmanager.

Diese beiden nachfolgenden Befehle sind funktionsidentisch:

xargs -a liste.txt -n 1 apt install
cat liste.txt | xargs -n 1 apt install

Das zeilenweise Abarbeiten mit „-n 1“ ist notwendig, wenn die Listendatei für jedes Argument eine eigene Zeile nutzt.
Xargs kann auch für eine besser lesbarere oder ergänzte Terminalausgabe sorgen:

free -m | grep "Speicher" | awk '{print int(($3/$2)*100)}' | xargs -i echo {}% RAM belegt

Die Ausgabe von free wird auf die Zeile mit „Speicher“ gekürzt. Awk filtert dort die Werte für den Gesamtspeicher ($2) und den benutzten Speicher ($3) und berechnet den belegten Prozentwert (bereinigt durch „int“ auf eine Ganzzahl). Damit nicht die bloße Zahl geliefert wird, übergibt Xargs den Wert an Echo. Weil der vorher ermittelte Wert nicht am Ende des Echo-Befehls steht, muss Xargs mit Schalter „-i“ verwendet werden. Die Klammern „{}“ definieren dann die Stelle für den Übergabewert.

Xargs ist ein Wertelieferant und gibt die von Bash-Filtern gesammelten Infos an einen anderen Befehl weiter (hier nur an Echo).

Bash-Filter: More & Less

Es gibt eine Reihe weiterer (Mengen-) Filter wie More und Less zum zeilenweisen Blättern in der Ausgabe, Head und Tail zur Reduktion der Ausgabe auf die ersten oder letzten Zeilen. Dies nur der Vollständigkeit halber – denn dieser letzte Abschnitt ist eher ein Fazit.

In der Bash-Shell geht mit den genannten Tools im Prinzip alles. Wie bei allen textbasierten Shells ist es aber kein Vergnügen. Die Erbsenzählerei zum benötigten Feld für eine Awk-Auswertung ist mühsam, aber immerhin lohnend. Richtig ärgerlich ist, dass Bash-Tools keine einheitlichen Schalter haben und etwa einen Spaltentrennzeichen mal mit „-F“, mit „-d“ oder mit „-t“ definieren. Eine weitere Herausforderung ist es, dass Tools ähnliche Funktionen enthalten, die unterschiedliche Lösungen für ein und dasselbe Problem bieten. Unterm Strich sollten Grep, Sort und Awk alle Aufgaben erledigen – sofern man sie richtig beherrscht. Sed ist ein Editierautomat, der sich vornehmlich an Script- und Webentwickler richtet.

Tipps für Linux-Editoren

Ob Samba, SSH, Terminal, Fstab oder Desktop-Verknüpfungen: Für die Linux-Konfiguration sind überwiegend Textdateien zuständig, die zur Bearbeitung einen tauglichen Texteditor erfordern. Wir nehmen vier Editoren genauer unter die Lupe.

Bei der Administration von Linux-Rechnern sind Texteditoren die wichtigsten Werkzeuge. Am Desktop sind grafische Editoren wie Gedit und Kate sicher die bevorzugte Wahl. Universeller – weil auch in virtueller Konsole und im SSH-Terminal funktionierend – sind aber die textbasierten Editoren für das Terminal. Diese haben höheren Tipp- und Anpassungsbedarf als Gedit & Co und erhalten auf den folgenden Seiten gebührende Beachtung.

Der Gnome-Editor Gedit

Der Editor unter allen Gnome-affinen Desktops gehorcht durchwegs standardisierten Hotkeys zur Textnavigation und Textbearbeitung. Für Novizen gibt es im Menü sogar die Option „Tastenkürzel“, um sich alle Hotkeys anzeigen zu lassen. Nichtsdestotrotz erschließen sich nicht alle Anzeige- und Bearbeitungsmöglichkeiten auf Anhieb.

Die Seitenleiste (links) ist über „Ansicht -> Seitenleiste“ oder schneller mit F9 einzublenden. Standardmäßig ist dort der Modus „Dokumente“ aktiv, der die geöffneten Dateien auflistet. Wesentlich nützlicher ist der Modus „Dateiverwaltung“, den das Plugin „Dateiverwaltungsleiste“ bereitstellt (mehr zu Plugins siehe unten). Damit erhält Gedit eine Ordnernavigation, die Dateimanager überflüssig macht. Der Hotkey Strg-H blendet wie im Dateimanager versteckte Dateien ein oder aus. Kontrolle über mehrere geöffnete Dateien behalten Sie immer noch durch die Tab-Register unterhalb der Titelleiste.

Das Übersichtsfenster (rechts) können Sie im Menü unter „Einstellungen -> Ansicht“ aktivieren. Der Informationswert dieser Miniaturübersicht ist gering, aber sie erlaubt mit der Maus schnelles Blättern oder Springen an entfernte Stellen in größeren Texten.

Die Plugins: Für Gedit gibt es eine ganze Reihe nützlicher Plugins, die standardmäßig nur partiell installiert und aktiv sind, wie der Gang im Menü zu „Einstellungen -> Erweiterungen“ zeigt. Alle offiziellen Plugins erreichen Sie mit dem Befehl:

sudo apt install gedit-plugins

Dies kann in keinem Fall schaden, da Sie in dem oben genannten Gedit-Dialog immer noch die Wahl haben, ein Plugin zu aktivieren oder nicht. Neben den „gedit-plugins“ gibt es auch noch das Paket „gedit-developer-plugins“. Sehr zu empfehlen sind „Wortvervollständigung“ (Autocomplete-Funktion), die „Zeichentabelle“, die sich in die Seitenleiste (links) integriert, und das nachfolgend beschriebene „Snippet“-Tool.

Gedit-Optionen: Der Editor zeigt hier seinen per Plugin eingebauten Dateimanager (linke Spalte), Tab-Verwaltung für geöffnete Dateien (oben), Syntaxhighlighting und Autosave-Funktionen.

Das Plugin „Schnipsel“ (Snippets): Dieses Plugin stattet Gedit mit Textbausteinen aus, die per Hotkey oder besser per Textkürzel (gefolgt von der Tab-Taste) eingefügt werden. Typische Kandidaten für solche Schnipsel sind Mailsignaturen, Adressen, Namen, Telefonnummern, IBAN oder auch die Grundsyntax einer Script-Konstruktion. Für Viel-Schreiber und -Scripter sind solche Schnipsel eine unschätzbare Hilfe. Bei aktivierter Erweiterung führt der Menüpunkt „Schnipsel verwalten“ zum Einrichtungsdialog, der in zahlreiche Scriptsprachen untergliedert ist. Textbausteine unter „Global“ gelten für alle Texte. Mit der „+“-Schaltfläche entsteht an der gewünschten Stelle (etwa unter „Global“) ein neuer Eintrag, dem Sie etwa den Namen „Adresse“ geben. Selbige geben Sie im Textfenster ein und definieren unten neben „Tabulatorauslösung“ ein Kürzel wie „adr“. Nach Schließen des Schnipsel-Dialogs ist der Autotext aktiv – „adr“ und Tab-Taste fügt also die komplette Adresse ein.

Hinweis: Eventuell werden die Snippets zunächst nicht gespeichert („~/.config/gedit/snippets“), wofür ein offenbar verbreiteter Fehler bei den Dateirechten verantwortlich ist. Der Terminalbefehl

sudo chmod -R 777 ~/.config/gedit

behebt das Zugriffsproblem.

Suchen und Ersetzen: Die Funktionen gehorchen den Standard-Hotkeys Strg-F und Strg-H. Der Ersetzen-Dialog ist durch seine detaillierteren Optionen die generell bessere Wahl – auch für pure Suche. Gedit kann auch nach Zeilenumbrüchen („\n“), Returns („\r“) und Tabulatoren („\t“) suchen, also etwa mit

\nif 

nach Zeilen, die mit „if“ beginnen.

Das Syntaxhighlighting: Gedit versucht automatisch zu erkennen, um welchen Text es sich handelt, und aktiviert dann das passende, farbige Syntaxhighlighting. Wenn dies unbefriedigend ausfällt, können Sie unter „“Ansicht -> Hervorhebungsmodus“ manuell eine andere Scriptsprache oder „Reiner Text“ auswählen.

Farbschema und Aussehen: Unter „Einstellungen -> Schrift und Farben“ gibt es die typischen Farbschemata „Klassisch“, „Kate“, „Kobalt“, „Oblivion“. Unabhängig vom Farbschema können Sie an gleicher Stelle die Schriftgröße definieren. Vor allem bei der Fehlersuche hilfreich sind die Zeilennummern, die Gedit unter „Einstellungen -> Ansicht“ aktiviert.

Automatische Sicherungskopien: Die Registerkarte „Einstellungen -> Editor“ zeigt zwei Optionen, um bearbeitete Dateien besser zu sichern. Sowohl die „Sicherungskopie“ als auch „Auto-Speichern“ im angegebenen Minutenintervall sind unbedingt zu empfehlen.

Zum Teil Schnickschnack, zum andern Teil unverzichtbar: Plugins wie “ Dateiverwaltungsleiste“, „Schnipsel“, „Wortvervollständigung“ und „Zeichentabelle“ ergänzen Gedit und Xed.

Xed: Der Editor des Mint-Teams

Im Zuge der Entwicklung Desktop-unabhängiger X-Apps arbeitet das Team von Linux Mint am Editor Xed. Diese Textbearbeitung unterscheidet sich äußerlich erheblich von Gedit durch ein klassisches Menü, eine Werkzeugleiste und im Hauptfenster integriertem „Suchen/Ersetzen“. Dennoch ist Xed wie Pluma (Mate-Desktop) ein Gedit-Fork mit praktisch identischer Funktionalität.

Die Bedienung von Xed erscheint uns etwas übersichtlicher, aber triftige inhaltliche Gründe, Gedit gegen Xed (ppa:embrosyn/xapps) auszutauschen, gibt es nicht. Im Gegenteil: Xed kann bislang nicht die Menge an Plugins anbieten wie sein Vorbild Gedit. Einzige Ausnahme ist das Xed-exklusive Plugin „Floskelliste“, das sich in die linke Seitenleiste (F9) integriert und vor allem für HTML-Coding alle wichtigen Tags anbietet, die dann einfach per Doppelklick in das Textfenster übernommen werden.

Plugin „Wortvervollständigung“: Das Autocomplete-Tool für Gedit und Xed indexiert den Text und macht nach Eingabe weniger Buchstaben Vorschläge.

Nano: Standardeditor im Terminal

Nano ist für das Terminal vorinstallierter Standard unter Ubuntu, Mint, Debian und Co. Das unterschätzte Tool wird im SSH-Terminal und in virtuellen Konsolen meistens nur als Notnagel akzeptiert. Dabei erlebt der 20 Jahre alte Editor eine erstaunlich dynamische Entwicklung. Aktuelle Versionen 2.9 bis 3.2 bieten bei Navigation und Markieren fast den Standard grafischer Editoren und zudem erweiterte Anpassungsmöglichkeiten über die Konfigurationsdatei „nanorc“. Die noch in vielen Distributionen vertretenen, älteren Nano-Versionen bis 2.5 benutzen hingegen eigenwillige Hotkeys, die man sich entweder angewöhnen muss oder umbelegen kann.

Neuere Nano-Versionen folgen dem Standard anderer Editoren, mit Umschalt-Taste und Cursortasten Text zu markieren. Bei älteren Nano-Versionen ist der Hotkey Alt-A erforderlich, um eine Markierung ab der Cursorposition zu starten. Danach erweitern Sie die Markierung durch Cursortasten. Erneutes Alt-A beendet die Markierungsaktion. Der Hotkey Alt-A funktioniert auch noch im neuesten Nano, ist dort aber nicht mehr unbedingt notwendig. Markierte Texte lassen sich mit Alt-6 kopieren, mit Strg-K ausschneiden, Strg-U ist der Hotkey, um Textinhalte wieder aus der Zwischenablage zu holen. Nützlich: Strg-K löscht eine komplette Zeile ungeachtet der Cursorposition.

Die Navigation im Text erfolgt durch Cursor- und Bild-Tasten, sowie Pos1 und Ende. Neuere Versionen verwenden außerdem Strg-Pos1/Ende, um zum Beginn oder Ende der ganzen Datei zu springen.

Strg-U ist der Hotkey, um die letzte Aktion rückgängig zu machen. Allerdings ist die Undo-Funktion nicht standardmäßig aktiv. Sie können Sie in der Nano-Konfigurationsdatei mit der Direktive

set undo

scharf schalten.

Die Konfigurationsdatei: Das Anpassen der globalen Konfigurationsdatei /etc/nanorc (mit Root-Recht) oder besser einer benutzerspezifischen Kopie unter ~/.nanorc lohnt sich definitiv. Hier finden Sie zahlreiche auskommentierte Optionen wie etwa die Anweisungen

set backup

und

set backupdir [Pfad]

Wird „set backup“ aktiviert (führendes „#“ löschen), erstellt Nano immer eine Sicherungskopie vom letzten Zustand im Pfad der Originaldatei. Mit aktiviertem „backupdir“ entstehen im angegebenen Zielpfad sogar durchnummerierte Versionssicherungen aller Bearbeitungsschritte. Das angegebene Backup-Verzeichnis muss natürlich existieren. Nützlich sind ferner die Optionen

set linenumbers

zur Anzeige der Zeilennummer, „set positionlog“, das bei neuerlicher Bearbeitung einer Datei sofort zur letzten Bearbeitungsstelle springt, sowie „set mouse“, das Positionieren und Markieren mit der Maus erlaubt.

Nano unterstützt außerdem Farbanpassungen. Beachten Sie, dass die Nano-Farbeinstellungen zu den globalen Terminalfarben passen müssen. Späteres Umstellen der Terminalfarben kann dazu führen, dass die Nano-Farben schlecht lesbar werden. Nano kann Elemente wie die Titelzeile („titlecolor“), die Statuszeile („statuscolor“), markierten Text („selectedcolor“ – nur in neuesten Versionen) und die Infozeilen unten einfärben („keycolor“ und „functioncolor“). Als Farben gibt es die üblichen acht Ansi-Farben (Black, White, Red, Green, Blue, Yellow, Cyan, Magenta). Die Abbildung zeigt ein Beispiel für geänderte Farbeinstellungen und die zugehörigen „set“-Befehle.

Eine der interessantesten Anpassungen sind die Hotkeys, die bei Nano zum Teil sehr gewöhnungsbedürftig ausfallen. Die Hotkey-Belegung ist ebenfalls global in der Datei /etc/nanorc oder User-spezifisch in ~/.nanorc möglich. Die Liste aller Nano-Funktionen, die Sie auf andere Hotkeys legen können, ist unter https://www.nano-editor.org/dist/v3/nano.html#Rebinding-Keys dokumentiert. Die Hotkeys sind in der Konfigurationsdatei in der Form „^“ (Strg) und „M-“ (Alt) zu hinterlegen. Um also etwa das typische Strg-C für das Kopieren von Text zu definieren, wäre folgende Zeile in der Datei nanorc zu vergeben:

bind ^C copytext main

Die Abbildung der Konfigurationsdatei auf dieser Seite zeigt eine Reihe von geänderten Hotkeys, welche die Bedienung des Editors durch standardisierte Tastenkombinationen vereinfacht. Neben den Standards Strg-C|V|X zur Textbearbeitung reagiert Nano danach auch auf Strg-F (Suche) und Strg-Q (Beenden). Beachten Sie, dass Strg-C nach dem obigen Bind-Befehl in allen Untermenüs – etwa im Kontext „Speichern“ – weiterhin als Abbruch-Hotkey arbeitet. Nur im „Main“-Bereich, also im Textfenster, erhält Strg-C seine neue Rolle.

Nano-Farben und Hotkeys: In der Konfigurationsdatei (nanorc) belegen Sie die Tastenkombinationen des Editors um. Farbanpassungen sind Geschmackssache.

Startparameter: Alle Einstellungen der Konfigurationsdatei nanorc lassen sich auch über Parameter beim Nano-Start anfordern. Ausgenommen sind lediglich die Farbdefinitionen und die Hotkey-Umbelegung. Im Allgemeinen ist es sinnvoller, die Nano-Optionen dauerhaft in der Konfiguration abzulegen, jedoch gibt es Ausnahmen: Die oben genannten Direktiven „set backup“ und „set backupdir [Pfad]“ sind nicht für jede Dateibearbeitung nötig und daher besser ad hoc anzufordern. Der Befehl

nano -B [Datei]

würde eine Sicherungskopie der editierten Datei anlegen, und

nano -C ~/nanoback [Datei]

legt bei jedem Speichern eine Versionssicherung an.

Eine ebenfalls nützliche Vorgabe, die in der Konfigurationsdatei

set const

lautet, kann beim Start mit

nano -c [Datei]

geladen werden. Dann bleibt unten die Statuszeile permanent aktiv, welche unter anderem die aktuelle Zeilenziffer anzeigt. Dies ist vor allem bei älteren Versionen nützlich, die eine „set linenumbers“ oder den Startbefehl „nano -l“ noch nicht beherrschen. Die komplette Palette der Nano-Startparameter zeigt die Dokumentation unter https://www.nano-editor.org/docs.php.

Mcedit: Editor des Midnight Commander

Auf jedem Linux-System mit installiertem Midnight Commander gibt es auch Mcedit. Auch dieser Editor wird unterschätzt und ist zunächst nicht einmal im Midnight Commander selbst als Standard vorgesehen. Dies lässt sich unter „Optionen -> Konfiguration“ mit der Einstellung „Internen Editor benutzen“ ändern. Danach ist für das Bearbeiten von Dateien (F4) Mcedit zuständig.

Mcedit ist aber ein unabhängiger Terminaleditor, den Sie auch ohne sein Hauptprogramm verwenden können:

mcedit [datei]

Mcedit zeigt die wichtigsten Bearbeitungs-Hotkeys unten an, nach F9 oder nach Klick auf die obere Infozeile erscheint ein opulentes Menü. Wer dieses Menü immer im Blick haben will, kann das bis zum Schließen des Editors über „Fenster -> Vollbild umschalten“ erreichen, was zugleich den Fenstermodus des Editors aktiviert. Wie das Menü „Fenster“ durch weitere Optionen anzeigt, beherrscht Mcedit nämlich den Umgang mit mehreren Dateien. Das kann zwar auch Nano, aber nicht mit der eleganten Fensterteilung wie Mcedit, die fast grafischen Komfort erreicht: Wenn Sie mehrere Dateien über „Datei -> Datei öffnen“ oder direkt per mcedit-Aufruf geladen haben, dann lassen sich die Dateien (nach „Fenster -> Vollbild umschalten“) skalieren und verschieben. Am Desktop funktionieren diese Aktionen exakt und komfortabel mit der Maus (Skalieren mit der Ecke rechts unten, Verschieben mit dem oberen Fensterrahmen); in der virtuellen Konsole erledigen die Cursortasten nach „Fenster -> Größe ändern“ bzw. „Fenster -> Verschieben“ das Arrangement.

Editor des Midnight Commander: Die wenigsten Nutzer wissen, dass Mcedit ein erstaunlich komfortables Fensterarrangement für mehrere geladene Dateien beherrscht.

Mcedit bietet farbige Syntaxhervorhebung unter „Optionen -> Allgemein“ und die Auswahl der Scriptsprache unter „Optionen -> Syntaxhervorhebung“. Auch in diesem Punkt ist Mcedit ausgereifter als Nano. Eine Sortierfunktion finden Sie unter „Format“, eine Codepage-Auswahl unter „Befehl -> Kodierung“. Auch das Suchen (F7) und Ersetzen (F4) von Text ist optionsreicher als unter Nano. Nützlich: Strg-Y löscht eine komplette Zeile ungeachtet der Cursorposition.

Einige fundamentale Textfunktionen sind gewöhnungsbedürftig: So ist der Text beim Verschieben erst mit der Maus (oder mit Umschalt-Taste und Cursor) zu markieren, anschließend mit Cursor oder Bild-oben/unten an die gewünschte Stelle zu navigieren und dann mit F6 das Verschieben auszulösen. Hier lohnen sich Anpassungen der mc.keymap (siehe unten). Der alte Modus beim Markieren, mit F3 zunächst die Markierfunktion aufzurufen, ist nicht mehr notwendig, da das standardisierte Markieren mit Umschalt-Taste funktioniert. Der F3-Modus besteht aber fort, und ist für die Windows-SSH-Clients Putty/Kitty weiterhin unentbehrlich.

Anpassung der Hotkeys: Trotz des alternativen Menüangebots von Mcedit machen angepasste Tastenkombination die Bedienung einfacher, wenn Sie sich standardisierte Hotkeys einrichten. Das sollte aber in der umfangreichen Keymap-Datei des Midnight Commander dosiert und mit Rückversicherung erfolgen. Verwenden Sie besser nicht die globale Datei „/etc/mc/mc.keymap“, sondern kopieren Sie diese nach „~/.config/mc/mc.keymap“, also in Ihr Home-Verzeichnis. So bleibt das Original unter „/etc“ als Rückversicherung erhalten.

Alle Optionen für Mcedit befinden sich im Abschnitt „[editor]“. Ein nützlicher Eingriff besteht etwa darin, die altertümlichen Hotkeys „ctrl-insert“ und „shift-insert“ für „Store“ (Copy) und „Paste“ durch geläufigeres „ctrl-c“ und „ctrl-v“ ersetzen (Strg-C, Strg-V):

[editor]

Store = ctrl-c
Paste = ctrl-v

Natürlich kann man sich auch die Textsuche, Folgesuche und Ersetzen mit

Search = ctrl-f

SearchContinue = ctrl-n

Replace = ctrl-r

auf einprägsamere Hotkeys legen. Änderungen an der mc.keymap werden immer erst nach dem nächsten Start des Programms gültig. Das Menü des Editors lernt dabei flexibel mit: Es zeigt die von Ihnen definierten Hotkeys.

Alleskönner VLC

Der Media Player VLC darf auf keinem Linux- oder Windows-Rechner fehlen, weil er praktisch alle Video- und Musik-Formate abspielt. Viele Möglichkeiten vergräbt das Multitalent hinter Schaltern und einer anspruchsvollen Konfigurationsoberfläche,

Der VLC – kurz für „Videolan Client“ – kann eigentlich alles rund um Film und Sound und macht diverse Player-Alternativen und Multimedia-Tools weitgehend überflüssig. Optischer Schick und benutzerfreundliche Konfiguration sind freilich nicht seine Stärken. So bleibt meist viel Potential ungenutzt oder es kommen neben dem VLC weitere ergänzende Player und Helfer zum Einsatz. Das ist nicht falsch und manchmal komfortabler, aber technisch notwendig wäre es nicht, wie dieser Ratgeber zeigen soll.

Projektseite und Download: www.videolan.org

Dokumentation: http://wiki.videolan.org mit Infos zu Installation, Menü-Angebot, Konfiguration, Startparameter, Netzwerk-Streaming, Stream-Ausgabe und vieles mehr. Nutzen Sie in der linken Spalte den Eintrag „Documentation“.

Weitere Tipps & Infos: http://wiki.ubuntuusers.de/vlc

VLC-Installation unter Linux

Alle Linux-Distributionen halten den VLC Media Player in ihren Standardpaketquellen bereit. Die Installation ist entsprechend einfach und problemlos. Installieren Sie das Paket „vlc“, optional zusätzlich „browser-plugin-vlc“ (Browser-Integration):

sudo apt­ install vlc browser-plugin-vlc

Nicht immer ist schon die neueste Version verfügbar. So liegt etwa unter Ubuntu 16.04 oder Linux Mint 18 noch die Version 2.2.4 vor. Die funktionalen Unterschiede sind aber meist nicht gravierend. Notwendige Sicherheitsupdates erhalten auch die älteren Versionen. Wer trotzdem stets den aktuellsten VLC nutzen will, kann auf das PPA des Hersteller Videolan ausweichen:

sudo add-apt-repository ppa:videolan/stable-daily
sudo apt update
sudo apt install vlc

Unentbehrlich zur Wiedergabe von DVDs ist ferner die Bibliothek libdvd, die Sie mit folgenden Befehlen

sudo apt install libdvd-pkg
sudo dpkg-reconfigure libdvd-pkg

nachrüsten und integrieren.

Basisfunktionen des Players

Der VLC spielt nicht nur Audio- oder Videodateien fast jeden Dateiformats (Audio u. a. APE, FLAC, MID, MP3, OGG, WMA; Video u. a. AVI, DIVX, FLV, MKV, MP4, MPEG, VOB, WMV). Er beherrscht außerdem Musik-CDs, Film-DVDs, Blu-rays und Internet-Streams, gibt das Medienangebot von UPnP/DLNA-Servern im Heimnetz wieder, dient – in allerdings engen Grenzen – selbst als solcher UPnP-Streaming-Server und greift auf DVB-T-Hardware zu. Auch Aufnehmen und Konvertieren in andere Formate ist möglich.

Bedienungsgrundlagen: Der VLC besteht aus zwei Hauptfenstern – das Wiedergabefenster und die Wiedergabeliste. Im Allgemeinen ist es einfacher und übersichtlicher, beide Fenster zu kombinieren, was über „Ansicht -> Angedockte Wiedergabeliste“ auch die Standardvorgabe ist. In der „Wiedergabeliste“ (Strg-L) zeigt der Player zahlreiche Medienquellen. Unter der aktuellen Wiedergabeliste und der optional angelegten Medienbibliothek gibt es zunächst die lokalen Standardordner wie „Meine Videos“, die lediglich auf die entsprechenden Standardverzeichnisse unter /home/[user] verweisen. Unter „Standardgeräte“ gibt es den Zugriff auf „Platten“, also auf CD- und DVD-Laufwerke, ferner auf „MTP-Geräte“, also mobile MP3-Player, sofern angeschlossen. Eventuelle Medien-Server im lokalen Netz (UPnP/DLNA und iTunes) zeigt der VLC unter „Lokales Netzwerk“. Darunter folgt noch eine Reihe von namhaften Audio-Streaming-Diensten unter „Internet“, besonders ergiebig Icast und Jamendo.

Dateien und Medien öffnen: Sowohl das Wiedergabefenster als auch die Wiedergabe beherrschen Drag & Drop mit der Maus. Das ist der einfachste Weg, um schnell aus dem Dateimanager eine Mediendatei abzuspielen. Dabei kann der VLC auch unvollständige Videos und Audiopakete etwa schon während eines Downloads anspielen. Noch besser: Der VLC beherrscht auch ZIP- und RAR-Archive sowie das Mounten von ISO-Images: Diese Formate sind also ohne Bearbeitung sofort zu benutzen.

Das Menü „Medien“ fürs Öffnen von Dateien enthält insgesamt sechs Befehle zum Starten von Medien. Der erste Eintrag „Datei öffnen“ ist klassisch und erlaubt nach Navigation zur Quelldatei den Start derselben. Es ist hier aber auch mit den typischen Tasten Strg und Umschalt eine Mehrfachauswahl von Dateien möglich. Der Extra-Eintrag „Mehrere Dateien öffnen“ ist daher nur dann notwendig, wenn sich die Auswahl über unterschiedliche Verzeichnisse erstrecken soll; außerdem gibt es hier die zusätzliche Option, die ausgewählten Medien durch eine synchrone Mediendatei zu begleiten – etwa private Videos durch eine passende Audiodatei.

„Ordner öffnen“ kann praktisch sein, um alle Audiodateien eines Verzeichnisses einschließlich aller Unterordner (Achtung!) in die aktuelle Wiedergabeliste zu übernehmen. Auch bei typischen DVD-Rips mit mehreren VOB-Dateien ist diese Methode eleganter als die Dateien mit Filmunterbrechung einzeln zu starten.

„Medium öffnen“ benötigen Sie, um eine eingelegte DVD, Blu-ray-Disc oder Audio-CD abzuspielen. Der Dialog zeigt einige elaborierte Optionen zum Einsprungpunkt und zur Startzeit, die Sie im Normalfall ignorieren können.

„Netzwerkstream öffnen“ ist der Startdialog für jegliches lokales oder Internet-Streaming (Mediatheken, Youtube). Zum lokalen Streamen lesen Sie an späterer Stelle mehr. Für das Streamen eines Web-Videos oder Web-Radiosenders genügt es, die URL zu wissen und in diesem Dialog einzutragen – etwa http://br-brklassik-live.cast.addradio.de/br/brklassik/live/mp3/128/stream.mp3. Der Streaming-Dienst wird dann wie jedes andere Medium in die Wiedergabeliste eingetragen (in diesem Beispiel als „BR-Klassik“) und beginnt sofort mit der Wiedergabe. Zuverlässige, aktuelle und umfassende Tabellen mit direkten Stream-URLs sind rar, recht brauchbar sind www.stream-urls.de/webradio (Radio), https://wiki.ubuntuusers.de/Internet-TV/Stationen (TV) und https://wiki.ubuntuusers.de/Internetradio/Stationen (Radio).

VLC „öffnet“ alles: Das Menü „Medien“ zeigt sechs Optionen zum Starten von Film und Musik. Hier wurde „Netzwerkstream“ gewählt und die URL einer Mediathek eingegeben.

Mediensammlung im VLC anlegen

Zur bequemen Benutzung der Medien vom lokalen Rechner oder von Netzwerkfreigaben ist das manuelle Öffnen über das „Medien“-Menü nicht ausreichend. Dafür gibt es die Medienbibliothek. Um eine solche Mediensammlung anzulegen, klicken Sie in der Wiedergabeliste („Ansicht -> Wiedergabeliste“) auf den Eintrag „Medienbibliothek“ und dann im Listenfenster nach Rechtsklick auf „Verzeichnis hinzufügen“. Sie erhalten dabei keine Rückmeldung, wann der Player die Dateien einschließlich Medien-Tags eingelesen hat. Je nach Menge der Medien ist daher Geduld erforderlich. Die integrierten Stücke erscheinen dann in einer einfachen Tabelle, die sich über das Suchfeld rechts oben filtern lässt.

Die Darstellung kann über das kleine Symbol neben dem Suchfeld oder nach Rechtsklick und „Ansicht der Wiedergabeliste“ umstellen und zeigt mit der Option „Symbole“ die Alben- oder Film-Cover. Auch die Größe können Sie mit Strg-Mausrad verändern. Dennoch kann die Medien-Verwaltung mit den schickeren und strukturierten Bibliotheken anderer Player nicht mithalten. Für Puristen ist sie aber völlig ausreichend oder gar willkommen. Überflüssige Medien lassen sich mit „Ausgewählte entfernen“ wieder aus der Bibliothek löschen. Die Dateien selbst bleiben dabei erhalten.

Streams und Mediatheken in der Medienbibliothek: Wenn Sie die Streams in der Wiedergabeliste sammeln und als Datei speichern, kann die Datei wiederum in die Bibliothek integriert werden.

Streaming-Dienste in der Medienbibliothek

Die Medienbibliothek kann auch Streaming-Angebote aus dem Internet aufnehmen. Dazu ist ein kleiner Umweg erforderlich: Zunächst nehmen Sie, wie oben beschrieben, eine Reihe von Radio- oder TV-Angeboten über „Medien -> Netzwerkstream öffnen“ in die temporäre Wiedergabeliste auf. Diese Wiedergabeliste, die inhaltlich möglichst homogen sein sollte, speichern Sie dann über „Medien -> Wiedergabeliste in Datei speichern“ als xspf-Datei. Wer auf Ordnung Wert legt, kann diese XML-Datei zunächst in einen Editor laden und Standardtitel „Wiedergabeliste“, der in der dritten Zeile als

<title>Wiedergabeliste</title>

erscheint, nach Wunsch ändern – etwa auf „Rock-Radio“ oder was immer passend. Danach lässt sich diese URL-Sammlung nach Rechtsklick im Fenster der Medienbibliothek und „Datei hinzufügen“ wie ein Medium in die Bibliothek integrieren. Die xspf-Datei muss dauerhaft erhalten bleiben, wenn die VLC-Bibliothek den geänderten Titel anzeigen soll. Mit gepflegten URL-Sammlungen in der Bibliothek ist der VLC komfortabler als Lesezeichen im Browser oder spezialisierte Tools wie etwa Radiosure.

Der VLC als Bildviewer

Als Viewer für Fotos und Bilder ist der VLC nur zweite Wahl. Natürlich kann er Bildformate anzeigen, und wenn Sie mit der Maus eine Menge markierter Bilder vom Dateimanager in das Wiedergabefenster oder in die Wiedergabeliste ziehen, wird er sie sogar sofort als Slideshow im 10-Sekunden-Takt wiedergeben. Dabei ist aber weder das Intervall noch eine feste Fenstergröße konfigurierbar. Eine für diesen Einsatzzweck unentbehrliche, aber auch für Videos im Fenstermodus nützliche Option ist das Kästchen „Interface an Videogröße anpassen“ unter „Werkzeuge -> Einstellungen -> Interface“. Diese Option sollte deaktiviert werden, damit das Wiedergabefenster ungeachtet der Bild- (oder Video-) Größe konstant bleibt. Mehr als ein Hilfsviewer, wenn nichts Besseres an Bord ist, ist der VLC für Bilder dennoch nicht.

Der VLC und UPnP/DLNA-Server

Der VLC Player beherrscht in der Wiedergabeliste via „Universal Plug’n’Play“ den Zugriff auf lokale Server UPnP/DLNA-Server (NAS, Kodi, Plex, Minidlna). Einen korrekt im Netzwerk eingebundenen UPnP-Server zeigt der Player dort an und mit einem Doppelklick auf einen Eintrag navigieren Sie in der Struktur des Servers. Bei großen Mediensammlungen des UPnP-Servers kann es irritierend sein, dass der VLC die Wiedergabe erst anbietet, wenn er sämtliche Medien via Netzwerk eingelesen hat. Dies kann eventuell so lange dauern, dass der Nutzer an der Funktionalität zweifelt. Bei anderen UPnP-tauglichen Playern sind die ersten Audio- oder Video-Dateien sofort sichtbar und benutzbar, während der Player im Hintergrund weiter nachlädt. Der VLC zeigt und spielt er nach komplett abgeschlossenem Vorgang.

UPnP im VLC: Der Videolan-Player zeigt Medienserver unter „Lokales Netzwerk“. Wenn es keinen UPnP-Server gibt, fehlt der Eintrag „Universal Plug’n’Play“.

Der VLC als Streaming-Server

Einen schicken UPnP/DLNA-Server erhalten Sie mit dem VLC nicht, jedoch ist er durchaus in der Lage, ad hoc einige Film über eine Netzwerkadresse für Abspielclients bereitzustellen. Die Vorgehensweise am Rechner („Server“), der den Film bereithält:

1. Gehen Sie zunächst auf „Medien -> Stream“ (relativ am Ende des Menüs). Unter „Dateiauswahl“ navigieren Sie mit „Hinzufügen“ zur gewünschten Mediendatei. Danach klicken Sie im selben Dialog unten auf „Stream“. Im folgenden Dialog des Assistenten geht es mit „Nächstes“ einfach weiter.

2. Im Fenster „Ziel einstellen“ verwenden Sie am besten „RTP / MPEG Transport Stream“ und klicken nach dieser Auswahl rechts auf die Schaltfläche „Hinzufügen“. Geben Sie als Adresse

239.0.0.1

ein, den Standardport 5004 können Sie unverändert übernehmen. Beachten Sie, dass diese Multicast-Adresse unabhängig von Ihrem lokalen Adressbereich zu benutzen ist. Ihr Adressraum und die IP-Adresse des Server-PCs spielt hier keine Rolle.

3. Nach Klick auf „Nächstes“ kommt die Transkodierungsauswahl, die Sie auf Standard belassen können und erneut „Nächstes“ klicken. Im letzten Fenster aktivieren Sie „Alle Elementarstreams streamen“ und schließen die Aktion mit der Schaltfläche „Stream“ ab.

Beim Client – idealerweise erneut ein VLC Player – ist der Weg einfach: Gehen Sie auf „Medien -> Netzwerkstream“. Als Netzwerkadresse geben Sie hier die vorher eingerichtete Multicast-Adresse samt Port

rtp://239.255.0.1:5004

ein und klicken dann im selben Dialog unten auf die Schaltfläche „Wiedergabe“.

Hinweis: Die Methode funktioniert analog auch ohne Multicast-Adresse, sofern Sie einen Stream gezielt nur an einen Rechner schicken wollen. Dann geben Sie am Server die LAN-IP des Zielclients ein – etwa 192.178.1.10 – und greifen dann am Client den Netzwerkstream mit der Adresse „rtp://192.178.1.10“ ab. Die Multicast-Methode ist jedoch einfacher, weil Sie sich dabei um die lokalen IP-Adressen nicht kümmern müssen.

VLC als Streaming-Server: Das funktioniert technisch einwandfrei über eine Multicast-IP oder auch direkt an die Zielrechner-IP. UPnP-Komfort ist hier nicht das Ziel.

VLC-Fernbedienung mit HTTP-Server

Der VLC hat einen einfachen, eingebauten HTTP-Server, der die Steuerung des Players im Browser eines beliebigen Netzwerk-Clients ermöglicht (Tablet, Smartphone, PC). Remote-Steuerung bedeutet, dass der Rechner mit dem VLC weiterhin das Abspielgerät bleibt und der Client nur die Medienauswahl und Lautstärke erledigt. Der HTTP-Server bietet weder eine sonderlich schicke Oberfläche noch nennenswerten Bedienkomfort, genügt aber zur fundamentalen Fernsteuerung. Dies insbesondere dann, wenn im VLC eine Medienbibliothek eingerichtet ist und die Medien nicht im Dateisystem gesucht werden müssen.

Theoretisch sollte der Web-Server über „Einstellungen -> Alle -> Interface -> Hauptinterfaces“ oder auch über „Ansicht -> Interface hinzufügen -> Web“ neben der normalen Oberfläche ladbar sein. Das ist uns nicht gelungen, da der Server ein Passwort verlangt, das an dieser Stelle in den Einstellungen nicht zu vergeben ist. Hingegen funktioniert der Start des HTTP-Servers unter allen Betriebssystemen im Terminal mit dieser Kommandozeile:

vlc --intf http --http-password nix

Danach ist der VLC remote über jeden Browser mit der Adresse

[IP-Adresse]:8080

erreichbar. Bei der Authentifizierungsabfrage lassen das Feld „Benutzernamen“ leer und geben nur das Passwort ein. Statt des Stellvertreters „[IP-Adresse] verwenden Sie die tatsächliche lokale IP des Rechners, auf dem der VLC läuft – also beispielsweise „192.168.1.25:8080“.

Soll der VLC neben dem HTTP-Server auch noch seine normale Oberfläche anzeigen, ist folgender Befehl einschlägig:

vlc --intf qt --extraintf http --http-password nix

Das Interface „qt“ ist die Standardoberfläche (auch unter Windows), und über den Parameter „–extraintf …“ wird zudem der Web-Server gestartet.

((401_4_VLC-Http-Client.png))

HTTP-Server: Diese VLC-Fernbedienung via Browser leistet fundamentalen Remote-Zugriff, ist aber insgesamt etwas fummelig.

Der VLC als Konvertierer

Für den VLC sind exotische Formate kein Problem, für Smart-TV oder Tablets hingegen schon. Ungeachtet spezialisierter Tools wie Handbrake können Sie den VLC auch zum Konvertieren nutzen. Über „Medien -> Konvertieren/Speichern“ startet der zugehörige Assistent. Im Folgedialog bestimmen Sie über „Hinzufügen“ die Mediendatei und klicken dann unten auf „Konvertieren/Speichern“. Unter „Profil“ gibt es eine Dropdown-Liste mit populären Audio- und Videoformaten, wobei auch Android-Geräte, iPod und Youtube speziell berücksichtigt sind. Nachdem Sie eine Zieldatei angegeben haben, kann der Vorgang mit „Start“ beginnen. Die Konvertierung verläuft je nach Rechner in mehrfacher Geschwindigkeit, wenn Sie auf die Option „Ausgabe anzeigen“ verzichten.

Das Konvertieren funktioniert selbstverständlich auch bei Audiodateien oder Audio-CDs (wobei Sie hier statt einer Quelldatei das Medium angeben – meist „/dev/sr0“). Bei einer typischen Audio-Konvertierung nach „Audio – MP3“ sollten Sie dieses Ausgabe-„Profil“ unbedingt bearbeiten, da standardmäßig nur 128 KBit/s vorgesehen sind. Profiländerung erledigen Sie neben der Dropdown-Liste entweder punktuell über das Schraubenschlüsselsymbol, oder Sie legen mit der Schaltfläche „Neues Profil erstellen“ (ganz rechts) dauerhaft ein passendes Profil etwa mit 192 KBit/s Bitrate und 48000 Hz Sampling Rate an.

Generell zeigt sich der VLC beim Konvertieren technisch makellos, aber ohne den Komfort von Spezialisten: So bleibt die Namensvergabe beim Audio-Rippen eine manuelle Mühe.

Konvertieren mit dem VLC: Technisch arbeitet der VLC einwandfrei, fordert aber bei Musik (mehr als bei Videomaterial) einige Klicks und eventuelle Nachbearbeitung.

Optimieren der Videoausgabe

Das Untermenü „Werkzeuge -> Effekte und Filter“ ist überaus umfangreich und erlaubt fundamentale und detaillierte Darstellungsoptimierung. Wir nennen hier nur drei fundamentale Eingriffe:

Bild und Ton synchronisieren: Über „Werkzeuge -> Effekte und Filter -> Synchronisierung“ gleichen Sie aus, wenn Bild und Ton asynchron laufen – also der Ton vorauseilt oder hinterherhinkt. Den Wert müssen Sie dort in Millisekunden eingeben. Beispiel: Um den Ton um eine Sekunde nach vorne zu versetzen, wäre der Wert „-1000“ einschlägig, während „1000“ den Ton um eine Sekunde verzögert.

Drehen von Videos: Bei Videos mit dem Smartphone sind um 90 Grad gedrehte Filme recht häufig. Das kann der VLC mühelos korrigieren: Das einschlägige Werkzeug finden Sie unter „Werkzeuge -> Effekte und Filter“ auf der Registerkarte „Videoeffekte“, hier wiederum auf der Unterregisterkarte „Geometrie“. Zunächst müssen Sie die Option „Transformieren“ aktivieren. Danach lässt sich das Video per Vorgabeoptionen in der Dropdown-Liste um 90, 180 oder 270 Grad drehen, im Prinzip aber auch filigran in Gradstufen (Option „Drehen“).

Helligkeit und Farben: Ebenfalls unter „Werkzeuge -> Effekte und Filter -> Videoeffekte“ ist eine zu dunkle oder zu farblose Filmwiedergabe deutlich zu korrigieren. Das Register „Genauigkeit“ bietet unter anderem Schieberegler zu Helligkeit, Kontrast, Sättigung und Gammawert. Da ein laufender Film das Resultat der Einstellung sofort anzeigt, ist die Wiedergabe in wenigen Sekunden optimiert.

Helligkeit, Farben und Sättigung: Was sich am Monitor oder TV nicht verbessern lässt, kann der VLC über diverse Filter signifikant verbessern.
Jetzt steht der Hund auf den Beinen: Das Drehen von falsch aufgenommenen Videos ist für den VLC kein Problem (siehe „Werkzeuge -> Effekte -> Videoeffekte -> Geometrie“).

Optimale Größe bei Vollbildwiedergabe

Je nach Filmmaterial können bei der Wiedergabe auf Smart-TVs oder PC-Monitoren platzverschwendende schwarze Ränder horizontal wie vertikal erscheinen. Über den Menüpunkt „Video“ oder auch im Vollbild nach Rechtsklick und dem Kontextmenü „Video“ können Sie den Monitor eventuell besser ausnutzen. Die Optionen „Seitenverhältnis“ und „Beschneiden“ erlauben Dehnungen des Bildes und das Abschneiden von Randbereichen. Hier hilft nur empirisches Ausprobieren, da sowohl zu starke Verzerrung als auch das Abschneiden von zu viel Filmmaterial kontraproduktiv sind. Ein ganz genaues Beschneidewerkzeug gibt es außerdem unter „Werkzeuge -> Effekte und Filter -> Videoeffekte -> Beschneiden“.

Normalisierung der Lautstärke

Mediendateien haben oft sehr unterschiedliche Lautstärkepegel. Dies erfordert dann mitunter hektische Korrektur an den Lautsprecherboxen oder im Sound-Applet. Der VLC Player hat zwar keinen Einfluss auf die Lautsprecher-Stellung und den Lautstärkemixer, jedoch kann er den Startpegel reduzieren und die Lautstärke der Mediendateien angleichen (normalisieren). Die Optionen finden Sie unter Werkzeuge -> Einstellungen -> Audio“. Stellen Sie den Schieberegler neben „Audio-Start-Pegel immer zurücksetzen“ auf ein moderates Maß. Ferner aktivieren Sie im selben Dialog die Option „Normalisiere die Lautstärke“.

TV-Aufnahmen und Screenshots

Der VLC kann über „Wiedergabe -> Aufnehmen“ einen aktuell laufenden Film aufnehmen, also auf die Festplatte schreiben. Wer dies häufiger benötigt, kann unter „Ansicht“ die „Erweiterte Steuerung“ aktivieren. Dann erscheinen im Wiedergabefenster weitere Bedienelemente, unter anderem der Aufnahme-Knopf. Alle Aufnahmen werden unter Angabe der Zeit, des Sender und Namen der Sendung unter ~/Downloads/ als .ts-Datei abgelegt. Über „Werkzeuge -> Einstellungen -> Eingang / Codecs“ können Sie neben „Ausnahme-Verzeichnis oder Dateiname“ auch einen eigenen Pfad festlegen.

Über „Video -> Schnappschuss machen“ legen Sie einen Screenshot der aktuellen Filmszene ab. Zielverzeichnis und Namen für diese Bilder können Sie unter Werkzeuge -> Einstellungen -> Video“ im Bereich „Videoschnappschüsse“ selbst festlegen.

Desktop-Videos mit VLC

Der VLC unterstützt Sie auch, wenn Sie Ihre Desktop-Aktivitäten filmen möchten, um ein Videotutorial herzustellen. Für diese Aufgabe gehen Sie auf „Medien -> Aufnahmegerät öffnen“. Wählen Sie als „Aufnahmemodus“ den Eintrag „Desktop“. Unter „Optionen“ geben Sie die gewünschte Anzahl an Bildern pro Sekunde an. Für einen flüssig wirkenden Screencast ist die Voreinstellung „1,00 f/s“ zu wenig, wenigstens zwei sollten Sie eintragen. Wenn Sie vor dem Start noch etwas vorbereiten müssen, klicken Sie auf „Mehr Optionen anzeigen“ und geben eine Startzeit an. Um mit der Aufnahme zu beginnen, klicken Sie unten auf die Schaltfläche mit dem kleinen Pfeil rechts neben „Wiedergabe“ und auf „Konvertieren“. Im folgenden Dialogfenster legen Sie die „Zieldatei“ und das Format des Videos fest und beginnen die Aufnahme mit „Start“.

Lesezeichen im Film setzen

Im VLC gibt es eine Möglichkeit, Lesezeichen zu setzen, um einen Film später genau an dieser Stelle fortzusetzen. Lesezeichen für die aktuelle Stelle verwaltet der VLC über den Menüpunkt „Wiedergabe -> Benutzerdefinierte Lesezeichen“. Ein Klick auf „Erstellen“ legt einen neuen Zeitpunkt auf der Merkliste an, der als Sprungmarke funktioniert. Damit ist die Marke aber noch nicht permanent gespeichert. Dazu muss erst noch eine Playliste als Datei gespeichert werden, was Sie unter „Medien -> Wiedergabeliste in Datei speichern“ erledigen. Ein Klick auf die resultierende Datei im Dateimanager öffnet dann den Film wieder im VLC und unter „Benutzerdefinierte Lesezeichen“ liegt die Sprungmarke zur gewünschten Stelle.

Lesezeichen setzen: Zum Anhalten und Fortsetzen an einer bestimmten Filmstelle hat der VLC eine Verwaltung von Sprungmarken, die in einer Playlist gespeichert werden muss.

Mit Reset-Kommando zum Standard

Dieser Artikel hat alle Skins und LUA-Erweiterungen für den VLC ausgeklammert, da sie unterm Strich die Bedienung des VLC nicht signifikant verbessern und die Stabilität verringern. Es bleibt gegen unsere Empfehlung aber jedem Nutzer vorbehalten, sich hier umzusehen. Unter „Werkzeuge -> Plugins und Erweiterungen“ lässt sich der Plugin-Manager des VLC öffnen. Die im Web verfügbaren Erweiterungen zeigt das Tool nach Klick auf „Zusätzl. Erweiterungen im Netz finden“.

Weil das Spielen mit experimentellen Skins aber schon mal dazu führt, dass der Player nicht mehr bedienbar ist und auch seine Einstellungen nicht mehr anbietet, um dort das Problem rückgängig zu machen, ist folgender Startparameter wichtig:

vlc --reset-config

Das setzt den Player auf seine Standardoberfläche zurück, andere Einstellungen wie etwa eine eingerichtete Medienbibliothek bleiben jedoch erhalten.

Alles verschlüsselt!

Mobile Notebooks, handliche USB-Sticks, öffentliche Cloud: Alles, was das Haus und das heimische Netz verlässt, kann in fremde Hände gelangen oder ist in fremden Händen. Verschlüsselung sorgt dafür, dass die Daten nichts Persönliches preisgeben.

Hinsichtlich Datenschutz und Verschlüsselung spaltet sich die Gesellschaft so schizophren wie sonst auch: Die einen werfen ihre Privatsphäre bedenkenlos ins World Wide Web, die anderen sorgen sich bei jeder Dropbox-Datei, dass die NSA mitlesen könnte. Es ist aber nicht Ziel dieses Beitrags, die Naiven zu bekehren oder die Paranoiden zu beruhigen. Hier geht es allein um die technischen Möglichkeiten, die Linux in großer Vielfalt und Abstufung bereithält, um Daten zu verschlüsseln. Der Artikel stellt alle Methoden vor, bewertet sie und bringt eine vollständige Praxis-Anleitung für die Einrichtung und Nutzung.

1. LUKS-verschlüsseltes Linux-System

Die kompromisslose Methode, die lokalen Daten vor Fremdzugriff zu schützen, ist die Verschlüsselung der kompletten Festplatte. Mit dem auf dem Kernelmodul dm-crypt basierenden Linux Unified Key Setup (LUKS) lassen sich sowohl externe USB-Datenträger (siehe Punkt 2) als auch die Systemfestplatte selbst sicher verschlüsseln. Wir beginnen mit dem technisch anspruchsvollsten Szenario der verschlüsselten Systemfestplatte, da es durch moderne Installer zur einfachen Übung gerät und bei der Alltagsbenutzung nicht mehr Aufwand bedeutet als die Schlüsseleingabe beim Systemstart. Trotzdem sollte sich jeder Anwender, der seine Systemfestplatte verschlüsselt im Klaren sein, dass die Partitionierung komplexer wird und bei Bootproblemen höheren Reparaturaufwand verursacht.

Empfehlung: Eine LUKS-verschlüsselte Systemfestplatte ist die richtige Maßnahme für Notebooks, die viel unterwegs sind und auch jenseits des Home-Verzeichnisses vertrauliche und private Daten enthalten. Der verschlüsselte Datenträger lässt beim Booten durch ein Fremdsystem keinerlei Einblick in die Verzeichnisstruktur und in die Daten zu. Das Einzige, was ein Fremdzugriff anhand der Partitionierungsfakten in Erfahrung bringen kann, ist die Tatsache, dass die Festplatte LUKS-verschlüsselt ist.

Installation mit LUKS und LVM: Es gibt diverse grafische Linux-Installer, die beim Setup eine LUKS-verschlüsselte Systempartition einrichten können. Neben Yast unter Open Suse, dem Debian-Installer und dem Fedora-Installer bieten alle Ubuntu-basierten Distributionen inklusive Linux Mint den Installer Ubiquity, der dies beherrscht. Die folgende Anleitung orientiert sich an Ubiquity. Beachten Sie aber, dass der Ubuntu-Installer den bequemen Weg zur LUKS-verschlüsselten Systemfestplatte nur anbietet, wenn Sie ihm dafür die gesamte primäre Festplatte überlassen. Eine kompliziertere Situation mit Multiboot oder anderweitigen Partitionsaufteilungen ist nicht vorgesehen. Die Festplatte wird bei diesem Vorgang komplett gelöscht.

Starten Sie die Installation im Livesystem eines Ubuntu-Systems, und folgen Sie dem Setup-Assistenten bis zum Punkt „Installationsart“. Hier wählen Sie die erste Option „Festplatte löschen und […] installieren“. Darunter aktivieren Sie das Kästchen „Die neue Ubuntu-Installation zur Sicherheit verschlüsseln“. Sobald Sie dies tun, wird zugleich der weitere Punkt „LVM […] verwenden“ aktiv. Der Logical Volume Manager ist eine Abstraktionsschicht, um Festplatten und Partitionen flexibler zu verwalten, zusammenzufassen und dynamisch zu erweitern. In diesem Fall ist LVM notwendig, um neben der kleinen unverschlüsselten Bootpartition die LUKS-formatierte Partition und die virtuelle LVM-Partition unterzubringen, die bei korrekter Kennworteingabe unverschlüsselt ins Dateisystem geladen wird.

Wenn Sie im Assistenten mit den genannten Optionen auf „Weiter“ klicken, folgt noch die Abfrage des Sicherheitsschlüssels. Dieses Kennwort sollte komplex genug sein, um vom Assistenten als „Starkes Passwort“ gelobt zu werden. Andererseits muss die Eingabe zumutbar bleiben, denn sie ist künftig bei jedem Systemstart erforderlich. Die weitere Installation unterscheidet sich nicht mehr von einem üblichen Ubuntu-Setup.

Wenn Sie ein LUKS-verschlüsseltes System booten, erscheint künftig das Eingabefeld „Please unlock disk […]“. Dort geben Sie das Passwort ein, und erst danach kann der Systemstart fortsetzen, wobei das LUKS-Volume entsperrt und unverschlüsselt nach /dev/mapper/[sd…] gemountet wird.

Systemverschlüsselung per Setup: Dies ist die entscheidende Einstellung beim Ubuntu-Installer. Mit LVM und LUKS-Verschlüsselung bootet das System erst nach korrekter Kennworteingabe.

2. LUKS-verschlüsselte (USB-) Datenträger

Interne Laufwerke, die als reine Datenpartition dienen, sowie externe USB-Datenträger lassen sich ebenfalls mit LUKS verschlüsseln. Technisch ist dies weniger anspruchsvoll und kommt ohne LVM-Unterstützung aus. Die Einrichtung und Benutzung erfolgt auf modernen Linux-Distributionen komplett mit grafischen Werkzeugen, die den komplizierteren Weg über Terminalbefehle in der Regel überflüssig machen.

Empfehlung: Besonders USB-Sticks und handliche USB-Festplatten gehen oft verloren oder werden vergessen. LUKS ist für mobile Speicher erste Wahl, sofern die Datenträger überwiegend mit Linux gelesen und beschrieben werden. Dort, wo auch ein Windows oder ein Mac OS zugreifen soll, ist Veracrypt (siehe Punkt 6) die bessere Option.

Einrichten mit grafischen Werkzeugen: Erfreulicherweise hat LUKS-Verschlüsselung in die Systemwerkzeuge längst Einzug gehalten. Die KDE-Umgebung bietet den „KDE Partition Manager“ (partitionmanager), und die Gnome-affinen Desktops (Gnome, Mate, Unity, Cinnamon, XFCE) haben das Tool „Laufwerke“ (gnome-disks) an Bord. Wir beschreiben die wenigen Klicks zur LUKS-Verschlüsselung eines USB-Laufwerks am Beispiel von gnome-disks:

Nach Anschließen des USB-Datenträgers hängen Sie das Laufwerk zunächst mit dem kleinen schwarzen Symbol links unterhalb der Partitionsanzeige aus. Danach klicken Sie auf das Zahnradsymbol und verwenden die Option „Partition formatieren“. Im Folgedialog wählen Sie als „Typ“ den Eintrag „Verschlüsselt, kompatibel mit Linux-Systemen (LUKS + Ext4)“. Der Eintrag „Name“ ist nicht unbedingt erforderlich, macht aber den späteren Mountpunkt lesbarer. Entscheidend ist darunter die „Passphrase“ – also das Kennwort. Hier gilt wie unter Punkt 1: Das Kennwort sollte komplex sein, die Eingabe aber zumutbar bleiben, denn sie ist künftig bei jeder Nutzung des Datenträgers erforderlich. Mit Klick auf „Formatieren“ schließen Sie den Vorgang ab. Sie können nach der Formatierung den Datenträger sofort mit gnome-disks einhängen und nutzen, indem Sie auf den unteren Balken der symbolischen Anzeige klicken und die Partition mit dem Pfeilsymbol links einhängen.

Für die künftige Alltagsbedienung genügen die typischen Dateimanager Nautilus, Nemo, Caja, Dolphin. Wenn Sie das USB-Gerät anschließen, erscheint nach kurzer Frist automatisch der Dialog „Geben Sie eine Passphrase zum Entsperren […] ein“. Nach Eingabe des korrekten Kennworts ist das Medium entsperrt und im Dateimanager unter „Geräte“ normal benutzbar. An gleicher Stelle im Dateimanager können Sie den Datenträger wieder trennen („Laufwerk sicher entfernen“).

LUKS-Verschlüsselung für USB-Datenträger: Diese Aufgabe beherrschen die typischen Partitionsmanager von Desktop-Distributionen – hier gnome-disks unter Linux Mint.
Exkurs: Manuelle LUKS-Verschlüsselung

LUKS-Verschlüsselung für ein externes USB-Laufwerk kann auch ohne grafische Werkzeuge etwa auf einem Headless-Server eingerichtet werden. Die folgende Ergänzung zu den Punkten 1 und 2 dient nicht nur der Vollständigkeit, sondern soll auch die zugrundeliegenden Werkzeuge vorstellen, die unter der Haube auch von grafischen Tools wie gnome-disks genutzt werden.

Zunächst ermitteln Sie mit

lsblk

die Gerätekennung des USB-Datenträgers. Alle folgenden Kommandos gehen von der Beispielkennung /dev/sde aus, die in Ihrem Fall natürlich anders lauten kann und unbedingt entsprechend angepasst werden muss. Zunächst wird die Partitionstabelle des Sticks mit fdisk neu geschrieben:

sudo fdisk /dev/sde

Geben Sie am fdisk-Prompt „o“ ein. Dieser Befehl legt eine neue DOS-Partitionstabelle an. Sie müssen die Aktion anschließend mit dem Schreibbefehl „w“ realisieren, was zugleich fdisk beendet. Starten Sie dann fdisk erneut:

sudo fdisk /dev/sde

Jetzt legen Sie mit dem Befehl „n“ eine neue Partition an und verwenden dabei „p“ für „primary“, „1“ für Partition 1. Die zwei Abfragen der Start- und End-Sektoren quittieren Sie einfach mit der Eingabetaste. Auch hier muss abschließend der Write-Befehl „w“ erfolgen, um die Aktion tatsächlich auf den Datenträger zu schreiben.

Nun hängen Sie das Laufwerk mit

sudo umount /dev/sde?

aus und formatieren es mit LUKS. Das dazu notwendige Tool cryptsetup steht auf allen verbreiteten Distributionen zur Verfügung:

sudo cryptsetup luksFormat /dev/sde1

Der Parameter „luksFormat“ muss genau so eingegeben werden. Die nachfolgende Bestätigung mit „YES“ ist ebenfalls case-sensitiv und erfordert Großbuchstaben. Dann werden Sie nach dem „Passsatz“ gefragt, also dem Zugangskennwort. Die Eingabe erfolgt ohne Textanzeige und ohne Stellvertreterzeichen.

Nun können Sie das Laufwerk mit „luksOpen“

sudo cryptsetup luksOpen /dev/sde1 Stick

in das System laden. Der Name, hier „Stick“, ist frei wählbar. Das Laufwerk wird nun unter /dev/mapper/Stick gemountet. Zu guter Letzt braucht das Laufwerk neben LUKS noch ein normales, unverschlüsseltes Dateiformat, was Sie mit

sudo mkfs.vfat /dev/mapper/Stick -n Stick

erledigen. Das war’s. Entfernen Sie nun den Stick einfach vom Rechner. Die Prozedur ist für jeden USB-Datenträger nur einmal erforderlich.

3. Verschlüsseltes Home-Verzeichnis (Ecryptfs)

Ubuntu-Systeme einschließlich Linux Mint machen bei der Installation das Angebot, das Home-Verzeichnis zu verschlüsseln. Diese Option ist bei einer Neuinstallation immer gut zu überlegen, zumal sie nachträglich für den ersteingerichteten Benutzer nicht mehr vorgesehen ist und dann doch einige Klimmzüge erfordert. Technisch zuständig ist in diesem Fall das Modul Ecryptfs, das Ubuntu & Co. standardmäßig im Kernel mitbringen. Ecryptfs ist nicht zu verwechseln mit Encfs (siehe Punkt 5), wenngleich sich beide Techniken ähneln.

Empfehlung: Ein Ecryptfs-verschlüsseltes Home-Verzeichnis ist für typische Desktop-Systeme, auch für mobile Notebooks, oft der angemessene und der komfortabelste Schutz. Bei Fremdzugriff ist zwar der Großteil des Dateisystems lesbar, nicht aber der Inhalt von /home/[user]. Dieser liegt verschlüsselt unter /home/.ecryptfs/[user]/.Private und wird automatisch unverschlüsselt nach /home/[user] geladen, sobald sich der Benutzer am System anmeldet. Wenn sich der Gerätebesitzer daran hält, seine Daten stets unter /home abzulegen, ist für Datendiebe nichts zu holen. Lediglich die Anzahl der Verzeichnisse und Dateien sowie deren ungefähre Größen sind unter /home/.ecryptfs/[user]/.Private ersichtlich – die Inhalte nicht. Die Dateinamen sind ebenfalls verschlüsselt.

Einrichten der Home-Verschlüsselung: Bei der Installation von Ubuntu-Systemen erscheint zu einem späteren Zeitpunkt das Fenster „Wer sind Sie?‟. Hier legen Sie den Erstbenutzer des System an. An unterster Stelle gibt es die Option „Meine persönlichen Daten verschlüsseln‟. Ein Häkchen genügt, um Ecryptfs für das Home-Verzeichnis des Erstbenutzers zu aktivieren. Nach der ersten Anmeldung am neu installierten System erscheint dann ein Fenster mit dem Hinweis „Ihre Verschlüsselungspassphrase notieren‟. Klicken Sie auf „Diese Aktion ausführen‟. Danach geben Sie das Systempasswort ein und bestätigen mit der Eingabetaste. Sie sehen dann das von Ubuntu & Co. zufällig generierte Passwort für die Home-Verschlüsselung. Notieren Sie sich dieses, denn Sie benötigen es für den (unwahrscheinlichen) Fall, dass einmal die Wiederherstellung eines defekten Dateisystems nötig werden sollte.

Für den alltäglichen Zugriff auf das Home-Verzeichnis genügt die Anmeldung am System. Vor anderen Benutzern am selben PC ist das verschlüsselte Home-Verzeichnis ebenfalls sicher. Diese erhalten beim Zugriff eine Fehlermeldung, die auf fehlende Rechte hinweist. Besitzen andere Systembenutzer root-Recht, können Sie zwar den Ordner /home/.ecryptfs/[user]/.Private betreten, sehen dort aber nicht mehr als verschlüsselte Ordner- und Dateinamen.

Weitere verschlüsselte Home-Verzeichnisse: Die Home-Verschlüsselung bei der Installation gilt nur für den dort eingerichteten Erstbenutzer. Wenn ein weiterer Benutzer ein verschlüsseltes Home-Verzeichnis erhalten soll, gibt es zwei Wege:

1. Die grafische Methode über „Einstellungen -> Benutzer/Users“ ist aktuell noch die Ausnahme. Linux Mint 18.2 bietet in der Benutzerverwaltung beim Anlegen eines neuen Kontos ganz unten die Option „Persönlichen Ordner verschlüsseln […]“.

2. Bei den meisten Distributionen ist die Home-Verschlüsselung nur über die Kommandozeile zu erreichen. Es genügt dieser Befehl:

sudo adduser --encrypt-home [username]

Falls der Befehl scheitert, installieren Sie das Paket ecryptfs-utils (sudo apt install ecryptfs) und wiederholen den Befehl. Legen Sie das Passwort für den neuen Benutzer hinter „Geben Sie ein neues UNIX-Passwort ein:‟ fest. Danach geben Sie die Benutzerinformationen ein oder bestätigen einfach alles mit Eingabetaste. Ab sofort kann sich der neue Benutzer anmelden und das verschlüsselte Home-Verzeichnis nutzen. Auch er erhält einen Hinweis, sich die Verschlüsselungspassphrase zu notieren.

Home-Verzeichnis nachträglich verschlüsseln: Es ist nicht vorgesehen, die Verschlüsselung nachträglich zu aktivieren. Die einfachste Lösung ist es daher, alle Dateien im Home-Verzeichnis vorübergehend an einen anderen Ort zu verschieben, dann ein neues Benutzerkonto mit verschlüsseltem Home-Verzeichnis anzulegen und die gesicherten Dateien danach in das neue Home-Verzeichnis zu kopieren. Das ursprüngliche Konto kann danach im Prinzip gelöscht werden. Tun Sie dies aber erst, wenn der Systemalltag reibungslos funktioniert: So sollte zum Beispiel der sudo-berechtigte Erstbenutzer nicht gelöscht werden, solange kein neues Konto mit sudo-Recht eingerichtet ist (visudo).

Linux Mint bietet bei der Installation nach wie vor an, das Home-Verzeichnis des Erstbenutzers zu verschlüsseln. Das gilt auch für weitere, später angelegte Benutzer .

4. Verschlüsselung mit Encfs

Encfs ist ein flexibles Ordner- und Datei-orientiertes Verschlüsselungswerkzeug. Der Ruf des Tools hat etwas gelitten, nachdem vor Jahren eine theoretische Lücke bekannt wurde, welche die Robustheit von Encfs infrage stellte. Diese Lücke besteht immer noch und wird bei der Installation des Pakets gemeldet. Unterm Strich handelt es sich aber um ein akademisches Problem, das normale Anwender nicht betrifft. Technisch ähnlich wie bei Ecryptfs wird ein verschlüsselter Ordner durch Eingabe des richtigen Passwort entsperrt und der Inhalt unverschlüsselt in einen zweiten Ordner gemountet, wo die Dateien dann normal zu verwenden sind. Verschlüsselte Encfs-Ordner sind überall flexibel einzurichten – auf internen und externen Datenträgern mit FAT, FAT32, NTFS oder einem Linux-Dateisystem.

Empfehlung: Encfs ist das richtige Werkzeug für alle Situationen, die im Alltag plötzlich Verschlüsselung ratsam erscheinen lassen: Dieses oder jenes Verzeichnis auf der USB-Festplatte hat Verschlüsselung verdient, ein Unterordner von Home muss geschützt werden oder ein Cloud-Dienst soll über den verschlüsselten Sync-Ordner nur noch geschützte Dateien bevorraten. Encfs kann an jeder Stelle und auf jedem Datenträger einspringen und eignet sich auch für größere Datenmengen. Neben Linux können Android-Geräte mit der App Cryptonite Encfs-Daten lesen. Für Mac-Anwender gibt es nach einem gewissen Installationsaufwand ein praktisch identisches Encfs. Für den Austausch mit Windows gibt es Encfs4win, das allerdings experimentell bleibt (https://encfs.win).

Encfs mit grafischem Cryptkeeper: Encfs ist meist nicht installiert, doch finden Sie das relativ kleine Paket in den Repositories aller wichtigen Linux-Distributionen. Unter Ubuntu/Mint installieren Sie es mit

sudo apt install encfs

und können dann sofort loslegen. Encfs ist an sich ein reines Kommandozeilen-Tool, jedoch werden die meisten Anwender Encfs über das grafische Frontend Cryptkeeper bedienen. Auch dieses kleine Tool muss mit

sudo apt install cryptkeeper

erst nachinstalliert werden. Nach dem Aufruf cryptkeeper präsentiert sich dieser als Schlüsselsymbol in der Hauptleiste. Die Option „Erstelle verschlüsselten Ordner“ richtet ein neues verschlüsseltes Verzeichnis ein, wobei Sie in der oberen Zeile den Ordnernamen vergeben und unten zum gewünschten Ort navigieren, etwa zu einem USB-Stick unter /media im Dateisystem. Mit der Schaltfläche „Vor“ geht es weiter zur Passwortvergabe. Der neue und noch leere Mount-Ordner wird zum Abschluss automatisch im Dateimanager geöffnet und kann dann befüllt werden. Sie arbeiten in diesem Ordner wie mit unverschlüsselten Dateien. Die eigentlichen Dateien liegen auf gleicher Ebene in einem versteckten Ordner .[name]_enfcs. Um einen Encfs-Ordner auszuhängen und damit zu schützen, klicken Sie auf das Cryptkeeper-Symbol und dann auf den betreffenden Ordnereintrag.

Über die „Einstellungen“ können Sie vorgeben, dass Mount-Ordner nach dem Entladen („Aushängen“) gelöscht und dass nicht genutzte Encfs-Ordner nach bestimmter Frist automatisch entladen werden. Diese zweite Sicherheitsmaßnahme ist ein Alleinstellungsmerkmal von Encfs.

Encfs auf der Kommandozeile: Im Terminal ist Encfs-Verschlüsselung etwas mühsamer, andererseits flexibler. Die Kernsyntax lautet:

encfs /Pfad1/verschlüsselte_Daten/ /Pfad2/unverschlüsselte_Daten/

Pfad1 ist der zu verschlüsselnde Ordner, Pfad2 der Mountpunkt, wo die Daten unverschlüsselt genutzt werden. Das Beispiel

mkdir /media/sepp/data/privat
mkdir ~/privat
encfs /media/sepp/data/privat ~/privat

erstellt unter „/media/sepp/data“ das neue Verzeichnis „privat“, ferner den gleichnamigen Mountpunkt im Home-Verzeichnis. Die dritte Zeile lädt das noch leere Verzeichnis in den Mountpunkt. Danach ist noch die Vergabe eines neuen Kennworts notwendig. Unter „~/privat“ arbeiten Sie mit den Daten.

Während bei Cryptkeeper das verschlüsselte Verzeichnis und das Mount-Verzeichnis stets auf gleicher Ebene liegen, kann Encfs auf Kommandozeile von beliebiger Stelle in einen beliebigen Mountpunkt laden. Wenn Sie einen verschlüsselten Ordner nicht mehr benötigen, entladen Sie seinen Mountpunkt:

fusermount -u ~/privat 

Neuerliches Laden geschieht mit genau demselben Encfs-Befehl wie bei der Ersteinrichtung.

Tipp: Auf der Kommandozeile (nicht im Cryptkeeper) können Sie Encfs auch auf ein bereits bestehendes Verzeichnis ansetzen. Alle Dateien, die sich dort bereits befinden, bleiben dort allerdings weiterhin unverschlüsselt. Sollen diese nachträglich verschlüsselt werden, verschieben Sie die Dateien einfach in das Mountverzeichnis des Encfs-Ordner-Paares.

Ersteinrichtung eines Encfs-Ordners: Sie benötigen lediglich einen Ordner als Mountpunkt (hier USBData im Home-Verzeichnis) und ein Kennwort.
Grafisches Frontend für EncFS: Das kleine Tool Cryptkeeper erscheint als Schlüsselsymbol in der Hauptleiste und bietet die wesentlichen EncFS-Funktionen.

5. Container mit Veracrypt

Veracrypt ist der Nachfolger des Verschlüsselungsklassikers Truecrypt, der 2014 eingestellt wurde. Veracrypt arbeitet mit verschlüsselten Containerdateien und einem eigenen Format. Der Inhalt solcher Container wird durch die „Mount“- (oder „Einbinden“-) Schaltfläche und nach korrekter Passworteingabe unverschlüsselt ins Dateisystem gemountet, wobei auch gleich der zuständige Dateimanager zur Anzeige und Dateibearbeitung gestartet wird. Die Größe der Containerdateien muss bei der Einrichtung definiert werden und ist später nicht mehr dynamisch erweiterbar.

Empfehlung: Veracrypt eignet sich für große und sehr große Datenmengen, allerdings nur auf lokalen Rechnern oder im lokalen Netzwerk. Für den Transfer in die Cloud ist es ungeeignet, da auch bei geringen Datenänderungen immer der Transport des gesamten Containers notwendig wäre. Ein entscheidendes Plus von Veracrypt sind Versionen für Linux, Windows, Mac OS, Free BSD und Raspbian. Damit sind Veracrypt-Container zwischen allen PC-Systemen austauschbar.

Installation und Container-Betrieb: Anlaufstelle für die meisten Betriebssysteme ist die Projektseite https://www.veracrypt.fr/en/Downloads.html. Für Ubuntu, Mint & Co. ist die Installation über ein PPA allerdings deutlich komfortabler:

sudo add-apt-repository ppa:unit193/encryption
sudo apt-get update
sudo apt-get install veracrypt

Im Unterschied zur Windows-Version bietet Veracrypt unter Linux keine deutsche Übersetzung, weswegen die nachfolgenden Menübezeichnungen englischsprachig ausfallen. Um eine neue Containerdatei anzulegen, klicken Sie im Hauptdialog auf „Create Volume -> Create an encrypted file container“ und anschließend auf “Standard VeraCrypt volume“. Hier geben Sie Pfad und Namen einer bisher nicht existierenden Datei an. „Encryption Option“ belassen Sie einfach auf den Standardvorgaben. Danach geben Sie die Größe der Containerdatei an. Diese sollte großzügig ausfallen, weil die Kapazität nicht mehr zu ändern ist und viele kleine Container unübersichtlicher sind als wenige große.

Danach kommt die Passwortvergabe. Zur Schlüsselerstellung auf Basis des Passworts erwartet Veracrypt Mausbewegungen im eigenen Fenster. Nach beendeter Fortschrittsanzeige schließen Sie mit „Format“. Damit ist der Container einsatzbereit. Mit „Select File“ im Hauptdialog navigieren Sie zur Containerdatei. Mit Klick auf „Mount“ wird diese geladen und im Dateimanager geöffnet (falls nicht, lässt sich das unter „Preferences -> System Integration“ einstellen). Linux mountet Container nach „/media/veracrypt[nummer]“, Windows auf freie Laufwerkbuchstaben. Auf diesen Datenträgern lesen, arbeiten, kopieren Sie wie auf einem normalen Laufwerk. Mit „Dismount“ im Hauptdialog entladen Sie den Container, der somit wieder geschützt ist.

Zur besseren Systemintegration nistet sich das Veracrypt-Symbol zusätzlich in der Systemleiste des Linux-Desktops ein. Hier sind im Kontextmenü einige fundamentale Aktionen wie das Mounten aller „Favorites“ oder das Abschalten aller aktuell geladenen Container. Eingerichtete „Favorites“ ersparen die Sucherei nach verstreuten Containerdateien, sodass es sich durchaus lohnt, das Menü „Favorites“ zu organisieren.

Beachten Sie, dass Sie beim Mounten von Veracrypt-Containern zusätzlich zum Container-Passwort auch noch nach dem sudo-Kennwort gefragt werden, das mit dem Veracrypt-Passwort nichts zu tun hat und vermutlich anders lautet.

Tipp 1: Veracrypt ist auch komplett über Terminalbefehle zu steuern (siehe veracrypt –help). So entlädt etwa

veracrypt --dismount

alle geladenen Containerdateien. Und auf stationären, privaten PCs kann es vertretbar sein, einen Container durch ein Terminal-Alias zu laden und dabei das Passwort im Klartext mitzugeben:

veracrypt --mount /home/ha/vc-data
--password=Sehr-GeH3im

Tipp 2 für ältere Truecrypt-Container: Unter „Select File“ wählen Sie die Container-Datei aus oder mit „Select Device“ das verschlüsselte Laufwerk. Nach einem Klick auf „Mount“ aktivieren Sie im angezeigten Dialog vor der Angabe des Passworts die Option „TrueCrypt Mode“. In einigen Fällen funktioniert das nicht, und Veracrypt öffnet den Container nicht. Hier hilft es, die Einstellung „Options -> Mount volume as read-only“ zu aktivieren. Damit sind die Daten erreichbar und können bei Bedarf an eine andere Stelle kopiert werden.

Hauptdialog und Systemintegration von Veracrypt: Veracrypt entspricht bei der Bedienung seinem Truecrypt-Vorgänger. Laden und Entladen von Containern gelingt auch über das Panelsymbol.
Veracrypt im Terminal: Alle Funktionen der Verschlüsselungs-Software sind auf Wunsch auch über die Kommandozeile zu steuern.

6. Einfaches Verschlüsseln mit Packer

Einfachster Schutz bei geringeren Datenmengen ist die Ad-hoc-Verschlüsselung von Einzeldateien oder eines Ordners. Ohne Einschränkung für alle Dateien und Ordner anwendbar ist ein Packer mit eingebauter Verschlüsselung wie 7-Zip. Diese ist sicher, wenn Sie das Passwort komplex und lang wählen. Packer-Verschlüsselung erfordert diszipliniertes Verhalten und ist nicht so komfortabel wie andere Methoden.

Empfehlung: Geschützte Packer-Archive eignen sich für Dateien in der Cloud, können aber auch für mobile Datenträger ausreichen, wenn die Dateimengen überschaubar sind. Da es 7-Zip für Linux, Windows und Mac OS (7zX) gibt, ist der Austausch solcher Archive problemlos. Unter Android können nicht alle Apps mit einem „zip“ im Namen auch mit passwortgeschützten Archiven umgehen, aber der kostenlose, allerdings werbefinanzierte 7Zipper (von Polar Bear) beherrscht dies.

Manuelles Verpacken: Installieren Sie zunächst, sofern noch nicht geschehen, den 7-Zip-Packer:

sudo apt install p7zip-full

7-Zip erscheint unter Desktop-Linux nicht als selbständiges, grafisches Programm, sondern integriert sich in die „Archivverwaltung“. In Zusammenarbeit mit dieser Archivverwaltung oder dem 7z-Filemanager unter Windows ist Verschlüsseln und Entschlüsseln recht komfortabel: Sie ziehen Datei oder Ordner einfach mit der Maus in das Fenster („Archivverwaltung“ oder „7-Zip“), bestätigen unter Linux, dass damit ein neues Archiv angelegt werden soll und geben dann das Format „7z“ an. Unter „Erweiterte Einstellungen“ vergeben Sie das Passwort. Die Option „Dateiliste ebenfalls verschlüsseln“ sorgt dafür, dass die Archivverwaltung später auch keine Dateinamen verrät. Beim späteren Doppelklick des Archivs wird automatisch das Kennwort abgefragt und nur bei richtiger Eingabe entpackt.

Komfortfunktionen: Der Hauptaufwand für sichere passwortgeschützte Archive entsteht durch die Eingabe des komplexen Kennworts. Dieser Komfortverlust lässt sich etwa durch Terminal-Aliases oder -Funktionen minimieren. Für hier soll ein Beispiel für das Terminal genügen, das am besten als Function in der Datei ~/.bashrc zu realisieren ist:

function cc (
{
name=${1%/}
echo $name | grep ".7zEnc"
if [ $? -eq 0 ]; then
  7z x
-p'linuX*Welt' "$name"
else
  7z a
-p'linuX*Welt' -t7z -mhe=on "$name.7zEnc" "$name"
fi
}

Danach erledigt im Terminal die Eingabe

cc [datei]

das Ein- oder Auspacken des Archivs im aktuellen Verzeichnis. Ob Einpacken oder Auspacken als Aufgabe ansteht, erkennt die Funktion anhand der Dateiextension. Das Kennwort „linuX*Welt“ ist natürlich anzupassen.

Ähnliche und zum Teil noch komfortablere grafische Lösungen hat die LinuxWelt in früheren Ausgaben vorgestellt, so den Ausbau des jeweiligen Dateimanagers mit speziellen Kontextmenüs. Die letzte Ausgabe der LinuxWelt zeigte eine Lösung mit einem Incron-überwachten Ordner, der die Verschlüsselung per Drag & Drop erledigt. Alle nötigen Infos dazu finden Sie im PDF-Booklet auf Heft-DVD. Im Prinzip basieren aber alle diese Komfortlösungen auf einem Shellscript ähnlicher Machart wie oben.

Vereinfachte Packer-Verschlüsselung: Ein Script kann die lästige Aufgabe übernehmen, das Kennwort an 7-Zip zu übergeben.

7. Kennwortschutz in Office-Software

Libre Office und Microsoft Office bieten eine eigene integrierte Verschlüsselung. Das ist bequem, bleibt aber eine Insellösung, die auf die wenigen Office-Formate beschränkt ist. Außerdem hat diese Software-interne Kryptographie den großen Nachteil, dass Sie auf Office-Suiten angewiesen sind, um ein Dokument lesen zu können. Immerhin kann Libre Office auch Passwort-geschützte Microsoft-Dateien öffnen, umgekehrt ist das nicht der Fall.

Empfehlung: Diese Methode, Dateien einzeln zu verschlüsseln, eignet sich nur für wenige sensible Texte oder Tabellen. Für größere Datenmengen ist sie zu unbequem. Der häufigste Einsatz ist der Austausch vertraulicher Tabellen innerhalb eines Arbeitsteams.

Praktische Nutzung: Libre Office bietet die Option „Datei -> Speichern unter -> Mit Kennwort speichern“. Das Kennwort muss jeweils beim Öffnen eingegeben werden. Dass das Dokument geschützt ist, ist Libre Office bei der Weiterbearbeitung klar: Es genügt daher künftig, normal zu speichern. In Microsoft Office findet sich die Verschlüsselung unter „Datei -> Speichern unter -> Tools -> Allgemeine Optionen“.

Einzeldateien unter Libre Office verschlüsseln: Diese Ad-hoc-Maßnahme ist ein Notbehelf für geringe Datenmengen.

Exkurs: Asymmetrische Verschlüsselung

Alle bisher genannten Verschlüsselungsvarianten (Punkt 1 bis 8) gehören zur Kategorie symmetrischer Verschlüsselung: Ein Kennwortschlüssel verändert die Ausgangsdaten unlesbar, genau derselbe Schlüssel stellt den lesbaren Zustand wieder her. Dieses Verfahren ist optimal, wenn Sender und Empfänger dieselbe Person sind: Sie verschlüsseln Dateien oder Datenträger, die Sie später wieder entschlüsseln. Die Verschlüsselung hat nur den Zweck, dass keine andere Person die Datei lesen kann. Sobald Sender und Empfänger verschiedene Personen sind, wird symmetrische Verschlüsselung problematisch: Erstens muss der Schlüssel auf einem sicheren Weg von Person A zu Person B kommen. Zweitens brauchen Sie strenggenommen für Person C einen anderen Schlüssel, für Person D einen weiteren und so fort. Bei einem Austausch vieler Personen wie bei der Mail-Korrespondenz ist dies nicht praktikabel.

Wesentliches Merkmal der asymmetrischen Verschlüsselung (siehe Punkt 9) sind zwei unabhängige Schlüssel: ein öffentlicher zum Verschlüsseln, ein privater zum Entschlüsseln. Die komplementären Schlüssel generiert die Software – etwa GnuPG – auf Ihrem Rechner. Beide Schlüssel stehen zwar in eindeutigem Verhältnis, jedoch ist die Berechnung des privaten Schlüssels aus dem öffentlichen durch den Einsatz mathematischer Einwegfunktionen extrem aufwendig bis unmöglich. Der öffentliche Schlüssel zum Verschlüsseln kann daher ohne Geheimniskrämerei an alle Kommunikationspartner direkt oder zu einem öffentlichen Key-Server im Web geschickt werden. Nun chiffrieren alle Partner Nachrichten an Sie mit Ihrem öffentlichen Schlüssel – und Sie sind die einzige Person, die diese Nachrichten mit dem passenden privatem Schlüssel lesbar machen kann. Umgekehrt codieren Sie Ihre Nachrichten mit den öffentlichen Schlüsseln Ihrer Partner und haben die Sicherheit, dass nur der Empfänger mit dem komplementären privaten Schlüssel die Nachricht lesen kann.

Asymmetrische Verschlüsselung: Der Absender einer verschlüsselten Nachricht benötigt zum Chiffrieren („E“ – Encrypt) nur den öffentlichen Schlüssel des Empfängers. Empfangen und entschlüsselt („D“ – Decrypt) wird mit dem privaten Schlüssel.

8. Mailverschlüsselung unter Thunderbird

Ob der persönliche Mail-Austausch Verschlüsselung benötigt, muss jeder selbst entscheiden. Tatsache ist, dass US-Anbieter wie Google oder Yahoo der Neugier von Geheimdiensten wenig Datenschutz-Anstrengungen entgegensetzen. Auch wenn Sie deutsche Provider oder sogar einen eigenen Mail-Server benutzen, ist die Mail doch an den Knotenpunkten theoretisch abzufangen – am einfachsten in öffentlichen WLANs.

Empfehlung: Mail-Verschlüsselung ist wie jede Datenschutzmaßnahme mit Mehraufwand verbunden. Die Kombination von GnuPG (GNU Privacy Guard) plus Thunderbird mit Erweiterung Enigmail ist die wohl komfortabelste Lösung, aber auch sie erfordert Gewöhnung und zumindest einen Anteil von Mail-Partnern, die ebenfalls GnuPG nutzen. Unter Linux sind Thunderbird und GnuPG oft vorinstalliert, und falls nicht, über die Paketnamen „thunderbird“ und „gnupg“ schnell nachgerüstet. Für Windows gibt es Downloads unter www.mozilla.org und www.gnupg.org). Enigmail finden und installieren Sie dann direkt in Thunderbird über „Add-ons“.

Einrichtung und Mail-Alltag: Nach der Installation der Enigmail-Erweiterung und einem Thunderbird-Neustart verwenden Sie im automatisch startenden Einrichtungsassistenten die „ausführliche Konfiguration“. Im ersten Schritt geben Sie die „Passphrase“ ein. Das Passwort benötigen Sie später stets, um auf Ihre Schlüssel zuzugreifen. Es bildet auch die Grundlage für die beiden Schlüssel. Nach der doppelten Eingabe legt Enigmail das neue Schlüsselpaar an (öffentlich/privat). Falls Sie auf einem anderen Rechner bereits ein eingerichtetes Enigmail und ein Schlüsselpaar besitzen, wählen Sie im Assistenten die Option, bestehende Schlüssel zu importieren. Schlüssel lassen sich über „Enigmail -> Schlüssel verwalten“ als Ascii-Dateien exportieren und auf anderen Rechnern importieren.

Öffnen Sie wie gewohnt den Editor zum Verfassen von Nachrichten. Dort hat Enigmail jetzt eine weitere Symbolleiste platziert. Möchten Sie eine ausgehende Nachricht verschlüsseln, benötigen Sie den öffentlichen Schlüssel des Empfängers. Wenn dieser als Textdatei vorliegt, können Sie den Schlüssel über „Enigmail -> Schlüssel verwalten -> Datei importieren“ einlesen. Alternativ gibt es Schlüsselserver, die öffentliche Schlüssel aufbewahren. Über „Schlüsselserver -> Schlüssel suchen“ sehen Sie nach, ob die Empfängeradresse dort eingetragen ist; falls ja, importieren Sie den Schlüssel mit einem Klick. Umgekehrt ist es sinnvoll, den eigenen öffentlichen Schlüssel über „Schlüsselserver -> Schlüssel hochladen“ im Web zugänglich zu machen.

Nach einem Schlüsselimport ist der neue Mail-Empfänger Enigmail/GnuPG bekannt. Künftig klicken Sie beim Verfassen einer Nachricht an diesen Empfänger auf das Symbol mit dem Schloss. Um Mails verschlüsselt zu versenden, müssen Sie Ihr Passwort eingeben. Wenn Sie mit dem Schloss-Symbol verschlüsselt senden wollen, jedoch für den Empfänger kein Schlüssel vorliegt, erscheint automatisch der Hinweis, dass dieser Empfänger „nicht gültig“ ist. Dann besorgen Sie sich entweder den öffentlichen Schlüssel oder Sie senden unverschlüsselt.

Erhalten Sie umgekehrt eine Mail, die verschlüsselt wurde, erkennt Enigmail das automatisch. Wenn Sie im Vorschaubereich von Thunderbird auf das Element klicken, werden Sie dazu aufgefordert, das Passwort einzugeben. Wenige Augenblicke später erscheint die Nachricht.

Beachten Sie, dass Sie bei der Nutzung mehrerer Rechner die Schlüsselverwaltung manuell synchron halten müssen. Eine wichtige Hilfe ist wieder „Enigmail -> Schlüssel verwalten -> Datei exportieren“, wobei Sie einfach sämtliche Schlüssel markieren. Die resultierende Ascii-Datei lässt sich auf dem nächsten Rechner importieren.

Verschlüsselte Mail mit GnuPG und Enigmail: Wenn Sie versuchen, verschlüsselt zu senden, aber für den Adressaten kein Schlüssel vorliegt, öffnet sich automatisch die Schlüsselverwaltung.

9. Verschlüsselte Browser-Synchronisierung

Die Browser-Synchronisierung von Lesezeichen, Einstellungen, Erweiterungen und Skins bedeutet für Nutzer mehrerer Geräte unschätzbaren Komfort. Bedenklich scheint allerdings der Nebenaspekt, dass dabei Mengen von persönlichen Daten auf Google- oder Mozilla-Servern hinterlegt werden müssen.

Empfehlung: Firefox verschlüsselt standardmäßig alle Daten, wobei der Schlüssel auf dem Gerät des Benutzers verbleibt. Damit ist der Mozilla-Browser in puncto Datenschutz erste Wahl. Jedoch lässt sich auch der Google-Browser so einstellen, dass alle Synchronisierungsdaten sicher verschlüsselt sind.

Abhörsichere Synchronisierung für Chrome/Chromium: Standardmäßig werden hier nur die Kennwörter verschlüsselt. Aber unter „Einstellungen -> Erweiterte Synchronisierungseinstellungen“ (vorherige Google-Anmeldung vorausgesetzt) gibt es die Option „Alle synchronisierten Daten […] verschlüsseln“, bei der Sie ein individuelles Kennwort zur Sync-Verschlüsselung vergeben, das unabhängig vom Google-Kennwort ist. Der Komfortverlust ist nicht gravierend, da Sie dieses Kennwort auf jedem weiteren Gerät nur ein einziges Mal eingeben müssen. Damit landen sämtliche Daten verschlüsselt auf dem Google-Server, der Schlüssel dazu (Kennwort) verbleibt auf dem lokalen Gerät.

Sync-Daten verschlüsseln: Diese Maßnahme hält Googles Big-Data-Sammler von Lesezeichen und Verlaufsdaten fern.

10. Verschlüsselung im Internet

Der Datenaustausch über unverschlüsselte Verbindungen ins Internet kann im Klartext mitgelesen werden. Das gilt verschärft in öffentlichen Funknetzen, innerhalb von lokalen Firmennetzen und theoretisch auch außerhalb des lokalen Netzwerks an Verteilerknoten, die von Providern, Geheimdiensten oder Hackern abgehört werden. Im Fokus stehen die meistgenutzten Protokolle HTTP (Webseiten) und FTP (Datentransfer). Die folgenden Infos beziehen sich ausschließlich auf die Client-Seite des Web-Nutzers, nicht auf die Server-Seite des Betreibers.

HTTP und HTTPS: Im Sinne des Datenschutzes ist, wo immer möglich, auf verschlüsselte Verbindung zu achten. Zwingend erforderlich ist dies überall, wo zur Anmeldung persönliche Zugangsdaten verschickt werden (Bank, Online-Shop). Alle Browser zeigen sichere (HTTPS-) Web-Adressen in der Adresszeile mit einem grünen Schloss-Symbol an. HTTPS garantiert, dass es für Kriminelle und Geheimdienste selbst dann nichts Lesbares zu lesen gibt, wenn der Angreifer im Netz sitzt und den Netzverkehr abhört.

Firefox und Chrome signalisieren unverschlüsselte HTTP-Sites explizit als „nicht sicher“. Dies ist kein Urteil über die Seriosität der Website, sondern ausschließlich die Aussage, dass eine Site keine TLS- (Transport Layer Security) oder SSL-Verschlüsselung bietet (Secure Socket Layer). Datenschutztechnisch noch einen Schritt weiter geht Firefox, der Anmeldungen auf unverschlüsselten Seiten automatisch bremst: „Diese Verbindung ist nicht verschlüsselt…“. Das ist im Prinzip verdienstvoll, kann aber – insbesondere bei lokalen Servern (Router, NAS) – auch nerven und über „about:config“ deaktiviert werden („security.insecure_field_warning…“).

FTP, FTPS und SFTP: Das File Transfer Protocol (FTP) bietet keine Verschlüsselung. Daher sollten Sie sich die Anmeldung auf unverschlüsselten FTP-Servern zumindest in öffentlichen WLANs verkneifen. Man mag sich als Client-Nutzer auf den Standpunkt stellen, das Sicherheitsproblem sei Sache des Server-Betreibers. Jedoch fällt der Erstverdacht zunächst auf den Client-Nutzer, wenn dessen unverschlüsselte Anmeldedaten abgegriffen und destruktiv missbraucht werden. Sicherheitsbewusste FTP-Betreiber werden FTPS (FTP mit SSL- oder TLS-Verschlüsselung) anbieten. FTP-Clients wie Filezilla zeigen im Servermanager unter „Verschlüsselung“ an, ob die Verbindung abhörsicher ist.

Eine sichere Alternative zu FTP ist der Datenaustausch über SSH, das über sein Protokoll SFTP auch die direkte verschlüsselte Dateiübertragung vorsieht. Mit den ähnlich klingenden Protokollen FTP und FTPS hat das nichts zu tun, sondern mit SSH-Servern, die auf Linux-Systemen SSH-Verbindungen entgegennehmen. Mit Rücksicht auf Windows-Systeme, die standardmäßig keinen SSH-Client enthalten, bleibt FTP und FTPS das verbreitete Austauschprotokoll. Wirklich triftig ist diese Rücksicht auf Windows allerdings nicht, da der auch unter Windows vielgenutzte FTP-Client Filezilla auch das Protokoll „SFTP – SSH File Transfer Protocol“ beherrscht.

Firefox ultravorsichtig: Der Mozilla-Browser zeigt bei Anmeldungen auf unverschlüsselten Web-Seiten diese Warnung.

Exkurs: Unentbehrlicher Browser-Tipp

Mit dem Thema „Verschlüsselung“ hat dieser kleine Exkurs nichts zu tun, aber viel mit dem verwandten Thema „Datenschutz“: Wer gerade vorhat, sich eine Jacke, Gitarre oder Kettensäge zu kaufen, sollte die Angebote tunlichst nicht über normales Google & Co. recherchieren. Dann sieht man nämlich die nächsten Wochen im Web überall nur noch Jacken, Gitarren und Kettensägen. Einfache Abhilfe schafft der „Private Modus“ im Firefox oder „Inkognito“ bei Chrome. Damit können Sie in Google & Co. suchen, ohne die Werbeindustrie über Ihre Interessen zu informieren. Wer solche Belästigung generell hasst, kann auch die Suchmaschine duckduckgo.com verwenden – dort ist der Datenschutz inklusive.


Veracrypt-Verschlüsselung

Truecrypt und der Nachfolger (Fork) Veracrypt sind faszinierende Verschlüsselungssoftware und beste Wahl für mobile Rechner und Datenträger. Dieser Beitrag erklärt den Umgang und plädiert für das KISS-Prinzip („Keep it simple, stupid“).

Die jüngsten Versionen von Ubuntu und allen Abkömmlingen haben die Nachfrage nach einer zuverlässigen Verschlüsselungssoftware wieder schlagartig erhöht. Seit das Home-Verzeichnis nicht mehr standardmäßig ab Installation durch Ecryptfs geschützt werden kann, muss vor allem auf mobilen Notebooks eine Alternative her. Auch USB-Datenträger, die persönliche Daten enthalten und viel unterwegs sind, brauchen Verschlüsselungsschutz. Der Truecrypt-Nachfolger Veracrypt ist hierfür allererste Wahl.

Veracrypt im Kurzporträt

Veracrypt ist Open-Source-Software und kann daher keine geheimen Hintertüren für Geheimdienste verbergen. Es eignet sich für große und sehr große Datenmengen, allerdings nicht für den Transfer in die Cloud, da auch bei geringen Datenänderungen immer der Transport eines gesamten Volumes („Container“) notwendig wäre. Die Verschlüsselungstechniken und nebenbei auch die Benutzeroberfläche, stehen überwiegend auf der Basis des eingestellten Vorgängers Truecrypt, der als praktisch unüberwindbar eingestuft wurde. Das mysteriöse Ende von Truecrypt im Jahr 2014 wurde damals mit angeblichen Sicherheitslücken begründet, die jedoch nie nachgewiesen wurden. Dies lässt bis heute Gerüchte blühen, dass Truecrypt keineswegs fehlerhaft, sondern im Gegenteil zu gut war, um noch länger von staatlicher Exekutive und/oder Wirtschaft geduldet zu werden.

In der Tat geht der Anspruch von Truecrypt und dem Nachfolger Veracrypt deutlich über so harmlose Datenschutzmotive hinaus, Mitarbeiteradressen oder Gehaltstabellen zugriffssicher zu verschlüsseln. Truecrypt/Veracrypt haben das Potential, auch die Daten von strafrechtlich oder politisch Verfolgten zu schützen, die mit professionellen Computerforensikern als Gegner rechnen müssen.

Für „normale“ Nutzer mit legitimen Ansprüchen auf Privatsphäre ist diese Komplexität von Veracrypt durchaus ein Problem: Container, Volume, Partition, Standard/Versteckt, Verschlüsselungsalgorithmus, Hash-Algorithmus, Passwort, PIM, Keyfiles, Dateisysteme, Header-Daten, Cache-Daten – das sind anspruchsvolle und in Veracrypt überall präsente Begriffe. Da muss man erst den Überblick gewinnen, was nun wirklich relevant ist oder doch eher in die Paranoia-Ecke gehört. Der Nutzer sollte sich auf das für ihn Notwendige konzentrieren. Wer mit Veracrypt-Optionen leichtfertig spielt, erzielt schnell maximalen Datenschutz – indem er sich selbst aussperrt.

Im Veracrypt-Assistenten: Anfänger sollten sich an die einfachen Optionen halten, Standards übernehmen und elaborierte Möglichkeiten erst mal ignorieren (hier „PIM“ und „Keyfiles“).

Wie jede Software ist auch Veracrypt nicht fehlerfrei. 2016 wurde ein Bug bekannt, durch den sich versteckte Volumes nachweisen lassen (zu versteckten Volumes siehe gleichnamigen Kasten). Dieser Bug ist seit Version 1.18a behoben, aktuell ist Version 1.22. Eine weitere Anfälligkeit ist akademisch und betrifft außerdem ausschließlich die Komplettverschlüsselung von Festplatten oder sogar der Systempartition (nur in der Windows-Variante). Die theoretische Lücke kann bei physischem Zugriff einer Fremdperson nach einer Speicheranalyse die Passwortlänge preisgeben.

Weitere theoretische Angriffsszenarien sind nicht spezifisch, sondern gelten generell für jedes kryptografische Verfahren: Die Kennworteingabe kann auf kompromittierten Rechnern durch Keylogger bespitzelt werden. Ferner beherrschen Forensiker Kaltstartattacken, bei welchen nach einem Neustart mit einem Minimalsystem der RAM-Speicher ausgelesen wird, der für kurze Zeit noch den gesamten Inhalt inklusive Kennwörter preisgeben kann.

Noch zwei allgemeine Hinweise:

1. Der Einsatz von Veracrypt erfordert immer wieder Geduld: Das Laden („Mount“), mehr noch das Entladen („Dismount“) ist häufig zäh, sollte Sie aber keinesfalls veranlassen, den Vorgang durch ein „Auswerfen“ des Datenträgers mit Betriebssystem-Werkzeugen oder durch schlichtes Abziehen eines USB-Medium zu unterbrechen.

2. Beim Hantieren mit Veracrypt-Containern werden Sie zusätzlich zum Container-Passwort auch nach dem sudo-Kennwort gefragt werden, das mit dem Veracrypt-Passwort nichts zu tun hat und vermutlich anders lautet.

Plattformen und Installation

Anlaufstelle ist die Projektseite https://www.veracrypt.fr/en/Downloads.html. Veracrypt gibt es für Linux (auch Free BSD, Raspbian), Windows und Mac OS. Somit steht einer plattformübergreifenden Nutzung nichts im Wege. Für Windows gibt es sogar neben der installierbaren eine portable Variante, was die Mitnahme der Veracrypt-Software parallel zu den verschlüsselten Daten auf USB ermöglicht. Generell ist Veracrypt für Windows nochmal deutlich komplexer, da es auch Systempartitionen verschlüsselt und für externe Datenträger eine In-Place-Verschlüsselung anbietet – also die Verschlüsselung bestehender Datenträger ohne Datenverlust.

Unter Mac OS ist neben Veracrypt das zusätzliche OSXFUSE erforderlich, um Veracrypt-Container mit Benutzerrechten laden zu können. Unter Ubuntu, Mint & Co. ist die Installation über die genannte Webseite zwar möglich, der deutlich bequemere Weg führt jedoch über das PPA:

sudo add-apt-repository ppa:unit193/encryption
sudo apt-get update
sudo apt-get install veracrypt

Im Unterschied zur Windows-Version bietet Veracrypt unter Linux keine deutsche Übersetzung, weswegen wir uns bei den nachfolgenden Menübezeichnungen an die englischsprachigen halten.

Veracrypt ist ein Tool für PCs und Notebooks. Smartphone und Tablets mit Android und iOS werden nicht direkt unterstützt. Die nachfolgend der Vollständigkeit halber genannten Apps sollten zumindest das Öffnen und Lesen von Veracrypt-Volumes ermöglichen. Mit technischen Limits und Komforteinschränkungen ist jedoch überall zu rechnen. Für Android finden Sie im Google Play Store das Tool EDS (Encrypted Data Store) in einer kostenlosen Lite-Version: (goo.gl/Ce6wmg) und der Vollversion für 7,49 Euro (siehe goo.gl/1gsakw). Die Lite-Version hat gravierende Beschränkungen (siehe http://www.sovworks.com). Für iOS gibt es den Crypto Disks & File Explorer (goo.gl/vT4yNJ) und Disk Decipher (goo.gl/QGdkdq) für je einen Euro.

Verschlüsselter USB-Stick: Das Systemtool Gnome-Disks (rechts) zeigt an, dass es mit diesem Datenträger nichts anfangen kann. Nur Veracrypt kann ihn mounten.

Datencontainer oder Datenträger?

Veracrypt für Linux kann mit verschlüsselten Containerdateien arbeiten oder komplette (externe) Datenträger verschlüsseln. Die erste Variante ist die technisch einfachere und auch vom Assistenten („Creation Wizard“) die stets empfohlene.

Datenträgerverschlüsselung: Da Veracrypt unter Linux einen Datenträger oder eine Partition komplett löschen und neuformatieren muss, um ihn danach verschlüsselt anzubieten, gibt es nur einen nennenswerten Grund für die Komplettverschlüsselung interner oder mobiler Laufwerke: Der Datenträger soll sich wie ein unformatiertes Laufwerk verhalten. Ein Veracrypt-Laufwerk präsentiert sich unter Linux nämlich als unbekanntes Dateisystem, und Windows will es umstandslos sofort formatieren. Nur Veracrypt selbst kann das Laufwerk laden.

Ist dies gewünscht, dann verwenden Sie im Veracrypt-Assistenten nach „Create Volume“ die Option „Create a volume within a partition/drive“, danach „Standard VeraCrypt volume“ und wählen dann mit „Select Device“ den Datenträger. Das Gerät selbst, etwa /dev/sdc, können Sie nur verwenden, wenn der Datenträger im Rohformat ohne jede Partition vorliegt. Typischerweise ist eine Partitionsangabe wie /dev/sdc1 die richtige Wahl. Wenn nur eine Partition vorliegt, ist das Resultat von /dev/sdc und /dev/sdc1 dasselbe. Wenn der Datenträger keine unverschlüsselte Partition enthalten soll, sorgen Sie vorab mit Gparted oder Gnome-Disks dafür, dass keine oder nur eine Partition vorliegt. Alle weiteren Optionen der Einrichtung unterscheiden sich nicht vom Anlegen eines einfacheren Containers, das nachfolgend genauer beschrieben ist. Für das Mounten verschlüsselter Datenträger verwenden Sie im Veracrypt-Hauptfenster statt „Select File“ (für Container) die Schaltfläche „Select Device“.

Dateisysteme: Sollen Veracrypt-Daten unter Linux wie Windows funktionieren, ist ein kompatibles Dateisystem wichtig – einmal für den Datenträger, zum andern für den Container.

Datencontainer: Um eine neue Containerdatei anzulegen, klicken Sie im Hauptfenster auf „Create Volume“, dann auf „Create an encrypted file container“ und auf “Standard VeraCrypt volume“. Hier geben Sie Pfad und Namen einer bisher nicht existierenden Datei an. Unter „Encryption Options“ belassen Sie alles auf den Standardvorgaben. Danach geben Sie die Größe der Containerdatei an. Diese sollte großzügig ausfallen, weil die Kapazität nicht mehr zu ändern ist. Veracrypt verwaltet auch sehr große Container mühelos, andererseits bedeuten viele kleine Container erhöhten Verwaltungsaufwand und die Gefahr, Einstellungen und Passwörter zu vergessen.

Danach kommt die Passwortvergabe. Speziellere Optionen bei diesem Schritt sind im nächsten Punkt beschrieben. Für die meisten Szenarien ist ein komplexes Passwort völlig ausreichend. Die anschließenden „Format Options“ gelten für das innere Dateisystem des Containers und sind wichtig: Wählen Sie am besten FAT oder NTFS, wenn Sie die Daten auch unter Windows brauchen. Mit anderen Worten: Ein USB-Stick, den Sie unter allen Systemen nutzen möchten, muss nicht nur selbst ein allgemein kompatibles Dateisystem haben, sondern auch der Veracrypt-Container muss mit einem solchen formatiert sein. Im Allgemeinen kann man bei der Container-Formatierung mit NTFS nichts falsch machen. FAT genügt auch, sofern der Container keine Dateien größer als 4 GB aufnehmen muss.

Die nächste Option lautet „Cross-Platform Support“. Hier muss die obere Einstellung aktiviert werden, wenn ein Container auch in anderen Betriebssystemen genutzt werden soll („I will mount the volume on other platforms“). Beachten Sie aber, dass es sich hier nur um ein zusätzliches Container-Flag handelt, das nichts nützt, wenn das Dateisystem des Datenträgers plus das Dateisystem des Containers nicht kompatibel sind (siehe oben).

Zur Schlüsselerstellung auf Basis des Passworts erwartet Veracrypt danach Mausbewegungen im eigenen Fenster. Schließen Sie den Vorgang am Ende mit „Format“ ab. Damit ist der Container einsatzbereit.

Um Container zu verwenden, navigieren Sie mit „Select File“ im Hauptdialog zur Containerdatei. Mit Klick auf „Mount“ wird diese im Dateimanager geöffnet (falls nicht, lässt sich das unter „Preferences -> System Integration“ einstellen). Linux mountet Container nach „/media/veracrypt[nummer]“, Windows auf freie Laufwerkbuchstaben. Auf diesen Datenträgern lesen und arbeiten Sie wie auf einem normalen Laufwerk. Mit „Dismount“ im Hauptdialog entladen Sie den Container, der somit wieder geschützt ist.

Ob Sie Container oder Datenträger mounten wollen, müssen Sie selbst wissen. Hier ist es ein USB-Stick („Datenträger“) unter Windows, mit dem Windows selbst nichts anzufangen weiß.

Anspruchsvollere Passwort-Optionen

Bei der Passwortvergabe haben wir im vorangehenden Abschnitt zwei Optionen übergangen, weil wir sie für die Basisbenutzung von Veracrypt nicht empfehlen. Interessant sind sie durchaus, aber sie erhöhen Komplexität und Verwaltungsaufwand.

Container mit Passwort und PIM: Beim Erstellen des Containers gibt es im Dialog der Passwort-Definition die zusätzliche Option „Use PIM“. Hier kann eine Zahl eingetragen werden. Geschieht dies, so genügt das richtige Kennwort zum Öffnen dieses Containers nicht mehr. Hier ist dann zusätzlich die exakte PIM-Zahl erforderlich. Vereinfacht gesagt, handelt es sich um ein zusätzliches Kennwort für deutlich erhöhten Schutz. Technisch definiert der Personal Iterations Multiplier die Anzahl der Wiederholungen von Hashfunktionen, die dann beim genauen angegebenen PIM-Wert den Entschlüsselungsheader generieren. Beachten Sie, dass ein hoher PIM-Wert den Mount-Vorgang eines Volumes deutlich verzögert. Das einmal geladene Volume ist dann aber so schnell wie gewohnt.

Container mit Passwort und Keyfile: Der Passwortdialog hält noch eine weitere interessante Möglichkeit parat – nämlich die „Keyfiles“, Schlüsseldateien. Dabei kann es sich um eine beliebige Datei handeln, die Veracrypt zum Öffnen des Containers zusätzlich zum Passwort benötigt. Entscheidend für die Schlüsselfunktion dieser Datei sind deren erste 1024 Bytes, nicht Pfad oder Dateiname. Das heisst, dass sich der Inhalt dieser Schlüsseldatei keinesfalls ändern darf, das Verzeichnis oder der Dateiname jedoch durchaus. Ideale Kandidaten für Schlüsseldateien sind Binärdateien, PDFs oder ISO-Images, die normalerweise nie geändert werden. Ein Keyfile ist wie die PIM-Zahl additiv: Es ersetzt nicht das Passwort, sondern muss zusätzlich vorliegen. Es ist ein guter Schutz gegen Keylogger, weil das Kennwort alleine nicht mehr ausreicht. Das Keyfile kann ferner auch ein schwächeres Kennwort rechtfertigen und die Kennworteingabe verkürzen. Für mobile USB-Laufwerke ist die Keyfile-Methode nicht geeignet. Möglich wäre aber ein geschützter USB-Stick, für welchen das Keyfile sowohl zu Hause wie im Büro vorliegt – aber keinesfalls auf dem Stick selbst.

Container mit Keyfile, aber ohne Passwort: Sie können Veracrypt-Container auch mit leerem, also ohne Kennwort anlegen und sie nur durch Angabe einer Schlüsseldatei öffnen. Das ist aber nicht nur unsicherer, sondern wahrscheinlich auch organisatorisch aufwändiger als sich ein Kennwort zu merken.

Schaltfläche „Volume Tools“: Für einen geladenen Container lassen sich alle bisherigen Einstellungen nachträglich ändern (unter Windows muss der Container ausgewählt, darf aber nicht geladen sein). Das erledigen Sie im Hauptfenster über „Volume Tools“. Sie können ein neues Passwort vergeben oder Keyfiles hinzufügen oder entfernen. Beachten Sie, dass die Aktion in jedem Fall noch einmal eine korrekte Anmeldung mit den bisherigen Daten erfordert (obwohl der Container bereits gemountet ist). Durchaus kompliziert ist etwa die Definition einer neuen Schlüsseldatei („Add/Remove Keyfiles“). Dazu müssen Sie nämlich für die Anmeldung „Use keyfiles“ aktivieren und die bisherige Datei angeben, unter „New“ erneut „Use keyfiles“ aktivieren und dort das neue definieren.

Nachträgliche Änderungen: Mit „Volume Tools“ können Passwort, PIM und Schlüsseldateien eines Containers neu definiert werden.

Versteckte Veracrypt-Volumes

Im zweiten Fenster des Assistenten kann man mit „Hidden VeraCrypt Volume“ einen versteckten Container innerhalb eines sichtbaren Containers anlegen. Der Vorgang beginnt zunächst mit dem „Outer Volume“. Nach Erstellung, Kennwortvergabe und Bestückung mit Dateien (was auch später geschehen kann), führt der Assistent automatisch weiter zum „Hidden Volume“, das im äußeren Container untergebracht wird. Wichtig ist, dass dieser zweite Container ein völlig anderes Kennwort erhält. Nutzt man beim späteren Mounten der Containerdatei das erste Kennwort, so öffnet sich das äußere Volume. Gibt man hingegen das zweite Kennwort ein, öffnet dies das innere, versteckte Volume. Laut Hersteller ist das innere Volume auch bei geöffnetem äußeren Volume und genauer Datenanalyse nicht nachweisbar.

Natürlich sind versteckte Container eine reichlich paranoide Methode, wenn es nur um den Datenschutz einiger Tabellen oder Texte geht. Das Prinzip „Plausible Deniability“ (glaubhafte Abstreitbarkeit) soll dem Datenbesitzer unter Erpressung oder Folter die Möglichkeit geben, ein Passwort preiszugeben – aber eben nicht das entscheidende. Wer tatsächlich mit solcher Situation rechnen muss, sollte im „Outer Volume“ zumindest scheinbar interessante Daten bereithalten.



Linux-Hürden für Umsteiger

Linux ist anders als Windows. Wer bisherigen Windows-Nutzern allein mit der Wahl des richtigen Linux ein Quasi-Windows verspricht, unterschlägt strategische und technische Hürden. Das Wichtigste bespricht dieser Beitrag.

Aufmacher_WinLin

Da es hier um Linux für Windows-Umsteiger geht, geht es logischerweise um Desktopsysteme für PCs und Notebooks. Die großartigen Möglichkeiten, die Linux (und zwar nur Linux) auf kleinen Servern eröffnet, bleiben komplett außen vor. Klipp und klar: Linux kann Windows auf dem Desktop ersetzen – aber nicht überall und nicht immer ohne Hindernisse.

1. Die Vielfalt der Distributionen

Für Windows-Umsteiger ist der artenreiche Linux-Zoo undurchsichtig: Es gibt eine dreistellige Anzahl von Linux-Varianten (http://distrowatch.com). Empfehlungen mit dem Motto „Das beste Linux für Windows-Umsteiger“ sind nicht verkehrt, aber zu relativieren. Solche Aussagen insinuieren, dass die Wahl des richtigen Systems alle Umstiegsprobleme aus dem Weg räumte. Richtig ist, dass manche Distributionen für Einsteiger überhaupt nicht in Betracht kommen, weil Installation, Konfiguration, Oberfläche oder alles zusammen unzumutbare Anforderungen stellen würden. Richtig ist ferner, dass Windows-Umsteiger sich nicht auf Linux-Exoten einlassen sollten: Die Nachhaltigkeit solcher Projekte ist ungewiss, und eine heute hochgelobte Neuerscheinung kann zwei Jahre später eingestellt sein.

Dieser Artikel ist keine Distributionsberatung. Wir begnügen uns hier mit der pauschalen Empfehlung für Debian/Ubuntu-basierte Distributionen (Debian, Ubuntu, Kubuntu, Ubuntu Mate, Xubuntu, Lubuntu, Linux Mint). Diese garantieren Nachhaltigkeit und lange Supportzeiträume. Der Installer aller Ubuntu-Varianten inklusive Linux Mint ist das Komfortabelste, was unter Linux anzutreffen ist, und auch der Debian-Installer ist Einsteiger-tauglich. Unter den Bedienkonzepten dieser Systeme kommt Linux Mint mit dem Cinnamon-Desktop den Gewohnheiten eines Windows-Nutzers am meisten entgegen. Die Ubuntu-Spielarten Ubuntu und Kubuntu erfordern mehr Gewöhnung, sind aber wie Ubuntu Mate, Xubuntu und Lubuntu schnell „habituiert“.

Ubuntu mit Gnome: Der innovative Desktop ist auf einfache Bedienung mit Windows-Taste und wenigen Mausklicks ausgelegt. Beste konservative Alternative ist Linux Mint mit Cinnamon.

2. Die Vielfalt der Desktop-Oberflächen

Punkt 1 hat es schon angesprochen: Zur Vielzahl der Linux-Distributionen kommt eine weitere, für Windows-Nutzer verwirrende Diversifizierung: Populäre Systeme wie Debian, Ubuntu und Linux Mint bieten für denselben Systemunterbau mehrere Desktop-Umgebungen an (Oberflächen), und die Wahl der Oberfläche ist mehr als nur eine Geschmacksfrage: Sie bestimmt maßgeblich die Konfigurierbarkeit und Anpassungsfähigkeit des Systems, die mitgelieferte Standardsoftware und den Ressourcenverbrauch.

Die wichtigsten Desktops sind die Schwergewichte KDE und Gnome 3 sowie die Leichtgewichte XFCE und LXDE (ideal für ältere Rechner). Cinnamon, Standardoberfläche von Linux Mint, und Mate sind wichtige Abspaltungen der älteren Gnome-2-Basis und führen dessen klassisches Bedienkonzept mit Systemleisten und Hauptmenü fort. Mate und Cinnamon, ebenso die sparsamen Oberflächen XFCE und LXDE für schwächere Hardware sind für Umsteiger leicht nachvollziehbar. KDE ist extrem anpassungsfreudig, aber auch relativ komplex, während Gnome 3 mit gewissen Parallelen zu Windows 10 ungewöhnlich, aber klar und simpel ausfällt. Es gibt neben den genannten eine Reihe weiterer Linux-Oberflächen mit exotischem Charme oder verblüffender Anspruchslosigkeit. Windows-Nutzer sollten davon besser Abstand halten.

Beachten Sie, dass einige Ubuntu-Distributionsnamen den benutzten Desktop anzeigen: Der Name „Kubuntu“ ist zu lesen als „Ubuntu mit KDE“, während Xubuntu“ und „Lubuntu“ als „Ubuntu mit XFCE bzw. LXDE“ aufzulösen ist. Das „Ubuntu“ ohne Zusatz meint die Hauptvariante mit Gnome-Desktop.

Sparsame Desktops: Distributionen mit XFCE und LXDE (im Bild Mint mit XFCE) laufen auch auf älterer Hardware mit wenig Speicher. Die Optik ist konservativ, aber nicht spartanisch.

3. Das Kriterium „Homogenität“

Windows ist Windows, und alles, was das System mitbringt, trägt die Microsoft-Handschrift. Linux ist der Systemkern – der Rest jedoch ist modular. Für Umsteiger ist es ein oft unterschätztes Problem, dass Oberfläche, Systemzubehör, Software nicht aus einer Hand sind. Der Nutzer muss mit unterschiedlicher Fehlertoleranz und Qualität rechnen: Die eine Komponente ist einsteigerfreundlich und warnt vor Fehlgriffen, die nächste erwartet hingegen einen Benutzer, der genau weiß, was er tut.

Wer als Umsteiger solches Gefälle vermeiden will, nimmt am besten ein Ubuntu oder Linux Mint und nutzt für die Systemverwaltung ausschließlich die Systemwerkzeuge, welche die Distribution mitbringt. Die vorinstallierten Systemtools populärer Distributionen sind hinsichtlich Zielgruppe und Qualität homogen und ausgereift.

Win 32 Disk Imager für 1:1-Kopien von ISO-Abbildern: Das Hilfsprogramm ist das technische Windows-Äquivalent des Linux-Tools dd. Wichtig ist die genaue Kontrolle des Ziellaufwerks.

4. Handarbeit mit ISO-Abbildern

Suche und Download einer Distribution sind kein Abenteuer, da eine Websuche nach einem populären System wie etwa „Kubuntu“ mühelos zur Projektseite und von dort zum ISO-Download führt. Das ISO-Abbild muss dann aber bootfähig auf DVD oder USB kopiert werden. Diese für Linux-User vertraute Prozedur ist für Windows-Nutzer keineswegs selbstverständlich.

Das einschlägige Windows-Werkzeug, um ISO-Abbilder auf CDs (ISO bis 700 MB) oder DVDs (ISO größer als 700 MB) zu brennen, ist das Tool Imgburn (auf Heft-DVD, Download unter http://imgburn.com). Wählen Sie hier die Option „Imagedatei auf Disc schreiben“. Der wichtigste Punkt des Folgedialogs ist links oben „Quelle“ mit dem kleinen Ordnersymbol, über das Sie dann zur ISO-Quelldatei navigieren. Bei eingelegtem Rohling wird dann die bunte Schaltfläche links unten aktiv, mit der Sie den Schreibvorgang auslösen.

Das beste Werkzeug, um unter Windows ISO-Abbilder auf USB oder SD-Karten zu kopieren, ist der Win 32 Disk Imager (auf Heft-DVD, Download unter http://sourceforge.net/projects/win32diskimager). Hier genügt es, die Quelldatei („Image File“) und das Zielgerät („Device“) anzugeben. Die Schaltfläche „Write“ startet den Kopiervorgang. Der Win 32 Disk Imager schreibt eine bitgenaue Rohkopie auf das Zielgerät und wird nur dann ein bootfähiges Medium erstellen, wenn das ISO-Abbild eine Bootumgebung enthält. Dies ist aber bei allen uns bekannten Abbildern der Fall.

Eine Alternative, um unter Windows ISO-Abbilder auf USB oder SD-Karten zu kopieren, ist Unetbootin (auf Heft-DVD, Download unter http://unetbootin.sourceforge.net). Hier wählen Sie im Dialog unten die Option „Abbild“ und navigieren mit der Schaltfläche „…“ zur gewünschten Datei. Nach Klick auf „Öffnen“ erscheint der komplette Pfadname im Eingabefeld. Danach wählen Sie neben „Typ“ die Option „USB-Laufwerk“, und neben „Laufwerk“ geben Sie den Laufwerksbuchstaben des USB-Sticks an. „OK“ startet den Kopiervorgang. Anders als der Win 32 Disk Imager schreibt Unetbootin seine eigene Bootumgebung auf das Zielmedium. Das Medium wird somit auch bootfähig, wenn das ISO-Abbild keine Bootumgebung beinhaltet. Andererseits funktioniert diese Bootumgebung aber nur für Ubuntu-basierte Distributionen.

5. Livesystem und Installationsmedium

Windows-Nutzer kennen eine Setup-DVD zur Systeminstallation, aber keine Livesysteme. Die ISO-Abbilder aller populären Linux-Desktop-Distributionen sind aber beides – Livesystem inklusive Installer. Das ist ein großzügiger Service, weil er das Ausprobieren eines Systems erlaubt und die tatsächliche Installation direkt aus dem laufenden Livesystem. Die weitreichenden Möglichkeiten, die ein Livesystem bietet, sind aber auch Anlass zu Missverständnissen: Ist ein ISO-Livesystem, das auf ein beschreibbares Medium (USB) kopiert wird, nicht genau dasselbe wie ein auf USB installiertes Linux? Nein! Livesysteme bleiben auch auf einem beschreibbaren Laufwerk unveränderlich, alle Änderungen gehen beim nächsten Shutdown wieder verloren. Wer Linux auf USB installieren will, muss die Installation genauso durchlaufen wie bei der Einrichtung auf interner Festplatte.

6. Hürden bei der Installation

Ein Linux-Setup fordert mehr Angaben als ein Windows-Setup, das im Kern nur die Zielpartition (sofern eine Auswahl besteht) und den Erstbenutzer abfragt. Erste Ursache dafür ist, dass Linux kein kommerzielles Lizenzmodell und keine Bindung an die Hardware kennt, daher beliebig oft und auch auf USB-Datenträger installiert werden kann. Ein zweiter Grund ist die Tatsache, dass der Bootloader auf einem beliebigen Datenträger gespeichert werden kann. Diese großzügigen Möglichkeiten sind komplexer als bei Windows und äußern sich notgedrungen auch in technischer Weise. Wenn die Partitionierung im Linux-Installer manuell erfolgt, gibt es eine weitere technische Hürde: Die meisten Distributionen wollen für die Speicherauslagerung eine extra Swap-Partition.

Ohne auf die unterschiedlichen Installer einzeln einzugehen, unter denen der Ubuntu/Mint-Installer „Ubiquity“ Komfortmaßstäbe setzt, gelten überall folgende Prinzipien:

  1. Linux benötigt wie Windows nicht unbedingt eine komplette Festplatte, aber eine eigene Partition. Verfügbare Partitionen wird der Installer in der Form „/dev/sd[x][n]“ anzeigen – etwa „/dev/sda1“. Es muss absolute Sicherheit herrschen, hier das richtige Laufwerk „[x]“ und die richtige Partition „[n]“ anzugeben, weil diese Partition komplett überschrieben wird. Wichtigste Orientierung bieten die Größenangaben für die Partitionen. Weitere Abfragen für eine Linux-Systempartition gelten dem Dateisystem („ext4“ empfohlen) und dem Einhängepunkt („/“ für das Wurzelverzeichnis).
  2. Für den Bootloader ist im Normalfall „/dev/sda“ vorgegeben. Das ist die erste interne Festplatte, so wie es auch Windows automatisch festlegt, und das ist in Ordnung, wenn Sie Linux auf eine interne Festplatte installieren. Bei Installation auf USB-Laufwerke müssen Sie hingegen als Bootloader-Ziel das Laufwerk angeben, wohin Sie auch das System installieren: Ist die Systempartition etwa „/dev/sdc1“, dann gehört der Bootloader auf das Gerät „/dev/sdc“. Wird dies übersehen, ist der USB-Stick nicht bootfähig.
  3. Je nach Installer kann das Einrichten der zusätzlichen Swap-Partition lästig bis unrealisierbar sein, da nicht jeder Installer ein Partitionierungswerkzeug anbietet. Einfachste Lösung ist es, auf die Swap-Partition zu verzichten. Jedoch lässt sich eine Festplatte auch vorab mit Gparted unter Linux oder mit der Windows-Datenträgerverwaltung so aufteilen, dass eine große Partition für das System und eine kleine (etwa 8 GB) für die Auslagerung entsteht. Die richtigen Dateisysteme – „ext4“ für das System, „swap“ für die Auslagerung kann dann später der Linux-Installer einrichten.

Bei Verwendung des Ubuntu-Installers werden Sie mit diesen technischen Fragen nur belästigt, wenn Sie unter „Installationsart“ die manuelle Einrichtung „Etwas Anderes“ wählen (etwa für ein Setup auf USB). Bei anderen Optionen  – Installation auf primäre Festplatte oder Dualboot neben Windows – übernimmt das Setup alles automatisch.

Ubuntu-Installer: Bei USB-Installationen müssen Sie Partitionen und Bootloader manuell einrichten (hier auf /dev/sdc). Die Einrichtung auf interne Festplatten verläuft vollautomatisch, sofern die vom Installer analysierte Situation zutrifft.

7. Unter Linux funktioniert nicht jede Hardware

Nicht jeder Hersteller hält es für nötig, Linux-Treiber für seine Hardware zu entwickeln. Resultat ist, dass dann dieses Gerät unter Linux schlicht nicht funktioniert. Kernkomponenten wie Sata, Ethernet, Grafikarte, Monitor, Maus, Tastatur sind nicht betroffen, wohl aber USB-Drucker, Scanner, WLAN-Adapter, TV-Sticks insbesondere von Billiganbietern. Die Chancen, anhand exakter Gerätekennungen und Chip-Revisionen doch noch Abhilfe im Web zu finden, sind begrenzt und gegebenenfalls für Umsteiger zu knifflig.

Keine Abhilfe, aber präventive Problemerkennung bieten die Livesysteme der Linux-Distributionen. Alles, was im Livesystem problemlos funktioniert, wird im selben System auch nach Installation auf Festplatte funktionieren. Ein Sonderfall sind brandneue Rechner mit aktuellsten Prozessoren: Hier ist es wichtig, ein Linux mit möglichst aktuellem Kernel zu verwenden, der den neuesten CPU-Entwicklungen bereits Rechnung trägt. Am Beispiel Ubuntu wäre in solchen Fällen die jüngste Version 17.10 (Kernel 4.13) der Langzeitversion 16.04.3 (Kernel 4.10) vorzuziehen.

8. Energiesparfunktionen unter Linux

Windows-Umsteiger müssen damit rechnen, dass sich der Akku desselben Notebooks unter Linux schneller entleert als unter Windows. Standardmäßig bietet Linux (Ubuntu: „Systemeinstellungen -> Leistung“, Mint: „Energieverwaltung“) fundamentale Stromspartechniken mit Timeouts für Bildschirm und Bereitschaftsmodus, jedoch bietet Windows hier in enger Absprache mit den Hardware-Herstellern filigranere Regeln. Immerhin ist eine Näherung an Windows-Verhältnisse mit spezialisierten Tools zu erreichen, die der Beitrag ab Seite [[502]] in diesem Heft erklärt.

Fundamentale Stromsparfunktionen: Die Akkulaufzeiten von Notebooks sind unter Linux kürzer. Die Basiseinstellungen des Systems können aber durch externe Tools ergänzt werden.

9. Fehlende Software und Spiele

Anpassungsfähige Windows-Umsteiger werden unter Linux für jedes Einsatzgebiet geeignete Software vorfinden. Wenn es aber statt Gimp oder Libre Office ganz bestimmte Microsoft- oder Adobe-Software sein muss, kann Linux nicht dienen. Wer aus beruflichen Gründen uneingeschränkte Kompatibilität mit Excel, Word, Indesign oder Photoshop benötigt, wird mit Linux mittelfristig nicht froh: Der durchaus realisierbare Austausch der Formate erfordert immer wieder lästige Korrekturen am Detail.

Auch die Erfolge, die das Projekt Wine mit dem Nachbau der Windows-API vorweisen kann (https://appdb.winehq.org/), fallen qualitativ sehr unterschiedlich aus: Dass hier genau die benötigte Version einer Windows-Software einen störungsfreien „Platinum“- oder „Gold“-Status erreicht, bleibt ein Glücksfall. Ferner bedeutet die Benutzung von Wine eine weitere Hürde: Die Einrichtung ist einfach, der produktive Umgang damit aber keineswegs trivial.

PC-Spiele? Trotz Anbindung an die Spielplattform Steam ist Linux in Konkurrenz zu Windows keine Gaming-Plattform. Das Angebot bleibt gegenüber Windows reduziert, und leistungstechnisch kann selbst das dedizierte Gaming-Linux Steam OS (http://store.steampowered.com/steamos/) ein Windows nicht schlagen.

10. Die Installation von Software (Paketmanagement)

Der Bezug von Software bedeutet für Umsteiger eine große Umstellung. Linux bezieht seine Software aus den Paketquellen der jeweiligen Linux-Distribution. Die Softwarepakete sind signiert und garantiert virenfrei – ein unschätzbarer Vorteil gegenüber Windows. Ein weiterer Vorteil ist die Möglichkeit, ein komplettes System einschließlich Software mit einem einzigen Befehl zu aktualisieren (sudo apt dist-upgrade).

Auf der anderen Seite sehen Windows-Nutzer, die es gewöhnt sind, sich aus dem gesamten Web zu bedienen, auch Nachteile: Was die Distributions-Paketquellen bereitstellen, ist hinsichtlich Umfang und Aktualität begrenzt. Die Debian/Ubuntu-Repositories sind quantitativ zwar sehr gut gefüllt, doch stagnieren hier oft die Programmversionen während des Lebenszyklus einer Distribution. Wer nicht selbst den Quellcode kompilieren will, bleibt oft auf ältere Versionen beschränkt.

Dieses strikte Software-Deployment ist allerdings längst aufgeweicht. Programmentwickler können ihre Software auf einem PPA (Personal Package Archive) anbieten. Wenn der Anwender solche PPAs etwa mit apt-add-repository ppa:libreoffice/ppa (Beispiel für Libre Office) in seine Standardpaketquellen aufnimmt, kann er das Software-Angebot erweitern oder aktueller halten.

Zusätzlich zu den PPAs kommen zunehmend Programme in Container-Paketen in Mode (Snap, Flatpak, Appimage). Solche Pakete bringen alle benötigten Systembibliotheken mit und sind somit Distributions-unabhängig, ohne Installation lauffähig und portabel.

Jenseits der offiziellen Software-Quellen: PPAs (Personal Package Archives) für Ubuntu und Mint erweitern oder aktualisieren den Software-Bestand der Distributionspaketquellen.

11. Software-Verwaltung: Grafische Tools oder Terminal

Der Komplex der Paketverwaltung unter Ubuntu (und ähnlich Linux Mint) ist für Umsteiger gewöhnungsbedürftig, da er sich auf drei grafische Werkzeuge aufteilt. Was Ubuntu als Softwarequellen nutzt, ist unter „Systemeinstellungen -> Anwendungen & Aktualisierungen“ einstellbar. Aktives Aktualisieren findet aber nicht in diesem Tool statt, sondern in der „Aktualisierungsverwaltung“. Für Neu- oder De-Installationen ist wiederum das Tool „Ubuntu Software“ zuständig, das allerdings nur einen Bruchteil der etwa 40000 Pakete der Ubuntu-Repositories anbietet.

Umsteiger, die mit der Kommandozeile nicht gänzlich auf Kriegsfuß stehen, sind mit apt-Befehlen im Terminal oft besser beraten, wo sich alles zentral an einem Ort erledigen lässt. Eine Handvoll Kommandos genügt für fundamentale Aufgaben (weitere Optionen zeigt der Kasten „Software, Updates, Upgrades“). Der Befehl

sudo  apt  install  vlc

installiert eine Software, dessen Paketnamen Sie kennen (im Beispiel der VLC-Player). Wenn Sie einen Paketnamen nicht kennen, hilft apt-cache, das auch nach Beschreibungen filtern kann:

apt-cache search  dateimanager

Für das Deinstallieren genügt ein remove-Kommando:

sudo apt remove vlc

Achtung: Das De-Installieren von Programmen ist unter Linux vollständiger als vom Windows-Nutzer gewohnt. Wenn Sie im jeweiligen Software-Center oder im Terminal mit sudo apt remove […] ein Programmpaket entfernen, berücksichtigt Linux alle verzeichneten abhängigen Pakete. Im Extremfall kann eine kleine Desktop-Komponente, die aber integraler Teil der grafischen Oberfläche ist, den kompletten Desktop de-installieren. Dies geschieht aber nach Anzeige der entsprechenden Paketliste und einer Rückfrage. Wenn der Löschauftrag eine Liste von abhängigen Paketen meldet, sollten Sie den Auftrag abbrechen.

Vorsicht mit abhängigen Paketen beim De-Installieren: Das Beispiel zeigt Libre Office Draw, das sich nicht deinstallieren lässt, ohne das komplette Office-Paket mitzuziehen.

12. Updates und Upgrades

Windows hat seinen monatlichen Patchday, an dem es optional auch Microsoft-Anwendungssoftware aktualisiert (Office). Die komplette restliche Software benötigt allerdings ihre je eigenen Updates. Bei Linux genügt hingegen ein Befehl (sudo apt dist-upgrade) oder ein Klick auf die automatisch erscheinende Meldung der „Aktualisierungsverwaltung“ für ein Komplett-Update inklusive Software.

Heikler als Updates sind Upgrades. Bei Ubuntu sind Upgrades auf die jeweils nächste Version vorgesehen. Sie können also von 17.04. auf 17.10 wechseln oder demnächst von der LTS-Version 16.04 auf 18.04 LTS. Sobald ein Upgrade verfügbar ist, meldet sich die Aktualisierungsverwaltung automatisch. Sie müssen dann nur auf „System aktualisieren“ klicken und den weiteren Anweisungen folgen. Wenn Sie das Angebot aus Zeitmangel zunächst ablehnen, können Sie die Option später über die „Aktualisierungsverwaltung“ nachholen.

Der Terminalbefehl für ein Upgrade lautet

sudo do-release-upgrade

und sollte durch eine normale Systemaktualisierung mit

sudo apt update
sudo apt dist-upgrade

vorbereitet werden.

Linux Mint zeigt in der „Aktualisierungsverwaltung“ im Menü „Bearbeiten“ die Option „System aktualisieren auf Linux Mint xx.x“, sobald ein jüngere Version erhältlich ist. Bevor man das tut, ist es ratsam, das System erst auf den neuesten Stand zu bringen (wie bei Ubuntu).

Sollte ein Upgrade wegen eines Abhängigkeitsfehlers abbrechen, nutzen Sie diese beiden Befehle:

sudo apt -f install
sudo apt dist-upgrade

Achtung: System-Upgrades sind ein langwieriger und kritischer Vorgang. Viele Distributionen bieten das Upgrade daher gar nicht erst an. Ubuntu und Linux Mint haben den Vorgang aber nach unserer Erfahrung gut im Griff. Ärgerlich sind Upgrade-Angebote, die überwiegend scheitern und am Ende doch eine Neuinstallation erfordern (wie etwa beim NAS-System OMV).

Exkurs: Software – Updates – Upgrades

Aus Gründen, die der Haupttext darlegt, ist der Komplex der Paketverwaltung im Terminal am besten aufgehoben. Das Tool apt (Advanced Package Tool) ist das Terminal-Werkzeug unter Debian/Ubuntu/Mint für alle Aufgaben der Paketverwaltung (Software-Quellen, Aktualisierung, Neu- und De-Installation). Alle Befehle außer apt-cache search benötigen root-Recht (vorangestelltes sudo):

apt update
Software-Paketquellen aktualisieren (fundamental)

apt upgrade [Paket]
komplettes System [oder bestimmte Software] aktualisieren

apt full-upgrade 
komplette Aktualisierung des Systems (inkl. Löschen alter Pakete)

apt install [Paket]
Programm installieren

apt remove [Paket]
Programm deinstallieren

apt purge [Paket] 
Programm komplett löschen

apt autoremove
nach Deinstallationen überflüssige gewordene Pakete löschen

apt-add-repository [Quelle]
externe Software-Paketquelle erlauben

apt-cache search [Name]
sucht nach Paketnamen und Beschreibungen

do-release-upgrade
Upgrade auf nächsthöhere Version

13. „sudo“ und Administratorrechte

Die Verhältnisse zwischen Standard- und Administrator/root-Konto sind unter Linux und Windows ähnlich, aber der bedarfsweise Wechsel von eingeschränkten Benutzerrechten zu uneingeschränkten root-Rechten folgt anderen Regeln. Möglich ist dieser Wechsel bei Windows wie Linux nur Systemkonten, die zur Gruppe der Administratoren gehören. Während Windows nur einen „Ja“-Klick auf die Abfrage der „Benutzerkontensteuerung“ verlangt, fordert Linux die Eingabe des Benutzerkennworts. Diese Abfrage an der grafischen Oberfläche erscheint bei allen systemnahen Aktionen (Installation, Paketquellen, Benutzerkonten, Aktualisierungsverwaltung). Im Terminal kann dem eigentlichen Befehl sudo vorangestellt werden, um dem Befehl root-Recht zu verleihen. Auch hier fordert Linux die Eingabe des Benutzerkennworts.

Die Erlaubnis, mit sudo den Rechtekontext zu wechseln, erhält normalerweise jedes Benutzerkonto vom Typ „Administrator“ automatisch. Es ist aber darüber hinaus möglich, sudo-Erlaubnis über die Konfigurationsdatei „/etc/sudoers“ manuell und individuell einzurichten.

Im grafischen Dateimanager sind alle Schreibaktionen wie „Ordner anlegen“ oder „Löschen“ inaktiv, wenn man sich jenseits von /home, /tmp oder /media aufhält. Jedoch bieten Desktopsysteme wie Ubuntu und Mint das Kontextmenü „Als Systemverwalter öffnen“, um im Dateimanager uneingeschränkt mit root-Recht zu arbeiten. Wenn ein Dateimanager diese Option nicht selbst anbietet, können Sie ihn im Terminal mit vorangestellten sudo starten – also etwa sudo nautilus, um root-Recht zu erzwingen.

Kontextmenü für Administrator-Recht: Die Dateimanager von Ubuntu und Mint machen es einfach, Ordner oder Dateien zu bearbeiten, die den Wechsel zu root-Rechten erfordern.

14. Die lokalen Dateirechte

Das Thema Dateibesitz und Dateirechte ist unter Windows wie Linux kompliziert und Ursache für manche Zugriffsprobleme, zumal auch Netzfreigaben für einen User „xyz“ mindestens auch lokale Leserechte für „xyz“ voraussetzen. Linux-Einsteiger können nichts Klügeres machen, als manuelle Rechteänderungen möglichst zu vermeiden. Dabei helfen Ubuntu-Systeme inklusive Linux Mint mit Dateimanagern, die lokale Datenträger und Netzwerklaufwerke automatisch (Automount) so ins Dateisystem mounten, dass keine Rechtekonflikte entstehen. Die typische Nutzung von Netzressourcen über „Netzwerk durchsuchen“, Klick auf den gewünschten Server und dessen Freigabe, lädt die Netzfreigabe automatisch in einen Mountpunkt, der keine lokalen root-Rechte benötigt. Im Hintergrund arbeitet bei allen Gnome-affinen Desktops das Tool gvfs-mount, das auch im Terminal benutzt werden kann und stets in den Pfad „/run/user/[user-id]/gvfs/“ mountet. Dieses Automount geht Rechteproblemen aus dem Weg und hat nur den Nachteil, dass es nicht dauerhaft gilt: Es muss einmal in der laufenden Linux-Sitzung geschehen und gilt bis zur Abmeldung.

Bei typischen Zugriffsproblemen, wo statt dem normalen User nur root die nötigen Dateirechte besitzt, ist daher die richtige Antwort eine andere Mount-Methode – und nicht das rekursive Ändern massenhafter Dateirechte. Dennoch ist das im Notfall natürlich möglich. Dateimanager eignen sich über „Eigenschaften -> Zugriffsrechte“ nur für einzelne Ordner und Dateien. Der Terminalbefehl chown („change ownership“) ändert den Besitzer und arbeitet sich mit Schalter „-R“ auch rekursiv durch ganze Ordnerebenen:

sudo chown -R [Benutzer] [Pfad]

Zum Ändern der Rechte dient der Befehl chmod – mit leider zwei Beschränkungen. Er arbeitet nicht rekursiv, was sich mit Hilfe des find-Befehls kompensieren lässt. Chmod unterscheidet aber auch nicht zwischen Dateien und Ordnern. Wenn man Dateien und Ordnern dieselben Zugriffsrechte zuteilt, führt das zu dem Dilemma, dass sich entweder Ordner nicht öffnen lassen oder Dateien allesamt das „Ausführen“-Recht erhalten. Beides wäre fehlerhaft. Daher sind zwei Befehle notwendig:

find . -type f -exec chmod 664 {} \;
find . -type d -exec chmod 775 {} \;

„type f“ bearbeitet nur Dateien, „type d“ nur Ordner. Die Beispielbefehle würden ab dem aktuellen Verzeichnis (Punkt „.“) alle Unterordner verarbeiten.

Eine Rechteänderung, die jeder Linux-Nutzer kennen muss, betrifft das „Ausführen“-Bit von Scripts, das sich über „Eigenschaften -> Zugriffsrechte“ oder mit

chmod +x [Dateiname]

setzen lässt. Ohne dieses Bit gelten Scripts als Textdatei und werden nur angezeigt statt ausgeführt.

Ausführen-Bit setzen: Scripts werden erst ausführbar, wenn das Execute-Bit gesetzt ist. Das erledigt der Dateimanager oder auch chmod +x [name] im Terminal.

15. Automount von Netzwerk-Ressourcen

Beim erstmaligen Mounten von Samba-Freigaben im Dateimanager (siehe Punkt 14) muss sich der zugreifende Benutzer ausweisen und Samba-Kontonamen und -Kennwort eingeben. Diese Zugangsdaten können auf Wunsch dauerhaft hinterlegt werden („Nie vergessen“). Zusätzlich – und für Windows-Umsteiger ungewohnt – wird hier die „Domäne“ abgefragt. Im lokalen Netzwerk verwenden Sie hier wahlweise den Rechnernamen des Servers wie „raspberry“ oder „fritz-nas“ oder die Arbeitsgruppe, typischerweise „workgroup“, sofern keine explizit angelegt wurde.

Eine weitere Hürde für Windows-Nutzer ist der relativ abgelegene Automount-Pfad von Netzwerkfreigaben unter „/run/user/[…]/gvfs/“. Im Dateimanager, wo eingehängte Ressourcen unter „Geräte“ mit einem Klick erreichbar sind, spielt dieser Mountpunkt keine Rolle, bei der Nutzung anderer Programme oder des Terminals hingegen schon. Wird nun versucht, mit einem manuellen mount-Befehl ein Netzlaufwerk in einen angenehmeren User-Pfad einzubinden, dann stellt sich das Problem, dass der mount-Befehl root-Rechte erfordert, was dann unweigerlich zu Rechteproblemen im Mount-Ordner führt. Hier hilft nur ein Eingriff in eine Konfigurationsdatei, hier in die „/etc/fstab“ (Beispiel):

//192.168.178.20/archiv   /home/ha/Archiv   cifs user=ha,password=0815,domain=raspi,users  0  0

Die Freigabe wird dann automatisch bei der Systemanmeldung eingehängt. Die Option „users“ sorgt dafür, dass man die Freigabe außerdem mit User-Rechten ein- und aushängen darf. Die Befehle

mount /home/ha/Archiv
umount /home/ha/Archiv

funktionieren dann ohne root-Recht und benötigen nur den Mountpunkt als Parameter.

Netzwerk-Authentifizierung mit „Domäne“: Diese Abfrage beantworten Sie am einfachsten mit dem Rechnernamen des Servers, der die Freigabe bereitstellt.

16. Netz-Protokolle und Anwendungssoftware

Die Dateimanager Nautilus, Nemo, Dolphin, Caja prominenter Desktopsysteme beherrschen den Umgang mit diversen Netzwerkprotokollen – neben Samba (smb://) und FTP (ftp://) auch SSH (sftp://) oder Webdav (webdav://). Solche Netzadressen zeigt der Dateimanager, wenn Sie über „Netzwerk durchsuchen“ einen Datenserver anklicken, Adressen wie „smb://raspberry/“ können Sie aber auch direkt in die Adresszeile des Dateimanagers eingeben.

Für Einsteiger irritierend ist die Tatsache, dass ein solcher Netzwerkpfad zwar im Dateimanager ans Ziel führt, im Terminal oder einer Anwendungssoftware jedoch scheitert. Einfacher Grund ist, dass diese Programme die Protokolle nicht beherrschen: Sie erwarten, dass solche Netzressourcen in das lokale Dateisystem eingehängt wurden, und arbeiten nur über diesen lokalen Mountpfad. Also – zunächst im Dateimanager mounten, erst danach in der Software nutzen!

17. Übersicht über sämtliche Laufwerke

Der Windows-Explorer zeigt interne und externe Laufwerke mit allen Partitionen auf oberster Ebene an. Viele Linux-Umsteiger vermissen diese Ebene, die von dort ein Herabsteigen in die Verzeichnisebenen gestattet. Der Einstieg über das Wurzelverzeichnis („/“) des Dateisystems ermöglicht dies nicht, da Laufwerke oder Netzfreigaben in beliebigen Verzeichnissen eingehängt sein können. Jedoch bietet die Navigationsleiste in den Dateimanagern eine solche Übersicht: Unter „Geräte“ sind dort üblicherweise alle Partitionen aufgelistet. Wer zusätzlich eine Übersicht der Laufwerke im Hauptfenster sehen will, kann in das Adressfeld des Dateimanagers „computer:///“ eingeben und diese Laufwerkübersicht mit Strg-D („Lesezeichen -> Lesezeichen hinzufügen“) dauerhaft in der Navigationsspalte ablegen. Bei manchen Dateimanagern ist dieser Eintrag „Rechner“ standardmäßig vorhanden.

18. Die Laufwerksbezeichnungen /dev/sd[x][n]

Unter Windows dienen aufsteigende Buchstaben als Kennung für Datenträger. Aus historischen Gründen beginnt das Alphabet bei „C“, da „A“ und „B“ ungenutzt weiterbestehen (ehemals Diskettenlaufwerke). Linux ist hier eigentlich klarer, dennoch sind die Kennungen ein häufiges Problem für Umsteiger. Laufwerke und Partitionen eindeutig zu bestimmen, ist aber fundamental bei der Installation oder beim Schreiben von ISO-Abbildern.

Eine Kennung wie /dev/sda1 beginnt mit /dev/ für „Device“, „sd“ kennzeichnet die Schnittstelle „Sata Device“ (seltener sind „sc“ für SCSI-Device oder „m“ für RAID). Wichtig wird es danach: „a“ bedeutet die erste interne Festplatte, „b“ die zweite oder – falls nicht vorhanden – bereits das erste externe USB-Laufwerk. Die abschließende Zahl ist die Partitionsangabe.

Die Kennungen sind über grafische Werkzeuge wie „Laufwerke“ (gnome-disks) oder Gparted zu ermitteln. Eine schnelle Übersicht bietet der Terminalbefehl lsblk, der sich optional mit Output-Parametern („-o“)

lsblk -o name,type,label,size,mountpoint,fstype

gesprächiger schalten lässt.

Wichtig vor Installationen oder Kopieren von ISO-Abbildern: lsblk im Terminal liefert einen schnellen Überblick über alle Partitionen – rechts das Systemtool gnome-disks („Laufwerke“).

19. Groß-/Kleinschreibung und Sonderzeichen

Unter Windows spielt die Schreibung weder bei Dateinamen noch bei Befehlen und Schaltern eine Rolle. „DIR“ ist dasselbe wie „dir“ oder „diR“. Unter Linux ist genaue Schreibung hingegen zwingend: Den Befehl „LSBLK“ gibt es nicht, und ein Schalter „-X“ bedeutet etwas anderes als „-x“. Folgerichtig können auch Dateiobjekte wie „Musik“, „musik“ und „MUSIK“ nebeneinander existieren.

Nonchalant verhält sich Linux hingegen bei Sonderzeichen in Datei- und Ordnernamen. Die Sortierung von Ordnern und Dateien im Dateimanager wie im Terminal fällt bei Verwendung von Sonderzeichen deutlich anders aus. Während Windows einen Ordner „_Start“ vor allen Ordner mit alphanumerischen Startzeichen einsortiert, ignoriert Linux das Sonderzeichen und ordnet ihn unter „S“ ein. Zum echten Problem beim Datenaustausch zwischen Linux und Windows können Sonderzeichen in Dateinamen werden, da Linux mehr Sonderzeichen erlaubt als Windows. So können Linux-Dateinamen auch Doppelpunkt, Fragezeichen, Asterisk (*) oder Backslash enthalten.

20. Abmelden – Shutdown – Bereitschaft

Unter Windows 10 führt ein Rechtsklick auf das Hauptmenü zum Punkt „Herunterfahren oder abmelden“. Der Klickweg ist nicht intuitiv, aber immerhin ist hier alles an Ort und Stelle. Unter Linux handhaben die Desktop-Oberflächen das jeweils eigen: Unter Linux Mint sind alle Abschaltfunktionen wie Abmelden, Ausschalten, Neustart oder Bereitschaft im Hauptmenü versammelt – übersichtlich und leicht zu finden. Andere Linux-Desktops wie etwa Gnome folgen der technischen Logik und trennen die echten Abschaltfunktionen von jenen der Benutzer-Session. Hinter dem typischen Abschaltsymbol gibt es daher nur Shutdown und Neustart, während die Abmeldung oder die Bildschirmsperre unter dem Kontonamen zu finden sind.

Alle Abschalt-Optionen an Ort und Stelle: Das Menü von Linux Mint versammelt Abmeldung und Shutdown-Varianten übersichtlich an zentraler Stelle.

Zurück zur Linux-Übersichtsseite…

Linux-Mini-Server mit Python

Http-Server mit Python: Mit einem Terminalbefehl ist ein Downloadserver für das aktuelle Verzeichnis eingerichtet. Hier erfolgt der Zugriff über Firefox unter Windows.

Nahezu jedes Linux-System verfügt über eine ungeahnte Möglichkeit, einen Ordnerinhalt ganz einfach anderen Teilnehmern im Netzwerk per Webbrowser (lesend) zugänglich zu machen. Der Scriptinterpreter Python, der in den meisten Linux-Distributionen vorinstalliert ist, enthält einen Webserver, der mit einem einzigen Befehl bei Bedarf im Terminal aus dem gewünschten Verzeichnis heraus in Gang gesetzt wird:

python -m SimpleHTTPServer 4444

Jeder andere Teilnehmer mit Webbrowser kann nun, während dieser Mini-Webserver läuft, über die IP-Adresse des Linux-Rechners und der Portnummer auf die Dateien in diesem Verzeichnis lesend im Browser zugreifen und Dateien herunterladen. Je nachdem, wo der Python-Befehl ausgeführt wird, steht das komplette Dateisystem oder nur ein Unterverzeichnis zur Verfügung.

Hat der Linux-PC beispielsweise die IP-Adresse 192.168.0.2, so kommt man auf jedem Rechner mit dem Browser und der Adresse

http://192.168.0.2:4444

zur Freigabe. Auf dem Linux-Rechner beendet Strg-C den temporären Mini-Webserver wieder.

 

Interne CMD-Kommandos

Diese Sammlung beansprucht keinerlei Vollständigkeit, weder im Moment noch künftig. Es geht mir nur darum, einige besonders interessante Aspekte (die ich selbst ständig vergesse) an dieser Stelle zu sammeln.

Initialisierungsbatch
Man spart sich erheblich Mühe und Frust am CMD-Prompt, wenn man diesen durch eine Initialisierungsbatch (Datei mit der Endung CMD oder BAT) standardisiert. Das ist recht mühelos möglich, weil die CMD beim Start eine Batch automatisch lädt, die im Registry-Schlüssel „HKEY_CURRENT_USER\Software\Microsoft\Command Processor“ in der Zeichenfolge „Autorun“ mit vollem Pfadnamen eingetragen ist.

Typischer Inhalt der Initialisierungsdatei sind dann Farbdefinition (Color), Prompt, Titel (title) und Doskey-Definitionen, also Kommandoabkürzungen wie etwa „doskey d=pushd „%userprofile%\desktop“ oder „doskey x=explorer.exe .“.
Eine einfache Init.cmd, die sich selbst ins Benutzerprofil kopiert und in die Registry einträgt, können Sie hier herunterladen. Einfach Zip entpacken, Init.cmd starten mit Doppelklick – erledigt. Die enthaltenen Befehle sind natürlich Geschmackssache. Wenn Sie am Prompt „init“ eingeben, erhalten Sie die Initialisierungsbatch im Editor und können Sie nach eigenen Wünschen verändern. Ich beschreibe hier nur das – ausbaufähige – Prinzip, da ich selbst den alternativen Kommandointerpreter 4NT klar bevorzuge.

DOSKEY
Der antiquierte Name Doskey steht für Alias-Abkürzungen wie unter Unix.
Wenn das Alias „doskey x=explorer.exe .“ definiert wurde, startet „x“ ein Explorer-Fenster mit dem aktuellen Verzeichnis. Um einem Alias einen Parameter übergeben zu können, verwenden Sie „$*“:

doskey n=notepad.exe $*

Der Befehl „n datei.txt“ würde nun die angegebene Datei in Notepad laden.
Mehrere Befehle lassen sich mit „$T“ verketten:

doskey xkill=taskkill.exe /f /im explorer.exe $T pause $T explorer.exe

Dieses Doskey-Alias

doskey clip=$* $T $*^>%temp%\temp.txt $T notepad.exe %temp%\temp.txt

zeigt, dass man auch Dateiumleitungen nutzen kann. Dazu muss aber das Umleitungszeichen „>“ mit „^“ maskiert werden. Das Alias würde etwa nach „dir /s /b“ diesen Befehl ausführen und die Ausgabe in Notepad laden.

ECHO
Mit Batch-Code temporäre Dateien zu schreiben ist recht lästig: Typischerweise müssen Sie Textzeile für Textzeile mit ‚Echo‘ und Umleitungszeichen in die Datei setzen:
echo Bla > Datei.txt
echo Bla >>Datei.txt
echo Bla >>Datei.txt
echo Bla >>Datei.txt

Das ist nicht nur mühsam, sondern auch fehleranfällig.
Folgende Syntax-Variante macht die Sache viel bequemer:

(echo Bla
echo Bla
echo Bla
echo Bla
)>Datei.txt

Die Ausgabedatei müssen Sie hier nur ein einziges Mal am Ende angeben. Die Unterscheidung der Umleitungszeichen zwischen „>“ (Erstellen der neuen Datei) und „>>“ (Anhängen an bestehende Datei) wird ebenfalls obsolet.

Android für PCs, Notebooks und Netbooks

301_5_Android_Notebook
Einfach. Funktional. Hübsch: Wer Senioren, Kinder und Einsteiger davon überzeugen will, dass die Computer-Benutzung einfach ist und Spaß macht, sollte ein Android-x86 anbieten.

Android – das ist ja eigentlich das Linux für Smartphone und Tablets. Aber bei passender Zielgruppe kann sich Android als ideale Lösung für PCs, Notebooks und Netbooks entpuppen. Mit der Portierung Android-x86 liegt ein System für solche Zielgeräte vor. Wo es sich eignet, lesen Sie hier.

Android-x86 für Intel- und AMD-Rechner besitzt zwei Eigenschaften, die es für bestimmte Szenarien attraktiv machen: Es ist erstens Hardware-technisch relativ anspruchslos und läuft auch auf älterer und schwächerer Hardware. Es hat zweitens mit dem Google Play Store eine einfache und relativ sichere Software-Quelle und vor allem ein simples Bedienkonzept, dessen Hauptelemente Sie jedem Anfänger und Einsteiger schnell erklärt haben. Die Nachteile und Einschränkungen sind aber auch deutlich: Ein Android-System ist auf rezeptive Ansprüche ausgerichtet – Surfen, Mails abholen, E-Books lesen, Musik hören. Mails oder Notizen zu verfassen, ist sicher auch kein Problem, aber für richtig produktives Arbeiten taugt es nur bedingt. Android-x86 ist daher genau dort die richtige Wahl, wo ein Rechner technisch Unbedarften den Zugang zu Internet, Mail und Medien bereitstellen soll. Und die Android-Ausrichtung auf kleine Displays prädestiniert das System noch einmal in besonderer Weise für Netbooks und Notebooks.

Android-x86 auf USB-Stick oder SD-Karte

Auf der Seite www.android-x86.org/download gibt es aktuell folgende Versionen:

Android-x86 4.4 (android-x86-4.4-r5.iso) ist die stabile Version, die wir aufgrund des geringen Speicherbedarfs als beste Wahl einschätzen. Dieser Artikel bezieht sich überwiegend auf Version 4.4.

Android-x86 5.1 (android-x86-5.1-rc1.iso) ist als RC1 noch „Release Candidate“ und daher noch in der Entwicklung. Die überschaubaren optischen und funktionalen Vorteile dieser Version können die Nachteile insbesondere beim Speicherbedarf nicht aufwiegen.

Für ganz Experimentierfreudige gibt es unter www.fosshub.com/Android-x86.html auch noch eine Vorversion 6.0, die ausdrücklich mit „for testing“ gekennzeichnet ist.

Nach dem Download des nur circa 440 MB großen ISO-Images schreiben Sie das System zunächst bootfähig auf USB-Stick oder SD-Karte. Unter Windows ist der Win 32 Disk Imager das geeignete Tool (auf Heft-DVD), unter Linux das Kommandozeilen-Tool dd:

dd if=android-x86-4.4-r5.iso of=/dev/sdb

Wie immer in solchen Fällen ist bei der Angabe des Zielgeräts (hier im Beispiel „sdb“) beziehungsweise bei der „Device“-Angabe beim Win 32 Diskimager hundertprozentige Gewissheit erforderlich, das richtige Medium zu beschreiben.

301_1_Android-x86-Bootoptionen
Test vor der eigentlichen Installation: Der Live-Betrieb ist etwas lästig, weil Android-x86 auch hier diverse Setup-ähnliche Angaben fordert. Aber danach wissen Sie, ob die Installation lohnt.

Nach dem Booten vom Flash-Medium erscheint ein Bootmenü mit vier Optionen, die erste und vierte davon sind wesentlich:

„Run Android-x86 without installation“ bedeutet einen Testlauf im Live-System. Der kann nicht schaden, weil Sie hier empirisch feststellen, ob Android-x86 auf dem genutzten Gerät die komplette Hardware erkennt (WLAN-Adapter, Kamera, USB-Peripherie, Funktionstasten, Energiesparfunktionen). Außerdem erhalten Sie einen Eindruck von Bedienung und Optik. Etwas umständlich ist der Live-Modus jedoch deshalb, weil Sie diverse Voreinstellungen treffen müssen (Sprache, WLAN, Google-Konto), obwohl diese nur temporär für diese Sitzung gelten. Wer noch vor einem Testlauf im Live-System sichergehen will, ob das gewünschte Zielgerät für Android-x86 in Betracht kommt, kann sich auch unter www.android-x86.org/hardware-list informieren. In der realen Welt dürften aber deutlich mehr als die hier angezeigten Netbooks und Notebooks problemlos oder mit tolerierbaren Detailmängeln unter Android-x86 laufen.

„Install Android-x86 to harddisk“ installiert das System auf eine Festplatte oder ein Flashmedium. Im englischsprachigen Textinstaller erscheinen die verfügbaren Partitionen zur Auswahl, die erste Festplatte als „sda“. Für den Fall, dass die Partitionsverhältnisse erst eingerichtet werden müssen, gibt es mit „Create/Modify partitions“ den einfachen, textbasierten Partitionsmanager cfdisk. Der reicht aus, um Partitionen zu löschen und neu anzulegen. Wenn Sie Partitionsgrößen ändern müssen, erledigen Sie das besser vorab mit einem Linux-Live-System und dem Tool Gparted.

Anschließend erfolgt die Abfrage des Dateisystems, wobei neben ext2/3/4 auch „ntfs“ oder fat32″ möglich sind. Die Frage, ob GRUB installiert werden soll, sollte man unbedingt bejahen, um das Zielmedium bootfähig zu machen.

Die Kopie des kleinen Systems auf den Zieldatenträger ist schnell erledigt, und nach der Schlussmeldung „Run Android-x86“ oder „Reboot“ kann das Installationsmedium entnommen werden. Nun erfolgt die eigentliche Einrichtung, zunächst die Auswahl der Systemsprache, die Sie – nicht ganz offensichtlich – durch die Cursor-Taste nach oben auf „Deutsch (Deutschland)“ umstellen können. Danach geht es unter anderem um dem Zugang zum Standard-WLAN und die Angabe des Google-Kontos. Dabei ist nur die persönliche Adresse erforderlich – also ohne „@googlemail.com“ oder „@gmail.com“, das nach Sprung in nächste Eingabefeld automatisch ergänzt wird. Diese Info ist nicht ganz überflüssig, da Sie an dieser Stelle noch mit englischem Tastaturlayout arbeiten und die Suche nach dem @-Zeichen eine lästige, aber völlig unnötige Bremse bedeuten kann.

Die Anmeldung bei Google ist unbedingt zu empfehlen, weil nur so der Zugang zum Google Play Store offensteht. Wenn mit dem Google-Konto bereits ein weiteres Gerät verknüpft ist (also ein Android-Smartphone oder Tablet), dann werden automatisch alle dort eingerichteten Apps auch auf dem x86-Gerät installiert. Das kann praktisch sein, aber eventuell auch lästig, falls das Zielgerät andere Apps nutzen soll. Die Synchronisierung zahlreicher Apps wird Android erst einmal einige Minuten voll beschäftigen und auslasten. Am besten warten Sie mit der weiteren Einrichtung ab, bis diese Aktion abgeschlossen ist.

301_2_Android-x86-Partitionierung
Textbasierter Partitionierer: Der Android-x86-Installer bringt das Tool cfdisk mit, das zum Erstellen neuer Partitionen ausreicht. Komplizierteres erledigen Sie

Hardware und Leistung

Android-x86 ist auf älterer Hardware kein Schnell-Booter. Der Start dauert auf unserem EEE-Netbook mit Atom-CPU gut 50 Sekunden, was aber kein Hinweis auf einen zähen Benutzeralltag ist. Einmal gestartet, verhält sich das System auch bei bescheidener Hardware jederzeit performant. Einzige Ausnahme ist der schon erwähnte Synchronisierungsvorgang bei der Ersteinrichtung, wenn zahlreiche Apps gemäß der Ausstattung eines anderen Android-Geräts installiert werden.

Beim älteren Android 4.4-r5 liegt die Speicherauslastung für das pure System bei nur etwa 200 MB. Dies sind die angezeigten Werte auf einem Netbook mit 1 GB RAM, auf einem Notebook mit 4 GB RAM nimmt es sich mit 250 bis 300 MB etwas mehr (gemessen mit dem „System Monitor Lite“ von Christian Göllner). Das ist weit weniger als jedes Windows-System fordert, die Werte sind aber auch mit Linux-Systemen kaum zu unterbieten.

Das jüngere Android-x86 5.1-rc1 belegt circa 470 MB bei installiertem 1 GB RAM. Die Differenz zur Vorgängerversion fällt damit so gravierend aus, dass wir auf Zielgeräten mit nur einem GB RAM (wie typischerweise Netbooks) die ältere Version 4.4-r5 empfehlen.

301_3_Android-4.4.-RAM
Android-x86 in Version 4.4-r5: Wenn das Zielgerät keine üppige Speicherausstattung bietet, ist diese Version die beste Empfehlung. Das jüngere Android-x86 5.1-rc1 benötigt über 450 MB.

Bei verkabelten wie auch kabellosen Netzwerkverbindungen hat Android-x86 keine Schwierigkeiten, solange es sich bei den WLAN-Adaptern um integrierte Netbook- und Notebook-Chips handelt. Heikler dürften, wie bei Linux generell, externe WLAN-Empfänger am USB-Anschluss sein.

Angeschlossene USB-Geräte werden problemlos erkannt. Das gilt für optionale Eingabeperipherie wie Mäuse ebenso wie für USB-Festplatten oder Sticks. Bei Datenspeichern erfolgt aber keine automatische Benachrichtigung: Sie finden die Medien dann in der Navigationspalte des Standard-Dateimanagers oder im stets zu empfehlenden Total Commander für Android unter „USB“.

Die speziellen Funktionstasten zur Helligkeits- und Lautstärkesteuerung von Netbooks und Notebooks arbeiten erstaunlich gut unter Android-x86, aber mit der einen oder anderen Fehlfunktion ist immer wieder mal zu rechnen. Hier muss dann gegebenenfalls eine passende App aushelfen.

Wer sich für Android auf einem größeren Monitor entscheidet, muss sich im Klaren sein, dass er hier mit Apps im Vollbildmodus arbeiten wird, die auf kleine Tablet- und Smartphone-Displays optimiert sind. Android hat nur bescheidene Möglichkeiten, die Smartphone-GUI auf Monitor-Dimensionen zu trimmen: Unter „Einstellungen -> Display -> Schriftgröße“ hilft die Einstellung „klein“ ein Stück, ändert aber nichts daran, dass manche Vollbild-App ins Auge bombt.

Zum Herunterfahren des Systems tippen Sie den Power-Knopf des Geräts zweimal kurz an. Dann erscheint das Android-Popupfenster mit mehreren Optionen wie „Herunterfahren“ oder „Neustarten“, das nach Mausklick den gewählten Job erledigt. Diese Methode ist auf Netbooks und Notebooks die einfachste. Ob bei dieser Methode auch PCs mitspielen, haben wir nicht getestet. Bei der älteren Version 4.4-r5 funktioniert aber auch der Klick auf das Datum oben rechts und dort die Option „Herunterfahren“. Und nicht zuletzt gibt es wieder diverse Shutdown-Apps im Google Store.

301_4_Android-x86
Home-Screen mit Standardhintergrund: Die Einrichtung von Android-x86 auf dem PC entspricht technisch vollständig der Anpassung eines Android-Smartphones oder Tablets.

Bedienung und Anpassung

Die Systemsprache lässt sich schon bei der Installation auf Deutsch setzen. Das Tastaturlayout bleibt danach allerdings weiter Englisch. Dies ist unter „Einstellungen -> Sprache & Eingabe -> Tastatur & Eingabemethoden“ zu korrigieren. Als eine weitere der allerersten Einstellungen (unter „Einstellungen -> Display“) sollten Sie das automatische Drehen der Anzeige abstellen: Auf Geräten ohne Lagesensor bereitet es erhebliche Probleme, ein gedrehtes Display wieder in die horizontale Standardlage zu bringen. Früher oder später wird das kleine Malheur in jedem Fall geschehen, da manche App ohne Rücksicht auf eine gewünschte Standardausrichtung den Bildschirm dreht. Meist hilft es, diese App über die Taskliste (rechter „Recents“-Button) zu beenden, um dadurch automatisch wieder zur Standardanzeige zurückzukehren. Besorgen Sie sich dennoch vorsorglich eine spezielle App wie „Rotation Control“ aus dem Google Store, mit der Sie bequem die Ausrichtung korrigieren können.

Die wesentlichen Aktionen erfolgen über den linken „Zurück“-Button, mittigen „Home“-Button und rechten „Recents“-Button. Dies ist einfach genug, wird aber mit physischer Tastatur noch einfacher, weil auch die Tasten Esc, Windows und die Kontextmenü-Taste (neben der rechten Strg-Taste) dieselben Funktionen erfüllen. Und statt dem Wischen auf dem Touchscreen hilft hier die gedrückte Maustaste und Ziehen in die gewünschte Richtung, je nach App funktioniert auch das Scrollen mit dem Mausrad.

Die Anpassung von Android-x86 folgt den Regeln eines Android auf ARM-Architektur. Längerer Klick auf eine freie Stelle des Home-Bildschirms eröffnet die Möglichkeit, das Hintergrundbild zu ändern oder Widgets auf dem Home-Bildschirm zu platzieren. Apps in der Gesamtliste können durch längerem Mausklick markiert und danach auf den Home-Bildschirm gezogen werden. Sammelordner am Home-Screen entstehen durch Drag & Drop bereits vorhandener App-Icons aufeinander.

Den Task-Wechsel und das Beenden von Apps erledigen Sie über den rechten „Recents“-Button: In der älteren Version 4.4 ziehen Sie dort eine App aus dem Bildschirm, um sie zu beenden. Im jüngeren 5.1 warten Sie kurz, bis alle Apps das Schließen-Symbol („x“) anzeigen. Sie lassen sich dann per Klick auf dieses Control beenden.

Android-x86 ist ohne nähere Konfiguration ein Einbenutzersystem ohne Anmeldung und startet ungeschützt zum Desktop. Eine Authentifizierung lässt sich über „Einstellungen -> Sicherheit -> Display-Sperre wählen“ einrichten. Über „Einstellungen -> Nutzer“ können Sie auch weitere Konten und damit ein Mehrbenutzersystem konfigurieren.

Remix OS: Aufgebohrtes Android-x86

Android ist ein schlankes System für Smartphones und Tablets, die Portierung Android-x86 eine attraktive Alternative für Netbooks und Notebooks. Das ist aber früheren Google-Mitarbeitern längst nicht genug, die sich unter dem Firmennamen Jide Technology zusammengetan haben: Als Remix OS soll Android-x86 den PC-Desktop generell erobern. Auf der Projektseite www.jide.com können Sie sich über Remix OS informieren, Downloads der 32- und 64-Bit-Varianten gibt es unter www.jide.com/remixos-for-pc#downloadNow. Das Zip-Archiv hat je nach Ausführung bis zu 717 MB, beim Extrahieren entsteht das ISO-Image mit circa 2,5 GB, ferner eine ausführbare Datei (Remixos-installation-tool-B2016030102.exe) für die Einrichtung unter Windows.

Wer kein Windows-System verwendet, kann das ISO-Image einfach mit dem Kommandozeilen-Tool dd auf einen USB-Stick schreiben. Beim Einsatz von Remix OS auf USB kommt nur USB 3.0 in Betracht. Bei langsameren 2.0-Medien oder 2.0-Ports am Gerät startet das System erfahrungsgemäß nicht, bringt aber keine Fehlermeldungen, sondern bearbeitet das Medium in Endlosschleife.

Da es im Live-System (Option „Guest mode“ beim Booten) keinen Installer gibt, macht es etwas Mühe, Remix OS auf eine Festplatte zu bringen. Einfach geht das nur, wenn auf dem Gerät ein Windows vorliegt und das genannte Windows-Tool genutzt werden kann. Ist kein Windows vorhanden oder soll dieses durch Remix OS ersetzt werden, dann helfen zwei USB-Sticks – der eine mit dem ISO-Image von Remix OS, der zweite mit einem beliebigen Linux-Live-System. Mit dd im Live-System schreiben Sie dann das ISO-Image auf die Festplatte des Zielgeräts.

Remix OS hat inzwischen zwar bereits Versionsnummer 2.0, bezeichnet sich aber immer noch als „Beta Version“ – mit gutem Grund: Der Systemstart ist sehr zäh, die Einstellung der deutschen Oberfläche führt zu einem gemischtsprachigen System (Deutsch-Englisch), und das Keyboardlayout bleibt komplett Englisch. Mit Hängern und App-Abstürzen muss man jederzeit rechnen, und nicht zuletzt fehlt diesem Android-x86 der Google Play Store. Im Prinzip lassen sich die unentbehrlichen Google Services (inklusive Google Play Store) einbauen, indem Sie das Android Package GMSActivator.apk manuell herunterladen und unter Remix OS installieren. Dafür muss unter „Einstellungen -> Sicherheit -> Unbekannte Herkunft“ die Installation aus Fremdquellen erlaubt werden. Wir hatten danach allerdings erhebliche Probleme inklusive Abstürze bei der Benutzung von Google Play. Eine Alternative sind noch seriöse APK-Quellen wie www.apkmirror.com, wo Sie Android-Pakete downloaden können, um sie anschließend manuell zu installieren.

Das Konzept von Remix OS ist offensichtlich: Mit Startmenü, Taskleiste und skalierbaren App-Fenstern wird aus Android ein echter Multitasking-Desktop. Damit gehen Android aber alle Merkmale verloren, die es für spezielle Einsatzgebiete interessant machen: Der Speicherbedarf des Systems liegt weit über einem GB und die GUI-Bedienung ist weit entfernt vom simplen Android-Konzept (wenn auch nicht wirklich kompliziert). Somit hinterlässt dieses Projekt etwas Rätselraten, denn Desktop-Systeme auf Linux-Basis gibt es genug – besser, ökonomischer und mit großem Software-Angebot.

301_6_Remix_OS_TotalCommander
Sieht besser aus als es ist: Remix OS macht Android-x86 zum Desktop-System. Das klingt ambitioniert, ist aber tendenziell überflüssig und aktuell meilenweit von einem reifen Zustand entfernt.