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