26.02.2014 Aufrufe

LinuxUser Daten visualisieren (Vorschau)

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

Der freie Super-Codec im Test:<br />

Was Opus unter Linux kann S. 90<br />

Flinker Distri-Winzling für<br />

jede Hardware: Porteus S. 10<br />

I-Nex: Präzise Infos zur<br />

PC-Hardware sammeln S. 66<br />

05.2013<br />

ARDUINO • I-NEX • JONDO • OPENWRT • SCALPEL • SHELR • VISUALISIERUNG<br />

Strukturen, Formeln, Graphen und Konzepte augenfällig darstellen<br />

<strong>Daten</strong> <strong>visualisieren</strong><br />

Mathematische Probleme<br />

perfekt veranschaulichen<br />

mit GeoGebra S. 18<br />

Moleküldarstellung in 3D:<br />

Die besten Anwendungen<br />

im direkten Vergleich S. 24<br />

Ideen und Notizen<br />

ordnen mit Mindmaps<br />

und Konzeptkarten S. 30, 36<br />

Arduino-Programmierung für Einsteiger S. 76<br />

Analoge Sensoren auslesen, große Lasten versorgen: Listings und Schaltungen<br />

Defekte und gelöschte S. 70<br />

Dateien wiederherstellen<br />

Top-Distris<br />

auf den<br />

Heft-DVDs:<br />

Inkognito im Internet<br />

unterwegs JonDonym S. 44<br />

05<br />

www.linux-user.de<br />

EUR 8,50 EUR 9,35 sfr 17,00 EUR 10,85 EUR 11,05 EUR 11,05<br />

Deutschland Österreich Schweiz Benelux Spanien Italien 4 196067 008502 05


MEDIALINX<br />

IT-ACADEMY<br />

IT-Onlinetrainings<br />

Mit Experten lernen.<br />

powered by<br />

n Sparen Sie Zeit und Kosten mit unseren praxisorientierten Onlinetrainings.<br />

n Bestimmen Sie Ihr eigenes Lerntempo und nutzen Sie die flexible Zeiteinteilung.<br />

n Profitieren Sie vom Know-how der erfolgreichsten Linux-Zeitschrift Europas.<br />

LPIC-1 / LPIC-2 Trainings<br />

LPIC-1 (LPI 101 + 102)<br />

mit Ingo Wichmann,<br />

Linuxhotel<br />

499 €<br />

LPIC-2 (LPI 201 + 202)<br />

mit Marco Göbel,<br />

Com Computertraining GmbH<br />

499 €<br />

Linux<br />

Professional<br />

Institute<br />

www.medialinx-academy.de<br />

R<br />

Effiziente BASH-Skripte<br />

mit Klaus Knopper,<br />

Gründer der Knoppix-Distribution,<br />

knopper.net<br />

199 €<br />

Zarafa – die offiziellen Trainings<br />

mit Marco Welter,<br />

Zarafa Deutschland GmbH<br />

Zarafa Administrator<br />

249 €<br />

Zarafa Engineer<br />

249 €


Editorial<br />

Restricted Freedom<br />

Sehr geehrte Leserinnen und Leser,<br />

UEFI Secure Boot und kein Ende: Jetzt<br />

hat die größte spanische Linux-Anwender-Vereinigung<br />

Hispalinux – sie vertritt<br />

rund 8000 Mitglieder – bei der EU-Kommission<br />

diesbezüglich eine Beschwerde<br />

gegen Microsoft eingereicht (siehe Aktuelles<br />

ab S. 16). In der 14-seitigen Eingabe<br />

wirft der Hispalinux-Vorsitzende,<br />

der Rechtsanwalt Jose Maria Lancho,<br />

Micro soft vor, deren Secure-Boot-Implementation<br />

sei faktisch ein technisches<br />

Gefängnis für Betriebssysteme. Die<br />

Micro soft-Vorgabe behindere das Booten<br />

anderer Betriebssysteme und damit<br />

den Wettbewerb, womit sie nicht nur<br />

den Benutzern schade, sondern auch<br />

der europäischen Software-Industrie.<br />

Die Beschwerde dürfte wenig Aussicht<br />

auf Erfolg haben. Wie aus einer unabhängig<br />

von der Hispalinux-Beschwerde<br />

schon vorher ergangenen Auskunft<br />

des EU-Wettbewerbskommissars Joaquín<br />

Almunia an das Europäische Parlament<br />

hervorgeht, beobachtet die EU-<br />

Kommission schon seit längerem die<br />

Implementierung von Microsofts Sicherheitsanforderungen<br />

in Windows 8 genauestens.<br />

Man habe dabei keinerlei<br />

Hinweise darauf gefunden, dass Redmonds<br />

Praktiken irgendwelche EU-<br />

Richtlinien oder Gesetze verletze. Tatsächlich<br />

hat Microsoft in seinen Zertifizierungsvorgaben<br />

alles getan, um Windows-8-PCs<br />

trotz UEFI Secure Boot auch<br />

für andere Betriebssystem offen zu halten.<br />

Wo es trotzdem klemmt, erweist<br />

sich als Ursache der Schwierigkeiten immer<br />

wieder eine schlampige Implementation<br />

durch die Hersteller der UEFI-<br />

Firmware, der Hardware oder beides.<br />

Ist also alles im grünen Bereich? Mitnichten,<br />

denn die Hispalinux-Beschwerde<br />

geht nicht nur am Ziel vorbei, sondern<br />

trägt alle Züge eines bereits verlorenen<br />

Rückzugsgefechts. Während<br />

Micro soft auf dem PC noch widerwillig<br />

andere Betriebssysteme neben Windows<br />

duldet, darf der Nutzer eines Windows-<br />

RT-Tablets oder Windows-Phones nur<br />

das booten, was Redmond erlaubt.<br />

Noch schlimmer: Auf Smartphones<br />

und Tablets quer über alle Hersteller hinweg<br />

und von Android über iOS bis Windows<br />

RT ist das längst die Regel statt einer<br />

Ausnahme. Obwohl diese Geräte<br />

zahlenmäßig den PC mittlerweile verdrängt<br />

haben und zum Alltagsumfeld<br />

praktisch jeden Europäers gehören, stört<br />

das offenbar niemand, geschweige<br />

denn, dass sich ein EU-Wettbewerbshüter<br />

darum scheren würde.<br />

Das Gefährlichste an dieser Form der<br />

Restriktion: Weil sie inzwischen so alltäglich<br />

ist, haben sich mittlerweile viele Benutzer<br />

schlicht daran gewöhnt und bemerken<br />

gar nicht, wenn ein Anbieter die<br />

Daumenschrauben noch weiter anzieht.<br />

Dass etwa Apple willkürlich auch die Inhalte<br />

zensiert, die auf den Geräten angezeigt<br />

werden dürfen, scheint inzwischen<br />

schon niemanden mehr zu interessieren.<br />

Jörg Luther<br />

Chefredakteur<br />

Hier geht es aber nicht mehr bloß um<br />

Wettbewerb, hier geht es um das freie<br />

Spiel der Meinungen. Vom Restricted<br />

Boot führt der Weg direkt zum Restricted<br />

Content – und daran sollten wir uns<br />

weder gewöhnen noch es zulassen. Und<br />

von der EU-Kommission wünsche ich<br />

mir dringend, dass sie sich etwas weniger<br />

um Wettbewerbsfreiheit für Firmen<br />

kümmert und deutlich mehr um die Informationsfreiheit<br />

für die Bürger.<br />

Herzliche Grüße,<br />

05.2013 www.linux-user.de<br />

3


05<br />

70<br />

Statt zu schneiden, fügt Scalpel<br />

zusammen. Die Software hilft,<br />

gelöschte <strong>Daten</strong> zu retten – und erweist<br />

sich dabei in vielen Fällen als erfolgreich.<br />

66<br />

Wer bockigen Hardware-Komponenten<br />

Beine machen möchte,<br />

der braucht genaue Angaben zu den verbauten<br />

Teilen. Mit dem Ubuntu-Tool I-Nex<br />

erledigen Sie die Inventur im Handumdrehen<br />

in einer praktischen GUI.<br />

44<br />

Wer den <strong>Daten</strong>kraken im Internet<br />

nicht unnötig Futter geben<br />

will, der surft über Onion-Router und nutzt<br />

Remailer zum Mailversand. Die Software<br />

JonDo macht den Zugang einfach.<br />

Heft-DVD<br />

Absolute Linux 14.04 . . . . . . . . . . . 6<br />

Das schlanke Slackware-Derivat macht auf<br />

alter wie neuer Hardware eine gute Figur.<br />

Porteus 2.0 ................... 10<br />

Das Live-System Porteus erweist sich als ein<br />

flexibler Werkzeugkasten für viele Alltagsaufgaben.<br />

Ein einzigartiges Konzept erlaubt<br />

die problemlose Installation neben einem<br />

vorhandenen System.<br />

Aktuelles<br />

Angetestet . . . . . . . . . . . . . . . . . . . 14<br />

Globonote 1.3.1 erfasst Ideen und Notizen,<br />

Gscan2pdf 1.1.3 erzeugt aus Scans PDFs,<br />

Patool 1.0 beherrscht 20 Archivformate,<br />

Unsettings 0.08 tweakt Ubuntus Unity<br />

Aktuelles . . . . . . . . . . . . . . . . . . . . 16<br />

Leap-Motion-Controller unterstützt Linux,<br />

KDE Plasma Media Center 1.0 erschienen,<br />

Gnome 3.8 samt Classic-Mode freigegeben,<br />

Open-Xchange kündigt Cloud-Bürosuite an,<br />

Linux-Nutzer attackieren Microsoft via EU<br />

Schwerpunkt<br />

GeoGebra .................... 18<br />

GeoGebra haucht den trockenen Zahlen<br />

Leben ein. So sehen Sie mit wenigen Mausklicks,<br />

welche Gebilde sich hinter komplexen<br />

Polynomen und Funktionen verbergen.<br />

3D-Molekülvisualisierer ........ 24<br />

Viele biochemische Prozesse lassen sich erst<br />

verstehen, wenn ein dreidimensionales Molekülbild<br />

der agierenden Substanzen die Reaktion<br />

veranschaulicht. Das erledigen Tools<br />

wie RasMol, JMol, PyMol oder Avogadro.<br />

View your Mind ............... 30<br />

Mit View your Mind zeichnen und verwalten<br />

Sie Mindmaps, mit denen Sie Gedanken,<br />

Ideen und Notizen strukturiert festhalten.<br />

IMHC CmapTools .............. 36<br />

Eine übersichtliche Grafik wirkt grundsätzlich<br />

besser als ein wortreiches Traktat. Die<br />

CmapTools liefern Ihnen das Werkzeug zum<br />

Gestalten anschaulicher Konzeptkarten.<br />

Praxis<br />

Android als Grafiktablett . . . . . . . 42<br />

Mit der App GfxTablet nutzen Sie ein Smartphone<br />

oder Tablet mit Android als Eingabegerät<br />

für Gimp und sparen so das Geld für<br />

ein teures Grafiktablett.<br />

JonDonym ....................44<br />

Mit JonDonym surfen Sie ohne umständliche<br />

Konfiguration inkognito im Internet – bei<br />

Bedarf sogar aus einem Live-System heraus.<br />

Externe <strong>Daten</strong> in LaTeX .........49<br />

Ob Serienbrief oder Teilnehmerliste – mit<br />

dem richtigen Adapter befüllen Sie LaTeX-<br />

Dateien problemlos mit den Feldinhalten aus<br />

einer <strong>Daten</strong>bank und erstellen so Serien-<br />

Dokumente in perfekter Qualität.<br />

Shelr . . . . . . . . . . . . . . . . . . . . . . . . 54<br />

Das Ruby-Tool Shelr verwandelt die<br />

Kommandozeile in ein Kinoprogramm<br />

für Freunde der Shell.<br />

105<br />

Die Entwickler schließen<br />

auf: Mit der aktuellen<br />

Version unterstützt OpenSuse<br />

UEFI mit Secure Boot – vorerst<br />

allerdings nur experimentell.<br />

4 05.2013


42<br />

Für den gelegentlichen Strich<br />

lohnt der Kauf eines waschechten<br />

Grafiktabletts kaum. Mit GfxTablet verwandeln<br />

Sie ein Smartphone oder Tablet<br />

in ein Eingabegerät und nutzen es in Kombination<br />

mit Gimp für kreative Arbeiten.<br />

36<br />

Wo die einfachen Mindmaps an<br />

ihre Grenzen stoßen, machen<br />

Konzeptkarten den Weg frei für das Visualisieren<br />

komplexer Sachverhalte. Das eröffnet<br />

neue Horizonte fürs Brainstorming.<br />

24<br />

Biochemische Prozesse bestimmen<br />

das Leben, aber die komplexen<br />

Vorgänge laufen im Verborgenen ab,<br />

es sei denn, Software setzt sie in Szene.<br />

UBUNTU<br />

user<br />

Schnelle Dateivorschau . . . . . . . . 60<br />

Die zwei kleinen Tools Gloobus Preview und<br />

Gnome-Sushi geben eine schnelle <strong>Vorschau</strong><br />

auf zahlreiche Dokumentenformate. Das<br />

spart Zeit und schont die Nerven.<br />

Fractal Fr0st ..................62<br />

Sphährisch schöne Fraktale erzeugen Sie mit<br />

dem Algorithmus Flam3. Die GUI Fr0st hilft,<br />

die komplexe Software zu meistern.<br />

I-Nex ........................66<br />

Grafikkarte, Prozessor und Festplatten – mit<br />

I-Nex haben Sie alle wichtigen Informationen<br />

über die Hardware im Blick.<br />

Netz&System<br />

<strong>Daten</strong>retter Scalpel ............ 70<br />

Mit dem File-Carver Scalpel stellen Sie<br />

bereits verloren geglaubte <strong>Daten</strong> in vielen<br />

Fällen komplett oder zumindest teilweise<br />

wieder her.<br />

Hardware<br />

Arduino-Workshop (Teil 1) ...... 76<br />

Der Arduino lockt mit Offenheit und Portabilität:<br />

Die Schaltung des scheckkartengroßen<br />

Minirechners ist ebenso frei lizenziert wie die<br />

zugehörige Entwicklungsumgebung. Grund<br />

genug, sich näher mit der Programmierung<br />

zu beschäftigen.<br />

1-Watt-Server .................83<br />

Mithilfe von OpenWRT befreien Sie den<br />

knuffigen kleinen WLAN-Router TP-Link<br />

TL-MR3020 von seiner proprietären Firmware<br />

und bauen ihn zum Allround-Server fürs<br />

heimische Netz um.<br />

Know-how<br />

Audio-Codec Opus . . . . . . . . . . . . 90<br />

Schon Ogg Vorbis bewies, dass freie Audio-<br />

Codecs es durchaus mit der kommerziellen<br />

Konkurrenz aufnehmen können. Sein<br />

Nachfolger namens Opus geht einen Schritt<br />

weiter und schlägt die Konkurrenz sogar.<br />

Service<br />

Editorial . . . . . . . . . . . . . . . . . . . . . . 3<br />

IT-Profimarkt . . . . . . . . . . . . . . . . . 98<br />

Impressum ..................102<br />

Events/Autoren/Inserenten ....103<br />

<strong>Vorschau</strong> ....................104<br />

Heft-DVD-Inhalt ..............105<br />

90<br />

Der Opus-Codec besticht durch hohe<br />

Klangqualität selbst bei geringen Bitraten.<br />

Das versetzt ihn in eine gute Position, zum<br />

Standard bei Streaming und Encoding zu werden.<br />

Wir stellen die Tools vor, mit denen Sie schon heute<br />

den freien Codec nutzen.<br />

5


Heft-DVD<br />

Absolute Linux 14.04<br />

Slackware-Derivat für den Desktop<br />

Absolut leicht<br />

Slackware ist die älteste noch immer aktive Linux-Distribution, gilt jedoch als wenig<br />

einsteigerfreundlich. Das von Slackware abgeleitete Absolute Linux möchte dieses Manko<br />

beheben und einen leicht zu bedienenden Desktop bieten. Erik Bärwaldt<br />

Readme<br />

Linux eignet sich längst für den Einsatz auf<br />

dem Desktop. Für experimentierfreudige<br />

Nutzer älterer Hardware, denen die allseits<br />

bekannten Ubuntu- und Debian-Derivate zu<br />

schwerfällig sind, bietet sich die Slackware-<br />

Variante Absolute Linux als Alternative an.<br />

Slackware Linux zählt zu den Linux-<br />

Pionie ren und feiert in diesem Jahr seinen<br />

20. Geburtstag. Die in den USA von<br />

Patrick Volkerding entwickelte Distribution,<br />

die sich stets möglichst frei von Ballast<br />

präsentierte, gilt auch heute noch<br />

für Linux -Einsteiger aufgrund oft fehlender<br />

grafischer Tools als „harter Brocken“.<br />

Das von Slackware abgeleitete Absolute<br />

Linux û möchte Einsteigern mit seinem<br />

schlanken Design und optischer Aufwertung<br />

einen auch auf älterer Hardware<br />

täglich nutzbaren Desktop bieten.<br />

Das ISO-Image der derzeit aktuellen<br />

Absolute-Version 14.04 û umfasst<br />

knapp 700 MByte. Beim ersten Start der<br />

daraus erzeugten CD-ROM zeigt sich das<br />

System bereits von einer ungewöhnlichen<br />

Seite: Anstelle eines Grub-Auswahlbildschirms<br />

präsentiert Absolute 14<br />

lediglich einen Boot-Prompt und erläutert<br />

verschiedene Startoptionen durch<br />

einen langen Text am Bildschirm.<br />

Durch einen Druck auf die Eingabetaste<br />

gelangen Sie in einen textbasierten<br />

Installationsbildschirm. Steuern Sie hier<br />

mit den Pfeiltasten vorsichtshalber erst<br />

einmal den Eintrag HELP an. Beim Bestätigen<br />

der voreingestellten Option AUTO­<br />

SETUP nimmt der Installer sonst eine automatische<br />

Neupartitionierung der Festplatte<br />

vor und löscht bestehende Parti-<br />

6 www.linux-user.de<br />

05.2013


Absolute Linux 14.04<br />

Heft-DVD<br />

tionen unabhängig vom genutzten<br />

Dateisystem. Über die Menüpunkte<br />

ADD SWAP, TARGET, SOURCE und INSTALL<br />

nehmen Sie eine Installation ohne Überschreiben<br />

bestehender <strong>Daten</strong> vor.<br />

Nachdem Sie Absolute Linux erfolgreich<br />

auf die Platte gepackt haben, startet<br />

der Bootmanager Lilo das Betriebssystem.<br />

Da bei der Installation lediglich<br />

der Administrator-Account angelegt<br />

wurde, können Sie sich zunächst nur als<br />

User root anmelden. Sie gelangen daraufhin<br />

in einen IceWM-Desktop, der<br />

außer einer Panelleiste am unteren Rand<br />

und einem Icon Downloads auf der Arbeitsoberfläche<br />

keine weiteren Elemente<br />

enthält. Ein Klick auf den Schalter Menu<br />

links unten im Panel fördert die übliche<br />

Gruppenstruktur der installierten Programme<br />

zutage. Daneben befinden sich<br />

einige Schnellstarter sowie ganz rechts<br />

das Netzwerk-Applet.<br />

Volle Kontrolle<br />

Ganz oben im Menü finden Sie einen<br />

Eintrag für das Control Center, mit dem<br />

Sie die wichtigsten Anpassungen am<br />

System vornehmen. Hier finden Sie beispielsweise<br />

im Untermenü System den<br />

Eintrag Language zum Anpassen der<br />

Sprach- und Tastatureinstellungen. Damit<br />

Sie nicht permanent als Administrator<br />

mit dem System arbeiten müssen, legen<br />

Sie über den Eintrag Add User in diesem<br />

Menü einen<br />

neuen Nutzer an.<br />

Als Schaltzentrale<br />

von Absolute Linux<br />

umfasst das Control<br />

Panel neben Konfigurationswerkzeugen<br />

für Drucker,<br />

Netzwerk, Display<br />

und wichtige System<br />

einstellungen<br />

auch ein Benchmarking-<br />

und Info-Center<br />

sowie einen Zugang<br />

zum Slackwareeigenen<br />

Paketmanager<br />

Gslapt. So nehmen<br />

Sie von dieser<br />

Stelle aus sehr kom-<br />

fortabel alle grundlegenden Einstellungen<br />

grafisch vor, ohne in ein Terminal<br />

wechseln zu müssen 1 .<br />

Software<br />

Die Basiskomponenten von Absolute<br />

Linux 14.04 präsentiert sich auf dem aktuellen<br />

Stand: Neben Kernel 3.7.1 umfasst<br />

sie die GCC 4.7.2, die Glibc 2.17 sowie<br />

die Bash 4.2. In den einzelnen Programmgruppen<br />

bringt Absolute Linux<br />

eine stattliche Anzahl zumeist schlanker<br />

Applikationen mit. Als einziger klassischer<br />

Bolide ist Gimp in Version 2.8.2 mit<br />

an Bord. Ansonsten stehen mit Abiword,<br />

Google Chrome sowie dem schlanken<br />

SMPlayer für die alltagstypischen Aufgaben<br />

wieselflinke Programme bereit.<br />

Die Sektionen Multimedia, Graphics<br />

und System Information glänzen mit besonderen<br />

Schmuckstücken: So können<br />

Sie im Menü Graphics beispielsweise<br />

mithilfe von absGamma eine Monitorkalibrierung<br />

vornehmen. Unter Multimedia<br />

finden Sie auch Unterstützung für<br />

Webcams, mit einem vorinstallierten<br />

iPod-Manager verwalten Sie Musiksammlungen.<br />

Das Untermenü Educational<br />

bietet einige Programme für die wissenschaftliche<br />

Einheitenumrechnung<br />

sowie einen Taschenrechner.<br />

Absolute Linux verzichtet auf die<br />

Integ ration einiger aufgrund von Patenten<br />

problematischer Applikationen und<br />

1 Im Control Center passen Sie mit wenigen Mausklicks das<br />

Absolute-Linux-System an Ihre Wünsche und Vorstellungen an.<br />

Absolute Linux 14.04<br />

bootfähig auf Heft-DVD<br />

Codecs. Sie können diese jedoch nachträglich<br />

beziehen, indem Sie im Control<br />

Panel links auf die Gruppe Multimedia<br />

klicken und anschließend rechts den<br />

Eintrag Multimedia Installer anwählen.<br />

Absolute Linux kompiliert nun eine größere<br />

Anzahl Codecs und Applikationen<br />

aus den Quellen, was längere Zeit in Anspruch<br />

nehmen kann. Auf einem gängigen<br />

PC mit Dual-Core-Prozessor dauerte<br />

im Test das Übersetzen der Software nahezu<br />

eine Stunde. Dabei bleibt das System<br />

jedoch bedienbar, lediglich ein kleines<br />

Fenster weist auf die im Hintergrund<br />

ablaufenden Prozesse hin.<br />

Beachten Sie bitte, dass bei der Installation<br />

der Codecs ein Zugang zum Internet<br />

bestehen muss, da Absolute dazu einige<br />

Dateien aus Repositories herunterlädt.<br />

Nach erfolgreicher Installation können<br />

Sie faktisch alle gängigen multimedialen<br />

Quellen nutzen.<br />

05.2013 www.linux-user.de<br />

7


Heft-DVD<br />

Absolute Linux 14.04<br />

Weitere Infos und<br />

interessante Links<br />

www. linux‐user. de/ qr/ 29084<br />

Slackware und somit auch das binärkompatible<br />

Absolute Linux verfügen<br />

über eine eigene Paketverwaltung, die<br />

mit dem grafischen Frontend Gslapt<br />

eine ähnlich bequeme Installation neuer<br />

Software erlaubt wie die entsprechenden<br />

Pendants unter RPM- und DEBbasier<br />

ten Distributionen. Gslapt lehnt<br />

sich dabei äußerlich an Synaptic an 2 .<br />

In der Standardinstallation bindet<br />

Abso lute Linux lediglich ein einziges<br />

Repo sitory ein, sodass die Software-<br />

Auswahl zunächst recht überschaubar<br />

ausfällt. Um das zu ändern, fügen Sie im<br />

Menü Bearbeiten | Optionen im Reiter<br />

Quellen weitere Software-Sammlungen<br />

hinzu, wie etwa die Repositories für<br />

Slackware 14.0 û. Nach dem Hinzufügen<br />

aktualisiert Gslapt zunächst seine<br />

Paketlisten. Bei der Installation neuer<br />

Pake te löst der Slackware-Paketmanager<br />

Abhängigkeiten automatisch auf. Pakete,<br />

bei denen das nicht gelingt, schließt<br />

Gslapt nach einem kurzen Hinweis aus<br />

dem Software-Fundus aus, sodass die<br />

Systemintegrität gewahrt bleibt.<br />

Fazit<br />

Absolute Linux eignet sich insbesondere<br />

für Anwender, die ein schnelles und<br />

schlankes Linux-Derivat abseits ausgetretener<br />

Ubuntu- oder Debian-Pfade suchen.<br />

Die Distribution arbeitet stabil und<br />

schlägt sich im täglichen Einsatz wacker.<br />

Zu bemängeln bleiben der relativ kleine<br />

Umfang der Repositories und die teils<br />

unvollständige deutsche Lokalisierung.<br />

Zwar setzt Absolute das Tastatur-Layout<br />

und Optionen wie Zeitzone und Maßangaben<br />

korrekt um, so mancher Menüpunkt<br />

erscheint aber in Englisch. (jlu) n<br />

2 Das Slackware-typische Paketmanagement-Tool Gslapt ähnelt vom Aufbau der Oberfläche dem Apt-basierten Werkzeug Synaptic.<br />

8 www.linux-user.de<br />

05.2013


3 Ausgaben<br />

für nur 5,90 E<br />

Jetzt bestellen: 3 Hefte zum Preis von einem. Sie sparen 66 %!<br />

Kennenlernangebot:<br />

3 Ausgaben<br />

für nur 5,90 E<br />

Jetzt bestellen unter:<br />

www.android–user.de/miniabo<br />

Telefon 07131 / 2707 274 • Fax 07131 / 2707 78 601 • E-Mail: abo@android-user.de


Heft-DVD<br />

Porteus 2.0<br />

Live-System Porteus als Allrounder im Alltag einsetzen<br />

Flinker Winzling<br />

Das Live-System Porteus<br />

erweist sich als ein flexibler<br />

Werkzeugkasten für viele<br />

Alltags aufgaben. Ein einzigartiges<br />

Konzept erlaubt die<br />

Installation neben einem<br />

vorhan denen System.<br />

Karsten Günther<br />

Readme<br />

Das flexible Baukastensystem Porteus arbeitet<br />

wieselflink und ist im Handumdrehen<br />

installiert. Fehlende Applikationen ziehen<br />

Sie bei Bedarf im Live-Betrieb nach. Mit<br />

einem Skript erstellen Sie aus dem modifizierten<br />

System eine neue bootfähige CD.<br />

Ende Februar erschien die Version 2.0<br />

von Porteus û, einem Fork von Slax û.<br />

Das wiederum basiert auf Slackware û,<br />

der ältesten heute noch aktiv gepflegten<br />

Distribution. Slackware unterscheidet<br />

sich in Bezug auf Konzept, Konstruktion<br />

und Auswahl der Software deutlich von<br />

den Mainstream-Distributionen.<br />

Sie erhalten Porteus in mehreren Varianten<br />

zum Download. Als Kernel kommt<br />

in jedem Fall die recht aktuelle Version<br />

3.7.8 zum Einsatz. Die 32-Bit-Variante der<br />

Distribution setzt auf Razor-qt, die<br />

64-Bit-Version bringt KDE SC 4.9.5 sowie<br />

LXDE mit. Beide finden Sie auf den <strong>Daten</strong>trägern<br />

der DVD-Edition dieser Ausgabe.<br />

Daneben offeriert das Projekt eine<br />

Spielart mit XFCE 4.10 1 .<br />

Die Entwickler haben Porteus primär<br />

als Live-System konzipiert. Dabei lässt<br />

sich ein Blockieren des optischen Laufwerks<br />

vermeiden, indem Sie das System<br />

beim Booten 2 über die Option Copy<br />

To RAM komplett im Arbeitsspeicher ablegen.<br />

Dafür benötigt Porteus zwischen<br />

320 (LXDE, 32 Bit) und 800 MByte RAM<br />

(KDE, 64 Bit). Das Verfahren beschleunigt<br />

den Start von Programmen erheblich.<br />

Daneben stehen im Bootscreen je nach<br />

Version die Desktops KDE, LXDE oder<br />

XFCE, ein Text-Modus sowie ein PXE-Server<br />

zur Auswahl. Bei Anwahl der Option<br />

Always Fresh löscht das neu gestartete<br />

System zunächst alle bei einer vorherigen<br />

Sitzung gespeicherten <strong>Daten</strong>. Der<br />

Punkt PloP BootManager startet einen<br />

alternativen Bootmanager û, der viele<br />

Eigenschaften mit Grub teilt, daneben<br />

aber zusätzliche bereitstellt. Diverse<br />

Boot-Parameter û erlauben das gezielte<br />

Starten des Systems. Bei Einsatz von<br />

PloP erlaubt Ihnen der Bootmenü-Eintrag<br />

Boot from the first hd, direkt von der<br />

ersten Festplatte zu booten.<br />

In der Praxis erweist sich Porteus als<br />

ein ausgesprochen schnelles System:<br />

Von der Bootauswahl bis zum Erscheinen<br />

des Desktops vergehen selbst auf<br />

älterer Hardware gerade 25 Sekunden.<br />

Live nutzen …<br />

Live-Systeme verlieren beim Herunterfahren<br />

des Systems zwangsläufig die<br />

während der Arbeit angelegten <strong>Daten</strong><br />

und Konfigurationen. Um das zu verhin-<br />

10 www.linux-user.de<br />

05.2013


Porteus 2.0<br />

Heft-DVD<br />

dern, bietet Porteus an, Änderungen als<br />

Overlay-Filesystem zu speichern und<br />

später erneut bereitzustellen. Eine Möglichkeit<br />

dazu bieten sogenannte Container,<br />

die Sie bei Bedarf sogar auf FAT- und<br />

NTFS-<strong>Daten</strong>trägern anlegen. Die dabei<br />

verwendete Datei save.dat geben Sie<br />

als Argument des Cheatcodes changes=<br />

an. Das Porteus-Forum enthält viele Informationen<br />

zu diesem Thema û.<br />

Die Art, wie Sie Porteus installieren,<br />

unterscheidet sich von der anderer Distributionen:<br />

Das gesamte System liegt<br />

im Verzeichnis /porteus. Diese Methode<br />

erlaubt es, Systeme ohne Partitionieren<br />

anzulegen. Zudem eröffnet es die Möglichkeit,<br />

mehrere Varianten nebeneinander<br />

zu installieren. Im Unterschied zu<br />

Ubuntu legt Porteus einen Root-Account<br />

an, in den Sie mit dem Passwort toor<br />

wechseln. Als Anwender verwenden Sie<br />

zunächst das Benutzerkonto guest mit<br />

identischem Passwort.<br />

… oder fest einrichten<br />

Beim Einrichten von Porteus auf der<br />

Festplatte installieren Sie entweder den<br />

Bootmanager PloP gleich mit oder nutzen<br />

einen bereits vorhandenen Grub. In<br />

letzterem Fall bietet es sich an, das<br />

Skript zum Finden von bootfähigen Installationen<br />

zu erweitern û. Dabei treten<br />

allerdings mitunter Probleme û auf –<br />

der in Listing 1 gezeigte Eintrag in /etc/<br />

grub.d/40_custom funktionierte jedoch<br />

im Test unter Ubuntu 12.04. Die vom<br />

Installer angebotene Möglichkeit, den<br />

Bootloader nachträglich mittels<br />

Porteus‐installer‐for‐Linux.com einzurichten,<br />

führt dagegen zur Installation<br />

von PloP im MBR.<br />

Module und Bundles<br />

Wie alle Distributionen kennt auch<br />

Porteus ein Paketsystem und Repositories<br />

û. Pakete heißen hier allerdings<br />

„Module“ oder „Bundles“. Sie funktionieren<br />

im Prinzip genau wie bei anderen<br />

Distributionen, im Detail zeigen sich<br />

aber einige deutliche Unterschiede. Porteus<br />

nutzt ein eigenes Paketsystem mit<br />

dem speziellen XZM-Format. Das erfordert<br />

es, Archive aus anderen Repositories<br />

zunächst zu konvertieren.<br />

Als Paketquellen stehen neben denen<br />

von Slackware und Slax noch weitere bereit.<br />

Selbst der Einsatz von Debian-Paketen<br />

wäre theoretisch unter Porteus möglich,<br />

in der Praxis erweist sich das aber<br />

als nicht ganz einfach: So traten im Test<br />

dabei mehrfach Probleme auf, die dazu<br />

führten, dass sich größere Programme<br />

(Emacs, Luminance, Darktable) nur mit<br />

massiven Nacharbeiten nutzen ließen.<br />

Porteus 2.0,<br />

32-Bit-Version mit Razor-qt,<br />

64-Bit-Version mit LXDE/​KDE4<br />

Listing 1<br />

#! /bin/sh ‐e<br />

echo „Adding PORTEUS v2.0 entry“<br />

>&2<br />

cat


Heft-DVD<br />

Porteus 2.0<br />

2 Zum Verwalten des Systems setzt das Porteus-Projekt auf neue<br />

Tools, die komplett auf eigenen Entwicklungen basieren.<br />

Das Modulkonzept bietet einige bei anderen<br />

Distributionen nicht vorhandene<br />

Möglichkeiten: Es verbindet Features<br />

von Live-Systemen mit denen einer festen<br />

Installation. Mit einem Doppelklick<br />

auf ein Modul im Dateimanager aktiviert<br />

dieser das Modul. Das funktioniert beispielsweise<br />

mit Konqueror, Thunar,<br />

Dolphin und PCmanFM. Die Programme<br />

landen nach einmaligem Download virtuell<br />

im Dateisystem. Auf die gleiche<br />

Weise entfernen Sie sie wieder.<br />

Weitere Infos und<br />

interessante Links<br />

www. linux‐user. de/ qr/28991<br />

Der ganze Vorgang dauert oft nur Sekundenbruchteile,<br />

die heruntergeladenen<br />

Module speichert Porteus nach<br />

Möglichkeit dauerhaft für einen erneuten<br />

Einsatz. Beim Aktivieren bindet Porteus<br />

das Modul transparent ein. Auf diese<br />

Weise bleibt das Grundsystem immer<br />

sehr schlank – was die Suche entlang<br />

von $PATH beschleunigt.<br />

Software-Ausstattung<br />

Eine Reihe spezieller Werkzeuge dienen<br />

zum Verwalten des Systems. Das Porteus<br />

Settings Centre 2 fasst die wichtigsten<br />

davon zusammen. Sie haben hier die<br />

Möglichkeit, das System an eine Landessprache<br />

anzupassen, die Hardware zu<br />

konfigurieren (Monitor, Soundkarte,<br />

Drucker), eine Firewall einzurichten,<br />

Porteus -spezifische Einstellungen vorzunehmen<br />

oder das System auf anderen<br />

<strong>Daten</strong>trägern zu installieren.<br />

Natürlich steht bei den geringen Größen<br />

der ISO-Images kein komplett ausgestattetes<br />

Linux-System mit LibreOffice<br />

und Gimp bereit. Tatsächlich sind nur<br />

sehr wenige Anwendungen aktiviert –<br />

dazu gehören aber ein Mediaplayer und<br />

Anzeigeprogramme für Bilder – alles andere<br />

fügen Sie über das Modulsystem<br />

nachträglich hinzu. Für diese Aufgabe<br />

steht der Porteus Package Manager bereit.<br />

Seine Aufgabe liegt darin, Pakete in<br />

den verschiedenen Repositories zu finden,<br />

sie bei Bedarf zu konvertieren und<br />

zu aktivieren. In manchen Fällen funktioniert<br />

das problemlos, allerdings bei Weitem<br />

nicht immer.<br />

Porteus eignet sich aufgrund der modularen<br />

Struktur als Baukasten für verschiedene<br />

Aufgaben. Die Arbeit im Terminal<br />

ist dabei natürlich meistens die<br />

erste Wahl. Zahlreiche Alias-Konstrukte<br />

und Porteus-spezifische Skripte helfen<br />

bei häufig auftretenden Aufgaben:<br />

chkbase.sh überprüft die Komponenten<br />

des Systems, save‐changes erzeugt ein<br />

Modul aus den vorgenommenen Änderungen<br />

und das Programm update_module<br />

aktualisiert die Module.<br />

Porteus unterstützt darüber hinaus<br />

das Erzeugen eigener Versionen der Distribution.<br />

Sie finden dazu ein Shell-Skript<br />

mit dem Namen make_iso.sh im Ordner<br />

/porteus. Es generiert ISO-Images mit<br />

dem momentanen Zustand des Systems,<br />

berücksichtigt also zusätzlich die derzeit<br />

aktivierten Module.<br />

Fazit<br />

Die Distribution Porteus sticht aus der<br />

Masse der kleinen Live-Systeme schon<br />

allein wegen des hohen Arbeitstempos<br />

hervor. Besonders positiv fallen das simple<br />

Setup sowie die einfachen Möglichkeiten<br />

zum Erweitern auf. Als Beiwerk erweist<br />

sich das System also als ideal, da es<br />

keine eigene Partition benötigt.<br />

Allerdings machen es die teilweise ungewöhnlichen<br />

Konzepte und Methoden<br />

der Distribution erforderlich, viel Neues<br />

zu lernen und ausprobieren. Die selbst<br />

gestrickten Tools überzeugen nicht in allen<br />

Fällen; oft war im Test noch ein manuelles<br />

Nacharbeiten nötig. Besonders<br />

der Paketmanager als zentrale Applikation<br />

ließ deutlich zu wünschen übrig. Vor<br />

allen Dingen bei neuester Software fahren<br />

Sie oft besser damit, diese selbst zu<br />

kompilieren. Das legt die Hürde für den<br />

etwas ungeübteren Anwender aber wieder<br />

höher. Angesichts komfortabler Paketmanager<br />

haben viele User den klassischen<br />

Dreisatz verlernt. (agr) n<br />

12 www.linux-user.de<br />

05.2013


MEGA-ARCHIV<br />

- über 150 Ausgaben auf einer DVD!<br />

NUR<br />

14,95€<br />

• Sämtliche Artikel<br />

aller LU-Ausgaben von<br />

2000 bis 2012<br />

als HTML-Seiten<br />

• Schnelle Volltextsuche<br />

für jeden<br />

gängigen Browser<br />

• Bootfähige DVD-9: Linux<br />

Mint 14 live testen &<br />

installieren<br />

Linux Mint 14<br />

Live+Install (32+64 Bit)<br />

Jetzt gleich bestellen!<br />

www.linux-user.de/DVD2012 oder 089 - 99 34 11 - 00


Aktuelles<br />

Angetestet<br />

Zettelsammler<br />

Als leistungsfähiger Notizblock<br />

und Aufgabenplaner für die<br />

Arbeits oberfläche integriert sich<br />

GloboNote 1.3.1 nahtlos in die<br />

Symbolleiste des Desktops.<br />

Notizzettel, die am Bildschirm kleben,<br />

waren noch bis vor einigen Jahren ein<br />

gängiges Bild an jedem Schreibtisch.<br />

Heute übernehmen Tools wie Globo­<br />

Note diese Aufgabe auf dem Desktop.<br />

Das Java-Programm stellt einen Notizblock<br />

bereit, mit dem Sie nicht nur Notizen<br />

erstellen, sondern diese mit Deadlines<br />

und Alarmierungen versehen sowie<br />

To-do-Listen verwalten. Nach dem Start<br />

platziert sich GloboNote mit einem<br />

Notizblock-Icon in der Symbolleiste des<br />

Desktops. Per Doppelklick darauf legen<br />

Sie eine neue Notiz an. Neben schnödem<br />

Text darf diese Bilder<br />

und Dateianhänge<br />

umfassen. Bei Bedarf<br />

fügen Sie Checkboxen<br />

in die Notiz ein. Sämtliche<br />

Funktionen erreichen<br />

Sie über das Kontextmenü<br />

mit der rechten<br />

Maustaste. Hier finden<br />

sich weitere stilistische<br />

Funktionen wie<br />

Unterstreichen, Kursiv-<br />

oder Fettschrift sowie verschiedene<br />

Fonts und Farben. Zu den Formatierungen<br />

zählen links- und rechtsbündiger<br />

Text sowie Absätze. Über notizspezifische<br />

Einstellungen legen Sie das Verhalten<br />

der jeweiligen Zettel fest: Auf<br />

Wunsch bleibt diese im Vordergrund<br />

oder bildet zusammen mit anderen<br />

Notizen eine Gruppe. Darüber hinaus<br />

versehen Sie die Notiz bei Bedarf mit<br />

einem Alarm, zu dem GloboNote auf<br />

Wunsch eine Audiodatei abspielt. Bei<br />

Bedarf blenden Sie Notizen ein und aus<br />

oder parken sie im Hintergrund. Eine<br />

Suchfunktion hilft beim Wiederfinden<br />

von Inhalten. Das Java-Programm ist auf<br />

vielen Plattformen zu Hause, benötigt<br />

aber mindestens eine Laufzeitumgebung<br />

der Version 6u10 oder höher. Die Notizen<br />

legt das Tool in einer JavaDB-Datei im<br />

Benutzerverzeichnis ab. Möchten Sie die<br />

Notizen mit Drittprogrammen weiterverarbeiten,<br />

exportieren Sie die <strong>Daten</strong>bank.<br />

Lizenz: GPLv2<br />

Quelle: http:// globonote. info<br />

n<br />

Archivkünstler<br />

Als Wrapper erleichtert<br />

Patool 1.0 den Umgang mit<br />

zahlreichen bekannten und<br />

auch weniger bekannten<br />

Kompressionsformaten.<br />

Linux kennt zahllose Komprimierungsformate,<br />

und für jedes existiert ein eigenes<br />

Tool. Wer hier die Übersicht verliert,<br />

nutzt einfach Patool: Das Python-Programm<br />

arbeitet als Wrapper und fasst<br />

alle wichtigen Kompressionsformate in<br />

einem Werkzeug zusammen. So müssen<br />

Sie sich nur noch einige wenige Befehle<br />

merken. Patool kommt mit über 20 Packer-Formaten<br />

zurecht, von 7Z über ACE<br />

und ARJ bis hin zu LZAM, RAR, ZIP und<br />

ZOO. Daneben unterstützt<br />

es Paketformate<br />

wie CAB, DEB und RPM.<br />

Für die eigentliche Arbeit<br />

am Archiv greift<br />

Patool auf die jeweiligen<br />

nativen Werkzeuge<br />

zurück. Folglich<br />

müssen diese installiert<br />

sein, damit der Wrapper<br />

seine Arbeit verrichten<br />

kann. Was genau<br />

zur Verfügung<br />

steht und welche der<br />

Patool-Funktionen die nativen Werkzeuge<br />

unterstützen, das bringen Sie mithilfe<br />

des Parameters formats in Erfahrung. Er<br />

listet alle bekannten Formate auf und<br />

gibt an, wo noch ein Werkzeug fehlt. Da<br />

Patool mit zahlreichen Kompressionsprogrammen<br />

interagieren muss, stehen<br />

nicht alle Funktionen der jeweiligen Archiver<br />

im Wrapper zur Verfügung. So führen<br />

die Parameter create und extract<br />

diese nur mit den Standardeinstellungen<br />

aus. Benötigen Sie jedoch eine höhere<br />

Kompressionsrate oder eine andere<br />

Verzeichnisstruktur, müssen Sie auf die<br />

nativen Archiver zurückgreifen. Die Unterstützung<br />

der zahlreichen Formate ermöglicht<br />

über den Parameter repack<br />

das Konvertieren eines Archivs von einem<br />

Format in ein anderes. Ein Vergleich<br />

zweier Archive in unterschiedlichen Formaten<br />

klappt mit dem Parameter diff.<br />

Lizenz: GPLv3<br />

n<br />

Quelle: http:// wummel. github. com/​<br />

patool/2<br />

14 www.linux-user.de<br />

05.2013


Angetestet<br />

Aktuelles<br />

Lizenz: GPLv3<br />

nn<br />

Quelle: http:// gscan2pdf. sourceforge. net<br />

Um Dokumente einzuscannen und in<br />

eine PDF-Datei umzuwandeln, gibt es<br />

unter Linux eine ganze Reihe von Konsolenprogammen.<br />

Komfortabler geht es<br />

jedoch mit Gscan2pdf, das für diesen<br />

Zweck eine grafische Oberfläche bereitstellt.<br />

Im Hintergrund greift das Programm<br />

auf ausgereifte Tools zurück, wie<br />

Saned, ImageMagick, PerlMagick und<br />

verschiedene Perl-Bibliotheken. Für OCR<br />

kommen im Hintergrund Tools wie Gocr,<br />

Tesseract oder Ocropus zum Einsatz.<br />

Gscan2pdf benötigt keine aufwendige<br />

Konfiguration. Sie geben beim Aufruf<br />

ledig lich den zu verwendenden Scanner<br />

mit ‐‐device an. Das empfiehlt sich insbesondere,<br />

wenn Sie via Netzwerk auf<br />

das Gerät zugreifen. Eine funktionierende<br />

Sane-Installation ist jedoch Voraussetzung.<br />

Nach dem Start laden Sie entweder<br />

ein bereits eingelesenes Dokument<br />

oder scannen ein neues ein.<br />

Gscan2pdf erlaubt das rudimentäre<br />

Nachbearbeiten der Inhalte: Es besteht<br />

die Möglichkeit, das Bild zu drehen, Teile<br />

zu kopieren oder auszuschneiden sowie<br />

in einen Bereich hineinzuzoomen. Genügt<br />

das nicht, rufen Sie direkt aus<br />

Gscan2pdf heraus eine<br />

beliebige Bearbeitungssoftware<br />

auf. Falls OCR-<br />

Tools installiert sind, können<br />

Sie den Text aus den<br />

Scans herauslösen. Das<br />

Ergebnis der Arbeit speichern<br />

Sie als PDF, Postscript-<br />

oder Textdatei, sowie<br />

als Bild in den Formaten<br />

PNG, JPEG oder TIFF.<br />

Im Bedarfsfall verteilen<br />

Sie es via E-Mail.<br />

Komfortscanner<br />

Dank der übersichtlichen GUI<br />

von Gscan2pdf 1.1.3 erstellen<br />

Sie aus gescannten Bildern im<br />

Nu PDFs oder Textdokumente.<br />

Ubuntus grafische Oberfläche Unity wird<br />

nach wie vor heiß diskutiert und trifft<br />

nicht jedermanns Geschmack. Mit dem<br />

Python-Programm Unsetting steht jetzt<br />

ein Tool zur Verfügung, mit dem Sie eine<br />

ganze Reihe von Einstellungen unter der<br />

Unity-Haube nach Ihrem Gusto modifizieren.<br />

Die Palette der Einstellungsoptionen<br />

reicht vom Bearbeiten der Starter-<br />

Symbole und den damit verbundenen<br />

Optionen über das Anpassen der Schrift<br />

bis hin zu Theme-Änderungen beim<br />

Fenstermanager. So lässt sich beispielsweise<br />

die Größe der Starter beeinflussen<br />

oder eine Animation mit dem Symbol<br />

verbinden. Im Dash-Board blenden Sie<br />

bestimmte Programmquellen oder<br />

Lizenz: GPLv3<br />

nn<br />

Quelle: http:// www. florian‐diesch. de/​<br />

000_LU1106_F-Weber_neu1.qxd software/ unsettings/ 18.09.2006 19:00 Uhr Seite 1<br />

Such ergebnisse nach Belieben ein und<br />

aus. Im Abschnitt Arbeitsfläche fügen Sie<br />

weitere Icons hinzu oder blenden Symbole<br />

wie den Mülleimer und persönliche<br />

Ordner aus. Der Menüpunkt Design ermöglicht<br />

das Anpassen des Mauszeigers,<br />

des Fenster-Designs und der Icons. Die<br />

Möglichkeiten fallen so umfangreich<br />

aus, dass oft nur Probieren hilft. Sämtliche<br />

Änderungen gelten ausschließlich<br />

für das Profil des angemeldeten<br />

Benutzers, globale<br />

Änderungen beherrscht Unsettings<br />

nicht. Sie können jedoch<br />

alle Einstellungen in einer Textdatei<br />

sichern und so weitergeben.<br />

Der Entwickler stuft Unsettings<br />

noch als Beta-Version ein,<br />

hat das Programm aber bereits<br />

unter Ubuntu 11.10, 12.04 und<br />

12.10 ausgiebig getestet. (jlu) n<br />

Pimp my Unity<br />

Mit Unsettings 0.08<br />

greifen Sie tief ins Design<br />

und die Funktionen der<br />

Oberfläche Unity ein.<br />

05.2013 X23 www.linux-user.de<br />

15


Aktuelles<br />

Neues rund um Linux<br />

Leap-Motion-Controller unterstützt Linux<br />

Mit dem Leap-Motion-Controller lässt sich<br />

jetzt auch Linux über Gesten steuern.<br />

Der Leap-Motion-Controller erfasst Gesten<br />

im Raum vor dem Monitor. Die dadurch<br />

mögliche intuitive Steuerung des<br />

Rechners ist jetzt auch unter Linux möglich.<br />

Sie schließen den Sensor per USB an<br />

den Rechner an und platzieren den kleinen<br />

silbernen Stick direkt vor dem Monitor.<br />

Dort erfasst er alle Gesten und setzt<br />

sie in Bewegungen des Mauszeigers um.<br />

So scrollen Sie etwa durch Wischen die<br />

Internetseite im Browser oder malen mit<br />

einem Stift in der Hand. Ähnlich wie die<br />

Kinect nutzt der Leap-Motion-Controller<br />

zwei Kameras und drei Infrarot-LEDs, die<br />

hier allerdings zur Decke schauen. Sie erkennen<br />

Handbewegungen in bis zu einem<br />

Meter Entfernung. Das zugehörige<br />

SDK unterstützt jetzt auch Linux, offiziell<br />

allerdings nur Ubuntu 12.04 und neuer.<br />

Der Controller kommt Mitte Mai zum<br />

Preis von 90 US-Dollar inklusive Versand<br />

auf den Markt, Vorbestellungen nimmt<br />

Leap Motion auf seiner Homepage unter<br />

https:// www. leapmotion. com entgegen.<br />

Kurz notiert<br />

Das Debian-Projekt hat das Release von<br />

Debian 7 für die Kalenderwoche 15 oder<br />

spätestens Kw 16 angekündigt (http://​<br />

tinyurl. com/ lu0513‐wheezy). Da Debian-<br />

Releases grundsätzlich an Wochenenden<br />

erfolgen, heißt das: „Wheezy“ erscheint<br />

am 13./​14. oder 20./​21. April.<br />

Mit Tanglu tritt demnächst eine neue Distribution<br />

auf Debian-Basis an, die sich zu<br />

einer Ubuntu-Alternative entwickeln<br />

könnte. Tanglu (http:// tanglu. org) soll im<br />

6-Monats-Rhythmus erscheinen und stets<br />

neueste Software aus dem „Testing“-Repo<br />

mitbringen. Als Desktops dienen „Vanilla“-<br />

Versionen von Gnome und KDE.<br />

Als „gigantischen Schritt vorwärts“ bezeichnen<br />

die Entwickler das brandneue<br />

Maté 1.6. Der an Gnome 2 orientierte<br />

Desktop erfuhr in der jüngsten Version<br />

mehr als 1800 Änderungen an der Codebasis.<br />

So wurden zahlreich veraltete Bibliotheken<br />

entfernt und durch Glib ersetzt,<br />

Dutzende neue Features kamen hinzu<br />

(http:// tinyurl. com/ lu0513‐mate).<br />

Die kommerzielle Scan-Software Vuescan<br />

9.2.10 (http:// www. hamrick. com) unterstützt<br />

jetzt zusätzlich 339 Brother-Scanner<br />

und damit insgesamt über 2100 Scanner-<br />

Modelle. Zu den Features des in der Basisversion<br />

40 US-Dollar teuren Vuescan zählen<br />

Farboptimierung beim Scannen verblasster<br />

Dias und Drucke, das Scannen im<br />

Batchverfahren sowie eine PDF-Ausgabe.<br />

In der Version Texmaker 4.0 basiert der<br />

beliebte LaTeX-Editor wahlweise auf<br />

Qt 4.7.2 oder Qt 5. Per [Strg]+[Umschalt]+<br />

[F2] schaltet er jetzt zwischen Master- und<br />

aktuellem Dokument um und stellt nun<br />

auch für Asymptote-Dateien ein Quick-<br />

Build-Feature bereit (http:// www.​<br />

xm1math. net/ texmaker/ log. html).<br />

Gnome 3.8 samt Classic-Mode freigegeben<br />

Gnome 3.8 ersetzt den alten Fallbackdurch<br />

einen neuen Classic-Modus. In<br />

diesem zaubern Erweiterungen das<br />

noch aus Gnome 2 bekannte Menü an<br />

den oberen Bildschirmrand. Im Hintergrund<br />

werkelt allerdings weiterhin die<br />

Gnome-Shell, eine 3D-Grafikkarte ist<br />

also quasi Pflicht. Via Llvmpipe kann<br />

man die entsprechenden OpenGL-Berechnungen<br />

zwar an die CPU auslagern,<br />

das kostet aber entsprechend Leistung.<br />

In der Gnome-Shell selbst haben die<br />

Plasma Media Center 1.0 erschienen<br />

Funktionell noch eingeschränkt: Das Plasma Media Center.<br />

Entwickler die Aktivitäten-Übersicht<br />

überarbeitet. So gibt es jetzt einen Reiter<br />

mit besonders häufig genutzten Anwendungen.<br />

Die Suchfunktion sammelt jetzt<br />

die Suchergebnisse aller Applikationen<br />

und präsentiert sie übersichtlich sortiert.<br />

Neu ist eine die Uhr-Anwendung für verschiedene<br />

Zeitzonen samt Wecker,<br />

Stoppuhr und Timer. Darüber hinaus<br />

korrigierten die Entwickler über 60 Fehler<br />

und verbesserten zahlreiche Details<br />

(http:// tinyurl. com/ lu0513‐gnome38).<br />

Das KDE-Projekt hat die erste Version seiner<br />

Mediacenter-Software freigegeben.<br />

Sie lässt sich gleichermaßen auf Rechnern,<br />

Fernsehern und allen weiteren Geräten<br />

betreiben, auf denen auch KDE<br />

läuft. Mit dem Plasma Media Center<br />

(PMC) kann man derzeit lediglich Bilder<br />

und Videos anschauen sowie Musik hören.<br />

Um die Dateien zu finden, gilt es<br />

entweder durch die Verzeichnisse der<br />

Festplatte zu navigieren oder aber die<br />

Desktop-Suche heranzuziehen. Bilder<br />

holt PMC auch von Picasa und Flickr ab.<br />

Die Einträge von Wiedergabelisten spielt<br />

es entweder in sequenzieller oder zufälliger<br />

Reihenfolge ab. Der Funktionsumfang<br />

der Software lässt<br />

sich über Plugins erweitern.<br />

Derzeit steht das<br />

PMC nur in Quellcode-<br />

Form zur Verfügung, Binärpakete<br />

fehlen noch.<br />

Das Mediacenter in Aktion<br />

zeigen mehrere Videos,<br />

die Sie über Links in<br />

der offiziellen Ankündigung<br />

(http:// tinyurl. com/​<br />

lu0513‐pmc) erreichen.<br />

16 www.linux-user.de<br />

05.2013


Neues rund um Linux<br />

Aktuelles<br />

Open-Xchange macht Google Docs Konkurrenz<br />

Mit OX Documents offeriert die bekannte<br />

Groupware-Schmiede Open-Xchange<br />

(http:// www. open‐xchange. com) jetzt<br />

auch eine quelloffene, Cloud-basierte Bürosuite.<br />

Als erste Anwendung erschien<br />

bereits die Textverarbeitung OX Text. Mit<br />

ihr bearbeiten Sie Dokumente aus Libre-<br />

Office, OpenOffice und Microsoft Word<br />

direkt im Webbrowser. Anders als etwa<br />

Google Docs verwendet OX Text kein eigenes<br />

Dateiformat, sondern bearbeitet<br />

direkt die LibreOffice- oder MS-Word-Dateien,<br />

wobei das Layout des ursprünglichen<br />

Dokuments stets vollständig erhalten<br />

bleiben soll. OX Text steht der<br />

Dokumentenbetrachter OX Document<br />

Viewer beiseite. Er öffnet neben<br />

Text- und PDF-Dateien auch<br />

Dokumente aus Tabellenkalkulations-<br />

und Präsentationsprogrammen<br />

direkt im Browser. Im<br />

Lauf des Jahres sollen noch die Tabellenkalkulation<br />

OX Spreadsheet und das Präsentationsprogramm<br />

OX Presentations<br />

folgen. Unter http:// ox. io/ ox_text können<br />

Sie das Cloud-Büropakets bereits testen.<br />

Freies Office für die Cloud: Die OX-Documents-Suite<br />

von Open-Xchange lässt sich<br />

auf allen Devices mit Webbrowser nutzen.<br />

Linux-Nutzer beschweren sich bei der EU über Microsofts Secure-Boot-Zwang<br />

Die spanische Anwender-Vereinigung<br />

Hispalinux hat wegen der „Sperrvorrichtung“<br />

UEFI Secure Boot bei der Europäischen<br />

Kommission Beschwerde gegen<br />

Microsoft eingereicht, wie die Nachrichtenagentur<br />

Reuters meldete. Laut Hispalinux<br />

handelt es sich bei UEFI Secure<br />

Boot um „ein technisches Gefängnis für<br />

Betriebssysteme“, das den Wettbewerb<br />

behindere und sowohl den Benutzern als<br />

auch der europäische Software-Industrie<br />

schade. Das Büro des EU-Wettbewerbskommissars<br />

Joaquín Almunia mochte<br />

sich zu dem Thema nicht äußern. UEFI<br />

Secure Boot soll den Startvorgang besser<br />

gegen Schadsoftware schützen, erzwingt<br />

dadurch aber in der Praxis durch<br />

Microsoft signierte Bootloader. (jlu) n<br />

Die heute führenden Spezialisten stammen oft aus der "Freie Software-Szene" und schulen seit<br />

Jahren im Linuxhotel. Das erklärt die Breite und Qualität unseres Schulungsangebotes:<br />

AJAX * Amavis * Android * Angriffstechniken * Apache * Asterisk * BaseX * BayesianAnalysis * Bind * C/C++ * Cassandra *<br />

CiviCRM * Cloud * Cluster * ClusterFS * CouchDB * CSS3 * CUPS * Debian * DHCP * DNS * DNSSEC * Echtzeit Linux *<br />

Embedded Linux * eXist-db * Faces * FAI * Firewall * Forensik * FreeBSD * FreeRADIUS * GeoExt * Git * Grails * GRASS *<br />

Groovy * hadoop * Hochverfügbarkeit * HTML5 * Hudson * iSCSI * IPv6 * ITSM * Java * JavaScript * Jenkins * Kernel * KVM<br />

* LDAP * LibreOffice * Linux * LPI * m23 * MacOSX * MapFish * Mapserver * Maven * Mikrocontroller * MVS/380 * MySQL *<br />

Nagios * Node.js * OpenBSD * OpenLayers * OpenOffice * openQRM * OpenVPN * OPSI * OSGi * OTRS * Perl * PHP *<br />

Postfix * PostgreSQL * Puppet * Python * QuantumGIS * R * Rails * RedHat * Routing * Request-Tracker RT * Ruby * Samba<br />

* SAN * Scala * Scribus * Shell * Sicherheit * SNMP * Spacewalk * Spamfilter * SQL * Struts * Subversion * SuSE * TCP/IP *<br />

Tomcat * Treiber * TYPO3 * Ubuntu * UML * Unix * Univention * Virenfilter * Virtualisierung * VoIP * WebGIS * Webservices *<br />

Windows Autoinstall * Windowsintegration * x2go * xen * XML * Xpath * Xquery * z/OS * Zabbix * Zend<br />

Fast 100% der Teilnehmer empfehlen uns weiter. Siehe www.linuxhotel.de<br />

Ja, wir geben es zu und haben überhaupt kein schlechtes Gewissen dabei: Unsere Schulungen machen auch Spaß ;-)


Schwerpunkt<br />

GeoGebra<br />

© Christina Yakovleva, 123RF<br />

Mathematik erkunden mit GeoGebra<br />

Zahlengebilde<br />

GeoGebra haucht den trockenen Zahlen Leben ein. So sehen Sie mit wenigen Klicks,<br />

welche Gebilde sich hinter Polynomen und Funktionen verbergen. Dr. Karl Sarnow<br />

Readme<br />

GeoGebra veranschaulicht, was Mathematik<br />

sonst in trocken Zahlenkonstrukten ausdrückt.<br />

So lernen Schüler, was sich hinter<br />

Funktionen und Koordinaten verbirgt, und<br />

Lehrer erhalten ein nützliches Werkzeug mit<br />

vielen Beispielen für den Unterricht.<br />

GeoGebra ist ein sich rasant entwickelndes<br />

Open-Source-Programm zum Veranschaulichen<br />

mathematischer Formeln. Es<br />

gehört zu den Pflichtprogrammen für<br />

alle, die sich für Mathematik interessieren.<br />

Das Besondere an GeoGebra ist dabei<br />

der Ansatz, der mehr als nur den Einsatz<br />

in der Geometrie erlaubt.<br />

Das Projekt entstand ursprünglich in<br />

Österreich unter Beteiligung des dortigen<br />

Kultusministeriums. Mittlerweile<br />

arbeiten neben dem Initiator und heutigen<br />

Direktor des Projektes, Markus<br />

Hohen wachter, 49 Entwickler aus allen<br />

Ländern der Erde an GeoGebra. Hinzu<br />

kommt ein gigantisches Team von Übersetzern,<br />

die das Programm für alle Sprachen<br />

der Welt lokalisieren – sofern sich<br />

jemand in dieser Sprache für Mathematik<br />

interessiert.<br />

GeoGebra findet sich in den Repositories<br />

vieler Distributionen und lässt sich<br />

daher meist per Knopfdruck installieren<br />

– allerdings oft nur in einer etwas angestaubten<br />

stabilen Version. Die aktuellste<br />

Ausgabe holen Sie von der GeoGebra-<br />

Seite û, indem Sie dort auf den Button<br />

Download klicken.<br />

18 www.linux-user.de<br />

05.2013


GeoGebra<br />

Schwerpunkt<br />

1 Bewegen Sie die Punkte A, B oder C mit der Maus, bleibt die Aussage erhalten:<br />

Die Mittelsenkrechten eines beliebigen Dreiecks schneiden sich in einem Punkt, der den<br />

Mittelpunkt des Umkreises markiert. Das zeigt diese Grafik in GeoGebra anschaulich.<br />

Danach haben Sie die Wahl zwischen einer<br />

Webstart-Version zur lokalen Installation<br />

und einem Applet. Im ersten Fall<br />

landet die Software auf dem Rechner, im<br />

zweiten nicht. Dabei verwirren die Namen<br />

etwas: Anders herum hätte es logischer<br />

geklungen. Die Applet-Variante<br />

setzt voraus, dass Sie ein Java-Plugin auf<br />

dem Rechner installiert haben, wie zum<br />

Beispiel Iced Tea. Der Vorteil der Applet-<br />

Version liegt vor allem in der Aktualität:<br />

Hier nutzen Sie stets die neueste Version<br />

des Programms. Das war zu Redaktionsschluss<br />

GeoGebra 4.0.41.0. Zusätzlich<br />

steht GeoGebra in Form von Archiven<br />

zur Installation unter Linux, Mac OS X,<br />

Windows und OLPC XO bereit.<br />

gen oder Kreise und Polygone zeichnen.<br />

Derartige Konstruktionen behalten einige<br />

Eigenschaften selbst dann, wenn Sie<br />

die Punkte mit der Maus bewegen 1 .<br />

Geometrie<br />

Schon seit den ersten Versionen operiert<br />

GeoGebra mit einer Technik namens<br />

„Dynamische Geometrie“, die es erlaubt,<br />

geometrische Sätze spielerisch mit der<br />

Maus zu erkunden. Dazu setzen Sie in einem<br />

Koordinatensystem mit der Maus<br />

sowie mithilfe der Icons in der Werkzeugleiste<br />

Punkte und bewegen diese.<br />

Auf diese Weise lassen sich Geraden le-<br />

2 Die Knöpfe unterhalb der Menüleiste ermöglichen den Zugriff auf Gruppen von<br />

Werkzeugen. Klicken Sie auf das Pfeilsymbol im Icon, so öffnet sich eine Auswahl der einzelnen<br />

Werkzeuge.<br />

05.2013 www.linux-user.de<br />

19


Schwerpunkt<br />

GeoGebra<br />

3 Markieren Sie ein Objekt in der Ansicht Geometrie (in diesem Fall der Kreis), hebt die<br />

Software gleichzeitig die entsprechende Zeile in der Ansicht Algebra hervor.<br />

So erkunden Sie auf einfache Weise die<br />

Gesetze der ebenen Geometrie sowie<br />

die wichtige mathematische Erkenntnis,<br />

dass die Konstruktion erhalten bleibt,<br />

wenn Sie Komponenten der Konstruktion<br />

verschieben. Der Begriff der Allgemeingültigkeit,<br />

dem die Mathematik<br />

große Bedeutung beimisst, erscheint auf<br />

diese Weise verständlich.<br />

In der Werkzeugleiste stehen standardmäßig<br />

zwölf Gruppen von Werkzeugen<br />

zum Bearbeiten der Objekte bereit. Es<br />

gibt Tools für Bewegungen, für Punkte,<br />

für Geraden, für spezielle Geraden, für<br />

Vielecke, für Kreise und Kreisbögen, für<br />

Kegelschnitte, für Messungen, für Transformationen<br />

sowie für spezielle und Aktionsobjekte.<br />

Dazu kommen einige allgemeine<br />

Werkzeuge für alle Objekte und<br />

benutzerdefinierte Werkzeuge. CAS-<br />

Tools sowie Werkzeuge für Tabellenkalkulationen<br />

komplettieren die Riege. In<br />

jeder der Gruppen lagern Unmengen individueller<br />

Werkzeuge 2 .<br />

Ansichten<br />

4 Wählen Sie ein Werkzeug aus (hier Integral), zeigt die Software im unteren Fenster die<br />

Syntax des Befehles an, den Sie auf Knopfdruck in die Eingabezeile übernehmen.<br />

Die moderneren GeoGebra-Versionen<br />

ab 4.0 arbeiten bevorzugt mit dem Konzept<br />

der „Ansicht“. Bei einer solchen Ansicht<br />

handelt es sich um ein Unterfenster<br />

im Fenster des Programms. Sie dürfen<br />

im Prinzip beliebig viele Ansichten öffnen<br />

– die Grenze ziehen hier die Speicher-<br />

und CPU-Ausstattung des Rechners.<br />

Zwei Ansichten sind besonders<br />

wichtig: die Algebra-Ansicht und die Ansicht<br />

für die klassische Geometrie 3 .<br />

In den aktuellen GeoGebra-Versionen<br />

gibt es zusätzlich zur Ansicht Algebra<br />

und Geometrie die Ansicht Tabellen. Die<br />

Beta-Version 5.0 û bringt darüber hi-<br />

20 www.linux-user.de<br />

05.2013


GeoGebra<br />

Schwerpunkt<br />

5 So einfach kann Mathematik sein: Mit lediglich vier Eingaben erhalten Sie nicht nur<br />

den Graph einer Funktion, sondern auch dessen wesentlichen Eigenschaften.<br />

naus noch eine CAS-Ansicht sowie eine<br />

3D-Ansicht mit. Beide zeigen deutlich,<br />

wohin GeoGebra inzwischen zielt: Es<br />

will zum mathematischen Universalprogramm<br />

avancieren.<br />

Dieser Test umfasst auch die Neuerungen<br />

der Beta 5.0. Da diese Version jedoch<br />

noch viele schwerwiegende Fehler<br />

aufweist, warnt das Projekt davor, sie bereits<br />

zum Entwickeln von Anwendungen<br />

heranzuziehen. Auch könnten sich die<br />

<strong>Daten</strong>strukturen noch ändern.<br />

Eine besondere Bedeutung kommt<br />

der Eingabezeile unterhalb der Ansichten<br />

n zu: Hier definieren Sie bei Bedarf<br />

mathematische Objekte direkt. So sprechen<br />

Sie einen Punkt durch Angabe des<br />

Namens und der Koordinaten an, etwa<br />

als A=(1,2), womit Sie den Punkt A mit<br />

den Koordinaten x=1 und y=2 setzen.<br />

Rechts neben der Eingabezeile befindet<br />

sich eine Pfeiltaste, mit der Sie ältere<br />

Eingaben in die Zeile heben. Rechts daneben<br />

befindet sich eine weitere Schaltfläche,<br />

über die Sie bei Bedarf eine Liste<br />

mathematischer Befehle erreichen 4 .<br />

Schon die in der Version 4.x vorhandenen<br />

Befehle lassen GeoGebra als mathematisches<br />

Universalsystem für Schulen<br />

erscheinen. Eine klassische Kurvendiskussion<br />

erstellen Sie mit wenigen Mausklicks,<br />

indem Sie die Funktion eingeben<br />

und dann die Nullstellen, die Extrema<br />

und die Wendepunkte aufrufen 5 .<br />

Das Beispiel in Abbildung 5 verdeutlicht<br />

aber auch, dass der Einsatz von Mathematik-Software<br />

den Unterricht nicht<br />

ersetzt: Sinnloses Drücken der Knöpfe<br />

CAS: Computeralgebrasystem. Ein CAS stellt<br />

eine Reihe von Funktionen zum Lösen mathematischer<br />

Gleichungen bereit. Dabei<br />

geht es weniger um den Einsatz von konkreten<br />

Zahlen als vielmehr um die Verwendung<br />

von symbolischen Ausdrücken wie<br />

Matrizen oder Polynomen.<br />

6 Der Funktionsinspektor berechnet den Wert an einer gegebenen Stelle und zeigt die<br />

Koordinaten, die Tangente und den Radius der Krümmung an.<br />

05.2013 www.linux-user.de<br />

21


Schwerpunkt<br />

GeoGebra<br />

7 Das Programm GeoGebra veranschaulicht auch mathematische Effekte in der Physik,<br />

wie in diesem Fall die Beugung und Interferenz am Gitter.<br />

führt in keinem Programm zu einem<br />

sinnvollen Ergebnis. Aber Software hilft<br />

dabei, Dingen auf den Grund zu gehen.<br />

Weder GeoGebra noch ein anderes Programm<br />

beantwortet die Frage, weshalb<br />

in Abbildung 5 Punkt B ein Wendepunkt<br />

ist. Die Antwort auf diese Frage<br />

sollte es sein, welche dem Schüler eine<br />

gute Mathematiknote beschert, nicht<br />

die bloße Angabe von Koordinaten.<br />

Wer als Lehrer dieses Prinzip beherzigt,<br />

braucht seinen Unterricht aufgrund<br />

8 Die Eingabe von variablen Werten für Punkte erlaubt eine spielerische Regression<br />

und das Auffinden von Merkmalen durch wiederholte Versuche.<br />

von GeoGebra als Werkzeug nicht zu<br />

verändern. Die Software gibt dem Schüler<br />

lediglich den Hinweis, was es alles zu<br />

entdecken gibt. Noch einfacher klappt<br />

die ganze Kurvendiskussion übrigens<br />

möglicherweise mit dem Werkzeug<br />

Funktionsinspektor 6 .<br />

Inzwischen deutet sich mit dem Projekt<br />

„GeoGebra on tablets“ ein weiterer<br />

Entwicklungsschritt an: GeoGebra auf<br />

dem Mobiltelefon. Die Smartphone-<br />

Revo lution nervt schon heute viele Lehrer,<br />

weil die Schüler im Unterricht unter<br />

der Tischplatte googeln. Mit Anwendungen<br />

wie GeoGebra entwickelt sich das<br />

Smartphone aber zu einem natürlichen<br />

schulischen Arbeitsmittel: Die Schüler<br />

dürfen ihr Handy im Unterricht verwenden<br />

und erhalten im Gegenzug kostenlos<br />

ein erstklassiges Werkzeug, das den<br />

Taschenrechner einspart.<br />

Materialien<br />

Umgekehrt dürfte es Schülern kaum behagen,<br />

wenn Lehrer ständig neue Anwendungen<br />

aus dem Hut zaubern, die<br />

es dann zu bearbeiten gilt. Genau diese<br />

Möglichkeit eröffnet aber die Materialsammlung<br />

für GeoGebra û. Die Idee dahinter<br />

besteht nicht nur darin, dem Lehrer<br />

eine Bibliothek für Anwendungen<br />

bereitzustellen, vielmehr laden die Autoren<br />

der Software sowohl Lehrer als auch<br />

Schüler zur Mitarbeit ein. Die Sammlung<br />

enthält didaktisch hervorragende Materialien,<br />

vor allem aus der Physik, wo Geo-<br />

Gebra sich ebenfalls als Hilfsmittel beim<br />

Visualisieren erweist 7 .<br />

Viel wichtiger als vorgefertigte Anwen<br />

dun gen erscheint jedoch die Option,<br />

GeoGebra als Werkzeug für eigene<br />

Arbeiten zu nutzen. Insbesondere Auswertungen<br />

von <strong>Daten</strong>reihen und die<br />

Möglichkeit des Exports der Ergebnisse<br />

als Bilddatei stellen im naturwissenschaftlichen<br />

Unterricht eine hervorragende<br />

Gelegenheit dar, die Schüler<br />

aktiv an Experimenten zu einem Thema<br />

zu beteiligen. Der Export erlaubt es zudem,<br />

eine selbst entwickelte Funktion<br />

als HTML-Datei zu speichern, und das Ergebnis<br />

anschließend in eine Webseite<br />

oder einen Moodle-Kurs einzubinden.<br />

22 www.linux-user.de<br />

05.2013


GeoGebra<br />

Schwerpunkt<br />

9 Die 3D-Ansicht in GeoGebra erlaubt die Eingabe von Punkten mit drei Koordinaten<br />

und die Konstruktion entsprechender Objekte. Das ermöglicht es auf einfache Weise, die<br />

Ergebnisse aus Vektor rechnungen mit Grafiken zu veranschaulichen.<br />

Die Software erlaubt es, Punkten variable<br />

Werte zuzuweisen, wobei Sie den Wertebereich<br />

einstellen können. Dazu aktivieren<br />

Sie in der Grafikansicht einen Punkt<br />

mit dem Werkzeuge Bewege. Der entsprechende<br />

Regler durchläuft dann den<br />

Bereich entweder immer in eine Richtung<br />

oder am Ende umkehrend. Gleichzeitig<br />

verändert sich die Konstruktion in<br />

allen verknüpften Eigenschaften.<br />

Sie starten und beenden die Animation<br />

über die gängigen Symbole. Dabei<br />

erzeugt diese nicht unbedingt Bewegung:<br />

Wie Abbildung 6 am Beispiel des<br />

Der Autor<br />

Karl Sarnow ist seit den Tagen<br />

des TRS-80 Model 1 ein<br />

Fan des eigenen Computers.<br />

Der Lehrer für Mathematik,<br />

Physik und Informatik entwarf früher Vernetzungskonzepte<br />

unter Linux sowie entsprechende<br />

Anwendungen für Schulen<br />

und Unterricht. Darüber hat er auch ein<br />

Buch geschrieben. Seit seiner Pensionierung<br />

widmet er sich seinen Hobbys Fotografie,<br />

Reisen und Astronomie.<br />

Gitters zeigt, führt die Animation hier<br />

dazu, das Intensitätsbild zu <strong>visualisieren</strong>.<br />

Der Regler erweist sich bei Regressionen<br />

als hilfreich, um die Parameter durch<br />

wiederholte Versuche zu bestimmen.<br />

Abbildung 8 zeigt das Ergebnis eines<br />

Fallversuches in der Tabellenansicht.<br />

Durch einen Klick mit der rechten Maustaste<br />

entsteht aus den Zahlen der markierten<br />

Felder A2 bis B8 eine Reihe von<br />

Punkten in der Grafikansicht. Nun geben<br />

Sie in die Eingabezeile die vermutete<br />

Funktion ein, bei der ein Parameter zunächst<br />

noch unbestimmt ist. Eine sehr<br />

gute Regression erzielt die Funktion<br />

s(x)=a*x2 für den Wert a=4,5.<br />

Neu und neuer<br />

Zwar kam die CAS-Ansicht erst in Geo-<br />

Gebra 5.0 Beta hinzu, aber schon in Version<br />

4 finden sich CAS-Fähigkeiten, etwa<br />

für das Auffinden von Nullstellen oder<br />

Extrema. Es fehlte lediglich eine eigene<br />

Ansicht für diese Werkzeuge. Viel spannender<br />

erscheint aber der Schritt in die<br />

dritte Dimension: Bisher war in vielen<br />

CAS-Systemen zwar Vektorrechnung<br />

möglich, eine Visualisierung fehlte aber<br />

meistens. GeoGebra ist nun das erste<br />

Open-Source-Programm, das sich an diese<br />

Funktion heranwagt 9 .<br />

Entsprechend der neuen Ansicht verändern<br />

sich die Werkzeuggruppen. Sie<br />

finden nun Tools für den Schnitt von Flächen,<br />

verschiedene Definitionen von<br />

Ebenen und Kugeln sowie ein Werkzeug<br />

zum Drehen des Koordinatensystems.<br />

Vermissten Sie bisher die Möglichkeit<br />

zu programmieren, gibt es in GeoGebra 5.0<br />

nun eine Python-Ansicht. Hier erstellen<br />

Sie eigene Programme und bauen diese<br />

in eine Konstruktionen ein.<br />

Fazit<br />

GeoGebra, einst ein einfaches Programm<br />

für dynamische Geometrie, entwickelt<br />

sich stetig zu einer mathematischen Universalanwendung.<br />

Die Version 5.0 zeigt<br />

haargenau in die richtige Richtung. Mit<br />

dem Projekt „GeoGebra on table“ demonstrieren<br />

die Entwickler ihr Gespür<br />

für die Zukunft. Das Leistungsspektrum<br />

ermöglicht den Einsatz als einfaches<br />

Visu alisierungssystem ebenso wie als<br />

Werkzeug für Analyse komplexer <strong>Daten</strong><br />

und mathematischer Zusammenhänge.<br />

Die Geschwindigkeit, mit der sich Geo-<br />

Gebra entwickelt, wirkt atemberaubend,<br />

die Interaktion beispielhaft. Und obendrein<br />

steht eine Bibliothek mit hervorragenden<br />

Anwendungen, alle unter der<br />

GPL, für Wissensdurstige bereit. (agr) n<br />

Weitere Infos und<br />

interessante Links<br />

www. linux‐user. de/ qr/ 27776<br />

05.2013 www.linux-user.de<br />

23


Schwerpunkt<br />

3D-Molekülvisualisierer<br />

Vier 3D-Molekülvisualisierer im Vergleich<br />

Der Natur<br />

auf der Spur<br />

© Jut, 123RF<br />

Viele biochemische Prozesse lassen sich erst verstehen, wenn ein dreidimensionales Molekülbild<br />

der agierenden Substanzen die Reaktion veranschaulicht. Dr. Karl Sarnow<br />

Readme<br />

Moderne Chemie und Biochemie sind ohne<br />

räumliche Veranschaulichung kaum mehr<br />

zu verstehen. Der Artikel stellt Programme<br />

vor, die Ordnung in das Chaos der miteinander<br />

verbundenen Atome bringen, indem<br />

sie diese in funktionale Abschnitte ordnen<br />

und dreidimensional darstellen.<br />

Kaum eine Wissenschaft hat in den letzten<br />

Jahrzehnten so rasante Fortschritte<br />

gemacht, wie die Biochemie. Dabei bedient<br />

sich diese Wissenschaft der Computertechnik<br />

als unverzichtbares Werkzeug:<br />

Viele biochemische Prozesse lassen<br />

sich erst verstehen, wenn ein dreidimensionales<br />

Molekülbild der agierenden<br />

Substanzen deren Reaktion darstellt.<br />

Das Stichwort Molekül im Ubuntu-<br />

Software-Center zeigt zehn Einträge,<br />

darunter ein Spiel und zwei Zeichenprogramme<br />

für chemische Strukturen. Dann<br />

aber findet man eine Reihe nützlicher<br />

Programme. Dazu zählen der Klassiker<br />

RasMol, der Alleskönner PyMol, der Baumeister<br />

Avogadro, das Java-Programm<br />

JMol (es läuft überall, sogar im Browser)<br />

sowie der Außenseiter GChemPaint.<br />

Das verheißungsvollste Programm allerdings,<br />

Ghemical, das nicht nur Moleküle<br />

darstellt, sondern auch Molekülorbitalrechnungen<br />

vornehmen kann, entzog<br />

sich dem Test: Nach der Installation stürzte<br />

es mit einer Reihe Fehlermeldungen<br />

ab. Tatsächlich berichten alle einschlägigen<br />

Foren ebenfalls über Installationsprobleme<br />

von Ghemical auf Ubuntu.<br />

24 www.linux-user.de<br />

05.2013


3D-Molekülvisualisierer<br />

Schwerpunkt<br />

DNS: Desoxyribonukleinsäure. Das in Form<br />

einer Doppelhelix organisierte Biomolekül<br />

dient allen irdischen Lebewesen als Träger<br />

der Erbinformationen. Häufig trifft man<br />

auch auf die englische Schreibweise DNA<br />

für „deoxyribonucleic acid“.<br />

1 Die verschiedenen Darstellungen des einfachen Kohlenwasserstoffmoleküls Äthylen,<br />

von der Summenformel über die plastische Strukturformel bis hin zur Visualisierung.<br />

Was die Programme können<br />

In der Chemie sind chemische Formeln<br />

so etwas wie die Fachsprache der Chemiker.<br />

Ursprünglich nutzten sie die Summenformel,<br />

eine einfache Aneinanderreihung<br />

von Buchstaben und Zahlen für die<br />

Elemente und deren Anzahl im Molekül.<br />

Später lieferte die zweidimensionale<br />

Strukturformel deutlich mehr Information<br />

über das Molekül, etwa das Vorliegen<br />

von Einfach- und Doppelbindungen.<br />

In den Visualisierungsprogrammen<br />

kommt nun die maßstäbliche Anordnung<br />

zur Strukturformel hinzu (Abbildung<br />

1). Die Atome erscheinen in ihren<br />

korrekten Positionen und lassen sich aus<br />

verschiedenen Richtungen betrachten.<br />

Hinzu kommt je nach Programm die<br />

Darstellung von Moleküloberflächen,<br />

funktionalen Komponenten oder Elektronendichtekarten.<br />

Was bei dem einfachen<br />

Äthylenmolekül in Abbildung 1<br />

noch ein wenig nach technischem Overkill<br />

aussieht, entpuppt sich bei komplexen<br />

Molekülen wie der DNS als äußerst<br />

hilfreiche Möglichkeit.<br />

Bei der Darstellung der Elektronenverteilung<br />

um das Atomgerüst des Moleküls<br />

herum handelt es sich um eine weitere<br />

hervorragende Fähigkeit der Molekülvisualisierung:<br />

Will man verstehen,<br />

wie elektrostatische Anziehungs- und<br />

Abstoßungsprozesse innerhalb des Moleküls<br />

wirken, hilft eine solche Elektronendichtekarte<br />

auf die Sprünge. Um sie<br />

zu erzeugen, greift man auf den Electron<br />

Density Server der Universität Uppsala<br />

û zurück. Der Prozess ist kompliziert,<br />

aber er funktioniert, wie die in diesem<br />

2 Die Elektronendichte, berechnet beim Electron Density Server, gibt den Raum rund<br />

um das Atomgerüst des Moleküls an, in dem ein Elektron sich aufhalten kann.<br />

05.2013 www.linux-user.de<br />

25


Schwerpunkt<br />

3D-Molekülvisualisierer<br />

Test nach der entsprechenden Anleitung<br />

û mit PyMol erzeugte Abbildung<br />

2 zeigt.<br />

Diese folgende Kurzübersicht stellt einige<br />

Anwendungen vor, die ihre ganze<br />

beeindruckende Visualisierungskraft<br />

aber erst im eigenen Experiment zeigen.<br />

Sie sollten sich daher bei Interesse selbst<br />

von der Macht der bewegbaren Molekülbilder<br />

überzeugen. Speziell die DNS-<br />

Darstellung auf der Biomodel-Website<br />

von Angel Herráez an der spanischen<br />

Universidad de Alcalá û eignet sich als<br />

gute Anlaufstelle zum Verständnis des<br />

Potenzials, insbesondere für den Biologie-Unterricht<br />

an Gymnasien.<br />

RasMol, der Klassiker<br />

3 Das „Klenow-Enzym“, ein Protein-Fragment der DNA-Polymerase I<br />

des E.-Coli-Bakteriums, in der Cartoon-Darstellung von RasMol mit<br />

Fragmentfarbgebung. Neuere Visualisierungsprogramme lösen das<br />

blaue Band in Molekülketten auf.<br />

RasMol û war das erste 3D-Molekülvisualisierungsprogramm<br />

für Linux. Die<br />

hier vorgestellte, auf Gtk basierende Version<br />

2.7.5 erfreut durch eine nur mäßig<br />

komplexe Bedienung und erlaubt<br />

schnelle Wechsel von einer Darstellung<br />

in die nächste 3 . Auch Drehen und<br />

Zoomen gehen nach kurzer Zeit intuitiv<br />

von der Hand.<br />

Sie können auch mehrere Moleküle<br />

gleichzeitig laden. Nach der Auswahl<br />

des sichtbaren Moleküls verändern Sie<br />

dessen Darstellung sowie Position und<br />

veranschaulichen damit beispielsweise<br />

das Zusammenwirken mehrerer Moleküle<br />

bei Syntheseprozessen.<br />

RasMol läuft nicht nur unter Linux,<br />

sondern auch unter Mac OS X sowie Windows<br />

– allerdings jeweils nur auf dem<br />

Desktop. Das bedeutet, dass sich damit<br />

die für den Schulbetrieb so interessanten<br />

Web-Tutorials nicht realisieren lassen.<br />

JMol, das Universaltalent<br />

4 Noch einmal das Klenow-Fragment, diesmal in der Cartoon-<br />

Darstellung von JMol mit Fragmentfarbgebung. Anders als Ras-<br />

Mol löst JMol das blaue Band in Molekülketten auf.<br />

Das in Java geschriebene JMol û lässt<br />

sich nicht nur auf dem Desktop verwenden,<br />

sondern auch als Applet in HTML-<br />

Seiten einbinden. Damit ermöglicht es<br />

interaktive Tutorials, mit denen man insbesondere<br />

im Schulunterricht der gymnasialen<br />

Oberstufe ideal interaktive<br />

Lern einheiten zusammenstellen kann.<br />

Viele schöne Beispiele rund um die DNS<br />

finden sich auf der bereits erwähnten<br />

26 www.linux-user.de<br />

05.2013


3D-Molekülvisualisierer<br />

Schwerpunkt<br />

spanischen Biomodel-Website û sowie<br />

in einer deutschsprachigen Anleitung û.<br />

Dank Java läuft JMol auf nahezu allen<br />

Betriebssystemen auch als Desktop-Anwendung<br />

und bietet dort eine übersichtliche,<br />

intuitiv zu bedienende Benutzeroberfläche<br />

4 .<br />

Avogadro, der Baumeister<br />

Avogadro û hat weniger die Darstellung<br />

bekannter Strukturen zum Ziel:<br />

Vielmehr bauen Sie hier Ihr eigenes Molekül,<br />

ohne dazu die Koordinaten der<br />

einzelnen Atome kennen zu müssen. Sie<br />

beginnen einfach, von Atom zu Atom<br />

die grobe Struktur zu zeichnen.<br />

Dann starten Sie den Optimierungsmodus<br />

und lassen Avogadro die Geometrie<br />

des Moleküls nach energetischen Gesichtspunkten<br />

optimieren: Je geringer<br />

die Bindungsenergie, umso dichter die<br />

reale Struktur des Moleküls. Das so komponierte<br />

Molekül messen Sie anschließend<br />

aus und weisen Avogadro an, die<br />

Koordinaten der Atome auszugeben 5 .<br />

PyMol, der Alleskönner<br />

Die Leistungsfähigkeit von PyMol û demonstriert<br />

2 , wo das Programm gemäß<br />

der Anleitung û in vielen Schritten die<br />

Elektronendichte berechnet und dargestellt<br />

hat. Aber so leistungsfähig PyMol<br />

ist, so komplex fällt auch die Bedienung<br />

aus. Es besteht aus zwei Fenstern, einem<br />

Skript- und einem Bildfenster, in dem es<br />

das eigentliche Bild darstellt.<br />

Laden Sie mehrere Bilder, etwa das<br />

Molekül selbst sowie der Elektronendichteraum<br />

aus 2 , dann lassen sich die<br />

einzelnen Darstellungen über die Tasten<br />

mit den Bezeichnungen rechts im Bildfenster<br />

einstellen. Eine souveräne Nutzung<br />

des Programms klappt erfahrungsgemäß<br />

ohne einen gelegentlichen Griff<br />

zum Handbuch û nicht – Leistungsfähigkeit<br />

hat eben ihren Preis.<br />

MAGAZIN<br />

ONLINE<br />

Linux-Magazin newsLetter<br />

Nachrichten rund um die Themen Linux und Open Source lesen Sie täglich<br />

im Newsletter des Linux-Magazins.<br />

Newsletter<br />

informativ<br />

kompakt<br />

tagesaktuell<br />

www.linux-magazin.de/newsletter<br />

05.2013 www.linux-user.de<br />

27


Schwerpunkt<br />

3D-Molekülvisualisierer<br />

PDB: Dateiformat der Protein Data Bank.<br />

Diese frei zugängliche <strong>Daten</strong>bank erfasst<br />

die von internationalen Biologen und Biochemikern<br />

beigesteuerten 3D-Strukturen<br />

von Proteinen und Nukleinsäuren.<br />

5 Als molekularer Baumeister ermöglicht Avogadro nicht nur die Ansicht von Molekülen,<br />

sondern auch deren Konstruktion sowie die Ausgabe der Atomkoordinaten.<br />

Weitere Infos und<br />

interessante Links<br />

www. linux‐user. de/ qr/ 28520<br />

Außenseiter GChemPaint<br />

Bei GChemPaint û handelt es sich<br />

streng genommen nicht um ein Visualisierungsprogramm.<br />

Es kann aber Molekül-<strong>Daten</strong><br />

im verbreiteten PDB-Format<br />

lesen und dann direkt als Strukturformel<br />

anzeigen. Diese Strukturformel lässt sich<br />

dann in wissenschaftlichen Dokumentationen<br />

besser einsetzen als 3D-Visualisierungen<br />

– zumindest solange die Moleküle<br />

nicht zu groß ausfallen 6 .<br />

6 GChemPaint, der Außenseiter im Angebot, wandelt PDB-Dateien in Strukturformeln<br />

um, die sich bei einfachen Molekülen besser für wissenschaftliche Publikationen eignen.<br />

Fazit<br />

Die Visualisierungsmöglichkeiten der<br />

modernen Bioinformatik sind inzwischen<br />

auf dem Linux-Desktop angekommen.<br />

Geboten wird alles, was dem Verständnis<br />

biochemischer Reaktionen dienen<br />

kann. Eine riesige Bibliothek von<br />

Moleküldateien im PDB-Format û ermöglicht<br />

den Zugriff auf das biochemische<br />

Wissen der Welt.<br />

Neben der reinen Darstellung der Moleküle<br />

wie in RasMol, JMol oder PyMol<br />

bietet Avogadro die Fähigkeit, aus Atomen<br />

zusammengesetzte Strukturen gezielt<br />

zu „designen“ und die sich ergebenden<br />

Koordinaten für Berechnungen auszugeben.<br />

Der Alleskönner PyMol beherrscht<br />

selbst komplizierteste Visualisierungen.<br />

Als Java-Applet eignet sich<br />

JMol ganz hervorragend für die Entwicklung<br />

interaktiver Unterrichtseinheiten<br />

und sollte damit das Lieblingsprogramm<br />

aller Biologielehrer der gymnasialen<br />

Oberstufe sein. GChemPaint schließlich<br />

macht die Rolle rückwärts und bietet an,<br />

die PDB-Moleküldateien in einfache<br />

Strukturformeln zu überführen. (jlu) n<br />

28 www.linux-user.de<br />

05.2013


Probelesen<br />

ohne risiko<br />

Und Gewinnen!<br />

Einen Acer REVO RL70: Das flüsterleise<br />

Kraftpaket für Multimedia Home<br />

Entertainment im Wert von 249 Euro<br />

• Ultrakompakter Formfaktor (209x209x35 mm)<br />

• Basiert auf AMD Brazos-Plattform für<br />

Full-HD und Games<br />

SONDERAKTION!<br />

Testen Sie jetzt<br />

3 Ausgaben für<br />

NUR 3€*<br />

Telefon: 07131 /2707 274<br />

Fax: 07131 / 2707 78 601<br />

E-Mail: abo@linux-user.de<br />

Mit großem Gewinnspiel unter:<br />

www.linux-user.de/probeabo<br />

* Angebot gilt innerhalb Deutschlands und Österreichs. In der Schweiz: SFr 4,50.<br />

Weitere Preise: www.linux-user.de/produkte


Schwerpunkt<br />

Mindmapping<br />

Mindmapping mit View your Mind<br />

Verzweigte Ideen<br />

© Nabeil Zaiton, 123RF<br />

Mit View your Mind zeichnen<br />

und verwalten Sie sogenannte<br />

Mindmaps, in denen Sie Gedanken,<br />

Ideen und Notizen<br />

strukturiert festhalten.<br />

Tim Schürmann<br />

Readme<br />

Wer Wörter in einem bunten Astgeflecht<br />

sieht, der hat nicht etwa Designerdrogen<br />

konsumiert, sondern vielmehr Ideen oder<br />

Notizen in einer Mindmap festgehalten.<br />

Die se äußerst nützlichen Gebilde kann man<br />

auf Papier kritzeln – oder erstellt sie wesentlich<br />

komfortabler mit View your Mind.<br />

Bei Freunden schnell abgeschriebene<br />

Kochrezepte landen daheim meist in einer<br />

dicken Mappe, in der das Rezept alsbald<br />

zwischen seinen Pendants untertaucht.<br />

Man könnte jetzt mühsam alle<br />

Rezepte ordnen – oder man verschafft<br />

sich mit einer Mindmap schnell und unkompliziert<br />

einen Überblick. Eine solche<br />

Grafik ist rasch erstellt: Ausgehend von<br />

einem zentralen Begriff – in diesem Fall<br />

Rezepte – zieht man Linien zu damit thematisch<br />

verwandten oder untergeordneten<br />

Begriffen, wie beispielsweise Kuchen,<br />

Vorspeisen und Suppen. Diese Unterthemen<br />

lässt man dann nach dem gleichen<br />

Prinzip weiter verzweigen. Auf diese Weise<br />

ordnen Mindmaps Gedanken, sammeln<br />

Ideen, strukturieren <strong>Daten</strong> und helfen<br />

bei der Planung von Projekten.<br />

Zeichenbrett<br />

Beim Erstellen solcher Mindmaps hilft<br />

das Programm View your Mind, häufig<br />

auch kurz VyM genannt. Mit ihm können<br />

Sie anders als auf Papier mit wenigen<br />

Mausklicks Teile der Mindmap umfärben<br />

oder ganze Bereiche an eine andere Stelle<br />

verschieben. Darüber hinaus gibt VyM<br />

die Zeichnung in verschiedenen Formaten<br />

aus – vom simplen PNG-Bild über ein<br />

PDF-Dokument bis hin zu einer LibreOffice-Präsentation.<br />

Bereits die VyM-Homepage<br />

û gibt einen Eindruck vom Aussehen<br />

und den Möglichkeiten des Programms:<br />

Sie besteht aus einer mit View<br />

your Mind erzeugten Mindmap, in deren<br />

Zentrum das Programm selbst steht.<br />

Alle gängigen Distributionen halten<br />

VyM in ihren Repositories vor. Alternativ<br />

stellt der Entwickler auf Sourceforge aktuelle<br />

RPM- und DEB-Pakete des Quellcodes<br />

bereit û, die unter fast allen Distributionen<br />

funktionieren. Im Falle eines<br />

Falles schnappen Sie sich also das Quellcode-Archiv,<br />

entpacken es und installieren<br />

dann das Programm mit qmake, make<br />

und sudo make install. VyM verlangt<br />

dabei nach einem C++-Compiler, den<br />

Qt-Entwicklerpaketen sowie Qmake.<br />

30 www.linux-user.de<br />

05.2013


Mindmapping<br />

Schwerpunkt<br />

Die folgenden Ausführungen basieren<br />

auf der Entwicklerversion VyM 2.3.15,<br />

wie sie auch bereits OpenSuse 12.3 beiliegt.<br />

Die Bedienung der Vorversionen<br />

erfolgt jedoch auf die gleiche Weise.<br />

Zweigwuchs<br />

Nach dem ersten Start des Programms<br />

erscheint ein ziemlich leeres Fenster mit<br />

einer monströsen Symbolleiste. Das gelbe<br />

Rechteck Neue map dient als Ausgangspunkt<br />

für eine neue Mindmap.<br />

Doppelklicken Sie auf ihn, und tragen Sie<br />

den zentralen Begriff Ihrer Mindmap ein,<br />

wie etwa Rezepte im Fall einer Rezeptsammlung.<br />

Einen neuen Zweig fügen Sie<br />

hinzu, indem Sie Edit | Neuer Zweig wählen<br />

(oder [A] drücken) und dann eine Beschriftung<br />

eintippen wie etwa Kuchen.<br />

Alle aufgerufenen Aktionen beziehen<br />

sich auf das gerade gelb hervorgehobene<br />

Element. Einen neu erstellten Zweig<br />

hängt VyM folglich erneut an das Stichwort<br />

Rezepte an. Um den Zweig mit den<br />

Kuchen zu markieren, klicken Sie ihn einfach<br />

an. Werfen Sie auch einen Blick in<br />

den Baum Editor am linken Seitenrand: In<br />

ihm erscheint die Mindmap noch einmal<br />

als Gliederung, das in der Mindmap gelb<br />

hervorgehobene Element ist dort ebenfalls<br />

ausgewählt. Mit einem Klick auf einen<br />

Gliederungspunkt springt die Mindmap<br />

direkt zum zugehörigen Zweig.<br />

Haben Sie versehentlich einen Zweig<br />

an einem falschen Element erstellt, halten<br />

Sie mit der linken Maustaste seine<br />

Beschriftung gedrückt, und ziehen Sie<br />

ihn dann an seine korrekte Position. Beim<br />

Verschieben rastet der Zweig automatisch<br />

an möglichen Positionen ein. Auf<br />

diese Weise strukturieren Sie die Mindmap<br />

bei Bedarf schnell um. Sie löschen<br />

einen kompletten Zweig, indem Sie ihn<br />

anwählen und dann [Entf] drücken.<br />

Farbenspiele<br />

Sämtliche Elemente der Mindmap dürfen<br />

Sie nach Belieben einfärben. Backen<br />

Sie beispielsweise häufig Kuchen, könnten<br />

Sie den entsprechenden Zweig in<br />

ein leuchtendes Rot tauchen 1 . Dazu<br />

sind allerdings zwei Schritte notwendig:<br />

1 Mehr Übersicht durch Farben: Hier wurde zum einen der Zweig für die Kuchen rot eingefärbt,<br />

zum anderen nehmen alle Zweige die Farbe der Beschriftungen an.<br />

VyM 2.2.4<br />

LU/vym/<br />

Zunächst wählen Sie unter Format |<br />

Wähle Farbe die gewünschte Farbe aus.<br />

Anschließend markieren Sie die Beschriftung<br />

des Zweiges, den Sie umfärben<br />

möchten (hier die Kuchen) und aktivieren<br />

dann Format | Zweig färben. Um auch<br />

alle Unterzweige mit anzustreichen,<br />

wählen Sie stattdessen Format | Unterbaum<br />

färben. Die Verbindungslinien färbt<br />

VyM erst dann ein, wenn Sie zusätzlich<br />

noch Format | Verbindungen haben Farbe<br />

der Beschriftungen aktivieren. Die Linien<br />

unabhängig von ihrer Beschriftung anmalen<br />

kann VyM zumindest in der getesteten<br />

Version 2.3.15 noch nicht.<br />

Der besonders leckere Zitronenkuchen<br />

lässt sich mithilfe der unteren Symbolleiste<br />

noch einmal gesondert hervorheben:<br />

Ein Klick auf eines der Symbole heftet<br />

es an die gerade gelb markierte Beschriftung.<br />

Dem Zitronenkuchen stellen<br />

Sie so etwa ein Ausrufezeichen und einen<br />

Daumen nach oben zur Seite. Sie<br />

entfernen die Piktogramme wieder, indem<br />

Sie noch einmal auf ihr Symbol in<br />

der untersten Symbolleiste klicken. Um<br />

05.2013 www.linux-user.de<br />

31


Schwerpunkt<br />

Mindmapping<br />

2 Weniger verspielt, mehr Informationen: Der Verbindungsstil Linie zeichnet schmale,<br />

rechteckige Zweige. Dem Zitronenkuchen wurden hier zudem zwei Symbole angeheftet.<br />

den Zitronenkuchen noch weiter ins Auge<br />

springen zu lassen, klicken Sie mit der<br />

rechten Maustaste darauf und können<br />

dann von der Festplatte ein passendes<br />

Bild hinzufügen. Über die entsprechenden<br />

Punkte im Menü Format dürfen Sie auch<br />

die Hintergrundfarbe der Mindmap wechseln<br />

oder sogar ein Hintergrundbild laden.<br />

Wenn Ihnen die Optik der Verbindungslinien<br />

nicht gefällt, probieren Sie im Menü<br />

Format die mit Verbindungsstil beginnenden<br />

Punkte durch 2 .<br />

Angeheftet<br />

Jeder Beschriftung dürfen Sie einen Link<br />

anheften, der zu einer anderen Mindmap<br />

Spürnase<br />

Zwischen den einzelnen Zweigbeschriftungen<br />

wechseln Sie mit den Pfeiltasten.<br />

Gerät die Mindmap zu groß, dann halten<br />

Sie die linke Maustaste über einer weißen<br />

Stelle gedrückt, und ziehen Sie dann mit<br />

der Maus die Darstellung an die richtige<br />

Position. Hinein und heraus zoomen Sie<br />

mit den Lupen aus der Symbolleiste.<br />

Sie erhöhen die Übersichtlichkeit, indem<br />

Sie über Edit den gerade angewählten<br />

Zweig einrollen. Seine Unterpunkte erscheinen<br />

erst dann wieder, wenn Sie sie<br />

mit den Pfeiltasten ansteuern oder im<br />

Baum Editor anklicken. Die im Menü Edit<br />

führt oder eine Webseite öffnet. Beim<br />

Zitronenkuchen könnten Sie so direkt<br />

auf das entsprechende Rezept û bei<br />

Wikibooks verweisen.<br />

Dazu klicken Sie den Eintrag mit der<br />

rechten Maustaste an, wählen Verweise<br />

(URLS, vym, …) | URL editieren und tippen<br />

die Internetadresse ein. Vor dem Zitronenkuchen<br />

erscheint jetzt eine kleine<br />

Weltkugel. Ein Klick darauf öffnet ein<br />

Browserfenster mit der entsprechenden<br />

Seite. Möchten Sie auf eine andere<br />

Mindmap verweisen, nutzen Sie dazu im<br />

Kontextmenü den Punkt Verweise (URLS,<br />

vym, …) | vym Verknüpfung editieren und<br />

wählen dann die Datei mit der entsprechenden<br />

Mindmap aus.<br />

enthaltenen Punkte zum Ein- und Ausklappen<br />

beziehen sich übrigens ausschließlich<br />

auf die Punkte im Baum Editor und haben<br />

somit dieselbe Wirkung wie ein Klick auf<br />

die kleinen Dreiecke.<br />

Mit [Strg]+[F] rufen Sie die Suchfunktion<br />

auf 3 . Im neu geöffneten Bereich tippen<br />

Sie in das Feld am unteren Rand den Suchbegriff<br />

ein und starten dann mit einem<br />

Klick auf die Lupe den Suchvorgang. Die<br />

Fundstellen erscheinen in der Liste darüber.<br />

Sobald Sie eine von ihnen anwählen,<br />

springt die Darstellung zum entsprechenden<br />

Zweig.<br />

Ein Druck auf [E] öffnet einen Texteditor,<br />

in dem Sie die gerade aktive Beschriftung<br />

ändern, erweitern und umformatieren.<br />

Fassen Sie sich hier möglichst<br />

kurz, nur selten ist mehr als ein Stichwort<br />

nötig. Für längere ergänzende Texte,<br />

wie etwa das Rezept des Zitronenkuchens,<br />

stehen in VyM sogenannte Notizen<br />

bereit. Um eine solche anzulegen,<br />

markieren Sie zunächst den Zitronenkuchen<br />

und wählen Ansicht | Notizeditor<br />

(oder drücken [N]). Es erscheint jetzt der<br />

neue Bereich aus Abbildung 4 , zunächst<br />

mit einem grauen Hintergrund,<br />

der zeigt, dass noch keine Notiz existiert.<br />

Sobald Sie dorthin klicken und drauflosschreiben,<br />

schaltet VyM den Texteditor<br />

samt seiner übrigen Funktionen frei.<br />

Längere Texte importieren Sie über das<br />

Menü hinter Notiz | Importiere. Alle<br />

3 Mit der Suchfunktion spüren Sie auch<br />

in ausgedehnten Mindmaps schnell die<br />

gewünschten Zweige auf.<br />

32 www.linux-user.de<br />

05.2013


Mindmapping<br />

Schwerpunkt<br />

Zweigbeschriftungen mit einer Notiz tragen<br />

ein kleines Klemmbrettsymbol, über<br />

das Sie mit einem Mausklick den Notizeditor<br />

öffnen oder schließen.<br />

Eins nach dem anderen<br />

Um den Zitronenkuchen tatsächlich zu<br />

backen, müssen Sie zunächst die Zutaten<br />

kaufen, dann die richtigen Mengen abwiegen<br />

sowie zusammenmischen und zu<br />

guter Letzt den Teig im Ofen backen. Für<br />

solche Aufgabenfolgen können Sie eine<br />

To-do-Liste anlegen. Dazu erzeugen Sie<br />

zunächst für jeden Schritt einen eigenen<br />

Unterzweig. Im Beispiel hängen Sie dem<br />

Zitronenkuchen-Eintrag wie in Abbildung<br />

5 die Zweige Zutaten kaufen, Zutaten<br />

abwiegen und so weiter an.<br />

Diese Unterzweige wandeln Sie jetzt<br />

nacheinander in eine Aufgabe um. Dazu<br />

klicken Sie den ersten Zweig – im Beispiel<br />

Zutaten kaufen – mit der rechten<br />

Maustaste an. Wählen Sie dann aus dem<br />

Menü Aufgaben | Aufgabe einschalten/​<br />

ausschalten, oder drücken Sie die Tastenkombination<br />

[Umschalt]+[W]. Wiederholen<br />

Sie dies bei allen anderen Aufgaben.<br />

VyM platziert jetzt vor jedem der Zweige<br />

ein rotes Symbol, das darauf hinweist,<br />

dass es sich hier um eine unerledigte<br />

Aufgabe handelt. Sobald Sie eine Aufgabe<br />

erledigt haben, wählen Sie den entsprechenden<br />

Eintrag an und drücken<br />

dann so lange [W], bis ein grünes Symbol<br />

mit einem Haken erscheint. Die Bedeutung<br />

der übrigen Symbole listet die<br />

Tabelle Aufgabenstatus auf.<br />

Müssen Sie den Einkauf der Zutaten auf<br />

den nächsten Tag verschieben, dann lassen<br />

Sie die entsprechende Aufgabe so<br />

lange pausieren. Dazu klicken Sie das zugehörige<br />

Symbol mit der rechten Maustaste<br />

an, wählen Wiedervorlage in n Tagen<br />

und geben die Anzahl Tage ein. VyM<br />

zeigt jetzt ein Mond-Symbol an, der auf<br />

die Pause hinweist (siehe Tabelle Aufgabenstatus).<br />

Indem Sie das Symbol mit<br />

der rechten Maustaste anklicken und<br />

dann die Aufgabe aufwecken nehmen Sie<br />

den Vorgang wieder auf.<br />

Sämtliche in der Mindmap enthaltenen<br />

Aufgaben blenden Sie über Ansicht |<br />

Aufgaben Editor ein 6 . In der Tabelle<br />

finden Sie für jede Aufgabe auch eine<br />

Priorität. Je kleiner die Zahl, desto höher<br />

die Priorität der Aufgabe. Allerdings dürfen<br />

Sie die Priorität nicht selbst festlegen:<br />

VyM berechnet sie aus dem Status,<br />

dem Alter und dem Zeitraum, für den<br />

die Aufgabe schlafen soll. In der Vorgabe<br />

sortiert VyM die Tabelle absteigend nach<br />

der Priorität. Durch einen Klick auf eine<br />

der Spaltenbeschriftungen sortieren Sie<br />

die Aufgaben entsprechend um.<br />

Foliant<br />

Aus der Mindmap lässt sich schnell eine<br />

kleine animierte Präsentation erstellen.<br />

Dazu aktivieren Sie Ansicht | Folien Editor,<br />

woraufhin am rechten Fensterrand eine<br />

leere Liste erscheint. Markieren Sie in Ihrer<br />

Mindmap den Begriff, den Sie in Ihrem<br />

Vortrag als Erstes ansprechen möchten,<br />

und drücken Sie im Folien Editor am<br />

Aufgabenstatus<br />

Symbol<br />

Bedeutung<br />

Aufgabe noch nicht gestartet<br />

Aufgabe wird gerade bearbeitet<br />

Aufgabe erledigt<br />

Aufgabe noch nicht gestartet,<br />

aber pausiert<br />

Aufgabe in der Bearbeitung,<br />

jedoch pausiert<br />

Aufgabe noch nicht gestartet,<br />

aufgeweckt<br />

Aufgabe in der Bearbeitung,<br />

aufgeweckt<br />

4 Längere Texte erstellen und bearbeiten Sie mit<br />

dem Notizeditor von View your Mind.<br />

5 Die Aufgabe Zutaten kaufen wurde hier schon abgehakt. Bis zum Genuss<br />

des Backwerks stehen allerdings immer noch drei unerledigte Tasks an.<br />

05.2013 www.linux-user.de<br />

33


Schwerpunkt<br />

Mindmapping<br />

6 View your Mind teilt nicht nur jeder Aufgabe eine Priorität zu, sondern merkt sich unter<br />

anderem auch noch den aktuellen Status sowie das Alter des entsprechenden Tasks.<br />

unteren Rand den Knopf mit dem Fotoapparat.<br />

View your Mind erstellt jetzt<br />

eine neue Folie, die den gewählten Begriff<br />

in ihrer Mitte zeigt. Klicken Sie in der<br />

Mindmap den nächsten Begriff an und<br />

erstellen Sie über den Fotoapparat eine<br />

zweite Folie. Das Ergebnis sollte dann<br />

ähnlich wie in Abbildung 7 aussehen.<br />

Export<br />

Unter Map | Export geben Sie die Mindmap<br />

als Bilddatei in verschiedenen Formaten<br />

aus. Beim HTML-Export erzeugt<br />

VyM eine Webseite, die im oberen Teil<br />

die Mindmap als Bild enthält und darunter<br />

noch einmal die Inhalte in Form einer<br />

7 Hier will der Vortragende eingangs darauf<br />

hinweisen, dass es im Folgenden nur<br />

um Kuchen geht. Anschließend möchte er<br />

den Zitronenkuchen vorstellen.<br />

Bogenbildung<br />

Die VyM-Mindmaps bilden stets eine<br />

Baumstruktur. Ähnlich wie in den Ästen<br />

eines richtigen Baumes gibt es immer nur<br />

weitere Verzweigungen, aber keine Verbindungslinien,<br />

die wieder zurückführen.<br />

Möchten Sie dennoch zwei Zweige miteinander<br />

verbinden, markieren Sie dazu die<br />

Beschriftung des ersten Zweiges, drücken<br />

[L], halten dann [Umschalt] gedrückt, klicken<br />

mit der linken Maustaste auf die Beschriftung,<br />

halten die Maustaste gedrückt<br />

und ziehen dann mit der Maus eine Linie<br />

zum zweiten Zweig. Dort lassen Sie die<br />

Maustaste wieder los. Es erscheint jetzt<br />

eine gestrichelte Linie. Diese speziellen<br />

Verbindungsstücke bezeichnet VyM als<br />

XLinks. Klicken Sie die Linie an, dann erhalten<br />

Sie zwei Anfasser, über die Sie den<br />

Verlauf der Linie beeinflussen. In diesem<br />

Zustand können Sie den XLink auch mit<br />

[Entf] wieder löschen.<br />

8 Die von View your Mind exportierte HTML-Seite enthält neben der eigentlichen<br />

Mindmap in Form einer Grafik auch noch ein Inhaltsverzeichnis samt Gliederung.<br />

34 www.linux-user.de<br />

05.2013


Mindmapping<br />

Schwerpunkt<br />

Gliederung ausgibt 8 . Eine solche Gliederung<br />

erhalten Sie auch, wenn Sie Ihre<br />

Mindmap in eine Textdatei exportieren.<br />

Möchten Sie die Mindmap nur teilweise<br />

exportieren, markieren Sie zunächst<br />

den Zweig, der nicht in der Ausgabe landen<br />

soll, und drücken dann [H]. VyM stellt<br />

eine weiße Wolke vor den Begriff und<br />

schließt ihn mitsamt seinen Unterzweigen<br />

vom Export aus. Um diesen Zustand<br />

aufzuheben, drücken Sie erneut [H].<br />

Die Funktionen zum Speichern und<br />

Laden einer Mindmap finden Sie im<br />

Menü Map. Jede geöffnete Mindmap<br />

landet innerhalb des Hauptfensters auf<br />

einem eigenen Register.<br />

Fazit<br />

Haben Sie sich erst einmal in der etwas<br />

unübersichtlichen Benutzeroberfläche<br />

von View your Mind zurechtgefunden<br />

und die Tastenkürzel verinnerlicht, dann<br />

ordnen Sie mit dem kleinen Programm<br />

schnell und effektiv Ihre Gedanken, Ideen<br />

und Notizen. Den Einstieg erleichtern<br />

dabei einige Videos auf YouTube û.<br />

Eine ausführliche englische Anleitung<br />

zu View your Mind erreichen Sie über<br />

den Menüpunkt Hilfe | VYM Handbuch<br />

(pdf). Das Handbuch liefert zahlreiche<br />

Tipps und erklärt unter anderem auch,<br />

wie man Abläufe mit der eingebauten<br />

Skriptsprache automatisiert. (jlu) n<br />

Tipp<br />

Sie können VyM die Unterzweige alphabetisch<br />

auf- und absteigend sortieren lassen,<br />

indem Sie [O] respektive [Umschalt]+[O]<br />

drücken. Mit einem Klick auf eine der Folien<br />

springt View your Mind automatisch<br />

zum entsprechenden Begriff. Über die<br />

blauen Pfeile am unteren Rand verändern<br />

Sie die Reihenfolge der Folien, der Mülleimer<br />

löscht die gerade aktive Folie. Später<br />

bei der Präsentation springen Sie mit der<br />

Weitere Infos und<br />

interessante Links<br />

www. linux‐user. de/ qr/ 29119<br />

Leertaste zur jeweils nächsten Folie. An<br />

dieser Stelle endet jedoch die Unterstützung<br />

von VyM: Mangels eines echten Präsentationsmodus<br />

müssen Sie sogar während<br />

des Vortrages das komplette Hauptfenster<br />

geöffnet lassen. Alternativ erstellen<br />

Sie über Map | Exportieren | OpenOffice<br />

eine Präsentation für LibreOffice, die jedoch<br />

nicht die in VyM mühsam festgelegten<br />

Folien berücksichtigt.<br />

IT-Onlinetrainings<br />

Mit Experten lernen.<br />

powered by<br />

MEDIALINX<br />

IT-ACADEMY<br />

Sparen Sie Zeit und Kosten mit unseren<br />

praxisorientierten Onlinetrainings.<br />

Bestimmen Sie Ihr eigenes Lerntempo<br />

und nutzen Sie die flexible Zeiteinteilung.<br />

Effiziente BASH-Skripte<br />

mit Klaus Knopper,<br />

KNOPPER.NET<br />

199 €<br />

Konzentriertes BASH-Wissen<br />

vom Gründer der Knoppix-Live-<br />

Distribution.<br />

Lösen Sie komplexe Aufgaben mit<br />

schnellen Ad-hoc-Lösungen auf der<br />

Kommandozeile. Automatisieren<br />

Sie Ihre System administration mit<br />

Hilfe von Skripten.<br />

05.2013 www.linux-user.de<br />

35<br />

www.medialinx-academy.de


Schwerpunkt<br />

IHMC CmapTools<br />

Komplexe Konzepte <strong>visualisieren</strong> mit CmapTools<br />

Jenseits der Mindmap<br />

© Pelintra, sxc.hu<br />

Eine Grafik wirkt besser als<br />

ein wortreiches Traktat. Die<br />

CmapTools liefern Ihnen das<br />

Werkzeug zum Gestalten anschaulicher<br />

Konzeptkarten.<br />

Dr. Karl Sarnow<br />

Readme<br />

Mit den CmapTools überschreiten Sie die<br />

Grenzen herkömmlicher Mindmapper und<br />

betreten einen Kosmos miteinander verknüpfter<br />

Konzeptkarten, die vielgestaltiges<br />

Vernetzen erlauben. Auf diese Weise <strong>visualisieren</strong><br />

Sie komplexe Beziehungen.<br />

Wer Mindmaps kennt, kommt schnell<br />

auch mit Konzeptkarten zurecht. Beide<br />

liefern eine grafische Ansicht eines Netzwerks<br />

von Begriffen. Mindmaps beschränken<br />

sich jedoch meist auf lineare<br />

Hierarchien, in denen ein Begriff auf den<br />

nächsten verweist. Konzeptkarten (engl.:<br />

„Concept Maps“) erlauben dagegen ein<br />

sehr viel komplexeres Vernetzen und das<br />

Darstellen semantischer Netzwerke.<br />

Es gibt jedoch nur wenig Software, die<br />

diese Technik in digitaler Form bereitstellt.<br />

Die CmapTools des amerikanischen<br />

Institute for Human and Machine<br />

Cognition (IHMC) der Universität Florida<br />

fallen in diese Kategorie. Unter http://​<br />

cmap. ihmc. us steht die Java-Software<br />

gegen Registrierung kostenlosen zum<br />

Herunterladen bereit.<br />

Die in Java geschriebenen CmapTools<br />

laufen prinzipiell auf jeder Plattform, für<br />

Linux gibt es aber einen speziellen Installer.<br />

Um die Software einzurichten, rufen<br />

Sie die heruntergeladene Datei mit<br />

der Endung .bin in einem Terminal auf.<br />

Das Setup integriert die Software im<br />

Home-Verzeichnis im Unterordner IHMC_<br />

CmapTools. Das Verzeichnis MyCmaps enthält<br />

später die eigenen Konzeptkarten.<br />

Die Installation der aktuellen Version<br />

5.05.01 verlief im Test unter Ubuntu<br />

12.04.1 LTS auf einem 64-Bit-Rechner<br />

problemlos. Das Programm erkannte<br />

sogar auf Anhieb eine ältere, im System<br />

bereits installierte Version und ersetzte<br />

diese auf Nachfrage.<br />

Erste Schritte<br />

Beim ersten Aufruf starten Sie das Programm<br />

aus dem Verzeichnis ~/IHMC_<br />

CmapTools/bin. Es erscheint zunächst<br />

ein Logo mit dem Hinweis auf die Version,<br />

anschließend sehen Sie das Hauptfenster<br />

der Software 1 .<br />

Man erkennt die eigenen Cmaps als<br />

Miniaturbilder, darf aber auch auf weltweit<br />

erstellte Cmaps zugreifen. Umgekehrt<br />

kann man die eigenen Cmaps anderen<br />

Benutzern über die Cmap-Home-<br />

36 www.linux-user.de<br />

05.2013


IHMC CmapTools<br />

Schwerpunkt<br />

Der eigentliche Sinn der Cmap besteht<br />

nicht darin, die semantischen Komponenten<br />

zu sammeln. Viel wichtiger ist die<br />

Möglichkeit, die Beziehungen zwischen<br />

diesen aufzuzeigen und zu benennen.<br />

Abbildung 3 zeigt ein Beispiel für die<br />

Beziehungen zwischen den Objekten eines<br />

Sonnensystems im heliozentrischen<br />

Weltbild. Hier sieht man, dass Cmaps<br />

deutlich über Mindmaps hinausgehen,<br />

indem sie zirkulare Beziehungen und<br />

verzweigte Konzepte erlauben.<br />

Darüber hinaus gestattet das Benennen<br />

von Beziehungen ein Mehr an Informationen.<br />

Das ermöglicht erheblich<br />

komplexere Strukturen als in Mindmaps.<br />

Farbe, unterschiedliche Strichstärken<br />

und Art der Verbindungslinien ergeben<br />

eine Fülle von Varianten, das Konzept<br />

schlüssig zu gestalten.<br />

Die Beziehungen (in Form von Verbindungslinien)<br />

erstellen Sie dabei durch<br />

Anklicken der Objekte: Über dem angewählten<br />

Knoten erscheint ein Kasten mit<br />

zwei nach links und rechts weisenden<br />

Pfeilen. Klicken Sie darauf, und ziehen<br />

Sie den Mauszeiger dann zu einem anderen<br />

Knoten, so folgt der Beziehungspfeil<br />

und verbindet sich mit dem Zielobjekt,<br />

sobald Sie ihn an dessen Ankerpage<br />

zur Verfügung stellen. Um das Konzept<br />

zu verstehen, erstellen Sie am besten<br />

einfach über Datei | Neues Cmap<br />

oder [Strg]+[N] eine neue Karte. So erhalten<br />

Sie ein neues, leeres Arbeitsblatt.<br />

Über einen Doppelklick ins freie Blatt<br />

erzeugen Sie den ersten Knoten. Gleichzeitig<br />

taucht ein neues Dialogfenster auf,<br />

in dem Sie den Stil des Knotens, der Verbindungslinien<br />

und des Textes einstellen<br />

2. Der neue Knoten enthält vier Fragezeichen,<br />

um Sie darauf aufmerksam zu<br />

machen, dass an dieser Stelle noch Texteingabe<br />

erforderlich ist.<br />

Cmaps zusammenstellen<br />

Das Sonnensystem eignet sich dafür, ein<br />

entsprechendes Konzept zu veranschaulichen.<br />

Zunächst beschriften Sie den<br />

zentralen Knoten und fügen auf die gleiche<br />

Weise Knoten für die anderen Elemente<br />

des Sonnensystems (Sonne, Planeten,<br />

Monde, Kometen) hinzu. Haben<br />

Sie alle Knoten eingegeben, heben Sie<br />

die Knoten farblich hervor. Bearbeiten<br />

Sie dabei den zentralen Knoten als Letztes,<br />

weil die Software stets die letzte Einstellung<br />

immer als Standard für neue<br />

Knoten übernimmt.<br />

CmapTools 5.05.01<br />

LU/cmap/<br />

punkt loslassen. Auch hier erinnern wieder<br />

drei Fragezeichen daran, dass Sie die<br />

Beziehung benennen sollten.<br />

Es empfiehlt sich, die Arbeit in regelmäßigen<br />

Intervallen zu sichern. Die<br />

CmapTools erwiesen sich in unserem<br />

Test allerdings als außerordentlich<br />

standfest und stürzten nicht ein einziges<br />

Mal ab. Das Programm legt die <strong>Daten</strong><br />

ausschließlich im Verzeichnis My_Cmaps<br />

1 Das Startfenster der CmapTools zeigt die eigenen<br />

Konzept karten und ermöglicht weltweit den Zugriff auf<br />

die von anderen Benutzern veröffentlichten Dokumente.<br />

2 Ein Doppelklick ins freie Arbeitsblatt<br />

erzeugt einen noch leeren<br />

Knoten. Im Fenster Stile legen Sie<br />

die Attribute des Objektes fest.<br />

05.2013 www.linux-user.de<br />

37


Schwerpunkt<br />

IHMC CmapTools<br />

3 Das Sonnensystem als Concept Map. Diese Ansicht zeigt farbliche Markierungen und<br />

verschiedene Formen der Beziehungen in einem ersten Entwurf der Grafik.<br />

als ZIP-Datei ab. Diese dürfen Sie dann<br />

jedoch beliebig kopieren und bewegen.<br />

Modularisieren<br />

Im Konzept Sonnensystem bietet es sich<br />

nun an, dieses durch die Konzepte für<br />

Planeten und Monde (etwa mit deren<br />

Namen und Eigenschaften) zu ergänzen.<br />

Das würde die einfache Ansicht des Konzeptes<br />

aber überfordern. Stattdessen erläutern<br />

Sie die Planeten und Monde in<br />

einer eigenen Cmap 4 .<br />

Die Verbindung zwischen den beiden<br />

Konzepten erstellen Sie, indem Sie einen<br />

Knoten anwählen und dann mit einem<br />

Rechtsklick darauf das Kontextmenü öffnen.<br />

Dort findet sich der Eintrag Quellinks<br />

Einfügen & Bearbeiten, über den Sie<br />

eine weitere Cmap, ein Bild oder eine<br />

Webseite als Link hinzufügen.<br />

Im vorliegenden Fall wählen Sie die<br />

Cmap Planeten und sehen in der ursprünglichen<br />

Karte ein kleines Icon. Klicken<br />

Sie darauf, erscheint die damit verknüpfte<br />

Karte Planeten. Fügen Sie in dieser<br />

noch den Knoten Sonnensystem als<br />

Link zur Cmap ein, wechseln Sie mit einem<br />

Klick zwischen den Konzepten.<br />

Alternativ stellen Sie eine direkte Verbindung<br />

zwischen zwei Cmaps her. Dazu<br />

ziehen Sie eine Beziehung zwischen den<br />

gleichnamigen Knoten der beiden geöffneten<br />

Konzepte. Das schadet allerdings<br />

oft der Optik: Die Verbindung erscheint<br />

als neuer Knoten im Bild und würde im<br />

Beispiel zu einer Beziehung führen, welche<br />

die existierenden kreuzt. In der Praxis<br />

erweist sich das als unübersichtlich.<br />

Ergebnisse weitergeben<br />

Um die entwickelten Konzepte weiterzugeben,<br />

exportieren Sie diese als Bild<br />

oder Webseite. Zum Einbinden nicht<br />

modularer Konzepte in Druckwerke genügen<br />

in der Regel die Exportformate<br />

JPEG, SVG, Postscript und PDF.<br />

Der Autor<br />

4 Die Planeten des Sonnensystems zusammen mit dem Kleinstplaneten Pluto bilden<br />

eine eigene Cmap. Diese ließe sich um weitere Eigenschaften der Planeten ergänzen.<br />

Karl Sarnow ist seit den Tagen<br />

des TRS-80 Model 1 ein<br />

Fan des eigenen Computers.<br />

Der Lehrer für Mathematik,<br />

Physik und Informatik entwarf früher Vernetzungskonzepte<br />

unter Linux sowie entsprechende<br />

Anwendungen für Schulen<br />

und Unterricht. Darüber hat er auch ein<br />

Buch geschrieben. Seit seiner Pensionierung<br />

widmet er sich seinen Hobbys Fotografie,<br />

Reisen und Astronomie.<br />

38 www.linux-user.de<br />

05.2013


IHMC CmapTools<br />

Schwerpunkt<br />

5 Der HTML-Export enthält die Cmap Sonnensystem als JPEG-Datei inklusive eines Links<br />

zum Konzept Planeten, das zusätzliche <strong>Daten</strong> enthält, die diese Cmap überladen würde.<br />

Für modularisierte Konzepte, wie in unserem<br />

Beispiel, eignen sich HTML-Seiten<br />

besser: Beim Export erstellt die Software<br />

gleich den Link zum nächsten Konzeptmodul<br />

5 . Dessen Webseite müssen Sie<br />

allerdings separat exportieren. Klicken<br />

Sie aber auf den Link, öffnet sich die<br />

Webseite des zugehörigen Konzeptes.<br />

Darüber hinaus laden die CmapTools<br />

dazu ein, die eigene Arbeit mit anderen<br />

zu teilen. Dazu bietet das IHMC die Möglichkeit,<br />

die Konzepte online bereitzustellen.<br />

Unter dem Menüpunkt Zusammenarbeiten<br />

| Cmap zu Pool hinzufügen … laden<br />

Sie die eigenen <strong>Daten</strong> hoch.<br />

Entsprechend greifen Sie unter Cmaps<br />

in Standorte oder Suche auf die freigegebenen<br />

Dateien anderer Benutzer zu 6 .<br />

Wie in Google Drive arbeiten Sie bei Bedarf<br />

mit anderen an einer Cmap.<br />

Bei den CmapTools handelt es sich um<br />

ein ausgesprochen leistungsfähiges<br />

Werkzeug zum Visualisieren von Konzepten.<br />

Dabei erweist sich das Erzeugen<br />

von Cmaps als ausgesprochen intuitiv.<br />

Topologien lassen sich jederzeit umordnen,<br />

ohne dass die Beziehungen verloren<br />

gehen – allerdings bedürfen diese<br />

dann einer Korrektur. Fällt die Struktur<br />

zu unübersichtlich aus, hilft Modularisierung.<br />

Die Möglichkeiten zum Export runden<br />

das Potenzial der Software ab und<br />

ermöglichen den Einsatz von Concept<br />

Maps in vielerlei Formen. (agr) n<br />

Fazit<br />

6 Viele Benutzer stellen ihre Konzeptkarten online als Inspiration bereit.<br />

05.2013 www.linux-user.de<br />

39


1Gbit/s<br />

Port


Praxis<br />

GfxTablet<br />

Android-Geräte als Grafiktablett nutzen<br />

Freihand<br />

Benötigen Sie nur gelegentlich<br />

ein Grafiktablett, müssen<br />

Sie nicht extra eines kaufen:<br />

Mithilfe der passenden App<br />

funktionieren Sie stattdessen<br />

einfach ein Smartphone oder<br />

Tablet mit Android um.<br />

Patrick Meyhöfer<br />

Grafiktabletts eignen sich für alle kreativen<br />

Köpfe als probates Mittel, direkt<br />

auf dem PC zu zeichnen. Ohne die Skizzen<br />

erst mit einem Stift auf Papier zu erstellen<br />

und anschließend zu digitalisieren,<br />

erscheinen sie Strich für Strich im<br />

Zeichenprogramm. Solche Hardware besitzt<br />

aber nicht jeder. Jedoch haben immer<br />

mehr Anwender neben einem PC<br />

auch ein Android-Tablet zu Hause.<br />

Inzwischen bieten einige Hersteller,<br />

etwa Samsung, diese mit einem Eingabestift<br />

aus, der zusätzlich verschiedene<br />

Druckstärken unterstützt. Bei diesen guten<br />

Voraussetzungen liegt der Gedanke<br />

nahe, das Gerät zu einem Grafiktablett<br />

umzufunktionieren. Diese Überlegung<br />

motivierte den Entwickler Richard Hirner,<br />

der die Idee auch gleich in funktionierende<br />

freie Software umsetzte.<br />

Um GfxTablet auf dem PC zu nutzen, benötigen<br />

Sie zwei Komponenten: Zum einen<br />

müssen Sie die kostenlose Android-<br />

App GfxTablet û aus dem Google Play<br />

Store auf dem Smartphone oder Tablet<br />

installieren, was mindestens Android 4.0<br />

„Ice Cream Sandwich“ voraussetzt. In der<br />

App fertigen Sie Ihre Skizzen an. Zum<br />

ande ren gilt es, auf dem PC einen Treiber<br />

einzurichten, der die Eingabedaten des<br />

Android-Gerätes empfängt und an das<br />

gewünschte Grafik programm übermittelt.<br />

Voraussetzungen<br />

Einen solchen Treiber finden Sie auf der<br />

Webseite des GfxTablet-Projektes û, zusammen<br />

mit allen notwendigen Informationen<br />

und Downloads, um direkt loszulegen.<br />

Als Erstes sollten Sie prüfen, ob<br />

Readme<br />

Für den gelegentlichen Einsatz lohnt die Anschaffung<br />

eines Grafiktabletts kaum. Mit der<br />

Android-App GfxTablet verwandeln Sie ein<br />

Tablet oder Smartphone schnell in ein einfaches<br />

Eingabegerät, das ausgezeichnet mit<br />

Gimp zusammenarbeitet.<br />

1 Hat das Einrichten des Eingabetreibers funktioniert, dann zeigt das Befehlszeilenkommando<br />

xinput list den Eintrag Network Tablet an.<br />

42 www.linux-user.de<br />

05.2013


GfxTablet<br />

Praxis<br />

Auflösung auf dem Mobilgerät direkt<br />

auf die des Desktop-Bildschirms.<br />

Nach der Installation öffnen Sie die<br />

App und wechseln als Erstes in den<br />

Menüpunkt Settings | Networking | Network<br />

host. Dort geben Sie die IP-Adresse<br />

des Desktop-Rechners ein, auf dem Sie<br />

den Eingabetreiber installiert haben.<br />

Am einfachsten ermitteln Sie die IP-<br />

Adresse lokal mit dem Befehl ifconfig<br />

oder in der Übersicht aller angemeldeten<br />

Netzwerkgeräte an Ihrem Router.<br />

Sofern Sie ein Tablet mit Eingabestift<br />

besitzen, sollten Sie im Abschnitt Drawing<br />

die Option Sense stylus only aktivieren.<br />

Das unterbindet ungewollte Zeichnungen<br />

durch die Handflächen, da die<br />

App dann nur auf Eingaben durch den<br />

Eingabestift reagiert.<br />

Nach dem Herstellen der Verbindung<br />

mit dem PC klicken Sie oben links in der<br />

App auf das Icon Settings, um den Einstellungsmodus<br />

zu verlassen. Jetzt können<br />

Sie das Tablet als Eingabegerät für<br />

verschiedene Linux-Programme nutzen.<br />

In Grafikprogrammen wie etwa Gimp<br />

müssen Sie dazu lediglich die entsprechenden<br />

Einstellungen treffen. Zu diesem<br />

Zweck stellen Sie in Gimp über das<br />

Menü Bearbeiten | Eingabegeräte den<br />

Eingabe-Modus auf Bildschirm 2 .<br />

Nun können Sie direkt mit dem Zeichnen<br />

beginnen. Im Test funktionierte das<br />

Übertragen der Bildsignale ohne merkbare<br />

Verzögerung. Der Eingabestift ermöglicht,<br />

je nach Auslegung des Tablets<br />

bis zu 10 000 unterschiedliche Druckalle<br />

erforderlichen Voraussetzungen vorliegen.<br />

So setzt die Software auf dem PC<br />

ein aktuelles Linux-System mit dem Kernel-Modul<br />

uinput voraus. Die aktuellen<br />

Versionen aller gängigen Distributionen,<br />

wie Ubuntu 12.10 oder Fedora 18, bringen<br />

es aber in der Regel bereits mit.<br />

Der Eingabetreiber û für Linux liegt<br />

bereits als Binärdatei networktablet vor.<br />

Sie laden diese herunter und gewähren<br />

ihr Ausführrechte, entweder auf der<br />

Kommandozeile mit dem Befehl chmod<br />

a+x networktablet oder über einen<br />

Datei manager. Danach führen Sie die<br />

Datei mit Root-Rechten im Terminal aus.<br />

Hat alles funktioniert, listet das Kommando<br />

xinput list unter anderem ein<br />

Network Tablet 1 . Damit ist die Einrichtung<br />

auf der PC-Seite abgeschlossen.<br />

Um eine Verbindung zwischen dem<br />

Desktop-Rechner und dem Smartphone<br />

respektive Tablet herzustellen, müssen<br />

sich die Geräte im selben Netzwerk befinden.<br />

Melden sich beide über denselben<br />

Router am WLAN an, ist das jedoch<br />

normalerweise ohnehin der Fall.<br />

Es empfiehlt sich, vorab die Eingabetreiber<br />

zu installieren und erst danach<br />

die Android-App auf dem Tablet zu öffnen,<br />

um die notwendigen Einstellungen<br />

vorzunehmen: Nun skaliert die App die<br />

© Sergey Nivens, 123RF<br />

2 Verwenden Sie das Tablet als Eingabegerät<br />

in Gimp, müssen Sie den Eingabe-<br />

Modus auf Bildschirm umstellen.<br />

empfindlichkeitsstufen zu verwenden,<br />

so etwa auf den beliebten Galaxy-Note-<br />

Geräten. Prinzipiell klappt aber auch die<br />

Eingabe per Finger problemlos. Allerdings<br />

ist dieser Weg weniger komfortabel<br />

und eignet sich nicht für professionelle<br />

Ansprüche an das Ergebnis.<br />

Möchten Sie sich vorab ein genaueres<br />

Bild von den Fähigkeiten von GfxTablet<br />

machen, sehen Sie sich das YouTube-<br />

Video der Entwickler an, das alle Funktionen<br />

eingängig präsentiert û.<br />

Fazit<br />

GfxTablet<br />

LU/gfxtablet/<br />

Zwar kann GfxTablet kein hochwertiges,<br />

professionell eingesetztes Grafiktablett<br />

der renommierten Hersteller ersetzen,<br />

doch bietet das Programm eine hilfreiche<br />

und gut funktionierende Alternative.<br />

Da sowohl die Android-App als auch die<br />

Eingabetreiber als Open-Source-Software<br />

unter der MIT-Lizenz stehen, könnte<br />

die Anwendung in absehbarer Zeit<br />

neben Linux auch noch andere Betriebssysteme<br />

unterstützen. (tle) n<br />

Weitere Infos und<br />

interessante Links<br />

www. linux‐user. de/ qr/28927<br />

05.2013 www.linux-user.de<br />

43


Praxis<br />

JonDonym<br />

Anonym im Internet surfen mit JonDonym<br />

Spuren<br />

verwischen<br />

Mit JonDonym surfen Sie ohne umständliche<br />

Konfiguration inkognito im Internet – bei Bedarf<br />

Das Internet bietet viele Chancen, birgt<br />

jedoch auch erhebliche Gefahren und<br />

Risiken. Insbesondere die in einigen<br />

Staaten immer lauter werdenden Forderungen<br />

nach Zensur und Überwachung<br />

sowie sich häufende Angriffe von Crackern<br />

im Netz sorgen dafür, dass anonymes<br />

Surfen sinnvoll erscheint. Doch um<br />

eine Distribution sowie Browser und<br />

Applikationen gegen Schnüffler abzusichern,<br />

braucht es detaillierte Kenntnisse<br />

von Netzwerk und Betriebssystem. Viel<br />

einfacher und schneller gelangen Sie<br />

zum Ziel mit JonDonym, einem Anonymisierungsdienst<br />

gegen das Ausspähen<br />

Ihrer Surfgewohnheiten und <strong>Daten</strong>.<br />

sogar aus einem Live-System heraus. Erik Bärwaldt<br />

Der Dienst<br />

JonDonym steht in unterschiedlichen<br />

Varianten als quelloffene Software zum<br />

Download bereit: Zum einen als komplette<br />

Live-Distribution auf Basis von<br />

Readme<br />

Schnüffler und Spitzel haben Hochkonjunktur<br />

im Internet. Mit Anonymisierungsdiensten<br />

erschweren Sie solchen Zeitgenossen<br />

massiv das Handwerk. Aber oft erweist<br />

sich die Konfiguration der nützlichen Helfer<br />

als umständlich – nicht so bei JonDonym.<br />

44 www.linux-user.de<br />

05.2013


JonDonym<br />

Praxis<br />

Debian , wobei Sie die Wahl zwischen<br />

CD- oder DVD-Image haben. Zum anderen<br />

besteht die Möglichkeit, die persönliche<br />

Linux-Installation durch einen<br />

JonDo-Client und ein angepasstes Profil<br />

für Firefox namens JonDoFox abzusichern.<br />

Zudem stehen noch eine Konsolenvariante<br />

der Software sowie mit dem<br />

JonDo Browser eine modifizierte Version<br />

des Browsers Firefox û bereit.<br />

Die Funktionsweise der Software<br />

gleicht sich dabei in jedem Fall: Der Internetzugang<br />

läuft durch einen lokalen<br />

Proxy, der die <strong>Daten</strong> verschlüsselt und<br />

mit einer anonymisierten IP-Adresse<br />

über eine Kaskade von Mix-Servern leitet.<br />

Diese stehen in verschiedenen Ländern<br />

und befinden sich in der Obhut von<br />

unterschiedlichen, unabhängigen Anbietern.<br />

Sie dienen dazu, die Spur der<br />

Pakete zu verschleiern, sodass Angriffe<br />

oder das Mitschneiden des <strong>Daten</strong>verkehrs<br />

wirkungslos bleiben.<br />

Der JonDonym-Dienst geht auf die<br />

JonDos GmbH zurück, die in Kooperation<br />

mit der TU Dresden und der Universität<br />

Regensburg nicht nur die Software<br />

zum Betrieb des Dienstes entwickelt und<br />

pflegt, sondern zusätzlich auch das Abrechnen<br />

zwischen den Anwendern der<br />

Premium-Dienste und den Betreibern<br />

der Server koordiniert.<br />

Neben der kostenfreien Variante, deren<br />

<strong>Daten</strong>durchsatz und Funktionsumfang<br />

beschränkt ist, steht ein kostenpflichtiger<br />

Dienst bereit, der unterschiedliche<br />

Optionen und Kontingente<br />

für die <strong>Daten</strong> umfasst<br />

û. Die Firma<br />

kümmert sich zudem<br />

um das Zertifizieren<br />

der einzelnen Mix-<br />

Betreiber.<br />

JonDo Live 0.9.40 (32 Bit)<br />

bootfähig auf Heft-DVD<br />

beiden Archive entpacken Sie mit den<br />

Befehlen tar ‐xjvf jondo_linux.tar.<br />

bz2 für den JonDo-Client und tar ‐xjvf<br />

jondofox_linux_de.tar.bz2 für das<br />

JonDoFox-Profil.<br />

Anschließend öffnen Sie ein Root-Terminal,<br />

da Sie zur Installation des Clients<br />

administrative Rechte benötigen. Dann<br />

wechseln Sie in das neu entstandene<br />

Unterverzeichnis jondo_linux und führen<br />

das Einrichtungsskript mit dem Befehl<br />

./ install_jondo aus. Die Routine<br />

konfiguriert die Software und legt einen<br />

Starter Jondo im Menü Internet an.<br />

Um das neue Profil von Firefox zu in s-<br />

tallieren, wechseln Sie anschließend wieder<br />

in ein Terminal. Mit dem Entpacken<br />

© Ivan Mikhaylov, 123RF<br />

Los geht’s<br />

Um den Dienst auf<br />

einem laufenden System<br />

einzurichten, benötigen<br />

Sie neben<br />

dem Client das<br />

Firefox-Profil JonDo-<br />

Fox; beides erhalten<br />

Sie im Netz û. Die<br />

1 Das Startfenster von JonDonym zeigt Ihnen die wichtigsten<br />

Parameter der Software auf einen Blick an.<br />

05.2013 www.linux-user.de<br />

45


Praxis<br />

JonDonym<br />

2 Bei Bedarf stellen Sie JonDonym sehr<br />

detailliert auf Ihre Anforderungen ein.<br />

des Archivs jondofox_linux_de.tar.<br />

bz2 hat die Routine ein Unterverzeichnis<br />

profile angelegt. Im übergeordneten<br />

Verzeichnis befindet sich das Installationsskript<br />

install_linux.sh, das Sie<br />

ohne Administratorrechte über<br />

./ install_linux.sh aktivieren. Beachten<br />

Sie, dass während der Installation<br />

Firefox nicht laufen darf.<br />

Nach Abschluss der Installation aktivieren<br />

Sie zunächst den JonDo-Dienst<br />

aus dem Menü Internet. Die etwas<br />

schleppend startende Java-Software<br />

führt Sie nun in wenigen Schritten mithilfe<br />

eines grafischen Menüs durch die<br />

Konfiguration. Anschließend baut der<br />

Rechner eine Verbindung zu einer Kaskade<br />

von Mix-Servern auf, wobei diese<br />

kostenlose Variante des Dienstes mit einer<br />

relativ bescheidenen Geschwindigkeit<br />

von 30 bis 50 kbit/​s arbeitet 1 .<br />

Konfiguration<br />

JonDo bietet eine Fülle von Einstellungen<br />

und Möglichkeiten zum Überwachen<br />

des anonymisierten Zugangs ins<br />

Internet, die Sie durch einen Klick auf die<br />

Schaltfläche Config… oben rechts im<br />

Programmfenster erreichen. Im folgenden<br />

Dialog zeigt die Software oben mittig<br />

unterschiedliche internationale Mix-<br />

Kaskaden. Die in der Liste stehenden<br />

Kaskaden von jeweils zwei Mix-Servern<br />

dürfen Sie kostenfrei nutzen.<br />

Arbeitet die voreingestellte Kaskade<br />

aufgrund zu vieler Nutzer zu langsam,<br />

oder erreichen Sie die Mix-Server nicht,<br />

wählen Sie eine andere Kaskade. Die Anzahl<br />

der momentanen Nutzer sowie der<br />

Anonymisierungsgrad und Geschwindigkeits-<br />

sowie Zugriffsdaten sehen Sie<br />

rechts im Fenster neben der Serverliste.<br />

Weiter unten in der Liste tauchen dreifache<br />

Mix-Kaskaden auf. Diese weisen<br />

eine deutlich höhere Transfergeschwindigkeit<br />

auf und – sofern viele Anwender<br />

gerade diese Kaskade nutzen – einen<br />

höheren Anonymisierungsgrad. Die dreifachen<br />

Kaskaden stehen jedoch nur zahlenden<br />

Kunden zur Verfügung.<br />

Im unteren Teil des Programmfensters<br />

zeigt die Software detaillierte Informationen<br />

zu den einzelnen Kaskaden an,<br />

sodass Sie auf einen Blick erkennen,<br />

über welche Server im internationalen<br />

Umfeld die <strong>Daten</strong> laufen 2 .<br />

Weitere Parameter betreffen das Interface,<br />

Netzwerkports und ‐protokolle, die<br />

Bezahldienste sowie die Zertifikate. Diese<br />

finden Sie links im Programmfenster<br />

in der Listenansicht unter den Einträgen<br />

User interface, Payment, Network und<br />

Servi ces. Insbesondere dann, wenn eine<br />

Firewall Ports sperrt, die der JonDonym-<br />

Dienst benötigt, nehmen Sie hier die nötigen<br />

Modifikationen vor.<br />

Nach dem erfolgreichen Aufbau einer<br />

Verbindung zu den JonDonym-Servern<br />

starten Sie Firefox, wobei dieser vor Öffnen<br />

des Fensters das zu verwendende<br />

Profil abfragt 3 .<br />

Nach Auswahl des JonDoFox-Profils<br />

öffnet Firefox den Browser, allerdings<br />

weist dieser einige ungewöhnliche<br />

Merkmale auf: So findet sich eine Lesezeichen-Symbolleiste<br />

am oberen Rand<br />

des Fensters, die einige nützliche Links<br />

zu kostenfreien E-Mail-, Filesharing- und<br />

Download-Diensten bietet, wobei die<br />

Entwickler diese unter sicherheitsrelevanten<br />

Aspekten ausgewählt haben.<br />

Das Lesezeichen Anonymität testen<br />

ermög licht es zudem, wichtige Parameter<br />

des Browsers zu prüfen. Dieser sollte<br />

jetzt ausschließlich über den JonDo-<br />

Client arbeiten. Ob Sie anonymisiert im<br />

Internet unterwegs sind, zeigt ein farbiger<br />

Balken an: Grüne Balken signalisieren<br />

einen hohen Anonymisierungs- und<br />

Sicherheitsgrad, während rote Balken<br />

auf Verbesserungsbedarf hinweisen 4 .<br />

Parallel hat das Setup verschiedene<br />

Addons in Firefox installiert. So finden<br />

Sie Adblock Plus, HTTPS-Everywhere,<br />

Cookie Monster und NoScript bereits<br />

vorkonfiguriert. Mit UnPlug steht zudem<br />

eine Erweiterung bereit, die eingebettete<br />

Videodateien lokalisiert und diese<br />

zum Download anbietet.<br />

Das Addon NoScript konfigurierten<br />

die Entwickler sehr restriktiv, sodass der<br />

Browser auf vielen – vor allem Java- und<br />

Multimedia-lastigen – Internetseiten Inhalte<br />

nicht auf Anhieb wiedergibt. Da<br />

46 www.linux-user.de<br />

05.2013


JonDonym<br />

Praxis<br />

Es stehen mehrere Volumen- und Zeitmodelle<br />

bereit, die allesamt mit deutlich<br />

höherer Bandbreite aufwarten und eine<br />

bessere Verfügbarkeit garantieren û.<br />

Die Optionen zum Bezahlen gestalten<br />

sich vielfältig, wobei alle unter der Prämisse<br />

anonymer Abwicklung stehen.<br />

3 Firefox bietet nach der Installation von<br />

JonDonym zwei Profile für das Browsen an.<br />

NoScript in diesen Fällen jedoch stets<br />

Platzhalter anzeigt, haben Sie die Möglichkeit,<br />

Inhalte temporär freizuschalten.<br />

In den Einstellungen von Firefox nahmen<br />

die JonDoFox-Entwickler auch einige<br />

Modifikationen vor, die der Sicherheit<br />

dienen: So deaktivierten sie das Cache-<br />

Management von Firefox und stellten<br />

den Browser so ein, dass er beim Beenden<br />

alle <strong>Daten</strong> löscht, die Rückschlüsse<br />

auf das Surfverhalten zulassen.<br />

Kostenpflichtig<br />

Da JonDo in der kostenlosen Variante<br />

nur mit geringer Bandbreite arbeitet,<br />

empfiehlt es sich, bei größeren Transfers<br />

einen kostenpflichtigen Account einzurichten.<br />

Auf diese Weise unterstützen Sie<br />

zusätzlich die Arbeit des Projektes.<br />

Live-System<br />

Neben der Software zur dauerhaften<br />

Insta llation auf Linux-Systemen bietet<br />

die JonDos GmbH eine Live-DVD sowie<br />

für ältere Rechner eine Live-CD an. Beide<br />

basieren auf Debian und kommen mit<br />

einer komplett vorkonfigurierten sicheren<br />

Kommunikationsumgebung. Hier<br />

finden sich neben JonDo und JonDoFox<br />

auch noch ein Onion-Router sowie der<br />

Remailer Mixmaster.<br />

Die Live-DVD fällt mit lediglich<br />

1 GByte Umfang eher schlank aus. Bereits<br />

das Startmenü zeigt, dass sich die<br />

Distribution mit älteren Maschinen verträgt:<br />

Sie haben die Auswahl zwischen<br />

einem 486er- und einem 686er-Kernel,<br />

wobei Letzterer ausschließlich in einer<br />

PAE-Variante bereitsteht.<br />

Nach dem gewohnt behäbigen Start<br />

vom optischen <strong>Daten</strong>träger erscheint<br />

ein Desktop auf Basis von XFCE 4.8 mit<br />

einem konventionellen Auswahlmenü in<br />

einem Panel am unteren Rand des Desktops.<br />

Auf der Arbeitsfläche befinden sich<br />

bereits Symbole für einige wichtige<br />

Kommunikationsprogramme: Neben<br />

JonDo und dem JonDoBrowser finden<br />

Sie hier auch Mixmaster, den Mailclient<br />

Icedove, den Instant-Messenger Pidgin<br />

sowie die Management-GUI Vidalia für<br />

das Tor-Netz.<br />

In den Menüs haben die Entwickler<br />

Programme integriert, die ebenfalls auf<br />

die eine oder andere Weise ein Mehr an<br />

Sicherheit versprechen: So finden sich<br />

im Untermenü Zubehör neben Truecrypt<br />

und Unison zusätzlich Figaro’s Password<br />

Manager 2, KeePassX sowie der GNU Privacy<br />

Assistant. Im Untermenü System lagern<br />

darüber hinaus Applikationen zum<br />

Verschlüsseln von <strong>Daten</strong>trägern und Partitionen:<br />

Neben Cryptkeeper ist hier vor<br />

allem UsbCryptFormat zu nennen, das<br />

sich hinter dem Eintrag Externe <strong>Daten</strong>träger<br />

verschlüsseln verbirgt.<br />

Einfach auf LinuX umstEigEn!<br />

DigiSub-Mini * : 2 digitale Ausgaben EasyLinux!<br />

5€<br />

ihRE VoRtEiLE<br />

❱<br />

FÜR 2 AUSGABEN<br />

EasyLinuX ist idEaL füR WindoWs-umstEigER<br />

❱ mit schRitt-füR-schRitt-anLEitungEn Zum ERfoLg<br />

❱<br />

2X tEstEn ohnE Risiko, das digisuB-mini<br />

ist JEdERZEit kündBaR!<br />

❱ nutZBaR auf notEBook und Pc,<br />

taBLEt odER smaRtPhonE!<br />

JEtZt gLEich BEstELLEn!<br />

05.2013 www.linux-user.de<br />

47<br />

n tel.: 07131 / 2707 274 n fax: 07131 / 2707 78 601 n uRL: www.easylinux.de/abo n E-mail: abo@easylinux.de<br />

*geht ohne Kündigung in ein digitales Jahresabo mit 4 Ausgaben pro Jahr über und ist jederzeit kündbar!


Praxis<br />

JonDonym<br />

Weitere Infos und<br />

interessante Links<br />

www. linux‐user. de/ qr/ 28933<br />

Im Menü System wie auch in Zubehör finden<br />

Sie außerdem das Programm MAT<br />

(„Metadata Anonymisation Toolkit“), das<br />

aus einer Vielzahl von Dateiformaten<br />

Metadaten entfernt, die vielfältige Informationen<br />

enthalten.<br />

Genauso wie bei der JonDo-Installation<br />

in einem laufenden System müssen<br />

Sie, um mit der Live-Distribution anonym<br />

im Web zu surfen, zunächst den JonDo-<br />

Client durch einen Klick auf den entsprechenden<br />

Eintrag auf dem Desktop starten.<br />

Danach aktivieren Sie den JonDo-<br />

Browser, der aus einem vorkonfigurierten<br />

Firefox 17.0.2 besteht. Der JonDo-<br />

Client selbst ist bereits fertig konfiguriert<br />

und bedarf in der Live-Variante keiner<br />

weiteren Einstellungen.<br />

Alternativ surfen Sie aus der Live-Variante<br />

heraus über das Tor-Netzwerk anonym<br />

im Internet. Dazu klicken Sie lediglich<br />

auf das Icon Vidalia (Tor GUI) auf<br />

dem Desktop. Vidalia startet sodann die<br />

grafische Oberfläche und stellt automatisch<br />

eine Verbindung zum Tor-Netzwerk<br />

her, sodass keiner Konfiguration anfällt.<br />

Beachten Sie, dass Sie bei ausgeschaltetem<br />

JonDo-Client nur dann über das<br />

Tor-Netzwerk im Internet surfen können,<br />

wenn Sie im Browser unten rechts den<br />

voreingestellten Proxy modifizieren.<br />

4 Alles im grünen Bereich: Sie sind dank JonDonym nun anonym im Netz unterwegs.<br />

Dazu klicken Sie auf den Eintrag mit der<br />

linken Maustaste und aktivieren im Kontextmenü<br />

den Radio-Button Tor.<br />

Damit das Anwendungsspektrum der<br />

Live-Distribution nicht nur auf das anonyme<br />

Surfen im Internet und den Einsatz<br />

entsprechender Online-Dienste beschränkt<br />

bleibt, haben die Entwickler<br />

viele allseits bekannte Applikationen ins<br />

System integriert: So befinden sich auch<br />

LibreOffice, Gimp und Calibre mit an<br />

Bord, sodass sich übliche Büroarbeiten<br />

abwickeln lassen. Für kreative Köpfe sind<br />

zudem ImageMagick, Xsane und Evince<br />

eingepflegt; im Untermenü Multimedia<br />

finden Sie als Mediaplayer Parole.<br />

Eine Installation der Distribution auf<br />

der Festplatte sieht das JonDonym-Konzept<br />

zwar nicht vor, doch Sie dürfen persönliche<br />

<strong>Daten</strong> auf einem USB-Stick sichern.<br />

Zudem existiert die Möglichkeit –<br />

falls Sie den Einsatz von JonDonym auf<br />

einem System ohne optisches Laufwerk<br />

planen – einen USB-Stick auch als Bootmedium<br />

zu nutzen. Auf der Website finden<br />

Sie detaillierte Anweisungen für das<br />

Anfertigen eines <strong>Daten</strong>trägers û.<br />

Fazit<br />

JonDonym ermöglicht anonymes Surfen<br />

im Internet ohne größere manuelle Installation<br />

und Konfiguration. Sorgfältig<br />

vorbereitete Optionen sorgen für einen<br />

lückenlosen Schutz – solange Sie nicht<br />

später etwas von Hand ändern.<br />

Die Live-CD oder ‐DVD sowie der etwas<br />

Vorarbeit erfordernde bootfähige<br />

USB-Stick bieten eine hervorragende<br />

Möglichkeit, fremde Computer ohne<br />

jegliche Modifikation als vollwertigen<br />

Rechner für das anonyme Surfen zu nutzen.<br />

Mithilfe des JonDo-Clients und des<br />

passenden Browsers richten Sie einen<br />

eigenen Rechner in gleicher Weise ein.<br />

Die recht geringe Transfergeschwindigkeit<br />

der kostenfreien Mix-Kaskaden<br />

trübt den ansonsten durchweg positiven<br />

Eindruck. Da der Dienstleister jedoch<br />

viele <strong>Daten</strong>kontingent-, Laufzeit- und<br />

Bezahlmodelle anbietet, findet sich für<br />

praktisch jeden Einsatzzweck mit hohem<br />

Geschwindigkeitsbedarf die passende<br />

kostenpflichtige Option. (agr) n<br />

48 www.linux-user.de<br />

05.2013


LaTeX und externe <strong>Daten</strong>quellen<br />

Praxis<br />

LaTeX mit <strong>Daten</strong> aus<br />

externen Quellen anreichern<br />

Angefüttert<br />

© Alitaylor, sxc.hu<br />

Strukturierte <strong>Daten</strong>sätze wie beispielsweise<br />

Adressen und Produktinformationen<br />

liegen in der Regel in <strong>Daten</strong>banken.<br />

Zum Verarbeiten liest eine Applikation<br />

die <strong>Daten</strong>sätze zunächst aus und setzt<br />

danach beispielsweise die Inhalte der<br />

einzelnen Felder an die jeweilige Position<br />

in einem Textbaustein ein. Auf diese<br />

Weise entstehen Serienbriefe, Terminpläne,<br />

Namensschilder, Teilnehmerlisten<br />

und Veranstaltungsprogramme.<br />

Listing 1<br />

01 ...<br />

02 \Fields{\Vorname\Name\<br />

Funktion}<br />

03 ...<br />

04 \Merge{empfaengerliste}{%<br />

05 An<br />

06 \Vorname \Name \\<br />

07 \Funktion \\<br />

08 }<br />

09 ...<br />

Über das Anbinden des Textsatzsystems<br />

LaTeX an eine <strong>Daten</strong>bank liegt nur vergleichsweise<br />

wenig Dokumentation vor.<br />

Häufig gerät diese erst bei einer intensiven<br />

Suche ins Blickfeld. Dabei stehen<br />

grundsätzlich zwei Verfahren zur Wahl.<br />

Die erste Variante greift ausschließlich<br />

auf Bordmittel von LaTeX zurück und<br />

platziert die gesamte Logik zum Zugriff<br />

auf die <strong>Daten</strong>bank in der LaTeX-Datei.<br />

Bei der zweiten Variante kommt zusätzlich<br />

eine Programmiersprache zum Einsatz,<br />

typischerweise Perl oder Python.<br />

Mit deren Hilfe holen Sie die <strong>Daten</strong> aus<br />

der <strong>Daten</strong>bank ab und erzeugen im<br />

nächsten Schritt daraus ein komplettes<br />

LaTeX-Dokument.<br />

Beiden Wegen gemeinsam ist der abschließende<br />

Schritt des Übersetzens des<br />

LaTeX-Codes ins gewünschte Format, sei<br />

es nun Postscript mittels latex und<br />

dvips oder PDF mittels pdflatex. Den<br />

Ausgangspunkt für alle Beispiele in diesem<br />

Artikel bilden die drei Pakete Textmerg<br />

û, Csvtools û sowie LaTeXDB û.<br />

Ob Serienbrief oder Teilnehmerliste:<br />

Mithilfe eines passenden<br />

Adapters befüllen Sie<br />

LaTeX-Dokumente problemlos<br />

mit den Inhalten einer<br />

<strong>Daten</strong>bank. Frank Hofmann<br />

Readme<br />

Mittlerweile versteht sich fast jede Textverarbeitung<br />

darauf, <strong>Daten</strong> aus externen Quellen<br />

wie einer <strong>Daten</strong>bank oder einer Datei<br />

im CSV-Format zu verarbeiten. Für das Satzsystem<br />

LaTeX gilt das ebenfalls – nur kennt<br />

kaum jemand die entsprechenden Funktionen.<br />

Dieser Artikel zeigt, wie das geht.<br />

05.2013 www.linux-user.de<br />

49


Praxis<br />

LaTeX und externe <strong>Daten</strong>quellen<br />

1 Bei Bedarf generieren Sie mit LaTeX eine Teilnehmerliste für eine Veranstaltung aus<br />

den gleichen <strong>Daten</strong>, die auch beim entsprechenden Anschreiben zum Einsatz kommen.<br />

Listing 2<br />

01 Friedhelm<br />

02 Pötter<br />

03 Leiter der<br />

Jürgen‐Koppelin‐Bildungsstätte<br />

04 Dr. Walter<br />

05 Broermeyer<br />

06 Wim‐Thoelke‐Universität<br />

Stenkelfeld<br />

07 Friedemann<br />

08 von Klöhnen<br />

09 Geriatriedekan, Heimleiter des<br />

Seniorenstifts am Höcklager<br />

Industrieweg<br />

10 Helmut<br />

11 Sönkel‐Pörthagen<br />

12 Geschäftsführer der Großküche<br />

Stenkelfeld<br />

13 Dr. Bernwart<br />

14 Ölvermöhlen<br />

15 Direktor der Volksgenossenbank<br />

von 1936<br />

Bei Debian und dessen Derivaten gehören<br />

Textmerg und Csvtools zum Paket<br />

texlive-latex-extra.<br />

LaTeXDB gibt es derzeit ausschließlich<br />

im CTAN û, nicht als fertiges DEB- oder<br />

RPM-Paket. Alle Pakete binden Sie über<br />

das Kommando \ usepackage{Paket} in<br />

der Präambel des Dokumentes ein.<br />

Textmerg<br />

Textmerg ermöglicht das Einlesen von<br />

<strong>Daten</strong>sätzen aus einer Textdatei. Dabei<br />

erstreckt sich ein vollständiger <strong>Daten</strong>satz<br />

über mehrere Textzeilen hinweg, jedes<br />

Feld des <strong>Daten</strong>satzes liegt in einer<br />

einzelnen Zeile. Zum Verarbeiten benötigt<br />

LaTeX noch Information zur Struktur<br />

der Textdatei und den einzelnen Feldern<br />

der <strong>Daten</strong>sätze. Diesen Aufbau beschreiben<br />

Sie mit \Fields{Feldbezeichner}.<br />

Für drei Felder eines Anschreibens<br />

kommt folgender Eintrag zum Einsatz:<br />

\Fields{\Vorname\Name\Funktion}<br />

LaTeX leitet daraus drei Variablen \Name,<br />

\Vorname und \Funktion ab. Bei der<br />

Wahl der Bezeichner haben Sie zwar<br />

freie Hand, sollten aber Namen von bestehenden<br />

Kommandos vermeiden.<br />

Die Variablen dürfen Sie an beliebiger<br />

Stelle platzieren. Noch sind sie leer – um<br />

sie mit sinnvollen Inhalten zu befüllen,<br />

teilen Sie LaTeX mit, in welcher Datei<br />

diese liegen. Dazu nutzen Sie zusätzlich<br />

das Kommando \Merge{Datei}. In Listing<br />

1 heißt die Datei empfaengerliste.<br />

Sobald Sie das Dokument übersetzen,<br />

öffnet LaTeX in Zeile 4 die Datei empfaengerliste<br />

und befüllt bei jedem<br />

Durchlauf die Zeilen 6 und 7. Alle Einträge<br />

landen in einem Dokument.<br />

Das Beispiel aus Listing 2 generiert<br />

eine Liste mit Besuchern eines Konzertes<br />

in der Stadt Stenkelfeld û. Jeder der<br />

fünf Einträge besteht aus dem Vornamen,<br />

dem Namen und der Funktion der<br />

Person aus der bekannten norddeutschen<br />

Hörspielserie. Abbildung 1 zeigt<br />

das Ergebnis nach dem Übersetzen des<br />

LaTeX-Codes aus Listing 3 mit Pdflatex.<br />

Csvtools<br />

Csvtools von Dr. Nicola Talbot verhält<br />

sich ähnlich zu dem bereits vorgestellten<br />

Paket Textmerg. Die <strong>Daten</strong> befinden sich<br />

Listing 3<br />

01 \documentclass[10pt]{article}<br />

02 \usepackage{german}<br />

03 \usepackage[T1]{fontenc}<br />

04 \usepackage[utf8]{inputenc}<br />

05 \usepackage{palatino}<br />

06 \usepackage{textmerg}<br />

07 <br />

08 \begin{document}<br />

09 \Fields{\Vorname\Name\<br />

Funktion}<br />

10 <br />

11 \begin{center}<br />

12 \huge{Teilnehmerliste zum<br />

Neujahrskonzert im Gasthof<br />

Knollmeyer}<br />

13 \end{center}<br />

14 <br />

15 ~\\<br />

16 \begin{itemize}<br />

17 \Merge{teilnehmer}{%<br />

18 \item \textbf{\Vorname<br />

~\ Name} \\ \Funktion \\<br />

19 }<br />

20 \end{itemize}<br />

21 \end{document}<br />

50 www.linux-user.de<br />

05.2013


LaTeX und externe <strong>Daten</strong>quellen<br />

Praxis<br />

in einer Textdatei im CSV-Format. Jede<br />

Zeile darin entspricht einem <strong>Daten</strong>satz,<br />

ein Komma trennt jeweils die einzelnen<br />

Felder eines <strong>Daten</strong>satzes voneinander.<br />

Listing 4 demonstriert am Beispiel einer<br />

Einladung den Einsatz des Paketes<br />

Csv tools. In der Präambel laden Sie nach<br />

der Dokumentenklasse und den Spracheinstellungen<br />

das Paket Csvtools (Zeile 5).<br />

Mit dem Kommando in Zeile 10 öffnen<br />

Sie zunächst die in Klammern angegebene<br />

CSV-Datei. Alle nachfolgenden Kommandos<br />

zwischen der nächsten öffnenden<br />

und der passenden schließenden<br />

Klammer (Zeile 34) kommen bei jedem<br />

<strong>Daten</strong>satz zum Tragen.<br />

Die Variablen in den Zeilen 18 und 19<br />

leiten sich von der ersten Zeile in der<br />

CSV-Datei ab. Das Kommando aus Zeile<br />

10 interpretiert diese Einträge als<br />

Überschriften der Felder oder Spalten.<br />

Deren Namen richtet sich nach den Gepflogenheiten<br />

unter LaTeX: Sie enthalten<br />

also weder Umlaute noch Leer- oder<br />

Sonderzeichen.<br />

Alternativ fügen Sie die <strong>Daten</strong> über<br />

\ insertbyname{Spaltenname} ein. Verfügt<br />

die CSV-Datei in der ersten Zeile<br />

über keine Felder- oder Spaltenüberschriften,<br />

verwenden Sie zum Einlesen<br />

stattdessen \applyCSVfile*{Datei}<br />

und referenzieren die Spalten über<br />

\ field mit der Spaltennummer als Parameter.<br />

Abbildung 2 zeigt das Ergebnis<br />

aus Listing 4, mit einer separaten Seite<br />

für jeden Adressaten.<br />

Das LaTeX-Paket bietet noch wesentlich<br />

mehr Möglichkeiten, wie beispielsweise<br />

die vereinfachte Ausgabe in Tabellen.<br />

Die Dokumentation zu Csvtools liegt<br />

zwar lediglich auf Englisch vor, umfasst<br />

dafür aber erfreulich viele Beispiele. Der<br />

Autor von Cvstools hat daneben auch<br />

das Datatool-Paket û entwickelt, das in<br />

Teilen auf den Csvtools aufbaut und das<br />

Erstellen von Torten- und Balkendiagrammen<br />

deutlich vereinfacht.<br />

Bestimmte <strong>Daten</strong>sätze<br />

2 Die <strong>Daten</strong> für die einzelnen Adressaten stammen bei diesem Anschreiben aus einer<br />

separaten CSV-Datei, aus der Sie bei Bedarf auch nur bestimmte <strong>Daten</strong>sätze nutzen.<br />

Sowohl Textmerg als auch Csvtools verarbeiten<br />

alle <strong>Daten</strong>sätze auf einmal. Benötigen<br />

Sie aus den <strong>Daten</strong>sätzen nur<br />

eine Teilmenge, etwa für einen bestimmten<br />

Anlass, gilt es, die Liste zu modifizieren.<br />

Kommt das nicht infrage oder gestaltet<br />

es sich zu aufwendig, bleibt nur<br />

die Möglichkeit, LaTeX trickreich unter<br />

die Arme zu greifen.<br />

Dazu erweitern Sie die <strong>Daten</strong>sätze um<br />

ein zusätzliches Feld mit der Nummer<br />

des <strong>Daten</strong>satzes. Über dieses lassen sich<br />

die <strong>Daten</strong>sätze dann eindeutig referenzieren.<br />

Im Falle von Textmerg sieht ein<br />

erweiterter <strong>Daten</strong>satz wie in Listing 5<br />

gezeigt aus.<br />

Als Nächstes passen Sie die Definition<br />

der Felder im LaTeX-Dokument an und<br />

ergänzen diese um ein weiteres Feld –<br />

hier \Nr genannt:<br />

\Fields{\Nr\Vorname\Name\Funktion}<br />

Verwenden Sie hingegen Csvtools, genügt<br />

es, am Anfang jeder Zeile zu jedem<br />

<strong>Daten</strong>satz eine neue Spalte mit einer<br />

Nummer hinzuzufügen:<br />

1, Friedhelm, Pötter, Leiter derU<br />

Jürgen‐Koppelin‐Bildungsstätte<br />

Zur Auswahl eines spezifischen <strong>Daten</strong>satzes<br />

kommen die zusätzliche Variable<br />

\datensatznummer sowie das LaTeX-<br />

Pake t Ifthen û ins Spiel. Über Erstere<br />

steuern Sie die Auswahl des <strong>Daten</strong>satzes<br />

– wie diese zustande kommt, erfahren<br />

Sie weiter unten. Die Befehle zum Vergleichen<br />

stellt das Paket Ifthen bereit.<br />

CSV-Format: Das CSV-Format hat sich als<br />

Austauschformat zwischen Applikationen<br />

und als einfache <strong>Daten</strong>sammlung bewährt.<br />

Es setzt kaum Technologie voraus und ermöglicht<br />

bei Bedarf sogar ein Bearbeiten<br />

mit einem Texteditor.<br />

Tipp<br />

Üblicherweise fungiert in CSV-Dateien ein<br />

Komma als Trennzeichen. Mit dem Befehl<br />

\setcsvseparator{Trennzeichen}<br />

legen Sie bei Bedarf ein anderes Symbol<br />

fest. Tritt das Trennzeichen in einem Eintrag<br />

auf, schreiben Sie den Inhalt des<br />

Feldes in Anführungszeichen.<br />

05.2013 www.linux-user.de<br />

51


Praxis<br />

LaTeX und externe <strong>Daten</strong>quellen<br />

Listing 4<br />

01 \documentclass[10pt]{article}<br />

02 \usepackage[ngerman]{babel}<br />

03 \usepackage[T1]{fontenc}<br />

04 \usepackage[utf8]{inputenc}<br />

05 \usepackage{csvtools}<br />

06 \usepackage{palatino}<br />

07 <br />

08 \setcsvseparator{;}<br />

09 \begin{document}<br />

10 \applyCSVfile{teilnehmer.csv}<br />

{%<br />

11 <br />

12 \begin{center}<br />

13 Rathaus der Stadt Stenkelfeld<br />

‐‐ Rathausgasse 12f ‐‐ 00101<br />

Stenkelfeld<br />

14 \end{center}<br />

15 <br />

16 ~ \\<br />

17 An Herrn \\<br />

18 \insertVorname ~\insertName \\<br />

19 \insertFunktion \\<br />

20 ~ \\<br />

21 \textbf{Einladung zum<br />

Neujahrskonzert} \\<br />

22 ~ \\<br />

23 Sehr geehrter Herr \<br />

insertName, \\<br />

24 ~ \\<br />

25 am Sonnabend, dem 5. Januar<br />

2013, findet um 11:00 Uhr im<br />

großen<br />

26 Festsaal des Gasthofs<br />

Knollmeyer das diesjährige<br />

Neujahrskonzert<br />

27 statt. Wir möchten Sie gern<br />

zu dieser herausragenden<br />

Veranstaltung<br />

28 einladen und freuen uns sehr<br />

auf ihre Teilnahme. \\<br />

29 ~ \\<br />

30 Mit freundlichen Grüßen, \\<br />

31 ~\\<br />

32 Wilhelm Oelgemöller,<br />

Bürgermeister<br />

33 33<br />

34 \newpage }<br />

35 \end{document}<br />

Dieses laden Sie in der Präambel des Dokumentes<br />

über \usepackage{ifthen}.<br />

Umsetzen in Pdflatex<br />

Listing 6 beinhaltet den erweiterten Programmcode<br />

am Beispiel für Textmerg<br />

(die Änderungen für Csvtools sehen<br />

ganz ähnlich aus). Zeile 3 prüft, ob die<br />

Variable \datensatznummer definiert ist<br />

– falls ja, durchläuft die Software den<br />

Block Zeile 4 bis 8. Zeile 9 enthält den<br />

Alternativ-Zweig, der leer bleibt. Zeile 10<br />

schließt den Block ab.<br />

In Zeile 4 erfolgt der Vergleich zwischen<br />

der Nummer des <strong>Daten</strong>satzes und<br />

dem Feld \Nr aus dem aktuell gelesenen<br />

<strong>Daten</strong>satz. Die Befehlsfolge \ifthenelse{\equal{...}}<br />

überprüft beide<br />

Werte auf Gleichheit. Liegt diese vor,<br />

kommen die Zeilen 5 bis 7 zum Zug.<br />

Mit diesen Schritten wäre das Verarbeiten<br />

durch LaTeX ohne Hilfsmittel soweit<br />

komplett. Offen blieb bislang der Aufruf<br />

von Pdflatex mit den korrekten Parametern.<br />

Das erfordert einen Kniff, wie das<br />

folgende Beispiel zeigt:<br />

$ pdflatex "\def \datensatznummerU<br />

{2} \input{Datei.tex}"<br />

Listing 5<br />

1<br />

Friedhelm<br />

Pötter<br />

Leiter der<br />

Jürgen‐Koppelin‐Bildungsstätte<br />

Listing 6<br />

01 ...<br />

02 \Merge{empfaengerliste}{%<br />

03 \ifdefined\datensatznummer<br />

04 \ifthenelse{\equal{\<br />

datensatznummer}{\Nr}}{%<br />

05 An<br />

06 \Vorname \Name \\<br />

07 \Funktion \\<br />

08 }{}<br />

09 \else<br />

10 \fi<br />

11 }<br />

12 ...<br />

Pdflatex akzeptiert beim Aufruf als Parameter<br />

entweder eine LaTeX-Datei oder<br />

eine Folge von einzelnen LaTeX-Kommandos.<br />

Hier nutzen Sie Letzteres und<br />

verwenden das Kommando \def, gefolgt<br />

von \input. Der Befehl \def legt<br />

eine neue Variable an – hier heißt sie<br />

datensatznummer – mit dem Wert 2. Das<br />

Kommando \input liest den Inhalt der<br />

Datei ein, die Sie als Parameter in den<br />

Klammern spezifizieren.<br />

Mit diesem Aufruf erzeugen Sie ein valides<br />

LaTeX-Dokument. Pdflatex erkennt<br />

anhand der Variablen \datensatznummer,<br />

welchen <strong>Daten</strong>satz es auszugeben gilt.<br />

Möchten Sie einen anderen <strong>Daten</strong>satz<br />

verarbeiten, ändern Sie den Wert der Variablen<br />

im Aufruf von Pdflatex entsprechend.<br />

Existiert der <strong>Daten</strong>satz mit der<br />

fraglichen Nummer nicht, erzeugt die<br />

Software ein leeres Dokument.<br />

Aus Gründen der Flexibilität beinhalten<br />

viele Schleifen ein Kommando für einen<br />

expliziten Abbruch, wie break bei<br />

Python. Das kommt zum Einsatz, sobald<br />

das Programm eine bestimmte Bedingung<br />

erreicht. LaTeX bietet so etwas<br />

nicht, daher durchläuft das Programm<br />

bei dem Aufruf von Textmerge oder Csvtools<br />

stets alle <strong>Daten</strong>sätze.<br />

Den Namen der Ausgabedatei leitet<br />

Pdflatex vom Namen der Eingabedatei<br />

ab. Als Ergebnis des obigen Aufrufs entsteht<br />

Datei.pdf im aktuellen Verzeichnis.<br />

Mit der zusätzlichen Option ‐jobname<br />

Name definieren Sie den Namen der Ausgabedatei<br />

und erzeugen eine entsprechend<br />

benannte PDF-Datei Name.pdf.<br />

Das Suffix .pdf fügt die Software automatisch<br />

hinzu.<br />

Diesen Kniff nutzen Sie aus, um ausgewählte<br />

<strong>Daten</strong>sätze zu verarbeiten und<br />

die Ausgabe jeweils in ein separates<br />

PDF-Dokument zu speichern. Mögliche<br />

Einsatzbereiche wären etwa ein Dankschreiben<br />

an ausgewählte Kunden oder<br />

eine schicke Einladung zu einer Veranstaltung.<br />

Um die Kommandos nicht ständig<br />

wieder neu eingeben zu müssen,<br />

speichern Sie das Ganze am besten als<br />

handliches Shell-Skript (Listing 7). Es akzeptiert<br />

eine beliebige Anzahl von Nummern<br />

als Parameter und ermöglicht daher<br />

volle Flexibilität bei der Auswahl.<br />

52 www.linux-user.de<br />

05.2013


LaTeX und externe <strong>Daten</strong>quellen<br />

Praxis<br />

In Zeile 3 prüft das Skript zunächst, ob<br />

Sie beim Aufruf mindestens einen Parameter<br />

angegeben haben. Ist das nicht<br />

der Fall, dann beendet es sich mit dem<br />

Fehlercode 1 (Zeile 5). In den Zeilen 8<br />

bis 11 arbeitet eine While-Schleife die<br />

einzelnen Parameter ab.<br />

Als <strong>Daten</strong>satznummer, die das Skript<br />

verarbeitet, fungiert dabei der erste<br />

Para meter des Skripts, der in der Variablen<br />

$1 liegt (Zeile 9). In Zeile 10 erfolgt<br />

der Aufruf von Pdflatex, wobei die Namen<br />

sämtlicher erzeugten PDF-Dateien<br />

mit dem Präfix einladung‐ beginnen,<br />

gefolgt von der Nummer des <strong>Daten</strong>satzes<br />

und mit dem automatisch ergänzten<br />

Datei-Suffix .pdf.<br />

Als Grundlage für das Dokument dient<br />

eine Datei vorlage.tex aus dem zweiten<br />

Parameter. Das Kommando shift in<br />

der Zeile 11 verändert die Inhalte der Parameter<br />

$1 bis $9. Es kopiert den Inhalt<br />

von $2 nach $1, von $3 nach $2 und so<br />

weiter. Dieses Vorgehen schafft die<br />

Voraussetzungen für die Befehle in den<br />

Zeilen 8 und 9.<br />

Weitere Details zu shift erklärt Jürgen<br />

Wolf ausführlich in seinem Kompendium<br />

zur Shell-Programmierung û.<br />

Aus der SQL-<strong>Daten</strong>bank<br />

Bereits 2006 präsentierte Hans-Georg<br />

Eßer der Öffentlichkeit sein Projekt<br />

LaTeX DB. Es kombiniert LaTeX mit der<br />

Structured Query Language (SQL) und<br />

eröffnet Ihnen damit die Möglichkeit, direkt<br />

aus einem LaTeX-Dokument heraus<br />

auf eine SQL-<strong>Daten</strong>bank wie MySQL<br />

oder PostgreSQL zuzugreifen.<br />

Streng genommen handelt es sich bei<br />

LaTeXDB nicht wirklich um ein Paket für<br />

LaTeX im klassischen Sinn, sondern vielmehr<br />

um eine Kombination aus LaTeX<br />

und der Programmiersprache Python.<br />

Das Skript übernimmt das Abfragen der<br />

<strong>Daten</strong>bank und ersetzt die betreffenden<br />

Stellen im Dokument durch die Felder<br />

aus dem Ergebnis.<br />

Weitere Infos und<br />

interessante Links<br />

www. linux‐user. de/ qr/ 28417<br />

Mit den Befehlen aus dem Auszug in Listing<br />

8 greifen Sie auf eine lokal gespeicherte<br />

MySQL-<strong>Daten</strong>bank zu und lesen<br />

die Inhalte der Tabelle Benutzer aus. Das<br />

Übersetzen erfolgt mit dem Aufruf pdflatexdb<br />

Datei.tex und erzeugt in einem<br />

mehrstufigen Prozess das entsprechende<br />

PDF-Dokument.<br />

Das aktuelle Paket LaTeXDB stammt<br />

aus dem Jahr 2006 und liegt im CTAN.<br />

Ein DEB- oder RPM-Paket gibt es nicht,<br />

eine Weiterentwicklung ist bislang nicht<br />

vorgesehen. Das Paket funktioniert laut<br />

Entwickler zuverlässig und erfüllt sein<br />

gestecktes Ziel vollständig. Eine ausführliche<br />

Beschreibung bietet ein Artikel in<br />

der Ausgabe 06/2006 von <strong>LinuxUser</strong> û.<br />

Aus LaTeXDB entstanden durch Robin<br />

Höns mittlerweile zwei weitere Projekte<br />

– Ratexdb û (geschrieben in Ruby) und<br />

Nlatexdb (in .NET) û.<br />

Beachten Sie, dass die vollständige<br />

SQL-Anweisung und alle Zugangsdaten<br />

zur <strong>Daten</strong>bank (Rechner, Nutzername<br />

und Passwort) im Klartext im LaTeX-<br />

Doku ment stehen. Das erweist sich unter<br />

Umständen als ein Sicherheitsrisiko.<br />

Ob Sie diese Schwachstelle akzeptieren,<br />

hängt vom Einsatzbereich ab.<br />

Fazit<br />

LaTeX zielt auf das Erstellen eines einzelnen<br />

Dokumentes ab. Die hier vorgestellten<br />

LaTeX-Pakete bieten eine brauchba-<br />

Listing 7<br />

01 #!/bin/bash<br />

02 <br />

03 if [ "$#" == "0" ]; then<br />

04 echo "Aufruf: skript.sh<br />

kdnr1 kdnr2 ... kdnrN"<br />

05 exit 1<br />

06 fi<br />

07 <br />

08 while (( "$#" )); do<br />

09 datensatznummer=$1<br />

10 pdflatex ‐jobname<br />

"einladung‐$datensatznummer"<br />

"\def \datensatznummer{$date<br />

nsatznummer} \input{vorlage.<br />

tex}"<br />

11 shift<br />

12 done<br />

re Schnittstelle zum Verarbeiten großer<br />

<strong>Daten</strong>mengen und helfen, nicht nur<br />

Serienbriefe (Rechnungen, Einladungen,<br />

Mitteilungen), sondern auch andere<br />

Druckerzeugnisse zu erstellen, wie Türoder<br />

Namensschilder. Das vereinfacht<br />

beispielsweise das Organisieren einer<br />

Veranstaltung.<br />

Als weitere Anregungen zu diesem<br />

Thema empfehlen wir Ihnen das Paket<br />

ticket von Thomas Emmel û sowie<br />

den Vortrag „Konferenzmanagement<br />

mit LaTeX“ von Uwe Ziegenhagen û.<br />

Kommt es auf Geschwindigkeit und<br />

Effizienz an, lohnt es sich, die Prozesskette<br />

etwas zu optimieren. (agr) n<br />

Listing 8<br />

...<br />

\texdbconnection{MySQL,<br />

localhost, user, passwd,<br />

datenbank}<br />

\texdbdef{##benutzer}{select<br />

vorname,name,funktion from<br />

Benutzer}{##Vorname,##Name,<br />

##Funktion}<br />

\texdbfor{##benutzer}{<br />

\Vorname ~\Name: \Funktion<br />

}<br />

...<br />

05.2013 www.linux-user.de<br />

53


Praxis<br />

Shelr<br />

Shell-Kommandos mit Shelr aufzeichnen und teilen<br />

Kino auf der<br />

Kommandozeile<br />

Das Ruby-Tool Shelr verwandelt die Kommandozeile in ein<br />

Kinoprogramm für Freunde der Shell. Falko Benthin<br />

© Djnorway, sxc.hu<br />

Readme<br />

Mit dem Ruby-Programm Shelr erstellen<br />

Sie Screencasts von einem Terminal und<br />

teilen so Tricks und Kniffe in der Shell mit<br />

anderen – entweder als Typescript- Datei<br />

oder über den Online-Dienst Shelr.tv.<br />

Blockbuster entlocken Ihnen nur ein<br />

müdes Gähnen? Sie finden die Kommandozeile<br />

und deren Möglichkeiten weitaus<br />

spannender? Sie möchten mit einfachen<br />

Mitteln und ohne finanziellem Aufwand<br />

Ihren eigenen Film erstellen, in<br />

dem weder Kinder, Katzen oder Hunde<br />

durch das Bild wackeln? Dann ist Shelr<br />

das Richtige für Sie.<br />

Statt bei Action-Krachern, wie „Stirb<br />

langsam 5“ und Konsorten dick, doof<br />

und depressiv zu werden oder andere<br />

Menschen damit zu langweilen, wie sich<br />

zum x-ten Mal die ach so schnuckelige<br />

Mieze vom Fressnapf zum Schlafplatz<br />

schleppt, zeigen Sie mit dem kleinen<br />

Tool, wie gut Sie die Kommandozeile<br />

beherrschen, oder bilden sich mit den<br />

Shell-Casts anderer Nutzer weiter.<br />

Das Programm Shelr û ist in Ruby implementiert<br />

und steht unter der GPLv3.<br />

Es ermöglicht, Aktionen auf der Kommandozeile<br />

mitzuschneiden und entweder<br />

selbst als Gedächtnisstütze in Form<br />

eines Videos zu archivieren oder mit anderen<br />

zu teilen und so in Tutorials oder<br />

Vorträge zu integrieren. Der Online-<br />

Dienst Shelr.tv û hostet die Terminal-<br />

Filmchen in bester Youtube-Manier 1 .<br />

Anders und viel besser als bei Youtube<br />

erlaubt es der Dienst jedoch, die gezeigten<br />

Inhalte per Copy & Paste aus dem<br />

Stream zu entnehmen und gleich in der<br />

Konsole zu verwenden.<br />

Das Programm selbst haben Sie im Nu<br />

installiert. Viele gängige Distributionen<br />

führen es bereits in ihren Repositories.<br />

Wo Shelr noch fehlt, wie etwa bei Debi-<br />

54 www.linux-user.de<br />

05.2013


Shelr<br />

Praxis<br />

an „Squeeze“, genügt es, Ruby und Rubygems<br />

zu installieren und anschließend<br />

Shelr und eventuelle Abhängigkeiten<br />

mit folgendem Befehl über das Ruby-Paketsystem<br />

Gems auf die Platte zu holen:<br />

$ sudo gem install shelr<br />

Shelr kommt als kleines Kommandozeilenprogramm<br />

mit wenigen Befehlen aus.<br />

Aus diesem Grund erlernen Sie das Bedien<br />

konzept im Nu. Shelr greift auf<br />

script aus den Paketen util-linux oder<br />

util-linux-ng zurück und arbeitet so als<br />

Frontend, das die Terminal-Meisterwerke<br />

verwaltet und eine Verbindung zu Shelr.<br />

tv herstellt. Script und somit auch Shelr<br />

forken die Shell und senden alle Ausgaben<br />

in eine Typescript-Datei, die Sie bei<br />

Bedarf später abspielen oder ausdrucken.<br />

Ausgaben aufzeichnen<br />

Shelr residiert in der Vorgabe im Verzeichnis<br />

/var/lib/gems/Version/bin,<br />

das in der Regel nicht im Pfad<br />

liegt. Abhilfe schafft das folgende<br />

Kommando:<br />

datei ab und legt dann los 2 . Die Software<br />

protokolliert jegliche Eingabe und<br />

legt die entsprechenden <strong>Daten</strong> in einer<br />

Typescript-Datei unter ~/.local/share/<br />

shelr/ID/typescript ab. Haben sie alles<br />

im Kasten, beenden Sie das Aufzeichnen<br />

mit exit oder über [Strg]+[D].<br />

Der Befehl shelr play last spielt das<br />

Aufgenommene wieder ab. Fällt das Ergebnis<br />

so aus, dass Sie es anderen zumuten<br />

möchten, schieben Sie es mit<br />

dem Kommando shelr push last auf<br />

Shelr.tv. Das Programm fragt dabei eine<br />

aussagekräftige Beschreibung ab. Sofern<br />

beim Hochladen keine Fehler auftraten,<br />

zeigt die Software anschließend die URL<br />

des veröffentlichten Typescripts an.<br />

Freilich müssen Sie die Videos nicht<br />

zwingend auf Shelr.tv veröffentlichen.<br />

Sie können Ihre Sammlung auch für sich<br />

behalten und lediglich mit Freunden<br />

und Bekannten teilen.<br />

Benutzen Sie Shelr regelmäßig, dann<br />

sammeln sich mit der Zeit etliche Videos<br />

an, und es stellt sich der Wunsch ein,<br />

Tragen Sie die Zeile in die Datei<br />

~/.bashrc ein, dann klappt der<br />

Aufruf künftig ohne das Erweitern<br />

der Variable.<br />

Um mit Shelr die Eingaben in<br />

einem Terminal aufzuzeichnen,<br />

genügt das Kommando shelr<br />

record. Das Programm fragt<br />

noch den Namen der Protokollnicht<br />

immer nur das letzte Werk zu betrachten,<br />

sondern auch mal eines der früheren.<br />

Allerdings lässt sich aus den IDs<br />

nicht direkt schließen, welche Inhalte sich<br />

in den zugehörigen Typescript-Dateien<br />

denn nun verbergen.<br />

Hier kommt das Kommando shelr<br />

list ins Spiel, das neben der ID auch<br />

$ export PATH=/var/lib/gemU<br />

s/Version/bin:$PATH<br />

1 Die Online-Plattform Shelr.tv erweist sich als Youtube für Konsolen-Freaks. Bei Bedarf<br />

übernehmen Sie Inhalte aus den Filmen einfach per Copy & Paste in ein Terminal.<br />

05.2013 www.linux-user.de<br />

55


Praxis<br />

Shelr<br />

den Titel eines Shell-Videos auflistet. Die<br />

ID des gewünschten Titels kopieren Sie<br />

und nutzen sie anschließend im Befehl<br />

shelr play ID. Alternativ laden Sie die<br />

entsprechende Datei mit shelr push ID<br />

auf den Server von Shelr.tv 3 .<br />

Bis jetzt spielte sich alles lokal ab.<br />

Doch selbst fleißige Filmschaffende ergreift<br />

zwangsläufig früher oder später<br />

die Neugier auf die Werke anderer. Deren<br />

Videos schauen Sie sich am einfachsten<br />

direkt auf der Shelr.tv-Seite an. Stört<br />

der Browser oder fehlt eine grafische<br />

Umgebung, rufen Sie über das folgende<br />

Kommando den Film ab und starten die<br />

Wiedergabe auf der Konsole:<br />

$ shelr play http://shelr.tv/recoU<br />

rds/ID.json<br />

2 Über das Kommando shelr record starten Sie das Aufzeichnen der Shell-Kommandos,<br />

die dann als Abfolge von Befehlen in einer Tyescript-Datei landen.<br />

Das Push-Kommando ermöglicht es,<br />

Werke als anonymer Nutzer zu veröffentlichen.<br />

Möchten Sie mit Ihren Shell-Casts<br />

zu Ruhm gelangen, brauchen Sie einen<br />

API-Key. Den erhalten Sie auf unkomplizierte<br />

Weise, sofern Sie über ein Konto<br />

bei Github, Twitter, Google oder OpenID<br />

verfügen: Es genügt, sich über einen dieser<br />

Dienste auf Shelr.tv anzumelden 4 .<br />

Anschließend übernehmen Sie den API-<br />

Key mit shelr setup Key. Ab nun tragen<br />

alle Videos Ihren Nickname.<br />

Sollen die Shellcasts nicht an Shelr.tv<br />

gehen, gilt es lediglich im Setup zusätzlich<br />

eine API-URL anzugeben. Wer sich<br />

dagegen sträubt, seine Werke der breiten<br />

Masse zugänglich zu machen, der<br />

schränkt das Betrachten beim push mithilfe<br />

des Schalters ‐‐private ein.<br />

In dem Fall benötigt der Betrachter<br />

neben einer öffentlichen ID auch einen<br />

Zugriffsschlüssel, um in den Genuss der<br />

Filme zu kommen 5 . Hochgeladene<br />

Mitschnitte wandelt der Server in JSON-<br />

3 Bei den IDs der Typescript-Dateien handelt es sich um nichts weiter als Unix-Timestamps,<br />

die das Programm Shelr nutzt, um lokale Shell-Casts zu identifizieren.<br />

56 www.linux-user.de<br />

05.2013


Shelr<br />

Praxis<br />

4 Grundsätzlich veröffentlichen Sie Ihre Videos anonym. Über einen API-Key haben Sie<br />

die Möglichkeit, Ihre Shell-Casts unter einem von Ihnen gewählten Nickname zu posten.<br />

Objekte um. Wer muss oder möchte, erledigt<br />

diesen Schritt lokal auf dem Rechner<br />

mit dem Subkommando dump.<br />

Shelr ist unter Linux nicht zwingend<br />

auf das Hilfsprogramm Script als Backend<br />

beschränkt. Bei Bedarf wechseln Sie<br />

das Backend mit dem Kommando<br />

$ shelr setup recorder backend ttU<br />

yrec<br />

Die Software zeichnet nicht nur die Ausgaben<br />

auf einem Terminal auf, sondern<br />

bietet die Möglichkeit, die Ereignisse<br />

akustisch zu untermalen. Hierzu geben<br />

Sie dem Befehl record den Schalter<br />

‐‐sound mit. Das führt dazu, dass Shelr<br />

parallel zum Cast auch eine Audio-Datei<br />

im Format OGG erstellt.<br />

Fazit<br />

Verwalten der Aufzeichnungen. Die<br />

Shell-Casts eignen sich sowohl für den<br />

Einsatz auf dem lokalen Rechner als<br />

auch auf Online-Diensten wie Shelr.tv.<br />

Dabei besteht die Möglichkeit, nur ausgesuchten<br />

Personen Zugriff zu gewähren.<br />

Neben den reinen Terminalausgaben<br />

macht Shelr auch zusätzliche Audio-Untermalungen<br />

möglich. Der Online-<br />

Dienst selbst steht ebenso wie das Programm<br />

als freie Software bereit. Das erlaubt<br />

es Ihnen, mit der gleichen Technik<br />

eine Plattform für Shell-Casts auf einer<br />

eigenen Webseite anzubieten.<br />

Der Vorteil gegenüber dem reinen<br />

Aufzeichnen per Video besteht in der<br />

Tatsache, dass Sie bei Shelr und Shelr.tv<br />

die Möglichkeit haben, Kommandos per<br />

Copy & Paste aus einer Wiedergabe zu<br />

übernehmen. (agr) n<br />

Mac OS X bringt eine veraltete Version<br />

von Script mit, die nicht mit Shelr zusammenarbeitet.<br />

Hier stellt Ttyrec momentan<br />

die einzige Lösung dar.<br />

Mit Shelr fällt es kinderleicht, im Terminal<br />

zurückgelegte Schritte aufzuzeichnen,<br />

wiederzugeben und zu veröffentlichen.<br />

Ebenso einfach gestaltet sich das<br />

Weitere Infos und<br />

interessante Links<br />

www. linux‐user. de/ qr/ 29076<br />

5 Mit dem Schalter ‐‐privat hochgeladene Casts sind nur Auserwählten zugänglich.<br />

05.2013 www.linux-user.de<br />

57


© MSgt Kevin J. Gruenwald, U.S. Air Force<br />

Schwerpunkt<br />

UBUNTU<br />

user<br />

Gloobus Preview/​Gnome-Sushi<br />

Schnelle Dateivorschau mit<br />

Gloobus Preview und Gnome-Sushi<br />

Flinkes Duo<br />

Zwei kleine Tools geben eine<br />

schnelle <strong>Vorschau</strong> auf zahlreiche<br />

Dokumentenformate.<br />

Das spart Zeit und schont<br />

die Nerven. Thomas Drilling<br />

Readme<br />

Schnell mal nachsehen, was eine Datei enthält<br />

– mit Gloobus Preview genügt dazu ein<br />

Druck auf die Leertaste. Auch das clevere<br />

<strong>Vorschau</strong>-Tool Gnome-Sushi sorgt für mehr<br />

Durchblick im Dschungel der Dateien.<br />

Wenn LibreOffice zu langsam startet<br />

oder der Acrobat Reader wieder einmal<br />

eine gefühlte Ewigkeit in der Startsequenz<br />

herumrödelt, dann hilft Gloobus<br />

Preview û weiter, wenn Sie nur einen<br />

schnellen Blick in eine Datei werfen<br />

möchten. Bei dem Programm handelt es<br />

sich um einen Klon des von Mac OS X<br />

her bekannten Quick Look û. Es ermöglicht<br />

eine <strong>Vorschau</strong> auf die markierte Datei<br />

über ein einfaches Tastenkürzel.<br />

Ein recht ähnliches alternatives Tool<br />

steht bereits seit Gnome 3.2 in Form von<br />

Gnome-Sushi û bereit. Es basiert auf<br />

der Programmiersprache Javascript in<br />

Kombination mit GtkClutter. Gloobus<br />

Preview dagegen ist in C++ geschrieben<br />

und verwendet Gtk+.<br />

Gloobus Preview liefert für zahlreiche<br />

Dateitypen eine qualitativ gute <strong>Vorschau</strong>,<br />

ohne dass Sie dazu eine der mit dem<br />

MIME-Typ verknüpften Anwendungen zu<br />

öffnen brauchen. Es genügt, die Datei<br />

bei gedrückter Tastenkombination<br />

[Super]+[Leer] (in Gloobus Preview) beziehungsweise<br />

[Leer] (in Gnome-Sushi)<br />

zu markieren. Jedes der beiden Programme<br />

präsentiert dann ein Bild des Inhalts.<br />

Selbst im Zusammenspiel mit Nautilus<br />

funktioniert Gloobus Preview tadellos.<br />

Nutzen Sie etwa den Ein-Klick-Modus,<br />

klicken Sie einfach mit links auf eine freie<br />

Stelle, halten [Super]+[Leer] gedrückt<br />

und markieren dann bei gedrückter linker<br />

Maustaste sämtliche Dateien, von<br />

denen Sie eine <strong>Vorschau</strong> wünschen. Das<br />

funktioniert mit allen unterstützten Dateiformaten<br />

(siehe Tabelle Gloobus Preview:<br />

Formate). Ähnlich zeigt Gnome-<br />

Sushi etwa bei einem Ordner ein entsprechendes<br />

Symbol mit Angaben zur<br />

Größe und Anzahl der Dateien ( 1 ).<br />

Es gibt allerdings einige Unterschiede<br />

zwischen Gloobus Preview und Gnome-<br />

Sushi: Fahren Sie bei einer in Gnome-<br />

Sushi geöffneten Bilddatei an den unteren<br />

Rand des Fensters, blendet das Programm<br />

ein Fadenkreuz ein, mit dem Sie<br />

bei Bedarf in den Vollbildmodus wechseln.<br />

Gloobus Preview besitzt dagegen<br />

rechts oben ein kleines Icon, hinter dem<br />

sich ein Kontextmenü für das Fenster<br />

60 www.linux-user.de<br />

05.2013


Gloobus Preview/​Gnome-Sushi<br />

UBUNTU<br />

Schwerpunkt<br />

user<br />

1 Gnome-Sushi zeigt in der Ordnervorschau grundlegende Informationen<br />

zum betreffenden Verzeichnis an, wie Größe und Dateianzahl.<br />

2 Gewohnheitstier: Gloobus Preview bietet nur recht<br />

spärliche Möglichkeiten für individuelle Anpassungen.<br />

verbirgt. Neben der Möglichkeit zum<br />

Spenden bringt Sie der Eintrag Blog<br />

schnell zur Wordpress-Projektseite.<br />

Bei Audio- und Video-Dateien blenden<br />

sowohl Gloobus Preview als auch<br />

Gnome- Sushi eine kleine Leiste mit<br />

Steuerelementen ein und geben die Datei<br />

sofort wieder, sofern Sie die benötigten<br />

Codecs installiert haben. Enthalten<br />

die ID3-Tags einer Audio-Datei einen<br />

Verweis auf das Cover eines Albums als<br />

Bild, zeigen beide Programme dieses<br />

ebenfalls an. Über [Esc] oder einen Klick<br />

auf das Schließen-Symbol oben links beenden<br />

Sie die <strong>Vorschau</strong>.<br />

Installation<br />

Das Paket gnome-sushi finden Sie in den<br />

Standard-Paketquellen von Ubuntu und<br />

installieren es von dort ohne weitere<br />

Konfiguration. Zum Einrichten von Preview<br />

unter Ubuntu fügen Sie im Paketmanager<br />

das entsprechende PPA hinzu<br />

und installieren das Paket gloobus-preview<br />

(Listing 1). Das Unternehmen hinter<br />

dem <strong>Vorschau</strong>-Tool bietet mit Elementary<br />

Desktop und Nautilus Elementary<br />

zwei weitere PPAs an. Haben Sie eines<br />

davon eingebunden, erhalten Sie ebenfalls<br />

Zugriff auf Preview.<br />

Listing 1<br />

$ sudo add‐apt‐repository<br />

ppa:gloobus‐dev/gloobus‐preview<br />

$ sudo apt‐get update<br />

$ apt‐get install gloobus‐preview<br />

Installieren Sie das Paket unoconv, dann<br />

zeigt Gloobus Preview eine <strong>Vorschau</strong> auf<br />

Dokumente aus LibreOffice beziehungsweise<br />

OpenOffice an. Rufen Sie auf der<br />

Kommandozeile das Programm gloobus‐preview‐configuration<br />

auf, können<br />

Sie in einem Dialog einige elementare<br />

Einstellungen vornehmen ( 2 ).<br />

Sowohl Gloobus Preview als auch<br />

Gnome- Sushi sind als Erweiterungen für<br />

Gnome konzipiert. Sie funktionieren mit<br />

Unity und der Gnome Shell, setzen Nautilus<br />

aber nicht zwingend voraus.<br />

Fazit<br />

Wer mit Gloobus Preview oder Gnome-<br />

Sushi arbeitet, gewöhnt sich schnell an<br />

den Komfort und mag die beiden Tools<br />

künftig nicht mehr missen. Gerade bei<br />

umfangreichen Office-Dokumenten<br />

nervt es oft, den langen Start der Applikation<br />

für einen kurzen Blick auf die erste<br />

Seite abzuwarten. Bei Bildern leistet<br />

ein einfacher Viewer aber oft ähnlich<br />

gute Dienste. (agr) n<br />

Gloobus Preview: Formate<br />

Bilder<br />

Dokumente<br />

Quellcode<br />

Audio<br />

Video<br />

Weitere<br />

BMP, GIF, ICNS, JPEG, PNG,<br />

PSD, SVG, XCF<br />

CBR, CBZ, DOC, ODF, ODP,<br />

ODS, PDF, PPT, XLS<br />

C++, C#, Java, Javascript,<br />

PHP, Python, Shell, XML<br />

3GP, MIDI, MP3, OGG, WAV<br />

3GP, AVI, FLV, MKV, MPEG,<br />

OGG<br />

ASCII-Text, SRT, TTF<br />

TIPP<br />

Möchten Sie Gloobus Preview unter Fedora<br />

installieren, brauchen Sie dazu kein<br />

exotisches Repository: In Fedora 17 steht<br />

die Version 0.4.1 via Rpmfusion bereit.<br />

Weitere Infos und<br />

interessante Links<br />

www. linux‐user. de/ qr/ 29073<br />

05.2013 www.linux-user.de<br />

61


Schwerpunkt<br />

UBUNTU<br />

user<br />

Fractal Fr0st<br />

Sphärisch schöne Fraktale<br />

erzeugen Sie mit dem Algorithmus<br />

Flam3. Die GUI Fr0st<br />

hilft, die komplexe Software<br />

zu meistern. Karsten Günther<br />

In den frühen 1990er-Jahren entwickelte<br />

der Computerkünstler Scott Draves û<br />

einen fraktalen Algorithmus, den er Flame<br />

taufte. Die aktuelle Version ist unter dem<br />

Namen Flam3 bekannt. Auf das Aussehen<br />

der damit produzierten Grafiken<br />

nehmen Sie über Hunderte von Parametern<br />

Einfluss – selbst für mathematisch<br />

interessierte Laien ist das kaum zu<br />

durchschauen û.<br />

Die grafische Oberfläche Fractal<br />

Fr0st û versteckt die Komplexität von<br />

Flam3 etwas, zaubert aber faszinierende<br />

Ergebnisse. Bei dem kurz Fr0st genannten<br />

Tool handelt es sich um eine Kombination<br />

aus Python-Skript und binären<br />

Programmen (siehe Kasten Installation).<br />

Die Oberfläche erlaubt zum einen den<br />

einfachen Zugriff auf alle Funktionen<br />

von Flam3 und bietet zum anderen eine<br />

<strong>Vorschau</strong> sowie viele Möglichkeiten, das<br />

Ergebnis nachträglich entsprechend den<br />

eigenen Vorstellungen zu optimieren.<br />

Readme<br />

Fraktal-Algorithmen gibt es viele. Aber nur<br />

wenige erzeugen so schöne und geradezu<br />

ätherische Strukturen wie Flam3. Die grafische<br />

Oberfläche Fr0st hilft, die komplexen<br />

Parameter zu bewältigen.<br />

Ungewöhnliche Fraktale erzeugen mit Fr0st und Flam3<br />

Fragile<br />

Schönheit<br />

Als Dreh- und Angelpunkt für die Arbeit<br />

fungiert das Fractal Fr0st benannte Fenster<br />

1 . Es fasst im Wesentlichen neben<br />

der <strong>Vorschau</strong> (oben rechts) vier Dialoge<br />

zusammen: den Transform Editor für grobe<br />

Voreinstellungen, den Gradient Editor<br />

für Einstellungen in Bezug auf die Farbe,<br />

den Adjust-Editor für feine Anpassungen<br />

und Voreinstellungen und Anim zum Erstellen<br />

von Animationen.<br />

Zum Erstellen von Flammen stellen Sie<br />

zunächst ganz links unter samples.flames<br />

den gewünschten Typ der Flammen ein.<br />

Über linear erzeugen Sie die klassischen<br />

Flammen, mit Julia die von Mandelbrot-<br />

Generatoren bekannten auf Julia-Mengen<br />

basierenden Varianten. Mit heard<br />

steht eine Spielart bereit, die sich durch<br />

weit geschwungene, oft herzförmig verschlungene<br />

Formen auszeichnet.<br />

Von dem in der <strong>Vorschau</strong> angezeigten<br />

Bild aus beginnen Sie mit dem Entwurf<br />

Ihres Werkes. Verschieben Sie dazu die<br />

im Transform Editor angezeigten Dreiecke,<br />

und beobachten Sie dabei die <strong>Vorschau</strong>.<br />

Sie können dabei auch nur einzel-<br />

© Sven Geier, http:// www. sgeier. net<br />

62 www.linux-user.de<br />

05.2013


Fractal Fr0st<br />

UBUNTU<br />

Schwerpunkt<br />

user<br />

ne Ecken oder Kanten eines Dreiecks bewegen.<br />

Jede diese Aktionen hat normalerweise<br />

deutlich sichtbare Auswirkungen<br />

auf das Ergebnis. Lassen Sie sich<br />

überraschen, was schon ganz geringe<br />

Veränderungen alles bewirken.<br />

Das Ganze funktioniert folgendermaßen:<br />

Fr0st fasst mehrere Flame-Parameter<br />

zu Dreiecken zusammen, die wiederum<br />

eine Ebene repräsentieren. Die<br />

kleinen, in der Farbe des Dreiecks angedeuteten<br />

Punkte im Hauptfenster symbolisieren<br />

diese Ebene. Eine Ecke des<br />

Dreiecks fungiert dabei als Ursprung<br />

(„0“), eine als X-Koordinate und die dritte<br />

als Y-Koordinate.<br />

Am Ursprung verschieben Sie das gesamte<br />

Dreieck, an den anderen Punkten<br />

nur jeweils eine Komponente. Das fraktale<br />

Gebilde entsteht durch virtuelle<br />

Schnitte zwischen Ebenen, andere Faktoren<br />

spielen aber eine ebenso wichtige<br />

Rolle. So hat die Lage des Ursprungs der<br />

Dreiecke einen ebenso großen Einfluss<br />

auf das Ergebnis wie die Seitenlängen<br />

der Dreiecke.<br />

Punktwolken<br />

Normalerweise zeigt Fr0st drei Dreiecke,<br />

die das Gebilde definieren. Die Form der<br />

Dreiecke spielt genauso eine Rolle wie<br />

ihre absolute und relative Lage (zueinander).<br />

Große Dreiecke erzeugen weite, offene<br />

Formen; kleine Dreiecke führen zu<br />

eher kompakten Ergebnissen. Eng benachbarte<br />

sowie sich überlagernde oder<br />

einander einschließende Dreiecke generieren<br />

dichte Punktwolken. Weit von<br />

einander entfernte Elemente beeinflussen<br />

einander nur wenig. Da die Lage der<br />

Dreiecke für die Lage einer Ebene steht,<br />

wirken flache Dreiecke wie schräg angeschnittene<br />

Ebenen, was zum Strecken<br />

der Strukturen führt.<br />

In Bewegung<br />

Weniger offensichtlich sind weitere<br />

Möglichkeiten: Mit einem Klick auf die<br />

XY-Kante der Dreiecke ändern Sie deren<br />

Größe, ohne die Lage zu beeinflussen.<br />

Sofern Sie nicht den Nullpunkt anklicken<br />

möchten, verschieben Sie die Form über<br />

einen Klick ins Dreieck. Indem Sie auf die<br />

kleinen, L-förmigen Anfasser der Ebenen<br />

(außerhalb des Dreiecks) oder die X- beziehungsweise<br />

Y0-Kante klicken, drehen<br />

Sie das Gebilde.<br />

Für einfache Spielereien genügt diese<br />

Methode vollkommen. Anders sieht die<br />

Sache aus, wenn Sie mithilfe gezielter<br />

Manipulationen ein bestimmtes Bild generieren<br />

möchten. Die Algorithmen –<br />

egal, ob linear, julia oder heard – lassen<br />

sich intuitiv nur schwer erfassen. Daher<br />

erfordert es viel Übung, präzise und vorhersagbare<br />

Ergebnisse zu produzieren.<br />

Meist empfiehlt es sich, die Veränderungen<br />

schrittweise und systematisch<br />

vorzunehmen. Dabei sollten Sie mithilfe<br />

der beiden Schaltflächen Save beziehungsweise<br />

Save As in der Werkzeugleiste<br />

Zwischenergebnisse speichern. Auf<br />

diese Weise nähern Sie sich möglicherweise<br />

an das bekannte „Flame 149“ û an.<br />

Listing 1<br />

01 $ libtoolize<br />

02 $ aclocal<br />

03 $ automake<br />

04 $ autoconf<br />

Fractal Fr0st 1.4<br />

LU/fr0st/<br />

05 $ ./configure && make && sudo<br />

make install<br />

06 $ flam3‐render < test.flam3<br />

07 $ python /usr/local/src/<br />

fr0st‐1.4‐src/fr0st.py<br />

Installation<br />

Da die Software nicht in den Repositories der gängigen Distributionen<br />

liegt, gilt es, sie von Hand einzurichten. Unter Ubuntu 12.04<br />

und 12.10 klappt das Setup besonders einfach. Laden Sie dazu zunächst<br />

die Quelltext-Archive aus dem Netz û oder von der Heft-DVD,<br />

und entpacken Sie sie mit dem Befehl tar xf fr0st‐1.4‐src.<br />

tgz in ein beliebiges Verzeichnis. Dabei entsteht der Ordner<br />

fr0st‐1.4‐src/, in den Sie anschließend wechseln.<br />

Hier führen Sie mit Root-Rechten das Skript install‐dependencies.sh<br />

aus, das im Idealfall beim Ablaufen nur Informationen beziehungsweise<br />

einfache Warnungen des Compilers ausgibt. Es entstehen<br />

unter anderem die vier Programmdateien flam3‐animate,<br />

flam3‐genode, flam3‐render und flam3‐convert, die Sie bei<br />

Bedarf direkt aufrufen. Verschiedene Beispiele dazu liefert die Textdatei<br />

flam3‐2.8‐src/README.txt. Die Installation der Dateien im<br />

System erfordert die Eingabe des Passwortes.<br />

Bei anderen Distributionen können Sie nicht auf das Skript zurückzugreifen,<br />

sondern müssen die Installation komplett selbst erledigen.<br />

Sofern Sie die Entwicklungspakete für Libz, Libpng, Libjpeg und<br />

Libxml2 installiert haben, genügt dazu der typische Dreisatz (Lis ting 1,<br />

Zeile 5). Treten dabei Probleme auf, erzeugen Sie die Konfiguration<br />

neu (Zeile 1 bis 4). Anschließend wiederholen Sie den Dreisatz.<br />

Nun testen Sie die Installation kurz mithilfe eines Aufrufes von<br />

flam3‐render (Zeile 6). Klappt alles, starten Sie Fr0st als normaler<br />

Anwender im Terminal mit dem Befehl aus Zeile 7.<br />

05.2013 www.linux-user.de<br />

63


Schwerpunkt<br />

UBUNTU<br />

user<br />

Fractal Fr0st<br />

1 Das Steuerfenster von Fr0st mit dem als Transform Editor bezeichneten Dialog für die wesentlichen Einstellungen. Die interaktive<br />

<strong>Vorschau</strong> erlaubt das Verschieben des fraktalen Gebildes mit der Maus, wenn der Ausschnitt nicht stimmt.<br />

Die Namen aller gespeicherten Parametersätze<br />

finden Sie nach dem Speichern<br />

in einer Liste links im Programmfenster.<br />

Feinschliff<br />

Ist das Gebilde nur zu groß geraten oder<br />

in der <strong>Vorschau</strong> falsch platziert, dann<br />

fällt Abhilfe leicht: Verschieben Sie den<br />

Ausschnitt einfach mit der Maus. Fr0st<br />

übernimmt die neuen Werte dann in die<br />

Feineinstellungen. Weiteres – wie etwa<br />

ein Anpassen der Größe – stellen Sie unter<br />

Adjust ein. Dort rotieren Sie bei Bedarf<br />

das fraktale Gebilde und steuern<br />

mit den Reglern für Brightness, Gamma,<br />

Gamma Threshold, Vibrancy sowie Highlight<br />

Power die Form und Sichtbarkeit<br />

der berechneten Linien.<br />

Dabei stellen Sie bei Bedarf ein, welche<br />

Bereiche hell erscheinen und welche in<br />

der Dunkelheit fast verschwinden. Um<br />

Details besser zu erkennen, nutzen Sie<br />

das externe <strong>Vorschau</strong>fenster Flame<br />

Preview . Sobald die Form des Gebildes<br />

stimmt, beginnen Sie mit der Farbgebung<br />

im Gradient Editor 2 .<br />

Dabei setzen Sie entweder vordefinierte<br />

Verläufe ein (ganz unten im Gradient-Browser)<br />

oder wenden selbst definierte<br />

Gradienten an. Besonders einfache<br />

erzeugen Sie einen neuen Verlauf<br />

durch einen Doppelklick auf den Verlaufsbalken.<br />

Fr0st berechnet dann den<br />

neuen Gradienten auf Basis des gerade<br />

angezeigten und wendet ihn auch<br />

gleich auf das aktuelle Bild an. Der Schieberegler<br />

unterhalb erlaubt es, die Abfolge<br />

der Farben zu verschieben und damit<br />

die Zuordnung im Bild zu ändern.<br />

Das dritte Fenster mit dem Titel Rendering<br />

Flame … steuert nun, wie die Software<br />

das Bild genau generiert 3 . Dabei<br />

behalten Sie am besten zunächst die<br />

meisten der vorgegebenen Parameter<br />

bei. Lediglich die voreingestellte Größe<br />

(Size) sollten Sie in jedem Fall an die<br />

Möglichkeiten der Hardware anpassen.<br />

Die maximale auf einem System berechenbare<br />

Bildgröße hängt vom Hauptspeicher<br />

ab. Sie finden die beiden relevanten<br />

Angaben unter Resource Usage:<br />

Während Required Memory den bei der<br />

angegebenen Fraktalgröße benötigten<br />

Speicher angibt, zeigt Free Memory, wie<br />

viel RAM tatsächlich bereitsteht. Fr0st<br />

speichert die Bilder in dem unter Output<br />

Destination eingestellten Verzeichnis.<br />

Zwei weitere Einstellungen beeinflussen<br />

den Speicherbedarf der Bilder maßgeblich:<br />

der verwendete <strong>Daten</strong>typ, den<br />

Sie unter Buffer depth einstellen, sowie<br />

das Spatial Oversampling. In der Regel<br />

genügen 32-Bit-Gleitkommazahlen sowie<br />

ein Oversampling-Wert von 2 völlig.<br />

Neuer Hintergrund<br />

Voreingestellt generiert Fr0st Bilder mit<br />

einem schwarzen Hintergrund, was die<br />

filigranen Strukturen der fraktalen Gebil-<br />

64 www.linux-user.de<br />

05.2013


Fractal Fr0st<br />

UBUNTU<br />

Schwerpunkt<br />

user<br />

de sehr gut betont. Mit Gimp ändern Sie<br />

dies bei Bedarf – die globale Farbauswahl<br />

(mit sehr niedriger Schwelle) macht<br />

es möglich. Haben Sie der Ebene zuvor<br />

einen Alpha-Kanal spendiert (im Menü<br />

Ebenen durch Alphakanal hinzufügen),<br />

lassen sich die Bereiche vollständig entfernen,<br />

sodass Transparenz entsteht.<br />

Es geht aber auch einfacher: Im Fr0st-<br />

Fenster Rendering Flame … erlaubt die<br />

Schaltfläche PNG Transparency, direkt<br />

Bilder mit einem transparenten Hintergrund<br />

zu erzeugen 3 . Diesen gestalten<br />

Sie dann mit Gimp durch das Anlegen<br />

einer neuen Ebene ganz individuell.<br />

Fraktaler Wahnsinn<br />

Fr0st bietet noch wesentlich weitergehende<br />

Features. Schon bei den drei einfachsten<br />

Fraktalen linear, julia und heard<br />

variieren Sie bei Bedarf über ein einfaches<br />

Python-Skript grundlegende Parameter<br />

und zeigen das Ergebnis im <strong>Vorschau</strong>fenster<br />

an.<br />

In der Werkzeugleiste finden Sie dazu<br />

etwas rechts der Mitte die mit Run Script<br />

bezeichnete Schaltfläche. Über diese<br />

starten Sie ein Skript, das systematische<br />

Veränderungen wichtiger Parameter<br />

vornimmt und gleichzeitig die <strong>Vorschau</strong><br />

aktualisiert. Bei Bedarf werfen Sie mit<br />

den rechten der drei Schaltflächen einen<br />

Blick ins Skript oder editieren es.<br />

2 Erst die Form, dann die Farbe: Haben Sie die grundlegenden geometrischen <strong>Daten</strong><br />

definiert, hilft der Gradient Editor beim Einstellen von Farbverläufen zum Kolorieren.<br />

Bei der Installation aus den Quellen<br />

packt Fr0st bereits eine Reihe Skripte mit<br />

auf die Platte, die noch viel weitergehende<br />

Funktionen bieten. Sie laden ein<br />

Skript aus dem Verzeichnis ~/.fr0st/<br />

scripts/batches/ mit der Schaltfläche<br />

Open Script und starten es wiederum via<br />

Run Script. Jedes dieser Sets dient wieder<br />

als Basis für eigene fraktale Objekte.<br />

Alternativ passen Sie das Skript selbst<br />

nach Ihren Vorstellungen an.<br />

Im Test erzeugten die Skripte gnarl.py,<br />

lolpolpolpo.py, edisc_julian.py und<br />

modified_flipped_disc.py recht außergewöhnliche<br />

Ergebnisse. Sie sollten allerdings<br />

viel Zeit einplanen, wenn Sie<br />

sich näher mit den Fr0st-Skripten beschäftigen<br />

wollen.<br />

Fazit<br />

Für den maximalen Spaß – sprich: eine<br />

gute Auflösung der Bilder – sollte der<br />

Rechner aber über viel RAM verfügen<br />

und mindestens einen Dual-Core-Prozessor<br />

mitbringen. Wollen Sie die Bilder<br />

weiterbearbeiten, aktivieren Sie die PNG-<br />

Transparenz. Weitere Tipps finden Sie im<br />

Fr0st-Wiki û. (agr) n<br />

3 Im Fenster Rendering Flame … bestimmen Sie die Qualität des zu<br />

berechnenden Bildes und starten anschließend den Prozess.<br />

Weitere Infos und<br />

interessante Links<br />

www. linux‐user. de/ qr/28816<br />

05.2013 www.linux-user.de<br />

65


Schwerpunkt<br />

UBUNTU<br />

user<br />

I-Nex<br />

Hardware-Informationen auslesen mit I-Nex<br />

Gründliche Inventur<br />

Grafikkarte, Prozessor und<br />

Festplatten – mit I-Nex haben<br />

Sie alle wichtigen Informationen<br />

über die Hardware<br />

im Blick. Vincze-Aron Szabo<br />

Die Informationen über ein System, wie<br />

sie Ubuntu in den Einstellungen präsentiert,<br />

erweisen sich in vielen Fällen als zu<br />

unübersichtlich: Entweder liegen die <strong>Daten</strong><br />

über Prozessor, Festplatten und<br />

Schnittstellen an verschiedenen Stellen<br />

oder sie gehen, wie unter System | Informationen,<br />

mitunter zu wenig in die Tiefe.<br />

Hier bietet sich I-Nex û als Alternative<br />

an. Es bündelt die <strong>Daten</strong> zu den Geräten<br />

in einer übersichtlichen Oberfläche. Auf<br />

diese Weise brauchen Sie sich nicht<br />

durch die einzelnen Tools der jeweiligen<br />

Desktop-Umgebung oder durch die Befehle<br />

für die Kommandozeile zu quälen.<br />

Andere bekannte Hilfswerkzeuge wären<br />

CPU-G û und HardInfo û.<br />

Die Installation geht dank Sudo und<br />

den richtigen PPAs leicht von der Hand.<br />

I-Nex setzt auf die Programmiersprache<br />

Gambas, einen objektorientierten Basic-<br />

Dialekt, der unter Linux als Ersatz für<br />

Visu al Basic fungiert. Der Name Gambas<br />

steht als rekursive Abkürzung für „Gambas<br />

Almost Means Basic“.<br />

I-Nex benötigt aktuelle Gambas3-<br />

Pakete , die Sie weder in der LTS-Version<br />

12.04 noch in Ubuntu 12.10 finden.<br />

Fügen Sie daher zur Installation die PPAs<br />

für die aktuelle Version manuell hinzu,<br />

Readme<br />

© Limbi007, 123RF<br />

I-Nex sammelt alle wichtigen Hardware-<br />

Informationen und stellt sie in einer übersichtlichen<br />

grafischen Oberfläche dar.<br />

66 www.linux-user.de<br />

05.2013


I-Nex<br />

UBUNTU<br />

Schwerpunkt<br />

user<br />

1 In zehn Reitern bietet I-Nex eine Übersicht aller wichtigen<br />

Hardware- und Systeminformationen. Hier erfahren Sie beispielsweise<br />

alles über den Hauptprozessor.<br />

2 Während die meisten Reiter übersichtliche Infos bieten, wirken<br />

die <strong>Daten</strong> unter Drive massiv gequetscht. Das liegt an der fest<br />

vorgegebenen Größe des Programmfensters.<br />

damit die Pakete beim Einspielen von<br />

I-Nex bereitstehen (Listing 1). Für Ubuntu-Derivate<br />

gelten bei der Installation<br />

von I-Nex die gleichen Schritte.<br />

Nach der Installation starten Sie I-Nex<br />

mit dem Befehl i‐nex.gambas oder rufen<br />

das Programm über das Startmenü auf.<br />

Nach dem Start benötigt I-Nex einen<br />

kurzen Augenblick, um die Hardware-<br />

<strong>Daten</strong> zusammenzusuchen, die es dann<br />

per grafischer Benutzeroberfläche ausgibt.<br />

Die Informationen über den Rechner<br />

fasst es in zehn Reitern zusammen.<br />

Detaillierte Infos<br />

In den ersten beiden Reitern finden Sie<br />

<strong>Daten</strong> zu den Prozessoren. Unter CPU<br />

stehen dabei unter anderem die genaue<br />

Bezeichnung des Typs, die Taktfrequenz,<br />

die Anzahl der Kerne und Größe des<br />

Caches 1 . Ein Klick auf Info öffnet den<br />

zum Prozessor passenden Eintrag auf der<br />

Website Cpu‐world. com, die weitere Informationen<br />

über den Prozessor und die<br />

zugehörige Prozessorfamilie bereitstellt.<br />

Den Cache zeigt die Software pro Kern<br />

an. Im Teilbereich Cache haben Sie zudem<br />

die Möglichkeit, über die Auswahlliste<br />

unten rechts den jeweiligen Kern<br />

auszuwählen, für den Sie sich die Angaben<br />

ansehen möchten.<br />

Hilfreiche <strong>Daten</strong> über die Grafikkarte<br />

und die darin verbauten Chipsätze finden<br />

Sie unter GPU. Unter Graphics Card steht<br />

der Name der GPU sowie die Modellnummer.<br />

Um einen schnellen Überblick der<br />

unterstützten Auflösungen zu erhalten,<br />

schauen Sie nur unter Available Resolutions<br />

nach: Neben der minimalen und der<br />

aktuell eingestellten Auflösung nennt<br />

I-Nex hier auch die höchstmögliche.<br />

So finden Sie von Reiter zu Reiter die<br />

wichtigsten Informationen zentral und<br />

mit wenigen Klicks. Etwas schmallippig<br />

Listing 1<br />

$ sudo add‐apt‐repository ppa:nemh/gambas3<br />

$ sudo add‐apt‐repository ppa:i‐nex‐development‐team/stable<br />

$ sudo apt‐get update<br />

$ sudo apt‐get install i‐nex<br />

05.2013 www.linux-user.de<br />

67


Schwerpunkt<br />

UBUNTU<br />

user<br />

I-Nex<br />

gibt sich das Programm unter Mobo (Informationen<br />

zum Motherboard) sowie<br />

unter Sound. Dagegen präsentiert I-Nex<br />

im Reiter Drive umfangreiche Informationen<br />

über die ins System eingebundenen<br />

Laufwerke und Speichermedien 2 .<br />

Neben der Angabe zu Hersteller und<br />

Modell des Laufwerks, der Größe sowie<br />

derzeitig freien Kapazität zeigt I-Nex alle<br />

erdenklichen <strong>Daten</strong> zum Zustand des<br />

ausgewählten Laufwerkes an. Über die<br />

zwei Auswahllisten wechseln Sie bei Bedarf<br />

zu einem anderen Laufwerk beziehungsweise<br />

bei Festplatten einer anderen<br />

Partitionen.<br />

Abgesehen von reinen Infos zur Hardware<br />

gibt I-Nex zusätzlich Auskünfte<br />

über die verwendete Distribution sowie<br />

den Kernel. Auf dem Reiter System erfahren<br />

Sie wichtige Basisdaten zur Linux-<br />

Umgebung: Name, Distribution, Version,<br />

Architektur sowie die Version des eingesetzten<br />

Desktops.<br />

Über den Button Check erfahren Sie,<br />

wie viele Pakete derzeit auf dem System<br />

eingespielt sind. Kernel listet alle auffindbaren<br />

Betriebssystemkerne und hebt dabei<br />

den gerade aktiven hervor. Der hier<br />

angebotene Button Show modules öffnet<br />

ein Fenster, in dem Sie Informationen zu<br />

einzelnen Kernel-Modulen sehen.<br />

Reports generieren<br />

I-Nex bietet einige recht brauchbare Zusatzfunktionen,<br />

um die ermittelten <strong>Daten</strong><br />

mit anderen zu teilen. Die entsprechenden<br />

Werkzeuge erreichen Sie über<br />

die Schaltflächen am unteren linken<br />

Fensterrand. Mit einem Klick auf den<br />

Button links, auf dem Sie ein Kamera-<br />

Symbol sehen, erstellen Sie einen<br />

Screenshot des aktuellen Reiters und<br />

speichern diesen als PNG- oder JPG-<br />

Datei an einem Ort der Wahl.<br />

Alternativ generiert das Programm auf<br />

Wunsch einen umfassenden Bericht in<br />

Textform. Dazu klicken Sie auf das Drucker-Symbol,<br />

über das Sie den Dialog<br />

Generate Report öffnen. Hier wählen Sie<br />

aus, welche Reiter und zusätzliche <strong>Daten</strong><br />

der Bericht enthalten soll. Dabei irritiert<br />

etwas, dass die Software nicht alle Reiter<br />

namentlich nennt. Die auf der rechten<br />

Seite des Dialoges auswählbaren Eigenschaften<br />

enthalten aber die Befehle für<br />

die Kommandozeile, welche die <strong>Daten</strong><br />

für die fehlenden Reiter liefern.<br />

Nach dem Auswählen aller gewünschten<br />

Inhalte legen Sie über das Kontrollkästchen<br />

Send report to nopaste service<br />

fest, ob Sie den Report an einen No-<br />

Paste-Dienst senden wollen. Solche<br />

Dienste machen es überflüssig, lange<br />

Texte in Foren oder Chats einzufügen.<br />

Stattdessen posten Sie einen Link, über<br />

den der hinterlegte Text bereitsteht.<br />

Sollten Sie einen solchen Dienst nutzen<br />

wollen, dann aktivieren Sie einfach das<br />

Kontrollkästchen und wählen den entsprechenden<br />

Dienst aus. Sobald Sie<br />

dann auf Generate klicken, lädt die Software<br />

den Report zum ausgewählten<br />

Dienst hoch, speichert ihn aber unabhängig<br />

davon in jedem Fall lokal im angegebenen<br />

Ordner zusätzlich als Textdatei.<br />

Der Link, unter dem Sie den Report<br />

im Internet erreichen, erscheint in dem<br />

zuvor leeren Textfeld 3.<br />

Fazit<br />

Dank I-Nex kommen Sie schnell und unkompliziert<br />

an Informationen über Geräte<br />

und System, ohne in den Systemeinstellungen<br />

von Ubuntu herumzuklicken<br />

oder komplexe Befehle auf der Kommandozeilen<br />

zu tippen. Die Ansicht der<br />

Informationen ist in den meisten Reitern<br />

recht klar gehalten, erscheint aber gerade<br />

bei den <strong>Daten</strong>trägern etwas überladen.<br />

An dieser Stelle erweist sich die fest<br />

vorgegebene Fenstergröße von I-Nex als<br />

ärgerlicher Nachteil.<br />

Dennoch bietet das Programm alle<br />

grundlegenden Auskünfte über Hardware<br />

und Distribution. Damit erweist<br />

sich I-Nex sowohl bei der Fehlersuche als<br />

auch – dank der unscheinbaren Reportfunktion<br />

– bei der Kommunikation über<br />

E-Mail, Foren oder Social Networks oft<br />

als wertvolle Hilfe. (agr) n<br />

Weitere Infos und<br />

interessante Links<br />

www. linux‐user. de/ qr/ 28695<br />

3 Ausführliche Reports zum Teilen mit anderen erleichtern<br />

die Fehlerbehebung und den Austausch von Informationen.<br />

68 www.linux-user.de<br />

05.2013


JETZT NEU<br />

AM KIOSK!<br />

196 Seiten<br />

im Pocket-Format<br />

für nur 9,80 Euro<br />

QR-Code scannen und<br />

direkt online bestellen!<br />

www.apps-und-tipps.de


Netz&System<br />

Scalpel<br />

Gelöschte Dateien mit Scalpel wiederherstellen<br />

Unterm Messer<br />

© Chris Gander, sxc.hu<br />

Mit dem File-Carver Scalpel<br />

stellen Sie bereits verloren<br />

geglaubte <strong>Daten</strong> in vielen<br />

Fällen komplett oder zumindest<br />

teilweise wieder her.<br />

Falko Benthin<br />

Readme<br />

Mit Scalpel stellen Sie gelöschte Dateien<br />

oder den Inhalt scheinbar defekter <strong>Daten</strong>träger<br />

wieder her. Bei fragmentierten Dateien,<br />

physischen Speicherfehlern oder<br />

schwer erkennbaren Dateienden stößt das<br />

Werkzeug allerdings an seine Grenzen.<br />

Nur noch die lästigen Backup-Files aus<br />

der Arbeit am Projekt löschen und dann<br />

ab in den Feierabend. Doch aus einem<br />

rm *~ wird schnell ein rm * ~, das alle<br />

Dateien aus dem aktuellen Verzeichnis<br />

putzt. Jetzt heißt es, Nerven bewahren,<br />

denn gelöschte <strong>Daten</strong> entfleuchen in aller<br />

Regel nicht direkt ins digitale Nirvana.<br />

Meist löscht das Betriebssystem nur<br />

die Metadaten wie Dateiname, Besitzer<br />

und Speicherort. Die Nutzdaten befinden<br />

sich weiter auf dem Speichermedium,<br />

bis sie überschrieben werden.<br />

Unter Linux existieren etliche als File-<br />

Carver bezeichnete Programme, um solche<br />

<strong>Daten</strong> wiederherzustellen. Derartige<br />

Tools analysieren einen <strong>Daten</strong>träger auf<br />

bestimmte Byte-Muster, die Datei-Headern<br />

und ‐Footern entsprechen, und interpretieren<br />

alles Dazwischenliegende<br />

als zur Datei gehörige Inhalte. Das funktioniert,<br />

solange diese Header und Footer<br />

eindeutig sind, die Dateiinhalte nicht<br />

fragmentiert sind oder von Ihnen verschlüsselt<br />

wurden.<br />

Fehlt ein Footer oder wird er nicht erkannt,<br />

schreibt der Carver so lange alles<br />

in die Wiederherstellungsdatei, bis er auf<br />

den nächsten Header stößt. Daher erweisen<br />

sich nicht nur fragmentierte Files<br />

oder solche mit schlecht erkennbaren<br />

Enden als problematisch, sondern auch<br />

solche, die wiederum Dateien enthalten<br />

– etwa Textdokumente mit eingebetteten<br />

Grafiken. Wer also zu einem derartigen<br />

Werkzeug greift, darf keine Wunder<br />

erwarten, sondern nur das Beste hoffen.<br />

Datei-Skalpell<br />

Der File-Carver Scalpel û kann viele verschiedene<br />

Dateitypen aufspüren. Dabei<br />

spielt es keine Rolle, mit welchem Dateisystem<br />

ein <strong>Daten</strong>träger formatiert wurde:<br />

Scalpel greift auf eine <strong>Daten</strong>bank mit<br />

Headern und Footern von Dateitypen<br />

zurück, um Dateien aufzuspüren.<br />

Viele Distributionen habe ältere Scalpel-Versionen<br />

in ihren Repositories, die<br />

ihre Arbeit gut verrichten, aber nicht<br />

70 www.linux-user.de<br />

05.2013


Scalpel<br />

Netz&System<br />

über den vollen Funktionsumfang<br />

der aktuellen Version 2.0<br />

verfügen, etwa reguläre Ausdrücke<br />

für Header und Footer,<br />

Multithreading, asynchrone<br />

Ein- und Ausgabe oder GPUbeschleunigtes<br />

Carving (sofern<br />

Nvidias CUDA-SDK installiert<br />

ist). Wollen Sie diese Features<br />

nutzen, müssen Sie Scalpel<br />

aus den Quellen übersetzen<br />

(siehe Kasten Installation).<br />

Früher prüften File-Carver<br />

einen <strong>Daten</strong>träger auf Headerund<br />

Footer-Pattern und schrieben<br />

alle Ergebnisse auf einen<br />

neuen <strong>Daten</strong>träger, was reichlich<br />

Speicherplatz erforderte.<br />

Scalpel dagegen geht nur zwei<br />

Mal über einen <strong>Daten</strong>träger,<br />

um alle nötigen Informationen<br />

zusammenzustellen.<br />

Beim ersten Lauf sucht es<br />

Header und vermerkt die<br />

Fundstellen in einer <strong>Daten</strong>bank,<br />

anschließend identifiziert<br />

es die Footer. Dabei berücksichtigt<br />

Scalpel, dass ein<br />

solcher immer auf einen Header folgt,<br />

was die Suche ordentlich beschleunigt.<br />

Nun existiert ein Index mit den Positionen<br />

der Header und Footer, der die<br />

Grundlage für den zweiten Durchgang<br />

bildet. Bei diesem bringt Scalpel Header<br />

und Footer zusammen und schreibt die<br />

Fundstücke ohne nochmaligen Plattenzugriff<br />

direkt aus dem Arbeitsspeicher<br />

heraus an einen neuen Speicherort.<br />

Begrenzte Größe<br />

Bevor Scalpel sich auf die Suche nach<br />

verloren gegangenen <strong>Daten</strong> begibt, liest<br />

es die Konfigurationsdatei scalpel.conf<br />

ein, die neben den zu suchenden Dateitypen<br />

samt Header und Footer auch die<br />

minimale und maximale Größe der Dateitypen<br />

enthalten darf. Letzteres verhindert,<br />

dass eine Ergebnisdatei auf unrealistische<br />

Größen anschwillt, wenn der<br />

Footer fehlt. Hier sollten Sie vor dem<br />

Carving individuelle Einstellungen vornehmen,<br />

die die Suche auf ein Minimum<br />

an Dateitypen und ‐größen begrenzen.<br />

1 Kennt Scalpel Header- und Footer-<strong>Daten</strong> eines zu restaurierenden Dateityps nicht, dann gilt es,<br />

diese anhand von Beispielen zu ermitteln, um sie in der Scalpel-Konfigurationsdatei einzutragen.<br />

2 Sie dürfen die scalpel.conf mit beliebigen eigenen Headern und Footern ergänzen. Als<br />

zusätzliches Kriterium dienen bei Bedarf minimale und maximale Dateigrößen.<br />

Nun auf zu einem Beispiel für eine Rettungsaktionen.<br />

Szenario 1, ein Haushalt<br />

ohne Fernseher mit mindestens einem<br />

Kleinkind: Der Vater hat die über mehrere<br />

Tage aus der ARD-Mediathek kopierten<br />

Sandmännchen-Sendungen versehentlich<br />

gelöscht. Der sandmännchengewohnte<br />

Nachwuchs drückt seinen<br />

Ärger lautstark aus.<br />

In der scalpel.conf findet sich zwar<br />

kein Eintrag für das Format MP4 – aber<br />

noch vorhandene Sandmann-Dateien<br />

zeigen eine erfreuliche Konsistenz, was<br />

die Header angeht 1 . Mit deren <strong>Daten</strong><br />

füttert der Vater jetzt die scalpel.conf.<br />

An erster Stelle des neuen Eintrages 2<br />

steht die Datei-Endung, die potenzielle<br />

Treffer erhalten sollen. Das „y“ legt fest,<br />

dass Scalpel bei Header und Footer zwischen<br />

Groß- und Kleinschreibung unterscheidet.<br />

Es folgen Mindest- und Maximalgröße<br />

der Dateien – Sandmann-MP4s<br />

belegen in der Regel zwischen 30 und<br />

70 MByte. Zuletzt folgt der Header. Ein<br />

Footer lässt sich nicht angeben, da er in<br />

jeder MP4-Datei unterschiedlich ausfällt.<br />

Installation<br />

Zur Installation von Scalpel 2.0 laden Sie<br />

das Quelltext-Archiv û herunter und entpacken<br />

es in ein beliebiges Verzeichnis.<br />

Dann wechseln Sie dorthin und übersetzen<br />

das Tool mit ./configure, gefolgt<br />

von make und make install (Letzteres<br />

als root). Sollen die Binärdateien nicht in<br />

/usr/local landen, müssen Sie Configure<br />

ein entsprechendes ‐‐prefix<br />

übergeben. Bevor Sie die Quelldateien<br />

löschen, sollten Sie scalpel.conf an<br />

einen anderen Ort kopieren: Diese Konfigurationsdatei<br />

enthält die Header und<br />

Footer der unterstützten Dateitypen.<br />

05.2013 www.linux-user.de<br />

71


Netz&System<br />

Scalpel<br />

Das Vorgehen ähnelt<br />

dem oben geschilderten.<br />

In der scalpel.conf gilt<br />

es, alle Zeilen auszukommentieren,<br />

bis auf eine,<br />

die Header und Footer<br />

der gut dokumentierten<br />

Arbeit beschreibt:<br />

tex y 300:50000 /%.{U<br />

1,20}\.tex/ /%.{1,20U<br />

}\.tex\sEnd/<br />

3 Sandmännchen im Glück: Sechs Dateien wurden wiederhergestellt. Da ein eindeutiger Footer als Angabe<br />

fehlte, ging der File-Carver Scalpel auf Nummer sicher und reizte die maximale Dateigröße aus.<br />

Weitere Infos und<br />

interessante Links<br />

www. linux‐user. de/ qr/ 29120<br />

Anschließend startet der Vater die Sandmännchen-Rettungsaktion<br />

auf der Kommandozeile<br />

mit der Anweisung<br />

$ scalpel ‐c scalpel.conf ‐o sandU<br />

mann_recovered /dev/sdd1<br />

Daraufhin kratzt Scalpel tatsächlich noch<br />

sechs Dateien von der Platte. Alle sind<br />

(aufgrund der fehlenden Footer-Angabe)<br />

genau 70 000 000 Bytes lang und enthalten<br />

eine verloren geglaubte Sandmännchen-Folge<br />

– mit einem mehr oder minder<br />

großen Batzen <strong>Daten</strong>schrott am<br />

Ende 3 . Der Nachwuchs jubelt.<br />

Save my LaTeX<br />

Szenario 2: Der USB-Stick mit Ihrer in<br />

TeX gegossenen, geisteswissenschaftlichen<br />

Semesterarbeit verabschiedet<br />

sich aufgrund eines physischen Defektes<br />

im Startsektor. Glück im Unglück: Sie haben<br />

die Arbeit pedantisch verfasst und<br />

jede Datei am Anfang und Ende mit<br />

%Dateiname.tex und %Dateiname.tex<br />

End kommentiert. Das erhöht die Chancen<br />

ungemein, dass Sie die Inhalte noch<br />

einmal im Dschungel der Bytes auf dem<br />

defekten <strong>Daten</strong>träger wiederfinden.<br />

Der reguläre Ausdruck û<br />

weist Scalpel an, nach <strong>Daten</strong>fragmenten<br />

zu suchen,<br />

die mit %.{1,20}\.tex<br />

beginnen und mit<br />

%.{1,20}\.tex\sEnd<br />

enden. Der Ausdruck<br />

.{1,20} steht für mindestens<br />

1 und maximal<br />

20 beliebige Zeichen. Der<br />

folgende Punkt steht für<br />

jenen vor dem Suffix tex. Das „\s“ im<br />

Footer bezeichnet ein Leerzeichen. Zwar<br />

unterstützen reguläre Ausdrücke auch<br />

die Quantoren *, +, ? und Ausdrücke wie<br />

[:alnum:], aber die Praxis zeigt, dass<br />

Scalpel mit diesen wenig anfangen<br />

kann. Nun kopieren Sie mittels dd den<br />

Inhalt des geschrotteten USB-Sticks in<br />

die Datei stick.dd.img und lassen anschließend<br />

folgenden Befehl darauf los:<br />

$ scalpel ‐c scalpel.conf ‐o lostU<br />

_texfiles stick.dd.img<br />

In unserem Test brauchte Scalpel gerade<br />

einmal vier Sekunden, um ein 2 GByte<br />

großes Abbild zu durchsuchen und alle<br />

TeX-Dateien wiederherzustellen.<br />

Fazit<br />

Scalpel kann kein Backup ersetzen, erweist<br />

sich aber in vielen Fällen als Retter<br />

in der Not. Wunder dürfen Sie freilich<br />

keine erwarten, denn bei fragmentierten<br />

Dateien, physischen Speicherfehlern<br />

oder schwer erkennbaren Dateienden<br />

stößt Scalpel an seine Grenzen. Die vermeintlich<br />

geretteten Dateien erweisen<br />

sich dann oft als unbrauchbar. (jlu) n<br />

72 www.linux-user.de<br />

05.2013


Digitales ABO<br />

<strong>LinuxUser</strong>: Das Monatsmagazin für die Praxis<br />

DIGISUB *<br />

nur 56,10 €<br />

im Jahr (12 PDFs)<br />

* Digitales Abo, jederzeit kündbar<br />

Jetzt bestellen unter:<br />

www.linux-user.de/digisub<br />

Telefon: 07131 /2707 274<br />

Fax: 07131 / 2707 78 601<br />

E-Mail: abo@linux-user.de<br />

Lesen Sie News und Artikel<br />

fast 1 Woche vor dem Kiosk!<br />

Sparen Sie im Abo 15% im<br />

Vergleich zum PDF-Einzelkauf!<br />

Nutzbar auf Notebook und<br />

PC, Tablet oder Smartphone!


Hardware<br />

Arduino-Workshop (Teil 1)<br />

Arduino-Programmierung<br />

Denken und Fühlen<br />

Der Arduino lockt mit Offenheit<br />

und Portabilität: Die<br />

Schaltung des Minirechners<br />

ist ebenso frei lizenziert wie<br />

die zugehörige IDE. Grund<br />

genug, sich mit der Programmierung<br />

zu beschäftigen.<br />

Peter Kreußel<br />

Readme<br />

Dieser Artikel führt in die Programmierung<br />

des Arduino-Minirechners unter Linux ein.<br />

Er stellt auch Schaltpläne zum Steuern größerer<br />

Lasten und für einen Morsetaster vor.<br />

Mit dem Slogan „Ein Arduino fühlt und<br />

steuert die physische Welt besser als ein<br />

Desktop-PC“ bewirbt der Hersteller û<br />

seine preisgünstige Mikroprozessor-<br />

Plattform. Das Aufmacherbild zeigt die<br />

Basisvariante Arduino Uno, das<br />

53 x 68 Millimeter große Einsteigermodell<br />

der Minicomputer-Serie. Es kostet<br />

nur etwa 30 Euro û und basiert auf einem<br />

programmierbaren ATmega328-<br />

Prozessor.<br />

Sechs analoge Eingänge (0 bis 5 Volt)<br />

und vierzehn Ausgangs-Pins (mit bis zu<br />

40 mA Leistung) für Verbraucher prädestinieren<br />

den SBC als Ersatz für den bei<br />

aktuellen PCs meist fehlenden programmierbaren<br />

Parallelport. Die mit 16 MHz<br />

getaktete CPU überwacht und steuert<br />

diese Schnittstellen zur Außenwelt. Im<br />

Betrieb nimmt der Arduino nur rund<br />

50 mA Strom bei 7 bis 12 Volt auf û.<br />

Mit dem PC kommuniziert der Winzling<br />

via USB, was unter Linux reibungslos<br />

funktioniert. Dies gilt ebenfalls für die<br />

unter der GPL vertriebene Entwicklungsumgebung<br />

û, die auf Knopfdruck C-<br />

oder C++-Code in den 32 KByte großen<br />

Flash-Speicher des Arduino hochlädt<br />

und diesen anschließend startet.<br />

Die Baupläne aller Arduino-Modelle<br />

stehen ebenfalls unter einer freien<br />

Lizenz û. Sie dürfen sich Ihren Minicomputer<br />

also auch selbst zusammenlöten,<br />

wenn Sie die nötige Fingerfertigkeit für<br />

den Umgang mit winzigen Mikroprozessor-Pins<br />

mitbringen.<br />

Einfach anklicken<br />

Obwohl viele mit C oder C++ etwas anderes<br />

verbinden: Neben dem günstigen<br />

Preis macht gerade die einfache Programmierung<br />

den Arduino für den Einstieg<br />

in die Mikroprozessor-Programmierung<br />

interessant. Von der üblichen Komplexität<br />

der Embedded-Programmierung<br />

ist hier nichts zu spüren: Ein Knopfdruck<br />

in der Arduino-IDE compiliert den<br />

Quellcode, lädt ihn auf den Minirechner<br />

hoch und startet ihn.<br />

76 www.linux-user.de<br />

05.2013


Arduino-Workshop (Teil 1)<br />

Hardware<br />

Tief gehendes C- oder gar C++-Knowhow<br />

brauchen Sie für die Arduino-Programmierung<br />

nur sehr selten. Auch die<br />

beiden Beispielprogramme, die dieser<br />

Artikel vorstellt, kommen ohne manuelle<br />

Speicherverwaltung mit malloc() und<br />

komplexe C++-Klassen aus.<br />

Das erste Schaltungs- und Programmierexempel<br />

lässt sechs helle LEDs im<br />

von der Shell aus frei programmierbaren<br />

Rhythmus blinken. Die Schaltung eignet<br />

sich, um Zustände auf einem über USB<br />

angeschlossenen Computer oder von<br />

Serverdiensten optisch darzustellen. Einmal<br />

programmiert, blinkt der Minicomputer<br />

ohne Verbindung zum PC weiter.<br />

Im zweiten Beispiel lauscht der Arduino<br />

auf den über einen Taster eingegebenen<br />

Morsecode und vergleicht ihn mit<br />

einer Punkt-Strich-Zeichenfolge. Am<br />

Klingelknopf angeschlossen, könnte der<br />

Arduino damit den Türöffner steuern<br />

und nur solchen Besuchern Zugang gewähren,<br />

die einen (bis zu 100 Zeichen<br />

langen) geheimen Rhythmus läuten.<br />

ßen. Anders die roten LEDs: Bei einer zulässigen<br />

Eingangsspannung zwischen<br />

1,6 und 2,4 Volt würden sie ohne vorgeschalteten<br />

Widerstand zwar nicht sofort<br />

durchbrennen, aber nach kurzer Zeit<br />

ausfallen. Der Vorwiderstand muss beim<br />

roten Kanal also gut 3 Volt verbraten. Bei<br />

einem Stromverbrauch der LED von<br />

35 mA gilt es, nach dem Ohmschen Gesetz<br />

grob 100 Ohm vorzuschalten. Das<br />

entspricht Pi mal Daumen einem etwas<br />

weniger als halb geöffneten 250-Ohm-<br />

Poti. Damit sich die Helligkeit aller Kanäle<br />

regeln lässt, schalten wir diesen Potentiometer<br />

zusätzlich vor die grünen<br />

und blauen LEDs.<br />

Verstärkung gefragt<br />

Die Ausgangspins des Arduino schaffen<br />

maximal 40 mA, was für die High-Power-<br />

LEDs knapp ausreicht. Für eine universell<br />

erweiterbare Schaltung steuern wir sie<br />

indirekt über einen Feldeffekt-Transistor<br />

des Typs IRLIZ44N, der im Elektronik-<br />

Beispielprogramme<br />

LU/arduino/<br />

SBC: Single Board Computer. Gängige Bezeichnung<br />

für Rechnersysteme, die alle zum<br />

Betrieb notwendigen Komponenten auf einer<br />

Platine zusammenfassen.<br />

Mehr Licht<br />

Ohne externe Bauteile kann der Arduino<br />

bloß mit einer winzigen LED in der Nähe<br />

des USB-Anschlusses blinken. Sie können<br />

ein simples Blink-Programm von der<br />

Arduino-Homepage auf Ihr Gerät laden,<br />

um es damit zu testen.<br />

Zu mehr Leuchtkraft verhelfen dem<br />

Minicomputer in der Beispielschaltung<br />

sechs High-Power-LEDs 1 . Bei dem eingesetzten<br />

Typ des Herstellers Luckylight<br />

verkraften Blau und Grün zwischen<br />

2,8 und 4 Volt, lassen sich also ohne Vorwiderstand<br />

paarweise hintereinander direkt<br />

an die 7,5 Volt des spannungsstabilisierten<br />

Arduino-Schaltnetzteils anschlie-<br />

TIPP<br />

Falls die IDE sich beklagt, dass sie den am<br />

USB-Port angeschlossenen Arduino nicht<br />

findet, kann das am Modem-Manager liegen,<br />

der versucht, das Gerät als Modem<br />

anzusprechen. Beenden Sie dann den<br />

Modem-Manager – oder warten Sie einfach<br />

ein halbe Minute, bis er aufgibt.<br />

1 Eine einfache, 10 x 10 Zentimeter große Rasterplatine bietet genug Platz für unsere<br />

Schaltung. Diese besteht aus einem Taster, den über Power-Feldeffekt-Transistoren angesteuerten<br />

hellen LEDs sowie den aufmontierten Arduino.<br />

05.2013 www.linux-user.de<br />

77


Hardware<br />

Arduino-Workshop (Teil 1)<br />

handel leicht zu bekommen ist. Er schaltet<br />

zwischen seinen Drain und Source<br />

genannten Pins – Sie sehen diese in Abbildung<br />

2 rechts – Lasten bis zu 30 Ampere<br />

bei 55 Volt. Die FET-Schaltung verkraftet<br />

also wesentlich mehr als die einfachen<br />

Blinklichter.<br />

Die Source des FETs verschalten wir direkt<br />

mit Masse, den Drain-Pin verbinden<br />

wir mit der Kathode der LEDs. Abbildung<br />

2 zeigt auf der rechten Seite das LED-<br />

Pinout. Zwischen LED-Anode und Pluspol<br />

liegt noch der erwähnte 250-Ohm-<br />

Poti als Vorschaltwiderstand.<br />

Verbleiben noch zwei Widerstände<br />

pro Kanal: Ein 10-kOhm-Widerstand<br />

schließt den Transistor trotz eventueller<br />

Einstreuung zuverlässig, wenn der Ausgangspin<br />

des Arduino 0 Volt liefert. Der<br />

1-kOhm-Widerstand schützt den Arduino<br />

vor Überlastung, falls mit der Schaltung<br />

dahinter etwas nicht stimmt.<br />

Wir haben die mit DIGITAL bezeichneten<br />

Pins 3, 5 und 6 als Ausgänge gewählt.<br />

Diese am Arduino mit ~ markierten Pins<br />

sind nicht nur als einfache Schalter ausgelegt,<br />

sie dimmen die LEDs auch durch<br />

Ein- und Ausschalten im KHz-Bereich<br />

(Pulse Width Modulation, PWM).<br />

Für das zweite Beispiel fehlt noch ein<br />

einfacher Taster. Ist er geöffnet, zieht ein<br />

10-kOhm-Widerstand Pin 8 auf 0 Volt.<br />

Bei geschlossenem Taster liegen die<br />

5 Volt aus dem mit 5V gekennzeichneten<br />

Ausgang am Arduino-Board an. Verbinden<br />

Sie den Taster auf keinen Fall mit<br />

den 7,5 Volt der LED-Schaltung: Das würden<br />

den Arduino zerstören.<br />

Blinkrhythmus<br />

Das komplette Listing zur Blinkschaltung<br />

finden Sie auf der Heft-DVD sowie unter<br />

http:// www. linux‐user. de/ Downloads/​<br />

2013/ 05. Im Folgenden stellen wir Ihnen<br />

kurz die wesentlichsten Abschnitte des<br />

verwendeten Codes vor.<br />

Der Inhalt von setup() lässt sich mithilfe<br />

der Referenz zur Arduino-Programmierumgebung<br />

û einfach verstehen: Er initialisiert<br />

den seriellen Port mit dem für<br />

unsere Zwecke ausreichenden Tempo<br />

von 9600 Bit pro Sekunde (Serial.begin(9600))<br />

und schaltet die Pins 3, 5 und<br />

6 vom hochohmigen Input-Modus in<br />

den niederohmigen Output-Modus<br />

(pinMode(int Pin, OUTPUT)). Details zu<br />

pinMode() und Serial liefert wie immer<br />

das Handbuch der Hardware.<br />

Zeitschleife<br />

Den Kern der sich endlos wiederholenden<br />

Hauptschleife loop() bildet der Aufruf<br />

der benutzerdefinierten Funktion<br />

rhythmCycle(). Eine Verzögerungsschleife<br />

am Ende der Schleife (Listing 1)<br />

sorgt dafür, dass diese Funktion nur alle<br />

10 000 Mikrosekunden aufgerufen wird.<br />

Die in der Arduino-Laufzeitumgebung<br />

vordefinierte Funktion micros() liefert<br />

die Mikrosekunden seit dem Programm-<br />

Listing 1<br />

while((micros() ‐ lastTimeSlot<br />

) < (timeSlot) && (micros() ><br />

lastTimeSlot)) {}<br />

lastTimeSlot = micros();<br />

Listing 2<br />

2 Die Analogschaltung beruht ausschließlich auf Bauteilen, die im einschlägigen Elektronikhandel<br />

leicht zu bekommen sind. Die Montage auf der Leiterplatte hat den Autor<br />

trotz lange Jahre zurückliegender Löterfahrung nicht überfordert.<br />

void rhythmCycle(){<br />

// alle Farben durchzählen<br />

for(int color = 0; color 0){<br />

RhythmCounter[color]‐‐;<br />

} else {<br />

toggleState(color);<br />

RhythmCounter[color] =<br />

Rythm[color]<br />

[RythmPointer[color]];<br />

if(RythmPointer[color] <<br />

RythmMaxIndex[color]){<br />

RythmPointer[color]++;<br />

} else {<br />

RythmPointer[color] = 0;<br />

}<br />

}<br />

}<br />

}<br />

78 www.linux-user.de<br />

05.2013


Arduino-Workshop (Teil 1)<br />

Hardware<br />

start. Die Schleife „hängt“ so lange, bis<br />

entweder timeSlot Mikrosekunden vergangen<br />

sind oder der Zeitzähler überläuft,<br />

was etwa alle 70 Minuten passiert. Vorher<br />

übergibt loop()an rhythmCycle(), das<br />

für das Ein- und Ausschalten der LEDs<br />

verantwortlich ist (Listing 2).<br />

Die äußerste Schicht bildet eine<br />

Schleife über die color-Werte von 0<br />

bis 2, die für Rot, Grün und Blau stehen.<br />

Die LEDs jeder Farbe sollen eine definierte<br />

Anzahl von Zyklen, sprich: Aufrufen<br />

von rhythmCycle(), im gleichen Zustand<br />

verharren. Dazu zählt der If-Zweig<br />

der Abfrage den Inhalt des Arrays<br />

RhythmCounter[color] bis auf null herunter.<br />

Dieses Array wurde außerhalb jeder<br />

Funktion, also mit globaler Gültigkeit,<br />

folgendermaßen definiert:<br />

int RhythmCounter[3] = {Wert,WertU<br />

,Wert};<br />

Sie hängen also bei der Definition lediglich<br />

die Zahl der Array-Elemente in eckigen<br />

Klammern an den Variablennamen<br />

an. Die Werte eines Arrays initialisieren<br />

Sie mit einer Liste in geschweiften Klammern.<br />

In C ist die Array-Länge nach der<br />

Deklaration unveränderlich, der Lesezugriff<br />

auf RhythmCounter û würde ohne<br />

Fehler einen undefinierten Wert liefern,<br />

ein Schreibzugriff führt zum Absturz.<br />

Spannender als der einfache Zähler im<br />

If-Zweig fallen die von else{} umschlossenen<br />

Zeilen aus: Sie laden einen neuen<br />

Wert mit den Zeitzyklen bis zum nächsten<br />

Blinken nach RhythmCounter[color].<br />

Zuvor schaltet toggleState(color) aber<br />

den Zustand der color entsprechenden<br />

LED um. Dazu invertiert es den Bool-<br />

Wert im Array LEDState[color] und<br />

setzt den Ausgabepin mit:<br />

digitalWrite(Pins[color], LEDStatU<br />

e[color]);<br />

Die Zyklen für die An/​Aus-Zeiten einer<br />

Leuchtdiode stehen im zweidimensionalen<br />

Array Rythm[color][i], das global<br />

zu Beginn definiert ist (Listing 3)<br />

Zweidimensionale Arrays versteht C<br />

als Arrays aus Arrays. Die Zahlenwerte in<br />

den eckigen Klammern stehen dabei für<br />

die Anzahl der maximal enthaltenen Arrays<br />

(hier drei) und der maximalen Länge<br />

dieser Arrays vom Typ int. Statt einer<br />

Zahl ist bei den Längenwerten eine<br />

Kons tante erlaubt, in unserem Fall const<br />

int MaxRhythmLength = 254.<br />

Obwohl die inneren Arrays bei der Initialisierung<br />

nur vier Elemente lang sind,<br />

bleibt Speicherplatz für 254 Ganzzahlenwerte<br />

reserviert, um sich die Möglichkeit<br />

offenzuhalten, entsprechend lange<br />

Rhythmusfolgen eingeben zu können.<br />

3 Die dank Java systemübergreifend<br />

lauffähige, GPL-lizenzierte Arduino-IDE<br />

verbirgt die Komplexität der Mikroprozessor-Programmierung.<br />

Rot hervorgehoben<br />

sind der Upload-Button und die Anzeige<br />

des Arduino-Gerätes im Verzeichnis /dev.<br />

Arduino-Programmierung: Basics<br />

Jedes Arduino-Programm muss die Funktionen<br />

void setup(){} und void<br />

loop(){} enthalten. Wie die Namen<br />

schon andeuten, läuft setup() beim Start<br />

des Programms einmal, loop() hingegen<br />

anschließend pausenlos als Endlosschleife.<br />

Wer seine Programmiererfahrung mit<br />

Skriptsprachen gesammelt hat, wird über<br />

das Schlüsselwort void in der Definition<br />

von setup() stolpern. Anders als bei<br />

Skriptsprachen muss man in C stets den<br />

Rückgabewert einer Funktion explizit angeben<br />

– zum Beispiel int für Ganzzahlen,<br />

boolean für wahr/​falsch oder void für<br />

Funktionen ohne Rückgabewert.<br />

Die für C eigentlich obligatorische Trennung<br />

der oft in Header-Dateien (*.h) ausgelagerten<br />

Funktionsdeklarationen und der<br />

endgültigen Implementierung fällt innerhalb<br />

der Arduino-Laufzeitumgebung weg.<br />

Die IDE ( 3 ) erzeugt die Header beim Klick<br />

auf die Schalter Kompilieren oder Upload<br />

stillschweigend, ohne dass Sie das Ergebnis<br />

zu sehen bekommen.<br />

Eine Funktion, die zwei Integer-Zahlen addiert<br />

und wieder einen Ganzzahlwert zurück<br />

gibt, definieren Sie also so:<br />

int add(int Zahl1, int Zahl2){<br />

//C‐Code }<br />

Den Rest erledigt die Arduino-Umgebung.<br />

Jedoch gilt es, zumindest Variablen vor ihrer<br />

Verwendung mit Typenangabe zu deklarieren:<br />

int Ganzzahl;, char Einzelzeichen;<br />

oder float Fließkommazahl;.<br />

Listing 3<br />

int Rythm[3][MaxRhythmLength] = {<br />

{100,100,50,50},<br />

{50,50,100,100},<br />

{50,100,100,50},<br />

};<br />

05.2013 www.linux-user.de<br />

79


Hardware<br />

Arduino-Workshop (Teil 1)<br />

Die Länge eines Arrays muss in C aber<br />

bereits beim Kompilieren feststehen, sodass<br />

sich diese Speicherverschwendung<br />

nur mit einigem Aufwand vermeiden ließe.<br />

Neulinge in der C/​C++-Welt dürfen<br />

aber nicht vergessen, vor dem Schreiben<br />

nach Rhythm[color][i] zu prüfen, dass<br />

i nicht größer ist als MaxRhythmLength,<br />

sonst stürzt der Arduino ab.<br />

Zum Auslesen der Sequenzen aus<br />

Rhythm brauchen wir noch den Zeiger<br />

RythmPointer[color], ein Integer-Array.<br />

Er durchläuft die Werte von null bis<br />

RythmMaxIndex[color], wo anders als in<br />

MaxRhythmLength nicht die maximal erlaubte,<br />

sondern die tatsächliche Elementzahl<br />

in Rythm[color] steht.<br />

Nach dem Auslesen erhöht eine<br />

zweite If/​Else-Verzweigung innerhalb<br />

des else-Blocks den Pointer<br />

RythmPointer[color], außer er ist bereits<br />

bei RythmMaxIndex[color] angelangt.<br />

Dann erhält er den Wert null und<br />

das Auslesen der Verzögerungswerte<br />

aus Rhythm beginnt wieder bei null.<br />

Heiße Rhythmen<br />

Der fest programmierte Anfangsrhythmus<br />

aus nur vier An/​Aus-Sequenzen für<br />

die drei LEDs ist langweilig. Doch wie<br />

schon angeklungen, können Sie Blinkfolgen<br />

aus bis zu 254 Zeitwerten eingeben.<br />

Listing 4<br />

void readRythmString(char color){<br />

int readValuesCount = 0;<br />

int PatternLength = 0;<br />

int Value;<br />

while (readValuesCount <<br />

MaxRhythmLength<br />

&& Serial.peek() != '\n' ){<br />

Value = Serial.parseInt();<br />

Rythm[color][readValuesCount]<br />

= Value;<br />

readValuesCount++;<br />

PatternLength += Value;<br />

}<br />

RythmMaxIndex[color] =<br />

readValuesCount ‐1;<br />

[...]<br />

}<br />

Der Arduino lässt sich über das in der<br />

Statuszeile der Arduino-IDE genannte<br />

TTY, normalerweise /dev/ttyACM0, von<br />

der Konsole aus ansprechen.<br />

Fürs Erste ist jedoch der in die IDE eingebaute<br />

Serial-Monitor bequemer. Öffnen<br />

Sie ihn mit [Umschalt]+[Strg]+[M],<br />

und stellen Sie sicher, dass in den beiden<br />

Ausklapplisten unten im sich öffnenden<br />

Fenster für das Zeilenende Neue Zeile<br />

(NL) sowie die Übertragungsgeschwindigkeit<br />

9600 baud ausgewählt sind.<br />

Geben Sie anschließend rh 31,5<br />

10,28,19,5,25,10,10,10,10,25 ein und<br />

drücken Sie [Eingabe], oder klicken Sie<br />

auf Senden. Der Arduino meldet sich mit<br />

Pattern (188 Zyklen) für Farbe Rot, und die<br />

rote LED blinkt von nun an einen wilden<br />

Rumba. Die erste Stelle der Eingabe (r, g<br />

oder b) steht für die Farbe. Damit sich<br />

die Blinksequenzen gegeneinander versetzen<br />

lassen, wählt das folgende l-<br />

oder h-Zeichen, ob die Folge mit eingeschalteter<br />

(h) oder aber ausgeschalteter<br />

LED (l) startet.<br />

Darauf folgen mit Kommas oder Leerzeichen<br />

getrennte paarweise Zahlenwerte:<br />

An/​Aus oder Aus/​An-Sequenzen,<br />

je nachdem, ob das zweite Zeichen h<br />

oder l gelautet hat. Die Einheit für die<br />

Schaltzeitwerte ist nach dem Start auf<br />

1/100 -tel Sekunden gesetzt, lässt sich<br />

aber durch Eingabe von t Mikrosekunden<br />

an der Konsole umstellen, damit<br />

man einen bereits programmierten<br />

Grundrhythmus beschleunigen oder<br />

verlangsamen kann.<br />

Kontakt zur Außenwelt<br />

Zum Lauschen an der seriellen Schnittstelle,<br />

die über das USB-Kabel mit dem<br />

PC verbunden ist, zeichnet die gegen<br />

Ende von loop() aufgerufene Funktion<br />

Listing 5<br />

while(true); do<br />

idle=$(vmstat 1 2|sed ‐n<br />

'4p'|awk '{print $15}')<br />

echo "rh 1,$(( ($idle/3)+1<br />

))">&3<br />

cat /dev/null<br />

done<br />

evaluateInput() zuständig. Der Aufruf<br />

erfolgt – unabhängig vom Tempo, mit<br />

dem die Hauptverzögerungsschleife<br />

durchlaufen wird – nur jede Viertelsekunde.<br />

Jeder Zugriff auf die serielle<br />

Schnittstelle löscht nämlich alle dort anliegenden,<br />

aber noch nicht übertragenen<br />

Zeichen und darf daher nicht in zu<br />

kurzen Abständen erfolgen.<br />

In evaluateInput() sorgt die Schleife<br />

while (Serial.available() > 0) dafür,<br />

dass die Funktion alle verfügbaren<br />

Zeichen abgreift. Sie prüft zunächst auf<br />

den Buchstaben t und leitet gegebenenfalls<br />

an setTempo() zur Neujustierung<br />

der Zeitbasis weiter.<br />

Prüfen<br />

Ist das erste Zeichen kein t, folgt eine<br />

Umsetzung der Zeichen r, g oder b in<br />

den im Programm durchgängig verwendeten<br />

Integer-Farbcode zwischen 0<br />

und 2. Dazu kommt das in der Laufzeitumgebung<br />

vordefinierte C++-Objekt<br />

String zum Einsatz. Dabei handelt es<br />

sich um ein String-Objekt variabler Länge,<br />

das die für Anfänger schwierige Arbeitsspeicherverwaltung<br />

kapselt.<br />

Aber darum geht es an dieser Stelle<br />

noch nicht. Hier hilft uns seine Methode<br />

String.indexOf(char) weiter: Sie gibt<br />

zurück, an welcher Stelle das Farbcode-<br />

Zeichen im String rgb steht. So dürfen<br />

Sie den intuitiveren Buchstabencode für<br />

eine Farbe eingeben, obwohl das Programm<br />

mit einem numerischen Array-<br />

Index arbeitet.<br />

Als Nächstes gilt es, auf das Zeichen l<br />

oder h zu prüfen und das Ergebnis nach<br />

LEDStartState[color] zu schreiben.<br />

Dann folgt das Einlesen der Werteliste,<br />

Das erledigt readRythmString(color)<br />

(Listing 4). Die Hauptarbeit nimmt uns<br />

die vordefinierte C++-Methode Serial.<br />

parseInt() ab, denn sie schreibt die auf<br />

folgende Zahlenreihe<br />

in einer While-Schleife direkt als Integer-<br />

Wert in das Array Rythm. Die Schleifenbedingung<br />

überwacht dazu auf das Zeichen<br />

\n (Newline) als Sequenzschluss<br />

sowie gleichzeitig auf die Maximallänge<br />

von MaxRhythmLength. So entsteht ein<br />

neuer Rhythmus für color.<br />

80 www.linux-user.de<br />

05.2013


Arduino-Workshop (Teil 1)<br />

Hardware<br />

Damit rhythmCycle ihn auslesen kann,<br />

muss RythmMaxIndex[color] den größten<br />

vorkommenden Array-Index für<br />

Rythm[color][n] enthalten. Weil das<br />

Inkrement mit readValuesCount++ nach<br />

dem Schreiben in Rythm[color][read‐<br />

ValuesCount] erfolgt, ist<br />

readValuesCount‐1 der richtige Wert.<br />

Bildhaft dargestellt<br />

Das serielle Device auf dem Arduino ist<br />

nach Anschluss des USB-Kabels an den<br />

PC über das Character-Device /dev/<br />

ttyACM0 erreichbar. Um mit dem Minirechner<br />

zu kommunizieren, genügt es<br />

dennoch nicht, es einfach mit echo<br />

"xxx" > /dev/ttyACM0 zu beschreiben<br />

oder mit cat /dev/ttyACM0 auszulesen,<br />

denn jeder Zugriff auf die Gerätedatei<br />

bootet den Arduino neu. So startet ein<br />

von der Arduino-IDE über die serielle<br />

Schnittstelle hochgeladenes neues Programm<br />

ohne Druck auf den Reset-Taster.<br />

Leiten Sie also für einen Zugriff von<br />

der Shell aus das Character-Device mit<br />

exec 3 /dev/ttyACM0 (oder das am<br />

unteren Fensterrand der IDE angezeigte<br />

Device) auf das File-Handle Nummer<br />

drei um, das Linux selbst nicht benutzt.<br />

Auch dabei startet der Arduino neu, jedoch<br />

nicht mehr bei Schreib- und Lesezugriffen<br />

auf das File-Handle mit echo<br />

"xxx" >&3 oder cat


Hardware<br />

Arduino-Workshop (Teil 1)<br />

Mit dem Verfahren, per Bash Zeichenfolgen<br />

zum Setzen des Blinkrhythmus über<br />

&3 an den SBC zu senden, lässt sich jeder<br />

Wert auf dem PC optisch darstellen, auf<br />

den die Shell Zugriff hat.<br />

Die vom Arduino über die serielle<br />

Schnittstelle versandten <strong>Daten</strong> lassen<br />

sich mit tail ‐f <br />

shortLongThreshold){<br />

42 inputPattern += "‐";<br />

43 } else {<br />

44 inputPattern += ".";<br />

45 }<br />

46 (...)<br />

47 } while(keepReading);<br />

48 <br />

49 digitalWrite(blue, LOW);<br />

50 return inputPattern;<br />

51 }<br />

inputPattern um einen Strich, bei kurzen<br />

Tastendrücken um einen Punkt.<br />

Nach dem Ablauf von readInput()<br />

muss die Hauptschleife nur noch den zurückgegebenen<br />

String mit dem vorgegebenen<br />

pattern vergleichen. Dafür<br />

stellt das String-Objekt die Methode<br />

equals() zur Verfügung. War das Muster<br />

richtig, schaltet das Programm die grüne<br />

LED ein, sonst die rote. Danach startet<br />

loop() von vorne.<br />

Wer sich den Code nach if(captured.<br />

equals(pattern)){ genau ansieht, stellt<br />

fest, dass die grüne LED im Erfolgsfall<br />

buzzerOn Millisekunden (7 Sekunden)<br />

anbleibt und dann wieder ausgeht. Ist<br />

der grüne Kanal mit dem Türöffner verbunden<br />

4 , genügt das bequem, um<br />

einzutreten. Die rote LED bleibt nach einer<br />

fehlerhaften Eingabe bis zum Reset<br />

des Arduino mittels des roten Tasters neben<br />

dem USB-Port an.<br />

Noch nicht erwähnt wurde, dass<br />

readInput() den blauen Kanal einschaltet,<br />

solange die Klingel ohne längere<br />

Pause betätigt wird. Trennt man das<br />

Läutwerk vom Klingelknopf und hängt<br />

es an dem blauen Kanal, dann verrät das<br />

Klingeln nicht den geheimen Rhythmus.<br />

Fazit<br />

Dreierlei bietet der Arduino für unter<br />

30 Euro: Analogfühler, die Spannungen<br />

zwischen 0 und 5 Volt messen; Ausgabepins,<br />

die bis zu 40 mA schalten; sowie einen<br />

16-MHz-Mikroprozessor, der sich<br />

dank der quelloffenen IDE und der für<br />

Anfänger verständlichen Dokumentation<br />

û einfach programmieren lässt.<br />

Die Baupläne des Minirechners sind<br />

nach dem Open-Hardware-Prinzip lizenziert.<br />

Wer nicht selbst den Lötkolben in<br />

die Hand nehmen möchte, kann zahlreiche<br />

aufsteckbare Erweiterungsboards<br />

(„Shields“) erstehen û. Von der Arduino-<br />

Homepage können Sie zusätzlich zahlreiche<br />

Beispielschaltungen und Programme<br />

abrufen û. (jlu) n<br />

Weitere Infos und<br />

interessante Links<br />

www. linux‐user. de/ qr/ 28512<br />

82 www.linux-user.de<br />

05.2013


Router als Mini-Server<br />

Hardware<br />

Den Mobile-Router TP-Link TL-MR3020 aufmotzen<br />

Der 1-Watt-Server<br />

Mithilfe von OpenWRT<br />

befrei en Sie den knuffigen<br />

kleinen Router TL-MR3020<br />

© TP-Link Technologies Co., Ltd.<br />

von seiner proprietären<br />

Firmware und bauen ihn<br />

zum Allround-Server fürs<br />

heimi sche Netz um.<br />

Bernhard Bablok<br />

Die Firma TP-Link û produziert Router<br />

verschiedenster Leistungsklassen. Den<br />

TL-MR3020 1 vermarktet der Hersteller<br />

als „Mobile Router“, da er klein und leicht<br />

ist. Allerdings unterstützt er kein 3G (siehe<br />

Kasten Die Hardware), das lässt sich<br />

aber über den USB-Port nachrüsten. Attraktiv<br />

ist der Router also vor allem für<br />

jene, die kein 3G brauchen oder sowieso<br />

schon einen UMTS-Stick haben und deshalb<br />

nicht in einen teuren UMTS-Mobile-<br />

Router investieren wollen. Hier soll aber<br />

nicht die normale Nutzung des Routers<br />

im Mittelpunkt stehen, sondern dessen<br />

Ausbau zu einem Mini-Server.<br />

Dazu ersetzen wir die vorhandene<br />

Firmware durch OpenWRT û, eine auf<br />

Kleinstgeräte spezialisierte Linux-Distribution.<br />

OpenWRT besitzt ein Paketmanagementsystem,<br />

das jenem klassischer<br />

Distributionen in nichts nachsteht, und<br />

so bremsen nur die Grenzen der Hardware<br />

die eigenen Vorstellungen aus.<br />

Auftakt<br />

Der TL-MR3020 eignet sich aus zwei<br />

Gründen für unsere Zwecke gut: Einerseits<br />

kostet er mit 30 Euro nicht die Welt<br />

– falls Sie ihn einmal „bricken“, dann tut<br />

das dem Geldbeutel nicht zu sehr weh.<br />

Andererseits baut der Hersteller erfreulicherweise<br />

keinerlei Hindernisse ein,<br />

welche die Installation einer fremden<br />

Firmware verhindern. Laden Sie also die<br />

passende OpenWRT-Version herunter û,<br />

Readme<br />

Auf vielen Geräten läuft heute Linux – meist<br />

jedoch als geschlossene Firmware, an die<br />

man nicht herankommt. Da liegt es nahe,<br />

die offizielle Firmware auszutauschen, um<br />

die Fähigkeiten des Gerätes voll auszunutzen.<br />

Wir zeigen, was das auf einem Mini-<br />

Router des Typs TP-Link TL-MR3020 bringt.<br />

05.2013 www.linux-user.de<br />

83


Hardware<br />

Router als Mini-Server<br />

im OpenWRT-Wiki û durch und beachten<br />

Sie die entsprechenden Hinweise.<br />

Nach der Installation von OpenWRT<br />

steht zunächst die Basiskonfiguration<br />

an, insbesondere des Netzwerkes. Als<br />

Nächstes kommt das Einrichten einer<br />

Reihe von Softwarepaketen, welche die<br />

USB-Unterstützung von <strong>Daten</strong>speichern<br />

(USB-Sticks oder Festplatten) nachrüsten.<br />

Dadurch kann der Router dann von<br />

einem externen <strong>Daten</strong>träger starten. Auf<br />

dem so erweiterten Root-Dateisystem<br />

landen dann weitere Softwarepakete<br />

aus dem OpenWRT-Repository für den<br />

eigentlichen Anwendungszweck.<br />

Erster Kontakt<br />

1 Der TL-MR3020 von TP-Link (links) ist nicht größer als ein Handteller. Der Mini-USB-<br />

Hub von Pearl rechts daneben dient Erweiterungszwecken.<br />

und verbinden Sie sich gemäß der knappen,<br />

doch ausreichenden Anleitung des<br />

Routers mit der Weboberfläche des Gerätes.<br />

Dort laden Sie die neue Firmware<br />

per Upload im Webformular auf den<br />

TL-MR3020 2 .<br />

Dabei handelt es sich um den einzigen<br />

wirklich kritischen Schritt bei der<br />

ganzen Sache. Ein fehlerhaftes Firmware-Image<br />

sendet den Router unwiederbringlich<br />

ins Nirvana – nur wer löten<br />

kann, hat noch eine Chance. Lesen Sie<br />

deshalb vor dem Einspielen unbedingt<br />

noch einmal die einschlägigen Artikel<br />

Nach dem Firmware-Upgrade und dem<br />

Neustart des Gerätes verbinden Sie Ihren<br />

PC per Kabel mit dem Router, konfigurieren<br />

das Netzwerk (normalerweise sorgt<br />

der Netzwerkmanager dafür) und melden<br />

sich per Telnet auf der Adresse<br />

192.168.1.1 an (auf dem Router läuft ein<br />

DHCP-Server, der den PC oder Laptop<br />

mit einer geeigneten Adresse versorgt).<br />

An dieser Stelle setzen Sie ein Passwort<br />

für root. OpenWRT schaltet dann<br />

aus Sicherheitsgründen den Telnet-Server<br />

ab und fährt den SSH-Server hoch.<br />

Als Nächstes passen Sie die Netzwerkkonfiguration<br />

so an, dass der Router im<br />

heimischen Netzwerk arbeitet, anschließend<br />

kommt zusätzliche Software auf<br />

den Rechner. Details zum Konfigurati-<br />

Die Hardware<br />

Der TL-MR3020 ist ein kleines weißes Plastikkästchen mit den Abmessungen<br />

7,4 x 6,7 x 2,2 Zentimeter und einem Gewicht von nur<br />

60 Gramm. Ein Mini-USB-Stecker dient der Stromversorgung, das beiliegende<br />

Netzteil liefert 1 Watt. Der Router funktioniert aber problemlos<br />

auch an einem USB-Port. Außerdem bringt der TL-MR3020 einen<br />

USB-2.0- und einen RJ45-Ethernet-Port (100 Mbit/​s) mit. TP-Link liefert<br />

für Letzteren ein kurzes, flaches Patchkabel mit. Auf WLAN-Seite<br />

beherrscht der kleine Router IEEE 802.11b/​g/​n mit bis zu 150 Mbit/​s.<br />

Seinen Status signalisiert der TL-MR3020 über fünf LEDs, von denen<br />

sich vier programmieren lassen. Daneben gibt es einen für die WLAN-<br />

Einrichtung per WPS gedachten Taster sowie einen Schiebeschalter<br />

mit drei Positionen (3G/​WISP/​AP). Im Inneren des Routers werkelt<br />

eine mit 400 MHz getaktete ARM-CPU, der 32 MByte RAM zur Verfügung<br />

stehen. Das Betriebssystem residiert auf einem 4 MByte großen<br />

Flash-Chip. Der USB-Anschluss dient mit der originalen Firmware für<br />

den Anschluss eines UMTS-Sticks und den Betrieb als mobiler 3G-<br />

Router. Ohne Stick arbeitet das Gerät als WLAN-Access-Point.<br />

Als nützlicher Zusatz zum TL-MR3020 empfiehlt sich ein Mini-USB-<br />

Hub von Pearl (Abbildung 1 , rechts). Dieser integriert einen Micro-<br />

SDHC-Reader und stellt so auf einer Speicherkarte das im Artikel beschriebene<br />

erweiterte Root-Dateisystem bereit, ohne den USB-Port<br />

zu blockieren.<br />

Die Platine des Routers enthält weitere Anschlüsse, die TP-Link aber<br />

nicht herausführt. Wer mit dem Lötkolben umgehen kann, nutzt weitere<br />

Komponenten wie eine serielle Konsole, eine I2C-Schnittstelle<br />

oder eine externe Antenne. Das OpenWRT-Wiki zeigt dazu auf seinen<br />

Seiten zum TL-MR3020 û einige Bilder und verlinkt zu entsprechenden<br />

Anleitungen.<br />

84 www.linux-user.de<br />

05.2013


Router als Mini-Server<br />

Hardware<br />

2 OpenWRT laden Sie ohne große Umstände einfach in Form eines „Firmware-Updates“<br />

über die originale Weboberfläche auf den TP-Link TL-MR3020.<br />

onssystem von OpenWRT lesen Sie im<br />

Kasten OpenWRT konfigurieren nach.<br />

Da der Router als Server im Heimnetz<br />

dienen soll, sieht die Netzwerkkonfiguration<br />

aus wie in Listing 1 (/ etc/config/<br />

network) und Listing 2 (/ etc/config/<br />

wireless) gezeigt. Die Zeilen 9 bis 15<br />

von Listing 1 konfigurieren das WLAN-<br />

Interface. In Listing 2 sorgt die Zeile 19<br />

dafür, dass der Server sich als WLAN-<br />

Client ins Netz integriert, nicht etwa als<br />

Access-Point beziehungsweise Router.<br />

Nach einem beherzten Neustart findet<br />

sich das Gerät (hoffentlich) unter der<br />

konfigurierten Netzwerkadresse. Falls<br />

OpenWRT konfigurieren<br />

Das Konfigurationsystem von OpenWRT ist<br />

über alle systemnahen Pakete hinweg sehr<br />

konsistent. Alle Konfigurationsdateien liegen<br />

unter /etc/config. Es handelt sich<br />

um einfach strukturierte Klartextdateien.<br />

Für den späteren produktiven Betrieb des<br />

Routers eignet sich das Webinterface als<br />

Alternative zum Editor: Hier passen Sie bequem<br />

einzelne Konfigurationsparameter<br />

an und fragen den Systemstatus ab.<br />

nicht, hilft der Notfall-Modus: Während<br />

des Bootens drücken Sie die WPS-Taste,<br />

sobald diese anfängt zu blinken. Wenn<br />

die LED-Lampe schneller blinkt, dann<br />

lassen Sie sie wieder los. Jetzt befindet<br />

sich das Gerät im sogenannten Failsafe-<br />

Modus, auf der vorgegebenen Adresse<br />

192.168.1.1 läuft jetzt der Telnet-<br />

Daemon. Mit dem verbinden Sie sich<br />

und nehmen die notwendigen Korrekturen<br />

vor. Allerdings steht in diesem Modus<br />

auf dem Router kein DHCP-Server<br />

zur Verfügung: Sie müssen Ihrem eigenen<br />

Rechner per Hand eine passende IP-<br />

Adresse zuweisen.<br />

Eine weitere Alternative bietet eine zusätzliche<br />

Schnittstelle für die Kommandozeile.<br />

Der Befehl:<br />

$ uci get system.slider.handler<br />

liest den Wert der Option handler des<br />

Abschnittes slider aus der Datei /etc/<br />

config/system. Für Skripte stellt die<br />

Bibliothek /lib/functions.sh ein paar<br />

Utilities bereit, die den Umgang mit Einstellungen<br />

deutlich erleichtern.<br />

Listing 1<br />

01 # /etc/config/network<br />

‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐<br />

02 <br />

03 config interface 'loopback'<br />

04 option ifname 'lo'<br />

05 option proto 'static'<br />

06 option ipaddr '127.0.0.1'<br />

07 option netmask '255.0.0.0'<br />

08 <br />

09 config interface 'wifi'<br />

10 option proto 'static'<br />

11 option ipaddr<br />

'192.168.3.100'<br />

12 option netmask<br />

'255.255.255.0'<br />

13 option gateway<br />

'192.168.3.1'<br />

14 list dns<br />

'192.168.3.1'<br />

15 list dns '8.8.8.8'<br />

Listing 2<br />

01 # /etc/config/wireless<br />

‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐<br />

02 <br />

03 config wifi‐device radio0<br />

04 option type mac80211<br />

05 option channel 11<br />

06 option macaddr<br />

90:f6:52:e6:d7:b2<br />

07 option hwmode 11ng<br />

08 option htmode HT20<br />

09 list ht_capab SHORT‐GI‐20<br />

10 list ht_capab SHORT‐GI‐40<br />

11 list ht_capab RX‐STBC1<br />

12 list ht_capab DSSS_CCK‐40<br />

13 # REMOVE THIS LINE TO<br />

ENABLE WIFI:<br />

14 # option disabled 1<br />

15 <br />

16 config wifi‐iface<br />

17 option device radio0<br />

18 option network wifi<br />

19 option mode sta<br />

20 option ssid<br />

'meine‐ssid'<br />

21 option encryption psk2<br />

22 option key 'geheim'<br />

05.2013 www.linux-user.de<br />

85


Hardware<br />

Router als Mini-Server<br />

Mehr Software<br />

Das ursprüngliche Firmware-Image enthält<br />

nicht alle Komponenten, die für den<br />

Betrieb eines Root-Dateisystems auf USB-<br />

Stick notwendig sind. Hier gilt es nachzurüsten.<br />

Dank die erfolgreich absolvierten<br />

Netzwerkkonfiguration kommt der Mini-<br />

Router bereits ins Internet, und über das<br />

komfortable Paketmanagementsystem<br />

bereitet das Nachinstallieren von Software<br />

keine Probleme.<br />

Dreh- und Angelpunkt ist das Kommando<br />

opkg, das Sie als root ausführen.<br />

Mit dem Aufruf opkg update aktualisieren<br />

Sie zuerst einmal die Paketliste. Anschließend<br />

installieren Sie die angegebenen<br />

Pakete mit dem Kommando<br />

# opkg install Paket ...<br />

Suchen Sie etwas Bestimmtes, hilft das<br />

Subkommando list, das eine Paketliste<br />

samt Kurzbeschreibungen auswirft.<br />

Für die USB-Installation benötigen Sie<br />

in erster Linie eine Reihe von Kernelpaketen<br />

(Listing 3). Den USB-Stick (im<br />

Listing /dev/sdb – das müssen Sie gegebenenfalls<br />

anpassen) partitionieren und<br />

formatieren Sie am besten an Ihrem PC.<br />

Nützlich ist neben einer Root-Partition<br />

noch eine Home-Partition und vor allem<br />

Swap-Space.<br />

Danach stöpseln Sie den Stick an den<br />

Router an und ändern die Konfiguration<br />

der Mountpoints in /etc/config/fstab.<br />

Wichtig sind hier die Zeilen 10 bis 16 aus<br />

Listing 4. Die letzten Zeilen von Listing 3<br />

kopieren das gesamte Root-Dateisystem<br />

auf den Stick. Hier lohnt es sich, gleich<br />

ein Backup anzulegen. Das System bootet<br />

übrigens auch ohne den eingesteckten<br />

Stick: In diesem Fall ignoriert es einfach<br />

die nicht vorhandenen Devices.<br />

Nach einem Reboot mit angeschlossenem<br />

Stick steht endlich mehr Plattenplatz<br />

bereit. Zusätzlich installierte Pakete<br />

landen jetzt direkt dort. Insgesamt ist<br />

das Root-Dateisystem auf einem USB-<br />

Device sehr praktisch: Es erlaubt einerseits<br />

die Konfiguration mit den gewohnten<br />

Editoren an einem PC, und auch das<br />

Hin- und Herkopieren von <strong>Daten</strong> (zum<br />

Beispiel für Backups) fällt leicht.<br />

3 Geschafft: Die erste Anmeldung am frisch eingerichteten OpenWRT steht an.<br />

Listing 3<br />

01 # Root‐Dateisystem auf USB‐Stick einrichten<br />

02 # Basis USB‐support (USB 1.1 and USB 2)<br />

03 opkg update<br />

04 opkg install kmod‐usb‐uhci kmod‐usb‐ohci kmod‐usb2<br />

05 insmod uhci<br />

06 insmod usb‐ohci<br />

07 insmod usbcore<br />

08 insmod ehci‐hcd<br />

09 <br />

10 # USB‐Storage (FAT benötigt zusätzliche Module,<br />

11 # das kann man aber später nachrüsten<br />

12 opkg install kmod‐usb‐storage block‐mount kmod‐fs‐ext4<br />

kmod‐scsci‐core<br />

13 <br />

14 # USB‐Stick vorbereiten (auf dem PC)<br />

15 # ‐> Partitionieren mit drei Partitionen (root,home,swap)<br />

16 # fdisk /dev/sdb usw.<br />

17 # ‐> Partitionen mit ext4 bzw. swap formatieren<br />

18 # mkfs.ext4 /dev/sdb1<br />

19 # mkfs.ext4 /dev/sdb2<br />

20 # mkswap /dev/sdb3<br />

21 <br />

22 # Root auf USB vorbereiten (kopiert altes Root‐Dateisystem)<br />

23 mkdir ‐p /mnt/usb<br />

24 mount /dev/sda1 /mnt/usb<br />

25 tar ‐cvf ‐ ‐C /overlay . | tar ‐xf ‐ ‐C /mnt/usb<br />

26 umount /mnt/usb<br />

86 www.linux-user.de<br />

05.2013


Router als Mini-Server<br />

Hardware<br />

An dieser Stelle ist die Basiskonfiguration<br />

bis auf ein paar Kleinigkeiten (etwa den<br />

Hostnamen) erledigt. Das weitere Vorgehen<br />

hängt vom Einsatzzweck des Routers<br />

ab. Via Paketmanagement holen Sie<br />

sich die benötigte Software und konfigurieren<br />

diese. Das Vorgehen unter Open-<br />

WRT unterscheidet sich dabei nicht von<br />

jenem unter anderen Distributionen.<br />

Knöpfe und LEDs<br />

Den TL-MR3020 als Mini-Server können<br />

Sie vollständig per Secure Shell oder<br />

Web interface steuern. Einfacher geht es<br />

aber über die vorhandenen Buttons. Der<br />

ursprüngliche WPS-Taster eignet sich dabei<br />

zum Auslösen einzelner Aktionen,<br />

während der Schiebeschalter an der Seite<br />

mit seinen drei Positionen das Umschalten<br />

zwischen verschiedenen Betriebszuständen<br />

übernimmt.<br />

Listing 4<br />

01 # Mountpoints konfigurieren<br />

02 config global automount<br />

03 option from_fstab 1<br />

04 option anon_mount 1<br />

05 <br />

06 config global autoswap<br />

07 option from_fstab 1<br />

08 option anon_swap 0<br />

09 <br />

10 config mount<br />

11 option target /overlay<br />

12 option device /dev/<br />

sda1<br />

13 option fstype ext4<br />

14 option options rw,sync<br />

15 option enabled 1<br />

16 option enabled_fsck 0<br />

17 <br />

18 config mount<br />

19 option target /home<br />

20 option device /dev/<br />

sda2<br />

21 option fstype ext4<br />

22 option options rw,sync<br />

23 option enabled 1<br />

24 option enabled_fsck 1<br />

25 <br />

26 config swap<br />

27 option device /dev/<br />

sda3<br />

28 option enabled 1<br />

Die LEDs dienen dabei quasi als Ausgabegerät.<br />

Hier sind drei unterschiedliche<br />

Zustände möglich: an, aus oder blinkend.<br />

In Kombination mit den Buttons kann<br />

man hier nette Features bauen. Technisch<br />

gesehen steuert man die LEDs über<br />

Dateien unterhalb von /sys/class/leds,<br />

für die WPS-LED ist dies etwa das Verzeichnis<br />

/sys/class/leds/tp‐link:<br />

green:wps. Die Macher von OpenWRT<br />

haben aber die gesamte Komplexität gekapselt,<br />

Sie müssen im Normalfall nur<br />

noch die Konfiguration in der Datei<br />

/ etc/config/system anpassen (Listing<br />

5, Zeilen 13 bis 35).<br />

Im Normalfall koppelt OpenWRT die<br />

LED-Aktivität an die Betriebszustände<br />

einzelner Komponenten wie des Netzwerkes<br />

oder der USB-Schnittstelle. Diese<br />

Listing 5<br />

01 # Konfiguration LEDs/Buttons<br />

02 config system<br />

03 option hostname 'jupiter.<br />

bablokb‐local.de'<br />

04 option timezone<br />

'CET‐1CEST,M3.5.0,M10.5.0/3'<br />

05 <br />

06 config timeserver 'ntp'<br />

07 list server '0.openwrt.<br />

pool.ntp.org'<br />

08 list server '1.openwrt.<br />

pool.ntp.org'<br />

09 list server '2.openwrt.<br />

pool.ntp.org'<br />

10 list server '3.openwrt.<br />

pool.ntp.org'<br />

11 option enable_server '0'<br />

12 <br />

13 config led 'led_usb'<br />

14 option name 'USB'<br />

15 option sysfs<br />

'tp‐link:green:3g'<br />

16 option trigger 'usbdev'<br />

17 option dev '1‐1'<br />

18 option interval '50'<br />

19 <br />

20 config led 'led_wlan'<br />

21 option name 'WLAN'<br />

22 option sysfs<br />

'tp‐link:green:wlan'<br />

23 option trigger 'phy0tpt'<br />

24 <br />

25 config led 'led_lan'<br />

26 option name 'LAN'<br />

27 option sysfs<br />

'tp‐link:green:lan'<br />

28 option trigger 'netdev'<br />

29 option dev 'eth0'<br />

30 option mode 'link tx rx'<br />

31 <br />

32 config led 'led_wps'<br />

33 option name 'wps'<br />

34 option sysfs<br />

'tp‐link:green:wps'<br />

35 option trigger<br />

'default‐on'<br />

36 <br />

37 config button<br />

38 option button 'wps'<br />

39 option action<br />

'released'<br />

40 option min '3'<br />

41 option max '6'<br />

42 option handler 'halt'<br />

43 <br />

44 config button<br />

45 option button 'wps'<br />

46 option action<br />

'released'<br />

47 option min '0'<br />

48 option max '2'<br />

49 option handler 'logger<br />

wps pressed 0‐2s'<br />

50 <br />

51 config slider 'slider'<br />

52 option handler '/usr/<br />

sbin/handle_slider'<br />

05.2013 www.linux-user.de<br />

87


Hardware<br />

Router als Mini-Server<br />

Listing 6<br />

01 #!/bin/sh<br />

02 # Button‐Events verarbeiten<br />

03 <br />

04 set_led_blink() {<br />

05 # Blinken einschalten (1s an /<br />

0,2s aus)<br />

06 echo timer > /sys/class/<br />

leds/tp‐link\:green\:wps/<br />

trigger<br />

07 echo 1000 > /sys/class/leds/<br />

tp‐link\:green\:wps/delay_on<br />

08 echo 200 > /sys/class/leds/<br />

tp‐link\:green\:wps/delay_off<br />

09 # nach drei Sekunden<br />

abschalten<br />

10 sleep 3<br />

11 echo none > /sys/class/leds/<br />

tp‐link\:green\:wps/trigger<br />

12 # nach drei Sekunden wieder<br />

anschalten<br />

13 sleep 3<br />

14 set_led_on<br />

15 }<br />

16 <br />

17 set_led_on() {<br />

18 # LED anschalten<br />

19 echo default‐on<br />

> /sys/class/leds/<br />

tp‐link\:green\:wps/trigger<br />

20 }<br />

21 <br />

22 if [ "$BUTTON" = "wps" ]; then<br />

23 if [ "$ACTION" = "pressed"<br />

]; then<br />

24 set_led_blink &<br />

25 else<br />

26 set_led_on<br />

27 fi<br />

28 else<br />

29 exit 0<br />

30 fi<br />

Listing 7<br />

01 #!/bin/sh<br />

02 # Auslesen des Sliders (aka BTN_0/BTN_1)<br />

Vorgaben können Sie aber nach Ihren<br />

Wünschen frei anpassen. Auch die Konfiguration<br />

der Schalter ist einfach.<br />

Zum einen müssen Sie das Event-System<br />

des Kernels so konfigurieren, dass<br />

es für die beiden Schalter entsprechende<br />

Events auslöst. Hierzu bearbeiten Sie<br />

die Datei / etc/hotplug2.rules und entfernen<br />

das Caret (das „Dach“) vor dem<br />

String ^Buttons. Da es sich hier um eine<br />

Ausnahmeliste handelt, aktivieren Sie<br />

durch das Entfernen des Carets die<br />

Events für die Schalter. Ab jetzt führt das<br />

System für jeden Button-Event alle<br />

Skripte im Verzeichnis / etc/hotplug.d/<br />

button aus. Dabei sind die Variablen<br />

BUTTON und ACTION gesetzt.<br />

Ein Beispiel, das auch das Zusammenspiel<br />

mit den LEDs demonstriert, zeigt<br />

Listing 6. Dieses Skript wirkt nur für den<br />

WPS-Taster (Zeile 22) und sorgt dafür,<br />

dass die WPS-LED drei Sekunden blinkt<br />

(Zeilen 6 bis 8 und 10). Dann erlischt es<br />

für weitere drei Sekunden. Lassen Sie die<br />

Taste los, schaltet das Skript die LED wieder<br />

ein (Zeile 19).<br />

Anstatt jetzt jedes Skript einzeln im<br />

Button-Verzeichnis abzulegen und dort<br />

wie in Listing 5 gezeigt den Status des<br />

Schalters abzufragen, lohnt es sich, ein<br />

generisches Button-Skript aus dem<br />

OpenWRT-Fundus û herunterzuladen.<br />

Danach konfigurieren Sie die Schalter<br />

ganz einfach analog zu den LEDs in<br />

/ etc/config/system.<br />

Dort ist der WPS-Button als Ausschalter<br />

konfiguriert: Lassen Sie ihn nach mindestens<br />

drei und maximal sechs Sekunden<br />

los, dann fährt das System herunter<br />

(Zeilen 37 bis 42 in Listing 5). Hier erschließt<br />

sich auch der Sinn des Programms<br />

aus Listing 6, denn die LED des<br />

Buttons blinkt während drei Sekunden<br />

und geht dann für drei Sekunden aus –<br />

Sie müssen also nicht mitzählen, um das<br />

System herunterzufahren.<br />

Ebenso könnten Sie den WPS-Taster<br />

aber auch nutzen, um mit kurzen Klicks<br />

eine ganz andere Aktion zu starten. Das<br />

Listing 5 konfiguriert hier in den Zeilen<br />

44 bis 49 zu Demonstrationszwecken<br />

das Auslösen eines Log-Eintrages.<br />

Der Schiebeschalter<br />

Der Schiebeschalter des TL-MR3020<br />

macht aus zwei Gründen etwas mehr Arbeit:<br />

Erstens sieht der Kernel im Schiebeschalter<br />

nicht einen, sondern zwei Buttons,<br />

denn um dessen drei Zustände abzubilden,<br />

braucht es zwei Bits. Jede Änderung<br />

des Schalters löst also zwei<br />

Events aus, die zwar sequenziell bei den<br />

Verarbeitungsskripts ankommen, aber<br />

gemeinsam ausgewertet werden müssen.<br />

Zweitens bekommt das Event-System<br />

nur Änderungen mit.<br />

Um also beim Booten den Status des<br />

Schiebeschalters abzufragen – etwa zur<br />

Konfiguration der Netzwerkumgebung –<br />

gilt es, ein kleines Skript zu bemühen.<br />

Dieser Aspekt ist im OpenWRT-Wiki jedoch<br />

nur andeutungsweise dokumentiert.<br />

Deshalb zeigt Listing 7, wie es funktioniert:<br />

Das Skript hinterlegt den Status<br />

der beiden Buttons BTN_0 und BTN_1 in<br />

entsprechend benannten Dateien unter<br />

/var/run. Das Skript läuft beim Systemstart<br />

einmalig, wozu es via /etc/rc.local<br />

gestartet wird.<br />

03 # rmmod verwendet underscores, bei insmod sind es Striche!<br />

04 rmmod gpio_button_hotplug # Kernel‐Modul entf.<br />

05 echo 18 > /sys/class/gpio/export # export BTN_0<br />

06 echo 20 > /sys/class/gpio/export # export BTN_1<br />

07 cat /sys/class/gpio/gpio18/value > /var/run/BTN_0 # Status BTN_0<br />

08 cat /sys/class/gpio/gpio20/value > /var/run/BTN_1 # Status BTN_1<br />

09 echo 18 > /sys/class/gpio/unexport # unexport BTN_0<br />

10 echo 20 > /sys/class/gpio/unexport # unexport BTN_1<br />

11 insmod gpio‐button‐hotplug # Kernel‐Modul laden<br />

88 www.linux-user.de<br />

05.2013


Router als Mini-Server<br />

Hardware<br />

Das Skript in Listing 8 dagegen läuft bei<br />

jedem Button-Event. Es aktualisiert den<br />

Button-Status im Verzeichnis /var/run.<br />

Zusätzlich startet es ein Verarbeitungsskript.<br />

Die zusätzliche Magie in den Zeilen<br />

10 bis 12 sorgt dafür, dass nur ein<br />

Verarbeitungsskript anläuft. Die Wartezeit<br />

vor der Verarbeitung (Zeile 21) sorgt<br />

dafür, dass alle relevanten Button-Events<br />

auch eingetroffen und verarbeitet sind.<br />

Die Zeilen 16 und 17 holen das Verarbeitungsskript<br />

aus der Konfigurationsdatei<br />

/etc/config/system. Das Verarbeitungsskript<br />

startet dann in Zeile 22.<br />

Ein Beispiel für ein solches Skript zeigt<br />

Listing 9. Es liest den Status des Schiebeschalters<br />

und konfiguriert das Netzwerk<br />

um. Die Netzwerkdateien liegen nur als<br />

symbolische Links vor; die Umkonfiguration<br />

besteht also darin, die Symlinks auf<br />

die neuen Konfigurationsdateien zu legen.<br />

Dabei enthält zum Beispiel /etc/<br />

config/network.AP die Konfiguration<br />

für das Netzwerk, wenn der Slider auf AP<br />

steht. Sinnvollerweise starten Sie das<br />

Listing 8<br />

01 #!/bin/sh<br />

02 # Events des Sliders<br />

03 . /lib/functions.sh<br />

04 DELAY=5<br />

05 LOCK=/var/run/slider.lock<br />

06 <br />

07 # ‐‐‐ Update (asynchron) ‐‐‐<br />

08 run_handler() {<br />

09 # nur starten, falls nicht<br />

schon aktiv<br />

10 if ! mkdir "$LOCK" 2>/dev/<br />

null; then<br />

11 logger "update‐script<br />

läuft schon"<br />

12 exit 0<br />

13 fi<br />

14 <br />

15 # Verarbeitungsskript aus<br />

der /etc/config/system lesen<br />

16 config_load system<br />

17 config_get handler slider<br />

handler<br />

18 logger "handler‐script:<br />

$handler"<br />

19 <br />

20 logger "warte $DELAY<br />

Sekunden auf alle Events"<br />

21 sleep $DELAY<br />

Verarbeitungsskript auch einmal beim<br />

Systemstart (in /etc/rc.local, nach<br />

dem Auslesen des Slider-Status).<br />

Fazit<br />

Damit ist die Hardware erklärt, Sie müssen<br />

„nur“ die einzelnen Komponenten<br />

verbinden. Ausführliche Informationen<br />

dazu – etwa, um einen UMTS-Stick zum<br />

Laufen zu bringen oder für die Implementierung<br />

spezieller Netzwerkszenarien<br />

– finden Sie im OpenWRT-Wiki.<br />

Der kleine Router kann nicht jeden<br />

Anwendungsfall abdecken. Aber die<br />

Mecha nismen, die dieser Artikel beschreibt,<br />

gelten so oder zumindest ähnlich<br />

auch für andere Geräte, auch solche<br />

anderer Hersteller. Am oberen Ende des<br />

Leistungsspektrums stehen dabei die<br />

QNAP-NAS-Geräte, die sogar nativ mit<br />

OpenWRT ins Haus kommen. Hier macht<br />

allerdings die Fülle der vorkonfigurierten<br />

Dienste eigene Anpassungen deutlich<br />

schwieriger. (jlu) n<br />

22 eval $handler<br />

# Handler ausführen<br />

23 rm ‐fr "$LOCK"<br />

24 }<br />

25 <br />

26 # ‐‐‐ Hauptprogramm ‐‐‐‐‐‐‐‐‐‐<br />

27 logger "Verarbeite Event<br />

'$ACTION' für $BUTTON"<br />

28 <br />

29 # WPS‐Button ignorieren<br />

30 if [ "$BUTTON" = "wps" ]; then<br />

31 exit 0<br />

32 fi<br />

33 <br />

34 # Update Button‐Datei gemäß<br />

Event<br />

35 if [ "$ACTION" = "pressed" ];<br />

then<br />

36 echo "1" > "/var/<br />

run/$BUTTON"<br />

37 else<br />

38 echo "0" > "/var/<br />

run/$BUTTON"<br />

39 fi<br />

40 # asynchron ausführen<br />

41 run_handler & #<br />

(Event‐Verarbeitung nicht<br />

blockieren)<br />

Listing 9<br />

01 #!/bin/sh<br />

02 # Verarbeitungsskript für den<br />

Slider<br />

03 logger "Führe $0 aus"<br />

04 <br />

05 # Status des Sliders auslesen<br />

06 if [ `cat /var/run/BTN_0` =<br />

"0" ]; then<br />

07 slider="WISP"<br />

08 elif [ `cat /var/run/BTN_1` =<br />

"0" ]; then<br />

09 slider="3G"<br />

10 else<br />

11 slider="AP"<br />

12 fi<br />

13 logger "Status des Sliders:<br />

$slider"<br />

14 w<br />

15 # Alte Symlinks entfernen<br />

16 rm /etc/config/dhcp<br />

17 rm /etc/config/network<br />

18 rm /etc/config/wireless<br />

19 <br />

20 # Neue Symlinks setzen<br />

21 ln ‐s dhcp.$slider /etc/<br />

config/dhcp<br />

22 ln ‐s network.$slider /etc/<br />

config/network<br />

23 ln ‐s wireless.$slider /etc/<br />

config/wireless<br />

24 <br />

25 # Netzwerk und DHCP neu<br />

starten<br />

26 /etc/init.d/network restart<br />

27 /etc/init.d/dnsmasq restart<br />

Weitere Infos und<br />

interessante Links<br />

www. linux‐user. de/ qr/28787<br />

05.2013 www.linux-user.de<br />

89


Know-how<br />

Audio-Codec Opus<br />

Audio-Codec Opus:<br />

einer für alle(s)<br />

Tonmeister<br />

Schon Ogg Vorbis bewies,<br />

dass freie Audio-Codecs es<br />

durchaus mit der kommerziellen<br />

Konkurrenz aufnehmen<br />

können. Sein Nachfolger<br />

© Sergo, 123RF<br />

namens Opus geht einen<br />

Schritt weiter und schlägt<br />

die Konkurrenz sogar.<br />

Daniel Kottmair,<br />

Thomas Leichtenstern<br />

Readme<br />

Der freie Audio-Codec Opus nimmt für<br />

sich in Anspruch, mit nur minimalen Latenzen<br />

zu arbeiten und hoch komprimierte<br />

Streams mit deutlich besserer Qualität zu<br />

übertragen als die beiden Konkurrenztechniken<br />

OGG Vorbis und MP3.<br />

Als ein herausragendes Alleinstellungsmerkmal<br />

von Opus û gilt seine sehr<br />

niedrige Latenz: Kein anderer Vollband-<br />

Codec (siehe Kasten Bänder) arbeitet mit<br />

so geringer Verzögerung, denn üblicherweise<br />

bedeutet niedrige Latenz kleine<br />

Blöcke und damit schlechtere Qualität<br />

bei gleicher Bitrate. Mit einer rekordverdächtigen<br />

Latenz von standardmäßig<br />

22,5 Millisekunden reagiert Opus rund<br />

fünfmal schneller als die Konkurrenz bei<br />

MP3, AAC oder Vorbis. Wer die Bitrate erhöht<br />

oder bei gleicher eine etwas niedrigere<br />

Qualität in Kauf nimmt, der kann<br />

diese Zeit sogar auf bis zu 5 Millisekunden<br />

reduzieren. Eine solch niedrige Latenz<br />

prädestiniert Opus nicht nur für Audio-<br />

und Video-Konferenzen, VoIP oder<br />

Teamspeak, sondern eröffnet auch völlig<br />

neue Einsatzgebiete wie etwa das gemeinsame<br />

Musizieren übers Internet.<br />

Doch Opus glänzt nicht nur in Sachen<br />

Latenz, sondern auch hinsichtlich der<br />

Qualität. So erreicht der Codec dank der<br />

niedrigeren Latenz bereits bei deutlich<br />

geringerer Bitrate als MP3, AAC und Vorbis<br />

dieselbe Klanggüte. Nur im Vergleich<br />

zum aktuellen Qualitätsführer, dem erweiterten<br />

HE-AAC (High Efficency Advanced<br />

Audio Coding), auf den zum Beispiel<br />

auch Apple im iTunes-Musicstore<br />

setzt, stellen manche Tests ein Unentschieden<br />

fest. Andere sehen hier Opus<br />

auf dem Siegertreppchen.<br />

Darüber hinaus eignet sich Opus sowohl<br />

für Sprache als auch für Musik, da<br />

er eigentlich zwei Codecs in einem vereint.<br />

Sprache stellt einen Audio-Codec<br />

vor völlig andere Herausforderungen als<br />

Musik: Das eingeschränkte Frequenzspektrum<br />

und ein klar umrissenes Signalprofil<br />

erlauben extrem niedrige Bitraten.<br />

Als Rekordhalter gilt Codec2 aus<br />

dem Amateurfunk û, der bei 1,4 kbit/​s<br />

noch verständliche Sprache abbildet.<br />

Opus steht unter der BSD-Lizenz. Alle<br />

beteiligten Firmen und Organisationen<br />

räumten eine freie Nutzung für ihre Pa-<br />

90 www.linux-user.de<br />

05.2013


Audio-Codec Opus<br />

Know-how<br />

tente ein, im Gegenzug dafür, dass die<br />

IETF û Opus zum Standard erklärt. Das<br />

erlaubt den kommerziellen Einsatz in<br />

proprietärer Soft- und Hardware.<br />

Geschichte<br />

Im Jahr 2007 begann Skype die Arbeit<br />

sowohl an Silk als auch an Xiph.org, einem<br />

damals noch „Ghost“ genannten<br />

Nachfolger für Ogg Vorbis, der später in<br />

Bänder<br />

Die ITU unterteilt die Qualitätsstufen in<br />

folgende Frequenzspektren:<br />

• Narrowband – 300 bis 3400 Hz:<br />

Sprach-Audio mit stark eingegrenztem<br />

Frequenzspektrum, „Telefonqualität“.<br />

• Wideband – 50 bis 7000 Hz:<br />

verbesserte Sprachqualität.<br />

• Super Wideband – 50 bis 14 000 Hz:<br />

hervorragende Sprachqualität,<br />

akzeptabel für Musik.<br />

CELT (Constrained Energy Lapped Transform)<br />

umbenannt wurde. 2009 klopfte<br />

Skype bei der IETF an und schlug vor, einen<br />

offenen Standard-Sprach-Codec für<br />

Wideband-Audio im Internet zu schaffen.<br />

Dazu brachte Skype Silk ins Spiel,<br />

doch die IETF fand es sinnvoller, dass<br />

Skype sich mit Xiph.org zusammentut.<br />

Nach viel Widerstand aus der Patent-<br />

Fraktion der kommerziellen Codec-<br />

Schmieden bildete sich eine Working<br />

Group aus den Entwicklern von Skype,<br />

Xiph.org sowie einigen Mitarbeitern von<br />

Broadcom und Octasic. Als eine der<br />

Hauptpersonen hinter Opus kristallisierte<br />

sich der bei Xiph.org, Mozilla und<br />

Octa sic angestellte Kanadier Jean-Marc<br />

Valin heraus, der schon für Speex verantwortlich<br />

zeichnete. 2010 gab es den ersten<br />

Hybrid aus Silk und CELT. Anfang<br />

2011 wurde der Bitstream eingefroren,<br />

sodass keine Änderungen mehr möglich<br />

waren. Mitte 2012 adelte die IETF das<br />

Resultat mit dem RFC 6716 û, der erste<br />

Release Candidate erblickte Ende 2012<br />

das Licht der Welt.<br />

Opus eignet sich laut Aussage der Entwickler<br />

als Ersatz für alle anderen bestehenden<br />

Codecs 1 , lediglich für verlustlose<br />

Kompression empfehlen sie den<br />

OSS-Codec FLAC. Für Übertragungen<br />

mit extrem niedriger Bandbreite um die<br />

2 kbit/​s gilt nach wie vor der Codec2 als<br />

Mittel der Wahl. Den Entwicklern zufolge<br />

gibt es bereits großes Interesse aus der<br />

Industrie an Opus – nicht nur wegen der<br />

lizenzfreien Nutzungsmöglichkeit, sondern<br />

auch aufgrund des Status von Opus<br />

als IETF- Standard. Zudem füllt Opus<br />

durch seine Eignung für fast alle Einsatzzwecke<br />

sowie seine geringe Latenz eine<br />

• Full Band – 20 bis 20 000 Hz:<br />

das volle Frequenzspektrum des<br />

menschlichen Hörens, „CD-Qualität“.<br />

Nach dem Nyquist-Shannon-Theorem<br />

muss, um Aliasing-Effekte zu vermeiden,<br />

die Abtastrate eines Signals stets doppelt<br />

so hoch ausfallen wie die höchste Tonfrequenz.<br />

Deshalb gelten 44,1 beziehungsweise<br />

48 kHz Abtastrate als Standard für<br />

optimale Qualität.<br />

ITU: International Telecommunication<br />

Union. Diese Sonderorganisation der Vereinten<br />

Nationen beschäftigt sich offiziell<br />

und weltweit mit technischen Aspekten der<br />

Telekommunikation. Dazu gibt sie Standards<br />

in Form sogenannter Recommendations<br />

(„Empfehlungen“) heraus, deren Umsetzung<br />

dann nationale oder supranationale<br />

Normungsgremien erledigen.<br />

IETF: Internet Engineering Task Force.<br />

Dieses internationale Gremium von Herstellern,<br />

Netzbetreibern, Technikern und Anwendern<br />

beschäftigt sich mit Vorschlägen<br />

zur Standardisierung des Internets und<br />

steht jedem interessierten Individuum offen.<br />

Die Arbeitsergebnisse ihrer sogenannten<br />

Working Groups veröffentlicht die IETF<br />

in Form von RFCs (Request for Comment).<br />

Silk: Skypes sehr rechenintensiver, patentierter<br />

Sprach-Codec basiert auf Linear Predictive<br />

Coding (LPC), einem Verfahren, das<br />

die Sprache analysiert und das Signal dann<br />

als Parameter für einen Sprachsynthesizer<br />

codiert. Er unterstützt Bitraten bis 32 kbit/​s<br />

sowie Frequenzen bis 8 kHz im Narrowund<br />

Wideband. Damit übertrifft Silk den<br />

OSS-Sprachcodec Speex technisch in allen<br />

Aspekten. Aufgrund seiner Arbeitsweise eignet<br />

sich Silk nicht für Musik.<br />

CELT: Constrained-Energy Lapped Transform<br />

verwendet als technische Basis MDCT (Modifizierte<br />

diskrete Kosinus-Transformation),<br />

wie es auch bei MP3, Vorbis, AAC und<br />

Dolby Digital zum Einsatz kommt. MDCT ist<br />

das gängigste Verfahren, um ein Audio-<br />

Signal in verschiedene Frequenzbänder zu<br />

zerlegen, diese dann individuell zu quantisieren<br />

und so die <strong>Daten</strong>rate zu reduzieren.<br />

CELT arbeitet am besten im Fullband mit<br />

48 kHz und ist sinnvoll ab etwa 40 kbit/​s.<br />

05.2013 www.linux-user.de<br />

91


Know-how<br />

Audio-Codec Opus<br />

1 Trotz rekordverdächtig kurzen Latenzen deckt der Audio-Codec Opus das gesamte<br />

Qualitätsspektrum wichtiger Frequenzen ab. (Quelle: Opus-Codec.com)<br />

Nische – hier gibt es derzeit keinen einzelnen<br />

Codec, der Gleiches bietet.<br />

Opus in Zahlen<br />

Opus nutzt die Dateiendung .opus im<br />

OGG-Container und unterstützt eine Bitrate<br />

von 6 bis 510 kbit/​s sowie ein Frequenzspektrum<br />

von 8 bis 48 kHz. Die<br />

Frame-Größen bewegen sich von 2,5 bis<br />

20 (CELT) beziehungsweise 2,5 bis 60<br />

(Silk) Millisekunden. Das Besondere<br />

daran: Opus vermag diese Parameter in<br />

Echtzeit nahtlos im Stream zu ändern<br />

und passt sich so – wie etwa beim Telefonieren<br />

– ohne Aussetzer an die bereitstehende<br />

Bandbreite an.<br />

Bei den Encoding-Modi greift Opus<br />

auf konstante Bitrate (CBR), variable Bitrate<br />

(VBR) und Constrained VBR zurück,<br />

wobei Letzteres VBR mit einer nach oben<br />

limitierten Bitrate darstellt. Das ist sinnvoll<br />

für Echtzeit-Anwendungen mit eingeschränkter<br />

Bandbreite, die trotzdem<br />

von der höheren Qualität von VBR profitieren<br />

wollen. Seine Stärken spielt Opus<br />

nur im Kontext mit VBR-Modi voll aus.<br />

Auch bei den Stereo-Modi kennt Opus<br />

drei Varianten: „Dual-Channel“ codiert<br />

beide Kanäle komplett unabhängig voneinander<br />

als zwei Mono-Kanäle. „Intensity“<br />

erzeugt einen Mono-Downmix, in<br />

dem Opus nur die Unterschiede zwischen<br />

links und rechts berechnet und<br />

speichert. „Mid-Side“ gilt als präferierter<br />

Modus, es handelt sich dabei allerdings<br />

um einen Hybriden. Er bildet im Gegensatz<br />

zu Intensity sehr unterschiedliche<br />

Kanäle ab, profitiert aber anders als Dual-<br />

Channel von Ähnlichkeiten zwischen<br />

beiden Kanälen, um Bandbreite zu sparen.<br />

Mid-Side ist obendrein sicher gegen<br />

durch Stereo-Encoding entstehendes<br />

Übersprechen (Crosstalk) und Artefakte.<br />

Opus unterstützt als Hybrid-Codec<br />

drei verschiedene Modi, wobei Opus wie<br />

bei den anderen Attributen zwischen<br />

diesen Modi im Stream nahtlos wechselt.<br />

„Silk-only“ kommt bei Sprachübertragungen<br />

im Wideband bis 8 kHz zum<br />

Einsatz – hier ist eine niedrige Bitrate<br />

wichtiger als herausragende Qualität.<br />

„CELT-only“ eignet sich für Musik und<br />

nur bedingt für Sprache, da Silk hier wesentlich<br />

effizienter arbeitet und mit viel<br />

niedrigerer Bitrate qualitativ gleichwertige<br />

Ergebnisse erzielt. „Hybrid“ dient für<br />

qualitativ hochwertige Sprachübertragungen.<br />

Dabei codiert Silk die Bandbreite<br />

bis 8 kHz, CELT die Frequenzen<br />

darüber . In diesem Modus überträgt<br />

Opus mit 32 kbit/​s Sprache im vollen<br />

Frequenzspektrum.<br />

Der Encoder erkennt selbstständig, ob<br />

es sich beim Signal um Sprache oder<br />

Musik handelt, und wählt dann einen<br />

der genannten Modi. Nur die Bitrate<br />

spielt hierbei eine Rolle, denn erst ab<br />

32 kbit/​s schaltet der Encoder in den<br />

Hybrid -Modus und codiert mit CELT die<br />

Frequenzen über 8 kHz. Opus benötigt<br />

keine großen Codebooks wie einige andere<br />

Sprachcodecs und eignet sich damit<br />

als Format für sehr kurze Audioclips.<br />

CPU-Lastigkeit<br />

Zwar wurde Opus mit den neuesten<br />

Techniken der Audio-Kompression entworfen,<br />

ein Design-Aspekt war jedoch,<br />

die Rechenlast möglichst gering zu halten.<br />

Zum Decodieren benötigt Opus nun<br />

etwas mehr Rechenpower als Vorbis,<br />

beim Codieren braucht der CELT-Enco-<br />

92 www.linux-user.de<br />

05.2013


Audio-Codec Opus<br />

Know-how<br />

der sogar noch weniger. Der wesentlich<br />

komplexere Silk-Encoder jedoch belastet<br />

die CPU deutlich mehr als CELT.<br />

Opus lässt sich für CPUs ohne Fließkomma-Einheit<br />

als Fixedpoint-Variante<br />

mit dem Flag ‐‐enable‐fixed‐point<br />

kompilieren. Laut den Entwicklern laufen<br />

sowohl Decoder als auch Encoder<br />

problemlos auf allen gängigen Embedded-CPUs<br />

in Echtzeit. Aber Vorsicht: Auf<br />

CPUs mit Fließkomma-Einheit arbeitet<br />

die Fixedpoint-Variante langsamer und<br />

liefert eine etwas schlechtere Qualität.<br />

Trickkiste<br />

2 Bei hohen Bitraten steckt der Opus-Codec die Mitbewerber AAC, Vorbis und MP3 in<br />

Sachen Qualität größtenteils locker in die Tasche. (Quelle: opus-codec.com)<br />

Opus nutzt jede Menge teils brandneuer<br />

Tricks. So erlaubt es der Codec, die Zeitoder<br />

Frequenz-Auflösung in jedem Block<br />

für jedes Frequenzband getrennt festzulegen.<br />

Beispielsweise priorisiert er in<br />

einem Musikstück beim Einsatz eines<br />

neuen Instruments die Zeit im Block<br />

höher als die Qualität, damit der Einsatz<br />

100-prozentig korrekt ausfällt. Das betrifft<br />

aber nur die Frequenzen des neuen<br />

Instruments, auf einem anderen Block<br />

bildet es ein schon klingendes Instrument<br />

stattdessen mit besserer Frequenzauflösung<br />

ab. Konkurrierende Codecs<br />

wie Vorbis, AAC oder MP3 priorisieren<br />

pro Block für alle Frequenzen entweder<br />

den korrekten Einsatz oder die Qualität.<br />

So klingt Opus<br />

Die Redaktion ließ im Blindtest die Codecs MP3, OGG und Opus<br />

gegeneinander antreten. Das Equipment bestand unter anderem<br />

aus einem Referenzkopfhörer von Sennheiser. Beim Codieren fiel<br />

die hohe Geschwindigkeit von Opus auf: Sie lag teils um den Faktor<br />

fünf über jener von MP3 und etwa 20 Prozent über der von OGG.<br />

Die von den drei Codecs erzeugten Dateien waren bei gleicher<br />

Komprimierungsrate im Mittel fast auf das Kilobyte gleich groß.<br />

Die Titel wurden jeweils mit den Kompressionsraten 96, 160 und<br />

228 kbit/​s (CBR) in die Zielformate überführt. Als Erstes traten die<br />

Probanden in der höchsten Kompressionsrate von 96 kbit/​s gegeneinander<br />

an, die allgemein als wenig Hifi-tauglich gilt. Sowohl bei<br />

MP3 als auch bei OGG klangen die Stücke matt, wenig transparent<br />

und langweilig. Umso überraschter war die Redaktion über die von<br />

Opus erzeugten Ergebnisse: Die Aufnahmen klangen satt, lebendig<br />

und gut durchzeichnet. Zwar hörte man naturgemäß noch einen<br />

Unterschied zum Original, doch selbst der hielt sich in Grenzen.<br />

Damit spielte Opus in dieser Disziplin seine Kontrahenten mit verblüffender<br />

Leichtigkeit an die Wand.<br />

Anders sah das Bild bei der Kompressionsrate von 160 kbit/​s aus.<br />

Im Blindtest waren weder zwischen den Codecs im Vergleich zur<br />

Referenzdatei große Unterschiede zu hören. Opus klang bei den<br />

meisten Aufnahmen einen Tick besser, vor allem bei vollem<br />

Orchester einsatz. Hier behielt Opus den besseren Überblick und<br />

bildete einzelne Instrumente sauberer und plastischer ab als die<br />

Konkurrenz. Auch Zischlaute, wie sie bei OGG an manchen Stellen<br />

auftraten, waren Opus fremd.<br />

Ebenfalls sehr angenehm fiel auf, dass der neue Codec Stimmen<br />

sehr natürlich wiedergab. Hier erzeugten OGG und MP3 zuweilen<br />

etwas mittenlastigere und unausgewogenere Ergebnisse. Allerdings<br />

fielen die Unterschiede so gering aus, dass sie auf einer Stereo-<br />

Anlage im mittleren Preissegment (bis etwa 1000 Euro) kaum zu<br />

hören wären. Deswegen verzichteten wir darauf, die Codecs bei<br />

noch höheren Bitraten miteinander zu vergleichen. Stattdessen<br />

musste sich Opus im 160er-Testfeld mit Dateien behaupten, die wir<br />

mit nur 128 kbit/​s codiert hatten. Auch hier fielen die Unterschiede<br />

überraschend gering aus, wenngleich Opus in der Regel eher die<br />

hinteren Plätze belegte.<br />

Unterm Strich klingt Opus bei niedrigen Bitraten sensationell gut<br />

und verweist die Konkurrenz mit weitem Abstand auf die Plätze.<br />

Bei 160 kbit/​s fallen die Unterschiede zu MP3 und OGG jedoch<br />

merklich kleiner aus. Im Mittel setzte sich der Codec jedoch auch<br />

hier deutlich durch und erreichte im Blindtest die aus dem Mittelwert<br />

der Platzierungen errechnete Bestnote 1,28, gefolgt von OGG<br />

mit 2,14 und MP3 mit 2,28 Zählern (siehe Tabelle Rangliste).<br />

05.2013 www.linux-user.de<br />

93


Know-how<br />

Audio-Codec Opus<br />

AMR: Adaptive Multi-Rate. Ein Satz von<br />

Sprachcodecs, die unter anderem in Mobilfunksystemen<br />

der zweiten und dritten Generation<br />

zum Einsatz kommen.<br />

Rangliste<br />

Rang<br />

Codec<br />

Mike Batt – Caravan on the Move<br />

1. OGG<br />

2. MP3<br />

3. Opus<br />

Jenkins – Palladio<br />

1. Opus<br />

2. OGG<br />

3. MP3<br />

ZZ-Top – La Grange<br />

1. Opus<br />

2. OGG<br />

3. MP3<br />

Aerosmith – I Don’t Want to Miss a Thing<br />

1. MP3<br />

2. OGG<br />

3. Opus<br />

Pink Floyd – Welcome to the Machine<br />

1. Opus<br />

2. OGG<br />

3. MP3<br />

Dire Straits – Where Do You Think You’re<br />

Going<br />

1. Opus<br />

2. MP3<br />

3. OGG<br />

Rossini – La Gazza Ladra<br />

1. Opus<br />

2. MP3<br />

3. OGG<br />

Ebenfalls neu ist das „Pre-Echo Cancelling“,<br />

das durch starke Quantisierung entstehende,<br />

hörbare „stille“ Löcher vor<br />

dem Einsatz eines Instruments erkennt<br />

und mit Rauschen füllt. Durch „Forward<br />

Error Correction“ gibt sich Opus robust<br />

gegen Bitfehler, die beim Übertragen<br />

entstehen. Es gibt viele neue Möglichkeiten<br />

bei der Zuordnung der Bits, die künftiges<br />

Verbesserungspotenzial beim Encoder<br />

erahnen lassen. Der „Allocation Tilt“<br />

beispielsweise wendet die Bandbreite<br />

eher für die höheren oder die niedrigeren<br />

Frequenzen auf. Beim „Band Boosting“<br />

gibt der Encoder bestimmten Frequenzbändern<br />

mehr Bandbreite – dieses<br />

Feature nutzt der Encoder momentan<br />

gar nicht, aber die Möglichkeit sieht die<br />

Spezifikation bereits vor.<br />

Übrigens spielte bei der Opus-Entwicklung<br />

die Psychoakustik, also das<br />

Weglassen von für das menschliche Ohr<br />

unhörbaren Frequenzen, keinerlei Rolle:<br />

Den Entwicklern zufolge genügte es<br />

vollauf, die Energie des Signals möglichst<br />

korrekt abzubilden.<br />

Hörtests<br />

Google, Nokia und das Audio-Enthusiastenforum<br />

HydrogenAudio verglichen<br />

Opus mit der Konkurrenz. Nokia und<br />

Google legten ihren Fokus dabei primär<br />

auf Sprache (Englisch und Mandarin),<br />

während HydrogenAudio die Qualität<br />

bei Musik verglich. Die Ergebnisse von<br />

Google und Nokia 2 decken sich weitgehend:<br />

Opus schlägt Speex, G.722.1<br />

und G.719 bei gleicher Bitrate qualitativ;<br />

bei AMR liegen die Schnittpunkte bei<br />

8 kbit/​s (AMR-Narrowband) beziehungsweise<br />

16 kbit/​s (AMR-Wideband).<br />

Bei höherer Bitrate hat Opus die Nase<br />

vorn, bei niedrigerer dagegen AMR. Der<br />

Vergleich von Google kommt zu dem Ergebnis,<br />

dass Opus bei gleicher Kompression<br />

(64 und 96 kbit/​s) MP3 schlägt und<br />

Listing 1<br />

ungefähr gleich gut klingt wie AAC.<br />

Die Hör-Blindtests von HydrogenAudio<br />

û bezogen sich auf zahlreiche verschiedene<br />

Musik-Samples aus Popmusik<br />

und Klassik bei 64 kbit/​s. Hier positionierte<br />

sich Opus als klarer Sieger 3 und<br />

lag deutlich vor Apples HE-AAC-Implementierung.<br />

Diese war wieder ein gutes<br />

Stück besser als Neros HE-AAC-Variante,<br />

die nur einen Hauch vor Ogg Vorbis lag.<br />

Für den Normalverbraucher sind diese<br />

Ergebnisse allerdings in erster Linie akademischer<br />

Natur, da kaum jemand seine<br />

Musik mit solch geringer Bitrate speichert.<br />

Deswegen hat die Redaktion einen<br />

Hörtest mit praxistauglicheren Komprimierungsraten<br />

vorgenommen (siehe<br />

Kasten So klingt Opus).<br />

Opus im Einsatz<br />

OGG unterstützt seit Version 1.3 Opus,<br />

MKVtoolnix enthält in Version 6.0.0 eine<br />

experimentelle Opus-Unterstützung. VLC<br />

spielt das Format seit Version 2.0.4 ab,<br />

eine Integration im VLC-Transcoder dürfte<br />

bald folgen. Mpxplay, Foobar2000,<br />

AIMP und Directshow unter Windows<br />

verstehen Opus, ebenso GoneMAD, Neutron<br />

Music Player und PowerAMP unter<br />

Android. Ffmpeg kann ab Version 1.1 mit<br />

Libopus umgehen, auch GStreamer<br />

kennt den Codec inzwischen.<br />

Firefox und Thunderbird unterstützen<br />

Opus seit Version 15. Da der Codec einen<br />

Teil des HTML5-Standards bildet, werden<br />

ihn in Kürze alle anderen Webbrowser<br />

unterstützen – Google Chrome voraussichtlich<br />

ab Version 25. Googles freier<br />

Video- Codec WebM erlaubt bisher ausschließlich<br />

Vorbis als Audio-Codec, die<br />

Spezifikation müsste für Opus geändert<br />

werden. Für WebRTC, den neuen Standard<br />

für Videokonferenzen und VoIP direkt<br />

im Browser, ist Opus Pflicht.<br />

Momentan nutzt Skype noch das originale<br />

Silk, hat aber eine Umstellung auf<br />

$ mplayer ‐novideo ‐af resample=48000:0:2,channels=2,format=s16l<br />

e ‐ao pcm:nowaveheader:file=/dev/stdout ‐really‐quiet Input | opusenc<br />

‐‐bitrate=96 ‐‐raw ‐ Output.opus<br />

94 www.linux-user.de<br />

05.2013


Audio-Codec Opus<br />

Know-how<br />

Opus schon in der Schublade – einen<br />

Release-Termin nennt das Unternehmen<br />

noch nicht. Allerdings gibt es bereits<br />

eine Menge Voice/​Video-Chat-Programme,<br />

die auf Opus setzen. Dazu gehören<br />

unter anderem SFLphone, Mumble,<br />

TrueConf, Empathy, CSipSimple (Android),<br />

Toktumi Line2 (iOS/​Android) und<br />

der Gamer-Voice-Chat Teamspeak 3.<br />

Besondere Erwähnung verdient das<br />

Mediaplayer-System Rockbox, das – neben<br />

den Android-Mediaplayern – derzeit<br />

in der Entwicklerversion 3.12 die einzige<br />

Unterstützung für Opus bietet.<br />

Opus selbst gemacht<br />

Mit Ubuntu 12.04 gestaltet sich die Arbeit<br />

mit Opus zäh. Weder das GStreamer-Framework<br />

noch der damit ausgelieferte<br />

VLC 2.0.5 unterstützen Opus. Das<br />

Kompilieren der Opus-Tools û scheitert<br />

an der fehlenden Libogg-Bibliothek in<br />

Version 1.3. Auch ein Nachinstallieren<br />

behob das Problem nicht. Wer Ffmpeg<br />

selbst kompiliert û, kann Libopus mit<br />

dem Schalter ‐‐enable‐libopus bei<br />

./ configure dazupacken und Opus-Dateien<br />

codieren. Zum Abspielen muss unter<br />

Ubuntu 12.04 aber ein inoffizieller<br />

Mediaplayer-Backport mit Libopus herhalten<br />

– oder Firefox ab Version 15.<br />

Erst unter Ubuntu 12.10 macht Opus<br />

wirklich Spaß. Hier spielen nicht nur<br />

Firefox und VLC die Dateien ab, auch<br />

Rhythmbox, Banshee und Totem unterstützen<br />

das Format via GStreamer. Ein<br />

mit Libopus ausgestatteter Ffmpeg<br />

codiert Dateien folgendermaßen:<br />

$ ffmpeg ‐i Input ‐vn ‐c:a libopuU<br />

s ‐b:a 96k Output.opus<br />

Freilich eignet sich dafür auch der Standalone-Encoder<br />

Opusenc aus den Opus-<br />

Tools. Er akzeptiert als Input-Format aber<br />

lediglich WAV- oder AIFF-Dateien. Liegen<br />

diese nicht in dem Format vor, geben Sie<br />

die Datei mit einem Player wie MPlayer<br />

oder Mpg123 via stdout raw‐sound in<br />

48-kHz-Stereo aus und pipen sie an<br />

Opusenc im Raw-Modus (Listing 1).<br />

Opusenc erlaubt die Übergabe einer<br />

Reihe von zusätzlichen Parametern, wie<br />

3 Opus schlägt die gängigen Codecs bei 64 kbit/​s klar. (Quelle: xiph.org)<br />

beispielsweise CBR, Frame-Größe, Metadaten<br />

oder Parameter des Raw-Inputs.<br />

Details dazu finden Sie in der Manpage<br />

des Programms. Mithilfe der in Listing 1<br />

gezeigten Kommandos resampeln Sie<br />

mittels Mplayer und seinen besten<br />

Resampling-Routinen auf 48 kHz, sie<br />

könnten aber Opusenc auch über den<br />

Parameter ‐‐raw‐rate an die Sampling-<br />

Rate des Input-Signals anpassen.<br />

Generell sollten Sie überflüssiges<br />

Resampling wo immer möglich vermeiden.<br />

Falls die Quelle also schon die von<br />

Ihnen anvisierte Sampling-Rate aufweist,<br />

verzichten Sie am besten auf alle Re sampling-Optionen.<br />

Eine falsche Sampling-XX-<br />

Rate erkennen Sie daran, dass das Resultat<br />

zu schnell oder zu langsam spielt.<br />

Fazit<br />

Opus ist eine kleine Revolution: Der freie<br />

Codec übertrifft die Konkurrenz qualitativ<br />

um Längen und lässt sich dabei so<br />

vielseitig einsetzen wie kein anderer.<br />

Während Vorbis der kommerziellen Konkurrenz<br />

lediglich an den Hacken kratzt,<br />

stellt Opus diese vor allem bei hohen<br />

Kompressionsraten locker in den Schatten.<br />

Schlussendlich bleibt nur ein kleiner<br />

Wermutstropfen, der für die meisten<br />

derzeit aber nur eine untergeordnete<br />

Rolle spielen dürfte (siehe Kasten Mehrkanal-Versäumnisse).<br />

(tle) n<br />

Mehrkanal-Versäumnisse<br />

Opus unterstützt nativ nicht mehr als zwei<br />

Kanäle. Die momentane Lösung sieht vor,<br />

dass der OGG-Container mehrere Monooder<br />

Stereo-Opus-Streams enthält, denen<br />

dann die jeweiligen Kanäle zugewiesen<br />

werden. Das funktioniert zwar, aber dadurch<br />

profitiert Opus nur von der Signalähnlichkeit<br />

zwischen zwei Kanälen, jedoch<br />

nicht über alle, wie es echte Surround-Codecs<br />

wie Dolby Digital oder DTS<br />

praktizieren. Ob Opus diesen Surround-<br />

Platzhirschen bei gleicher Bitrate das Wasser<br />

reichen kann, bleibt somit fraglich.<br />

Weitere Infos und<br />

interessante Links<br />

www. linux‐user. de/ qr/ 27349<br />

05.2013 www.linux-user.de<br />

95


Service<br />

IT-Profimarkt<br />

PROFI<br />

MARKT<br />

Sie fragen sich, wo Sie maßgeschneiderte<br />

Linux-Systeme sowie kompetente Ansprechpartner<br />

zu Open-Source-Themen<br />

finden? Der IT-Profimarkt weist Ihnen<br />

hier als zuverlässiges Nachschlagewerk<br />

den Weg. Die im Folgenden gelisteten<br />

Unternehmen beschäftigen Experten auf<br />

ihrem Gebiet und bieten hochwertige<br />

Produkte und Leistungen.<br />

Die exakten Angebote jeder Firma entnehmen<br />

Sie deren Homepage. Der ersten<br />

Orientierung dienen die Kategorien<br />

Hardware, Software, Seminaranbieter,<br />

Systemhaus, Netzwerk/TK sowie Schulung/Beratung.<br />

Der IT-Profimarkt-Eintrag<br />

ist ein Service von Linux-Magazin und<br />

<strong>LinuxUser</strong>.<br />

Online-Suche<br />

Besonders komfortabel finden Sie einen<br />

Linux-Anbieter in Ihrer Nähe online über<br />

die neue Umkreis-Suche unter:<br />

[http://www.it-profimarkt.de]<br />

Weitere Informationen:<br />

Medialinx AG<br />

Anzeigenabteilung<br />

Putzbrunner Str. 71<br />

D-81739 München<br />

Tel: +49 (0) 89 / 99 34 11-23<br />

Fax: +49 (0) 89 / 99 34 11-99<br />

E-Mail: anzeigen@linux-user.de<br />

IT-Profimarkt<br />

Firma Anschrift Telefon Web 1 2 3 4 5 6<br />

imunixx GmbH UNIX consultants 01468 Moritzburg, Heinrich-Heine-Str. 4 0351-83975-0 www.imunixx.de √ √ √ √ √<br />

TUXMAN Computer 10369 Berlin, Anton-Saefkow-Platz 8 030-97609773 www.tuxman.de √ √ √ √ √<br />

Hostserver GmbH 10405 Berlin, Winsstraße 70 030-47375550 www.hostserver.de √<br />

Compaso GmbH 10439 Berlin, Driesener Straße 23 030-3269330 www.compaso.de √ √ √ √ √<br />

elego Software Solutions GmbH 13355 Berlin, Gustav-Meyer-Allee 25 030-2345869-6 www.elegosoft.com √ √ √ √<br />

verion GmbH 16244 Altenhof, Unter den Buchen 22 e 033363-4610-0 www.verion.de √ √ √<br />

Logic Way GmbH 19061 Schwerin, Hagenower Str. 73 0385-39934-48 www.logicway.de √ √ √ √<br />

Sybuca GmbH 20459 Hamburg, Herrengraben 26 040-27863190 www.sybuca.de √ √ √ √ √<br />

iTechnology GmbH<br />

22083 Hamburg,<br />

040 / 69 64 37 20 www.itechnology.de √ √ √ √<br />

Osterbekstraße 90b<br />

JEL Ingenieurbuero 23911 Einhaus, Hauptstr. 7 04541-8911-71 www.jeltimer.de √<br />

beitco - Behrens IT-Consulting 26197 Ahlhorn, Lessingstr. 27 04435-9537330-0 www.beitco.de √ √ √ √ √<br />

talicom GmbH<br />

30169 Hannover,<br />

0511-123599-0 www.talicom.de √ √ √ √ √<br />

Calenberger Esplanade 3<br />

primeLine Solutions GmbH<br />

32549 Bad Oeynhausen,<br />

05731/​86940 www.primeline-solutions. √ √ √ √<br />

Dornenbreite 18a<br />

de<br />

teuto.net Netzdienste GmbH 33602 Bielefeld, Niedenstr. 26 0521-96686-0 www.teuto.net √ √ √ √ √<br />

MarcanT GmbH 33602 Bielefeld, Ravensberger Str. 10 G 0521-95945-0 www.marcant.net √ √ √ √ √ √<br />

Hostserver GmbH 35037 Marburg, Biegenstr. 20 06421-175175-0 www.hostserver.de √<br />

LINET Services GmbH 38118 Braunschweig, Cyriaksring 10a 0531-180508-0 www.linet-services.de √ √ √ √ √ √<br />

OpenIT GmbH<br />

40599 Düsseldorf,<br />

0211-239577-0 www.OpenIT.de √ √ √ √ √<br />

In der Steele 33a-41<br />

Linux-Systeme GmbH 45277 Essen, Langenbergerstr. 179 0201-298830 www.linux-systeme.de √ √ √ √ √<br />

Linuxhotel GmbH 45279 Essen, Antonienallee 1 0201-8536-600 www.linuxhotel.de √<br />

OpenSource Training Ralf Spenneberg 48565 Steinfurt, Am Bahnhof 3-5 02552-638755 www.opensource-training.<br />

√<br />

de<br />

Intevation GmbH 49074 Osnabrück, Neuer Graben 17 0541-33508-30 osnabrueck.intevation.de √ √ √ √<br />

uib gmbh 55118 Mainz, Bonifaziusplatz 1b 06131-27561-0 www.uib.de √ √ √ √<br />

LISA GmbH 55411 Bingen, Elisenhöhe 47 06721-49960 www.lisa-gmbh.de √ √ √ √ √<br />

saveIP GmbH 64283 Darmstadt, Schleiermacherstr. 23 06151-666266 www.saveip.de √ √ √ √ √<br />

LAMARC EDV-Schulungen u. Beratung 65193 Wiesbaden,<br />

0611-260023 www.lamarc.com √ √ √ √<br />

GmbH<br />

Sonnenberger Straße 14<br />

1 = Hardware 2 = Netzwerk/TK 3 = Systemhaus 4 = Seminaranbieter 5 = Software 6 = Schulung/Beratung <br />

98 www.linux-user.de<br />

05.2013


IT-Profimarkt<br />

Service<br />

IT-Profimarkt<br />

Firma Anschrift Telefon Web 1 2 3 4 5 6<br />

ORDIX AG 65205 Wiesbaden, Kreuzberger Ring 13 0611-77840-00 www.ordix.de √ √ √ √ √<br />

LinuxHaus Stuttgart<br />

70565 Stuttgart,<br />

0711-2851905 www.linuxhaus.de √ √ √ √ √<br />

Hessenwiesenstraße 10<br />

Manfred Heubach EDV & Kommunikation 73728 Esslingen, Hindenburgstr. 47 0711-4904930 www.heubach-edv.de √ √ √ √<br />

Waldmann EDV Systeme + Service 74321 Bietigheim-Bissingen,<br />

07142-21516 www.waldmann-edv.de √ √ √ √ √<br />

Pleidelsheimer Str. 25<br />

in-put Das Linux-Systemhaus 76133 Karlsruhe, Moltkestr. 49 0721-6803288-0 www.in-put.de √ √ √ √ √ √<br />

Bodenseo 78224 Singen, Pomeziastr. 9 07731-1476120 www.bodenseo.de √ √ √<br />

Linux Information Systems AG 81739 München, Putzbrunnerstr. 71 089-993412-0 www.linux-ag.com √ √ √ √ √<br />

LinuxLand International GmbH 81739 München, Putzbrunnerstr. 71 089-99341441 www.linuxland.de √ √ √ √ √ √<br />

Synergy Systems GmbH 81829 München, Konrad-Zuse-Platz 8 089-89080500 www.synergysystems.de √ √ √ √ √<br />

B1 Systems GmbH 85088 Vohburg, Osterfeldstraße 7 08457-931096 www.b1-systems.de √ √ √ √ √<br />

ATIX AG 85716 Unterschleißheim, Einsteinstr. 10 089-4523538-0 www.atix.de √ √ √ √ √ √<br />

fidu.de IT KG 86343 Königsbrunn , Zeppelinstr. 3 0921-16 49 87 87-0 www.linux-onlineshop.de √ √ √ √<br />

OSTC Open Source Training and Consulting 90425 Nürnberg,<br />

0911-3474544 www.ostc.de √ √ √ √ √ √<br />

GmbH<br />

Waldemar-Klink-Str. 10<br />

Dipl.-Ing. Christoph Stockmayer GmbH 90571 Schwaig, Dreihöhenstr. 1 0911-505241 www.stockmayer.de √ √ √<br />

pascom - Netzwerktechnik GmbH & Co.KG 94469 Deggendorf, Berger Str. 42 0991-270060 www.pascom.net √ √ √ √ √<br />

Computersysteme Gmeiner<br />

95643 Tirschenreuth,<br />

09631-7000-0 www.gmeiner.de √ √ √ √ √<br />

Fischerhüttenweg 4<br />

CATATEC CH-3013 Bern, Dammweg 43 0041-31-3302630 www.catatec.ch √ √ √<br />

Syscon Systemberatungs AG CH-8003 Zürich, Zweierstrasse 129 0041-44-4542010 www.syscon.ch √ √ √ √ √<br />

Würth Phoenix GmbH IT-39100 Bozen, Kravoglstraße 4 0039 0471 56 41 11 www.wuerth-phoenix.com √ √ √ √<br />

1 = Hardware 2 = Netzwerk/TK 3 = Systemhaus 4 = Seminaranbieter 5 = Software 6 = Schulung/Beratung <br />

22. –25. Mai 2013 in Berlin<br />

EUROPE‘S LEADING<br />

OPEN SOURCE EVENT<br />

www.linuxtag.org<br />

Keynote-Speaker, Kernel-Entwickler, Arbeitgeber,<br />

Trendsetter und Neueinsteiger geben sich vom<br />

22. – 25. Mai 2013 auf dem 19. LinuxTag in Berlin<br />

wieder die Hand.<br />

22. Mai 2013: Track – Embedded Linux for Industrial Applications<br />

u. a. mit folgenden Speakern:<br />

• Andreas Klinger, Trainer und Entwickler für Embedded-Linux<br />

• Carsten Emde, Geschäftsführer Open Source Automation<br />

Development Lab (OSADL)<br />

• Jan Altenberg, Linutronix GmbH.<br />

Open Source<br />

mobilisiert.<br />

22. + 23.05.2013<br />

OPEN-IT SUMMIT:<br />

Open for Business & Start-ups!<br />

24. + 25.05.2013<br />

2. RootCamp by netways<br />

24. Mai 2013: OpenStack ® inaugural DACH Day 2013<br />

Speaker sind:<br />

• Jonathan Bryce, Executive Director, OpenStack Foundation<br />

• Kurt Garloff, VP Engineering Cloud Services, Deutsche Telekom AG<br />

• Monty Taylor, Hewlett Packard (HP)<br />

• Bernhard Wiedemann & Sascha Peilicke, SUSE<br />

• Muharem Hrnjadovic, Rackspace Cloud<br />

• Dr. Wolfgang Schulze, Inktank<br />

• Tobias Riedel, Netways<br />

• Dr. Udo Seidel, Amadeus Data Processing<br />

LinuxTag 2013 – where .com meets .org<br />

Hauptmedienpartner:<br />

Partner:<br />

Sponsoring Partner:<br />

05.2013 www.linux-user.de<br />

99<br />

MAGAZIN


Seminare<br />

Service<br />

DiD you<br />

know?<br />

IT-Onlinetrainings<br />

Mit Experten lernen.<br />

MEDIALINX<br />

IT-ACADEMY<br />

Einfache IMAP-Server<br />

mit Dovecot<br />

mit Peer Heinlein,<br />

Heinlein Support GmbH<br />

249 €<br />

www.medialinx-academy.de<br />

IT-Academy_1-9_Dovecot-Schulung.indd 1<br />

IT-Onlinetrainings<br />

Mit Experten lernen.<br />

18.03.2013 17:05:11 Uhr<br />

MEDIALINX<br />

IT-ACADEMY<br />

IT-Onlinetrainings<br />

Mit Experten lernen.<br />

MEDIALINX<br />

IT-ACADEMY<br />

LPIC-1 / LPIC-2 Training<br />

LPIC-1 (LPI 101 + 102)<br />

mit Ingo Wichmann,<br />

Linuxhotel<br />

499 €<br />

LPIC-2 (LPI 201 + 202)<br />

mit Marco Göbel,<br />

Com Computertraining GmbH<br />

499 €<br />

www.medialinx-academy.de<br />

Effiziente BASH-Skripte<br />

mit Klaus Knopper,<br />

Gründer der<br />

Knoppix-Distribution,<br />

KNOPPER.NET<br />

199 €<br />

Automatisieren Sie komplexe<br />

Aufgaben mit Hilfe effizienter Skripte!<br />

www.medialinx-academy.de<br />

WusstEn siE’s?<br />

Linux-Magazin und <strong>LinuxUser</strong><br />

haben ein englisches<br />

Schwester magazin!<br />

Am besten, Sie informieren gleich<br />

Ihre Linux-Freunde in aller Welt...<br />

www.linux-magazine.com<br />

IT-Academy_1-9_LPIC-Schulungen.indd 1<br />

IT-Onlinetrainings<br />

Mit Experten lernen.<br />

www.medialinx-academy.de<br />

18.03.2013 17:05:57 IT-Academy_1-9_Bash-Schulung.indd Uhr<br />

1<br />

MEDIALINX<br />

IT-ACADEMY<br />

Python für<br />

Systemadministratoren<br />

mit Rainer Grimm,<br />

science + computing AG<br />

199 €<br />

Vereinfachen Sie Ihren Sysadmin-Alltag<br />

mit Skripting-Know-How für Profis!<br />

IT-Onlinetrainings<br />

Mit Experten lernen.<br />

18.03.2013 17:04:16 Uhr<br />

MEDIALINX<br />

IT-ACADEMY<br />

– die offiziellen Trainings<br />

mit Marco Welter,<br />

Zarafa Deutschland GmbH<br />

Zarafa Administrator<br />

249 €<br />

Zarafa Engineer<br />

249 €<br />

www.medialinx-academy.de<br />

05.2013 IT-Academy_1-9_Python-Schulung.indd www.linux-user.de 1 18.03.2013 17:07:32 IT-Academy_1-9_Zarafa-Schulung.indd Uhr<br />

1<br />

101<br />

LMI_3-9h_german_1812-2012.indd 1<br />

18.12.2012 15:30:04 Uhr<br />

18.03.2013 17:08:02 Uhr


Service<br />

Impressum<br />

Impressum<br />

<strong>LinuxUser</strong> ist eine monatlich erscheinende Publikation der<br />

Linux New Media, eines Geschäftsbereichs der Medialinx AG.<br />

Anschrift Putzbrunner Str. 71<br />

81739 München<br />

Telefon: (089) 99 34 11-0<br />

Fax: (089) 99 34 11-99<br />

Homepage<br />

Artikel und Foren<br />

Abo/Nachbestellung<br />

E-Mail (Leserbriefe)<br />

E-Mail (<strong>Daten</strong>träger)<br />

Abo-Service<br />

Pressemitteilungen<br />

Chefredakteur<br />

Stellv. Chefredakteur<br />

Redaktion<br />

Linux-Community<br />

<strong>Daten</strong>träger<br />

Ständige Mitarbeiter<br />

Grafik<br />

Sprachlektorat<br />

Produktion<br />

Druck<br />

Geschäftsleitung<br />

Mediaberatung<br />

D / A / CH<br />

USA / Kanada<br />

Andere Länder<br />

http://www.linux-user.de<br />

http://www.linux-community.de<br />

http://www.linux-user.de/bestellen/<br />

<br />

<br />

<br />

<br />

Jörg Luther (jlu, v. i. S. d. P.)<br />

<br />

Andreas Bohle (agr)<br />

<br />

Thomas Leichtenstern (tle)<br />

<br />

Andreas Bohle (agr)<br />

<br />

Thomas Leichtenstern (tle)<br />

<br />

Mirko Albrecht, Erik Bärwaldt, Falko Benthin,<br />

Mario Blättermann, Marko Dragicevic, Thomas Drilling,<br />

Florian Effenberger, Karsten Günther, Frank Hofmann,<br />

Christoph Langer, Tim Schürmann, Dr. Karl Sarnow,<br />

Vincze-Áron Szabó, Uwe Vollbracht<br />

Elgin Grabe (Titel und Layout)<br />

Bildnachweis: Stock.xchng, 123rf.com,<br />

Fotolia.de und andere<br />

Astrid Hillmer-Bruer<br />

Christian Ullrich<br />

<br />

Vogel Druck und Medienservice GmbH & Co. KG<br />

97204 Höchberg<br />

Brian Osborn (Vorstand,<br />

verantwortlich für den Anzeigenteil)<br />

<br />

Hermann Plank (Vorstand)<br />

<br />

Petra Jaser<br />

<br />

Tel.: +49 (0)89 / 99 34 11 24<br />

Fax: +49 (0)89 / 99 34 11 99<br />

Michael Seiter<br />

<br />

Tel.: +49 (0)89 / 99 34 11 23<br />

Fax: +49 (0)89 / 99 34 11 99<br />

Ann Jesse<br />

<br />

Tel.: +1 785 841 88 34<br />

Darrah Buren<br />

<br />

Tel.: +1 785 856 3082<br />

Penny Wilby<br />

<br />

Tel.: +44 1787 21 11 00<br />

Es gilt die Anzeigenpreisliste vom 01.01.2013.<br />

Pressevertrieb<br />

MZV Moderner Zeitschriften Vertrieb GmbH & Co. KG<br />

Ohmstraße 1<br />

85716 Unterschleißheim<br />

Tel.: (089) 3 19 06-0<br />

Fax: (089) 3 19 06-113<br />

Abonnentenservice Monika Jölly <br />

D / A / CH Postfach 1165<br />

74001 Heilbronn<br />

Telefon: +49 (0)7131 27 07-274<br />

Fax: +49 (0)7131 27 07 -78-601<br />

Abo-Preise <strong>LinuxUser</strong> Deutschland Österreich Schweiz Ausland EU<br />

No-Media-Ausgabe<br />

(ohne <strong>Daten</strong>träger 1 )<br />

€ 5,95 € 6,70 Sfr 11,90 (siehe Titel)<br />

DVD-Ausgabe<br />

(mit 2 <strong>Daten</strong>trägern)<br />

€ 8,50 € 9,35 Sfr 17,00 (siehe Titel)<br />

Jahres-DVD<br />

(Einzelpreis)<br />

€ 14,95 € 14,95 Sfr 18,90 € 14,95<br />

Jahres-DVD<br />

(zum Abo 2 )<br />

€ 6,70 € 6,70 Sfr 8,50 € 6,70<br />

Mini-Abo<br />

(3 Ausgaben)<br />

€ 3,00 € 3,00 Sfr 4,50 € 3,00<br />

Jahres-Abo<br />

(No-Media-Ausgabe)<br />

€ 60,60 € 68,30 Sfr 99,90 € 81,00<br />

Jahres-Abo<br />

(DVD-Ausgabe)<br />

€ 86,70 € 95,00 Sfr 142,80 € 99,00<br />

Preise Digital Deutschland Österreich Schweiz Ausland EU<br />

Heft-PDF<br />

(Einzelausgabe)<br />

€ 5,95 € 5,95 Sfr 7,70 € 5,95<br />

Digi-Sub<br />

(12 Ausgaben)<br />

€ 60,60 € 60,60 Sfr 78,70 € 60,60<br />

Digi-Sub<br />

(zum Abo 2 )<br />

€ 12,00 € 12,00 Sfr 12,00 € 12,00<br />

HTML-Archiv<br />

(zum Abo 2 )<br />

€ 12,00 € 12,00 Sfr 12,00 € 12,00<br />

Preise Kombi-Abos Deutschland Österreich Schweiz Ausland EU<br />

Mega-Kombi-Abo<br />

(LU plus LM 3 )<br />

€ 143,40 € 163,90 Sfr 199,90 € 173,90<br />

(1) Die No-Media-Ausgabe erhalten Sie ausschließlich in unserem Webshop unter<br />

http://www.medialinx-shop.de, die Auslieferung erfolgt versandkostenfrei.<br />

(2) Ausschließlich erhältlich in Verbindung mit einem Jahresabonnement der<br />

Print- oder Digital-Ausgabe von <strong>LinuxUser</strong>.<br />

(3) Das Mega-Kombi-Abo umfasst das <strong>LinuxUser</strong>-Abonnement (DVD-Ausgabe)<br />

plus das Linux-Magazin-Abonnement inklusive DELUG-Mitgliedschaft<br />

(monatliche DELUG-DVD) sowie die Jahres-DVDs beider Magazine.<br />

Informationen zu anderen Abo-Formen und weiteren Produkten der Medialinx AG<br />

finden Sie in unserem Webshop unter http://www.medialinx-shop.de.<br />

Gegen Vorlage eines gültigen Schülerausweises oder einer aktuellen Immatrikulationsbescheinigung<br />

erhalten Schüler und Studenten eine Ermäßigung von 20 Prozent<br />

auf alle Abo-Preise. Der Nachweis ist jeweils bei Verlängerung neu zu erbringen.<br />

Bitte teilen Sie Adressänderungen unserem Abo-Service ()<br />

umgehend mit, da Nachsendeaufträge bei der Post nicht für Zeitschriften gelten.<br />

Linux ist ein eingetragenes Warenzeichen von Linus Torvalds und wird von uns mit<br />

seiner freundlichen Genehmigung verwendet. »Unix« wird als Sammelbegriff für die<br />

Gruppe der Unix-ähnlichen Betriebssysteme (wie beispielsweise HP/UX, FreeBSD,<br />

Solaris, u.a.) verwendet, nicht als Bezeichnung für das Trademark »UNIX« der Open<br />

Group. Der Linux-Pinguin wurde von Larry Ewing mit dem Pixelgrafikprogramm<br />

»The GIMP« erstellt.<br />

Eine Haftung für die Richtigkeit von Veröffentlichungen kann – trotz sorgfältiger Prüfung<br />

durch die Redaktion – vom Verlag nicht übernommen werden. Mit der Einsendung<br />

von Manuskripten oder Leserbriefen gibt der Verfasser seine Einwilligung zur<br />

Veröffent lich ung in einer Publikation der Medialinx AG. Für unverlangt eingesandte<br />

Manuskripte oder Beiträge übernehmen Redaktion und Verlag keinerlei Haftung.<br />

Autoreninformationen finden Sie unter http://www.linux-user.de/Autorenhinweise.<br />

Die Redaktion behält sich vor, Einsendungen zu kürzen und zu überarbeiten. Das exklusive<br />

Urheber- und Verwertungsrecht für angenommene Manus kripte liegt beim<br />

Verlag. Es darf kein Teil des Inhalts ohne schriftliche Genehmigung des Verlags in<br />

irgendeiner Form vervielfältigt oder verbreitet werden.<br />

Copyright © 1999 - 2013 Medialinx AG ISSN: 1615-4444<br />

102 www.linux-user.de<br />

05.2013


Veranstaltungen/Autoren/Inserenten<br />

Service<br />

Veranstaltungen<br />

20.04.2013<br />

Grazer Linuxtage 2013<br />

FH Joanneum<br />

Alte Poststraße 149<br />

8020 Graz, Österreich<br />

http://www.linuxtage.at<br />

02.-04.05.2013<br />

Linuxwochen Wien<br />

FH Technikum Wien<br />

Hoechstaedtplatz 5<br />

1200 Wien, Österreich<br />

http://linuxwochen.at<br />

09.-12.05.2013<br />

LUG Camp 2013<br />

Knipex-Werk<br />

Zum Krusen<br />

42349 Wuppertal<br />

http://2013.tux-trifft-tuffi.de/<br />

22.-25.05.2013<br />

LinuxTag 2013<br />

Messegelände Berlin, Halle 7<br />

Messedamm 22<br />

14055 Berlin<br />

http://www.linuxtag.org<br />

24.-25.05.2013<br />

Rootcamp Berlin<br />

Messegelände Berlin, Halle 7.1a<br />

Messedamm 22<br />

14055 Berlin<br />

http://www.rootcamp-berlin.de<br />

03.-04.06.2013<br />

Berlin Buzzwords<br />

Kulturbrauerei<br />

Schönhauser Allee 36<br />

10435 Berlin<br />

http://berlinbuzzwords.de<br />

16.-20.06.2013<br />

International Supercomputing Conference (ISC)<br />

Congress Center Leipzig<br />

Messe-Allee 1<br />

04356 Leipzig<br />

http://www.isc-events.com/ct.php?id=51<br />

01.-07.07.2013<br />

Europython 2013<br />

Florenz, Italien<br />

http://ep2013.europython.eu<br />

13.-19.07.2013<br />

KDE Akademy 2013<br />

Bilbao, Spanien<br />

http://akademy2013.kde.org<br />

18.-22.07.2013<br />

openSUSE Conference<br />

Thessaloniki, Griechenland<br />

https://conference.opensuse.org<br />

Autoren<br />

Erik Bärwaldt Absolute Linux 14.04 (6), Anonymizer JonDonym (44)<br />

Bernhard Bablok TP-Link TL-MR3020 als Mini-Server mit OpenWRT (83)<br />

Falko Benthin Shell-Videos mit Shelr (54), <strong>Daten</strong> retten mit Scalpel (70)<br />

Thomas Drilling Programme zur schnellen Dateivorschau (60)<br />

Karsten Günther Kurztest Porteus 2.0 (10), Fraktale mit Fr0st/Flam3 (62)<br />

Frank Hofmann Externe <strong>Daten</strong> in LaTeX einbinden (49)<br />

Daniel Kottmair Audio-Codec Opus in der Praxis (90)<br />

Peter Kreußel Arduino-Workshop, Teil 1 (76)<br />

Thomas Leichtenstern Audio-Codec Opus (90), Heft-DVD-Inhalt (105)<br />

Jörg Luther Editorial (3), Neues rund um Linux (16)<br />

Patrick Meyhöfer Android-Geräte als Grafiktablett nutzen (42)<br />

Dr. Karl Sarnow Mathematik-Allrounder GeoGebra (18), 3D-Molekül -<br />

visualisierer (24), Konzeptkarten mit CmapTools (36)<br />

Tim Schürmann Mindmapping mit View your Mind (30)<br />

Vincze-Aron Szabo Hardware-Infos auslesen mit I-Nex (66)<br />

Uwe Vollbracht Aktuelle Software im Kurztest (14)<br />

Inserenten<br />

Android Apps & Tipps www.android-user.de 69<br />

Android User www.android-user.de 9<br />

EasyLinux www.easylinux.de 47<br />

Fernschule Weber GmbH www.fernschule-weber.de 15<br />

Grazer Linux-Tage www.linuxtage.at 100<br />

Linux Magazine www.linux-magazine.com 101<br />

Linux-Hotel www.linuxhotel.de 17<br />

Linux-Magazin Online www.linux-magazin.de 27<br />

<strong>LinuxUser</strong> www.linuxuser.de 13, 29, 73, 103<br />

Medialinx IT-Academy www.medialinx-academy.de 2, 35, 101<br />

Messe Berlin GmbH www.linuxtag.org 99<br />

PlusServer AG www.plusserver.de 40, 58, 74, 96<br />

Spenneberg Training www.spenneberg.com 101<br />

Tuxedo Computers GmbH www.linux-onlineshop.de 107<br />

Webtropia www.webtropia.com 108<br />

Probelesen ohne risiko<br />

sonDerAkTion!<br />

Testen sie jetzt<br />

3 Ausgaben für<br />

nUr 3€*<br />

Telefon: 07131 /2707 274<br />

Fax: 07131 / 2707 78 601<br />

E-Mail: abo@linux-user.de<br />

Mit großem Gewinnspiel unter:<br />

www.linux-user.de/probeabo<br />

* Angebot gilt innerhalb Deutschlands<br />

04.2013 www.linux-user.de<br />

103<br />

und Österreichs. In der Schweiz: SFr 4,50.<br />

Weitere Preise: www.linux-user.de/produkte


<strong>Vorschau</strong><br />

auf 06/2013<br />

Die nächste Ausgabe<br />

erscheint am 16.05.2013<br />

Programmieren<br />

Vom einfachen Shell-Skript bis hin zur<br />

komplexen Applikation samt grafischer<br />

Oberfläche bietet ein Linux-System in<br />

der Regel das richtige Werkzeug zum<br />

Programmieren an. In der kommenden<br />

Ausgabe nehmen wir wieder einmal aktuelle<br />

Trends im Development unter die<br />

Lupe. Dabei reicht die Spannweite vom<br />

geschickten Einsatz von GNU Parallels,<br />

das Skripten auf Multicore-PCs zu mehr<br />

Performance verhilft, bis hin zum Einstieg<br />

in die neue Technik QtQuick, die<br />

das Erstellen von grafischen Oberflächen<br />

drastisch vereinfacht.<br />

Tweaks in Unity<br />

Das neue Interface von Ubuntu bietet<br />

einen Haufen Möglichkeiten, allerdings<br />

finden Sie die meisten Optionen nicht<br />

auf den ersten Blick. Aber mit dem Unity<br />

Tweak Tool erreichen Sie die versteckten<br />

Schalter und optimieren so das GUI.<br />

Workshop LAN<br />

© Nkzs, sxc.hu<br />

Das LAN hat sich zum Rückgrat der heimischen<br />

Infrastruktur entwickelt. Wenn<br />

es da klemmt, schreit die Familie Zeter<br />

und Mordio. Mit unserem Workshop haben<br />

Sie die richtigen Analyse-Tools zur<br />

Hand und alle Probleme schnell im Griff.<br />

Die Redaktion behält sich vor,<br />

Themen zu ändern oder zu streichen.<br />

Ausgabe 02/2013 ist am 11.04.2013 erschienen<br />

© Microsoft<br />

Windows 8 und Linux<br />

Mit Windows 8 ausgelieferte PCs verwenden<br />

statt des klassischen BIOS eine<br />

neue Firmware namens UEFI, und der<br />

Bootvorgang von Windows hat sich geändert.<br />

Das sorgt für Probleme bei der<br />

Parallelinstallation von Linux. EasyLinux<br />

zeigt, wie Sie ein Dual-Boot-System mit<br />

Windows 8 und Linux einrichten.<br />

Homebanking<br />

Für Windows gibt es zahlreiche Homebanking-Lösungen,<br />

doch unter Linux ist<br />

die Auswahl deutlich eingeschränkt: Wir<br />

haben uns die aktuellen Versionen von<br />

Money Plex, MoneyPenny, MoneyDance,<br />

Hibiscus und KMyMoney angesehen<br />

und verraten, welche davon für den täglichen<br />

Gebrauch unter Linux taugen.<br />

MAGAZIN<br />

Ausgabe 06/2013 erscheint am 02.05.2013<br />

© Nvidia<br />

ARM inside<br />

In Mobiltelefonen, Tablets, Fernsehern,<br />

System-on-Chip-Platinen, Thin Clients<br />

und sogar Servern ticken ARM-Prozessoren.<br />

Auf vielen Geräten läuft Linux-Software.<br />

Dem trägt auch das Motto „ARM<br />

drin“ des nächsten Magazins Rechnung.<br />

Die Artikel erklären unter anderem die<br />

Architektur und zeigen, wie Sie Mobilgeräte<br />

mit neuer Software flashen.<br />

Tools für Internet-Snapshots<br />

Der technische Fortschritt ist der Motor<br />

des digitalen Vergessens: Neue CMS-Version<br />

gefällig? Ein <strong>Daten</strong>bank-Update nötig?<br />

PHP ändert ein API? Kaum eine Website<br />

schafft es, Layout und Inhalt stabil<br />

zu halten. In der Bitparade treten Archivierungstools<br />

fürs Web 2.0 an, die beim<br />

Dokumentieren helfen, sei es aus Interesse,<br />

sei es im Kampf gegen Abmahner.<br />

104 www.linux-user.de<br />

05.2013


Heft-DVD-Inhalt<br />

Service<br />

Neues auf den Heft-DVDs<br />

Topaktueller Slackware-Klon Porteus 2.0<br />

Die von Slackware abstammende Distribution<br />

Porteus 2.0 nutzt den auf Qt4 basierenden<br />

Desktop Razor-qt 0.5.2. Daneben<br />

stehen KDE 4.9.5 und XFCE 4.10 zur Auswahl,<br />

ebenso die aktuellste LXDE-Version.<br />

Als Unterbau dient Kernel 3.7.8, als Webbrowser<br />

kommt Firefox 18.0.2 zum Einsatz.<br />

Ursprünglich startete die Distribution als<br />

ein Community-Remix von Slax, einer anderen<br />

auf Slackware basierenden Live-Distribution.<br />

Nicht nur wegen des ressourcenschonenden<br />

Default-Desktops eignet sich<br />

Porteus zum Betrieb auf älteren Rechnern.<br />

Auf Seite A der Heft-DVD dieser Ausgabe<br />

finden Sie neben der bootfähigen Version<br />

von Porteus auch das ISO-Image zum Selberbrennen.<br />

Auf der Rückseite des <strong>Daten</strong>trägers<br />

befindet sich die 64-Bit-Version,<br />

ebenfalls bootfähig und als ISO-Datei (im<br />

Verzeichnis /isos/).<br />

Slackware-kompatibles Absolute Linux 14.04<br />

Bei Absolute Linux 14.04 handelt es sich<br />

um eine schlanke, auf Slackware Linux basierende<br />

Distribution. Sie enthält diverse<br />

Werkzeuge, die die Konfiguration und Wartung<br />

der Distribution erleichtern. Als Window-Manager<br />

kommt IceWM zum Einsatz,<br />

Rox dient als Dateimanager. Nach Entwicklerangaben<br />

konzentriert die Distribution<br />

alle für den Desktop-Gebrauch wichtigen<br />

Funktionen aus den Bereichen Internet,<br />

Multimedia und Office. Dank des schlanken<br />

Designs eignet sich Absolute Linux<br />

hervorragend zum Einsatz auf älteren PCs.<br />

Die Distribution ist kompatibel zu Slackware<br />

und erlaubt damit den Einsatz von<br />

Paketen aus dessen Repositories.<br />

Anonym im Netz mit JonDo live 0.9.40<br />

JonDo dient, ähnlich wie das Tor-Netzwerk,<br />

als Web-Anonymizer. Das gestattet<br />

es, nicht nur die IP-Adresse hinter einem<br />

Dickicht von Servern zu verbergen, sondern<br />

potenziell gefährliche Skripte zu blocken,<br />

die Ihre Identität offenlegen könnten.<br />

Der Dienst ging aus dem JAP-Projekt<br />

hervor, das aus Lizenzgründen nicht länger<br />

verwendet werden darf, und wird von der<br />

JonDos GmbH weiterentwickelt. Der<br />

Dienst ist Kernbestandteil von JonDo<br />

Live 0.9.40, alternativ steht aber auch der<br />

Onion-Router Tor zum Einsatz bereit. Dank<br />

der Vidalia-Implementierung, die Firefox<br />

beim Start direkt mitlädt, bietet er eine<br />

kinderleichte Konfiguration. Die Remailer-<br />

Software Mixmaster ermöglicht es darüber<br />

hinaus, E-Mails anonym zu versenden.<br />

Admin-Toolkit und Rescue-System Grml96-full 2013.02<br />

Die auf Debian basierende Rettungsdistribution<br />

Grml96-full 2013.02, eine 32/​64-Bit-<br />

Kombiversion, bringt eine Vielzahl an<br />

Werkzeugen mit, um Fehler in defekten<br />

Systemen zu finden und gegebenenfalls<br />

zu beheben. Die neue Version „Grumpy<br />

Grinch“ zeigt bei Bedarf schon beim Booten<br />

die Fingerprints des SSH-Servers an.<br />

Das Hardware-Informationsprogramm<br />

Grml-hwinfo unterstützt jetzt Lsscsi, Iscsiadm,<br />

Swapon, Mdadm, LVM sowie Dmsetup.<br />

Netcardconfig dient zum Einrichten<br />

von Netzwerkverbindungen und sucht in<br />

der vorliegenden Version automatisch<br />

nach verfügbaren WLANs. Das Tool Grmludev-config<br />

setzt die Mount-Optionen für<br />

NTFS-Partitionen nicht mehr länger auf<br />

read-only (nur lesen), sodass Sie ohne Umwege<br />

direkten Schreibzugriff auf eingebundene<br />

Windows-Partitionen erhalten.<br />

05.2013 www.linux-user.de<br />

105


Service<br />

Heft-DVD-Inhalt<br />

OpenSuse 12.3<br />

Die aktuelle OpenSuse 12.3 wartet mit<br />

dem Kernel 3.7 auf, taucht KDE 4.10 in<br />

ein elegantes Schwarz und unterstützt<br />

UEFI. Der Start der Distribution auf<br />

Rechnern mit aktiviertem Secure<br />

Boot gilt aber als experimentell.<br />

Als Büropaket haben die Entwickler<br />

LibreOffice 3.6 beigelegt,<br />

das Sie jedoch bei Bedarf<br />

problemlos auf Version<br />

4.x aktualisieren. Dessen<br />

Konkurrenten Calligra<br />

bietet OpenSuse 12.3 in<br />

der Version 2.5 an. Seite A<br />

der DVD-10 enthält die<br />

32-Bit-Version von Open-<br />

Suse 12.3 KDE Live, sowohl<br />

als ISO-Image oder bootfähiges<br />

Medium. Auf der Rückseite<br />

des <strong>Daten</strong>trägers finden<br />

Sie das 64-Bit-Pendant in der<br />

gleichen Konstellation. Die zweite<br />

Heft-DVD enthält die vollständige<br />

64-Bit-Installations-DVD der Nürnberger<br />

Distribution. (tle)<br />

Bei der DVD-Edition von <strong>LinuxUser</strong> ist an dieser Stelle der zweite Heft-<strong>Daten</strong>träger eingeklebt.<br />

Bitte wenden Sie sich per E-Mail an cdredaktion@linux-user.de, falls es Probleme mit der Disk gibt.<br />

Neue Programme<br />

Die Software GeoGebra 4.2.28 veranschaulicht anhand von – teils<br />

bewegten – Graphen, was Mathematik sonst in trockenen Zahlenkonstrukten<br />

ausdrückt. So lernen Schüler, was sich hinter Funktionen<br />

und Koordinaten verbirgt, und Lehrer erhalten ein nützliches<br />

Werkzeug mit umfangreichen Beispielen für den Unterricht.<br />

Wer nur gelegentlich ein Grafiktablet benötigt, um seinen kreativen<br />

Ideen freien Lauf zu lassen, der braucht dafür nicht extra Geld auszugeben.<br />

Die praktische Android-App GfxTablet verwandelt ein Tablet<br />

oder Smartphone in Kombination mit dem passenden Treiber und<br />

dem Grafikprogramm Gimp in ein entsprechendes Eingabegerät.<br />

Das Programm GloboNote 1.3.1 stellt einen digitalen Notizblock<br />

für die Arbeitsoberfläche breit. Die in Java implementierte Software,<br />

läuft auf fast jeder Hardware. Sie besitzt eine Erinnerungsfunktion<br />

und integriert sich in alle gängigen Symbolleisten.<br />

Das Tool Gscan2pdf 1.1.3 stellt eine grafische Oberfläche bereit,<br />

mit der Sie auf einfache Weise aus gescannten Seiten PDFs erzeugen.<br />

Das Programm glänzt mit einer einfachen, übersichtlichen Bedienung<br />

und greift zum Scannen auf Tools wie Sane zurück.<br />

I-Nex 0.5.2 bündelt diverse Systeminformationen in einer übersichtlichen<br />

Oberfläche. Auf diese Weise brauchen Sie sich nicht<br />

durch die einzelnen Tools der jeweiligen Desktop-Umgebung oder<br />

durch die Befehle für die Kommandozeile zu quälen.<br />

Unsettings 0.08 bietet eine Vielzahl von Einstellungen, um Details<br />

an Ubuntus Desktop-Oberfläche Unity zu ändern. Alle Einstellungen<br />

erfolgen zunächst benutzerspezifisch, lassen sich aber als Textdatei<br />

im JSON-Format speichern und so übertragen.<br />

Das Python-Programm Fail2ban 0.8.4 nutzt eine Client/​Server-Architektur<br />

und überwacht die Logdateien mehrerer Serverdienste,<br />

beispielsweise SSH, Web, FTP oder E-Mail. Bei einem erkannten Angriff<br />

greift Fail2ban auf Firewalls wie Iptables oder den TCP-Wrapper<br />

zurück, um betroffene Ports für eine festgelegte Zeit zu sperren.<br />

Neben dem einfachen Herunterladen von Dateien unterstützt der<br />

Downloadmanager FlareGet 1.3-5 das Zerlegen der Download-Datei<br />

in einzelne Segmente, was das Herunterladen massiv beschleunigen<br />

soll. Darüber hinaus beherrscht das Programm verschiedene<br />

Protokolle für den Download von Dateien. n<br />

106 www.linux-user.de<br />

05.2013


Linux oder Windows vServer für 4,49 € im Monat<br />

Voller Root- und Administrator-Zugriff<br />

• Cloud-Funktion mit höchster Flexibilität<br />

NEU: HP DL385 Gen8<br />

Hostsystem von HP<br />

• Kostenkontrolle durch tagesgenaue Abrechnung<br />

• Garantiert in 12 Stunden verfügbar<br />

• Jetzt ab sofort mit PrePaid-Funktion<br />

vServer S 2.0 vServer M 2.0 vServer L 2.0 vServer XL 2.0<br />

Core`s (jeweils 2.000 MHz)<br />

RAM<br />

1<br />

1.024 MB<br />

2<br />

2.048 MB<br />

3<br />

4.096 MB<br />

4<br />

8.192 MB<br />

RAM Dynamisch<br />

2.048 MB 4.096 MB 8.192 MB 16.384 MB<br />

Festplatte<br />

100 GB 150 GB 200 GB 300 GB<br />

Traffic<br />

Neu! 100 MBit Full-Flatrate<br />

Betriebssysteme<br />

Windows 2008 Standard oder Debian 6.0, CentOS 6, openSUSE 12.2, Ubuntu 12.04<br />

.de Domain inkl.<br />

IPv4 Adressen inkl.<br />

IPv6 Subnetz (/64) inkl.<br />

1<br />

1<br />

2<br />

2<br />

3<br />

3<br />

4<br />

4<br />

Extras<br />

Firewall, Reboot, Recovery, Monitoring, Reverse DNS, Plesk 11 Admin-Panel (für 10 Domains inklusive)<br />

Monatsgrundgebühr<br />

ab dem vierten Monat<br />

ab dem vierten Monatsgrundgebühr<br />

für die ersten drei Monate<br />

8,99 €<br />

4,99 €<br />

18,99 €<br />

9,99 €<br />

38,99 € 38,99 €<br />

14,99 € 19,99 €<br />

Jetzt informieren & bestellen Tel.: 0211 / 545 957 - 300 www.webtropia.com<br />

PLATINUM PARTNER<br />

powered by

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!