25.02.2014 Aufrufe

LinuxUser Sicherer Heim-Server (Vorschau)

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

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

RPM-Archive im Eigenbau: S. 88<br />

Programme selbst paketieren<br />

Durchsuchbare PDFs: S. 50<br />

Scans mit OCR auswerten<br />

Unity über Bord werfen: S. 64<br />

Wechsel zur Gnome Shell<br />

07.2013<br />

AVIDEMUX • DEBIAN 7 • LATEX • OCR • SMARTPM • ZULUCRYPT • HOME-SERVER<br />

Systeme und Dienste im LAN aufsetzen und vor Angreifern schützen<br />

<strong>Sicherer</strong> <strong>Heim</strong>-<strong>Server</strong><br />

Amahi und Zeroshell:<br />

Media-Center und Allrounder<br />

fürs LAN S. 16, 22<br />

Effektiver Schutz gegen<br />

Attacken mit Fail2ban<br />

und Sshguard S. 26<br />

Sicherheitslücken auf<br />

dem <strong>Server</strong> mit NST 18<br />

schnell aufspüren S. 32<br />

Wichtige Daten komfortabel verschlüsseln S. 72<br />

Dateien und Laufwerke binnen Sekunden auf der GUI verpacken mit Zulucrypt<br />

Videofilme platzsparend<br />

recodieren mit H.264 S. 38<br />

Debian 7 im Überblick S. 8<br />

„Wheezy“ mit Multiarch-<br />

Fähigkeiten und Gnome 3<br />

Profi-Workshop LaTeX S. 55<br />

Quelldateien kompilieren<br />

und Aufräumen per Skript<br />

Raspberry Pi zur digitalen<br />

Jukebox aufrüsten S. 80<br />

Programmieren per Maus S. 44<br />

Mit der IDE Alice in wenigen<br />

Klicks zur fertigen Animation<br />

07<br />

www.linux-user.de<br />

EUR 5,95 EUR 6,70 sfr 11,90 EUR 7,00 EUR 7,95 EUR 7,95<br />

Deutschland Österreich Schweiz Benelux Spanien Italien 4 195111 005955 07


Editorial<br />

Vergeigt?<br />

Sehr geehrte Leserinnen und Leser,<br />

einst war es der gefeierte Hoffnungsträger<br />

der Linux-Gemeinde, inzwischen<br />

rutscht Ubuntu in der Gunst der Anwender<br />

immer tiefer. Auf Distrowatch schafft<br />

es Canonicals Distribution inzwischen in<br />

der 12-Monats-Übersicht gerade noch<br />

auf Platz 3, weit abgeschlagen hinter<br />

Linux Mint und Mageia. Dieser Wandel<br />

sticht inzwischen so ins Auge, dass sich<br />

beispielsweise die größte britische Linux-<br />

Anwender-Zeitschrift Linux Format diesen<br />

Monat auf dem Titel fragt: „Has<br />

Ubuntu Lost it?“ Die Briten kommen zu<br />

dem Schluss, Ubuntu hätte es tatsächlich<br />

vergeigt – und ich bin durchaus geneigt,<br />

dem zuzustimmen.<br />

Mit immer mehr Eigenwilligkeiten entfernt<br />

sich Ubuntu zunehmend aus dem<br />

Linux-Mainstream. Das betrifft nicht nur<br />

buchstäblich Oberflächliches wie den<br />

Unity-Desktop, sondern greift auch unter<br />

der Haube immer mehr Raum: Mit dem<br />

Init-System Upstart statt des Quasistandards<br />

Systemd und (künftig) Mir als Grafiksystem<br />

statt des von allen anderen<br />

Distributionen angepeilten Wayland<br />

klinkt sich Canonical mehr und mehr aus<br />

der allgemeinen Linux-Entwicklung aus.<br />

Stattdessen versucht man krampfhaft,<br />

ein eigenes „Ökosystem“ auf die Beine zu<br />

stellen. Sich vom Rest der Linux-Welt abzuschotten<br />

führt aber unvermeidlich zu<br />

(vorhersehbaren) Schwierigkeiten.<br />

Wer Standard-Komponenten einsetzt,<br />

kann vom Bugfixing in 300 anderen Distributionen<br />

profitieren, an den hausgestrickten<br />

Canonical-Lösungen arbeiten<br />

dagegen höchstens 300 Entwickler. Und<br />

die müssen neben der Fehlerbereinigung<br />

auch noch die jeweils nächste<br />

Relea se-Runde bewältigen. Das führt<br />

dazu, dass sich das Beseitigen selbst<br />

schwerwiegender Fehler kaugummiartig<br />

in die Länge zieht. Gute Beispiele dazu<br />

bieten etwa die Launchpad-Bugs<br />

#1063354 „Sudden Read-Only Filesystems“,<br />

#1073433 „Ext4 corruption associated<br />

with shutdown of Ubuntu 12.10“<br />

oder #1124803 „NetworkManager<br />

doesn’t respond to SIGTERM in daemon<br />

mode“, die sich alle letztlich auf Schwierigkeiten<br />

mit dem hausgemachten Upstart<br />

zurückführen lassen – und die alle<br />

auch noch Ubuntu 13.04 betreffen.<br />

In einer vorhersehbaren Reaktion zog<br />

Canonical jüngst die Notbremse, um Entwickler-Mannjahre<br />

freizuschlagen: Man<br />

halbierte ganz einfach die Supportdauer<br />

für Nicht-LTS-Releases von 18 auf 9 Monate.<br />

Das bringt aber bei einem Release-<br />

Zyklus von 6 Monaten in der Praxis Anwender<br />

in die prekäre Lage, drei Mal so<br />

oft eine Distributionsaktualisierung vornehmen<br />

zu müssen, als es vorher notwendig<br />

gewesen wäre. Zudem kickt dieser<br />

Schritt auch beliebte Ubuntu-Ableger<br />

wie Mint als ernsthafte Alternativen aus<br />

dem Geschäft: Wie einige Kommentatoren<br />

richtig feststellten, braucht man das<br />

frisch erschienene Linux Mint 15 eigentlich<br />

gar nicht erst zu installieren, weil<br />

sein Lebensende durch Canonicals Supportverkürzung<br />

noch vor jenem der Vorversion<br />

Mint 14 liegt! Mit dem zunehmenden<br />

Abdriften des Ubuntu-Unterbaus<br />

aus dem Linux-Mainstream, insbesondere<br />

ab Herbst mit den ersten Geh-<br />

Jörg Luther<br />

Chefredakteur<br />

versuchen von Mir, werden sich diese<br />

Schwierigkeiten für alle Ubuntu-Derivate<br />

absehbar noch verschlimmern.<br />

Freilich bleibt als Work-around der Einsatz<br />

von Ubuntu LTS – aber nur fürs Erste:<br />

Ab Frühjahr nächsten Jahres entkoppelt<br />

sich Canonical mit Ubuntu 14.04 LTS voraussichtlich<br />

auch dort via Mir völlig vom<br />

Rest der Distributionswelt. Daher kann<br />

ich allen Ubuntu-Anwendern nur raten,<br />

sich jetzt schon nach Alternativen umzusehen,<br />

an deren technischen Grundlagen<br />

nicht nur eine einzelne Firma arbeitet,<br />

sondern Zehntausende von Entwicklern<br />

in der Linux-Gemeinde und auch bei renommierten<br />

Unternehmen wie Red Hat,<br />

Suse und Oracle. Zwei Community-basierte<br />

Paradebeispiele finden Sie mit<br />

Debi an 7 und Mageia 3 auch auf den<br />

Heft-DVDs dieser Ausgabe. Schauen Sie<br />

mal rein – es lohnt sich.<br />

Herzliche Grüße,<br />

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

3


07<br />

88<br />

Fehlt die Wunsch-Software als<br />

RPM-Paket im Repository, dann<br />

paketieren Sie das Programm kurzerhand<br />

und integrieren es so nahtlos ins System.<br />

68<br />

SmartPM liefert für alle wichtigen<br />

Aufgaben im Paketmanagement<br />

auf Debian-Systemen eine einfache GUI.<br />

Mit einer mächtigen Schnittstelle für die<br />

Kommandozeile haben Sie aber trotzdem<br />

vollen Zugriff auf alle Funktionen.<br />

64<br />

Wer Ubuntu zwar mag, sich aber<br />

gar nicht mit Canonicals Desktop<br />

Unity anfreunden kann, der wechselt auf<br />

die Gnome Shell. Das geht einfacher als<br />

gedacht, wie unser Workshop zeigt.<br />

Aktuelles<br />

Angetestet .. . . . . . . . . . . . . . . . . . . . 6<br />

Videoportal-Inhalte herunterladen mit<br />

Movgrab 1.21, komfortabel im IRC chatten<br />

mit Quassel 0.9.0, Notizen übersichtlich verwalten<br />

mit Treeline 1.4.1, X-Terminals optisch<br />

aufpeppen mit Xtermcontrol 3.0<br />

Debian 7 'Wheezy' .............. 8<br />

Stabilität und Reife zählen bei der siebten<br />

Neuauflage der Debian-Distribution wieder<br />

zu den Kerntugenden. Einige spannende<br />

Neuerungen haben die Entwickler aber<br />

unter der Haube versteckt.<br />

Mageia 3. .................... 13<br />

Suchen Sie ein topaktuell ausgestattetes,<br />

grundsolides und leicht zu verwaltendes<br />

Linux-System, dann sollten Sie sich unbedingt<br />

Mageia 3 näher ansehen.<br />

Schwerpunkt<br />

Amahi Home <strong>Server</strong> .. . . . . . . . . . . 16<br />

Mit dem Amahi Home <strong>Server</strong> verwandeln Sie<br />

einen dedizierten PC im LAN in eine Medienzentrale<br />

mit integrierter Backup-Funktion.<br />

Zeroshell. .................... 22<br />

Zeroshell erlaubt es, in wenigen Schritten<br />

umfangreiche Dienste an zentraler Stelle<br />

im LAN aufzusetzen und komfortabel zu<br />

administrieren.<br />

Fail2ban vs. Sshguard........... 26<br />

Fail2ban und Sshguard schützen <strong>Server</strong>-<br />

Dienste gegen Brute-Force- und Wörterbuchattacken,<br />

indem sie auffällig gewordene<br />

Störenfriede kurzerhand aussperren.<br />

NST 18. ...................... 32<br />

Komplexe Netzwerke in heterogenen<br />

Umgebungen aufzubauen und abzusichern,<br />

erfordert eine Menge Fachwissen. NST 18<br />

greift Ihnen dabei tatkräftig unter die Arme.<br />

Praxis<br />

Avidemux..................... 38<br />

Wer digitale Videos platzsparend abspeichern<br />

will, greift am einfachsten zum<br />

Video editor Avidemux und konvertiert das<br />

Material mit wenigen Mausklicks.<br />

IDE Alice......................44<br />

Sie können Ihre Desktop-Umgebung bedienen?<br />

Dann können Sie auch programmieren:<br />

Alles was Sie dazu brauchen, ist die Maus, die<br />

IDE Alice und etwas Experimentierfreude.<br />

OCR auf der Shell .. . . . . . . . . . . . . 50<br />

Mit einem kleinen Skript verarbeiten Sie<br />

große Mengen an Textscans zu PDF-Dateien,<br />

die Sie dank OCR mit typischen Unix-Werkzeugen<br />

im Volltext durchsuchen.<br />

LaTeX automatisieren........... 55<br />

Wer nur gelegentlich mit LaTeX arbeitet, der<br />

profitiert von einem sauber geschriebenen<br />

Skript, das ihm beim Übersetzen der oft<br />

komplexen Quelldateien hilft.<br />

8Stabil, sicher und kompromisslos frei:<br />

Die Debian-Macher erliegen auch in der<br />

siebten Auflage der Distribution wieder<br />

nicht den Verlockungen des Mainstreams.<br />

4 07.2013


38<br />

Wenn die Videosammlung<br />

über die Grenzen der Festplatte<br />

quillt, dann heißt es ausmisten – oder<br />

platzsparend recodieren mit dem linearen<br />

Videoeditor Avidemux, der in dieser Disziplin<br />

die Konkurrenz in den Schatten stellt.<br />

22<br />

Dank der Kombination aus einem<br />

schlankem Mini-ITX-System und<br />

der <strong>Server</strong>-Distribution Zeroshell setzen<br />

Sie im Handumdrehen eine leistungsfähige<br />

Zentrale für Ihr LAN auf.<br />

26<br />

Fail2ban und Sshguard schieben<br />

Brute-Force-Attacken und Wörterbuchangriffen<br />

auf einen <strong>Server</strong> im<br />

Netzwerk konsequent einen Riegel vor.<br />

UBUNTU<br />

user<br />

Texteditor Tilde.. . . . . . . . . . . . . . . 60<br />

Tilde versucht das Look & Feel der für grafische<br />

Oberflächen entwickelten Texteditoren<br />

auf die Konsole zu übertragen.<br />

Ubuntu Gnome 13.04.. . . . . . . . . . 64<br />

Längst nicht alle Ubuntu-Anwender können<br />

sich vorbehaltslos für den Unity-Desktop<br />

begeistern. Wer trotzdem nicht gleich die<br />

Distribution wechseln will, dem verspricht<br />

Ubuntu Gnome 13.04 einen Ausweg.<br />

Netz&System<br />

SmartPM. ....................68<br />

Hinter SmartPM verbirgt sich ein kleiner<br />

Werkzeugkasten für das Paketmanagement,<br />

der alltägliche Aufgaben einfach macht, aber<br />

Profis die volle Kontrolle ermöglicht.<br />

Zulucrypt .. . . . . . . . . . . . . . . . . . . . 72<br />

Gegenüber den sonst dazu verwendeten<br />

Kommandozeilenwerkzeugen vereinfacht<br />

Zulucrypt das Verschlüsseln privater Datenbestände<br />

wesentlich, ohne dabei Abstriche<br />

bei der Leistung in Kauf nehmen zu müssen.<br />

Hardware<br />

RasPi als Jukebox.. . . . . . . . . . . . . 80<br />

Der Music Player Deamon MPD macht aus<br />

dem RasPi eine kleine Jukebox. Die Konfiguration<br />

ist allerdings nicht immer geradlinig.<br />

Wir zeigen, worauf Sie dabei achten müssen.<br />

Jetway-Mini-PC.. . . . . . . . . . . . . . . 85<br />

Der Jetway Mini-PC beansprucht kaum mehr<br />

Platz als ein Taschenbuch, glänzt dabei aber<br />

durch hervorragende Leistungsdaten.<br />

Know-how<br />

RPMs selbst bauen.............88<br />

Mithilfe der Prozesse, mit denen Distributionen<br />

bestehende Pakete auf eine neue<br />

Software-Version heben, bauen auch Sie bei<br />

Bedarf unkompliziert eigene Pakete.<br />

80<br />

Anders als die vermeintlich schwache<br />

Hardware vermuten ließe, eignet<br />

sich der kultige Einplatinen-Computer<br />

Raspberry Pi sehr wohl als Grundlage<br />

für ein Mediacenter im Netzwerk.<br />

Unser Workshop zeigt, was Sie<br />

beim Aufsetzen des Systems<br />

unbedingt beachten sollten.<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 />

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

5


Aktuelles<br />

Angetestet<br />

<strong>Heim</strong>kino<br />

Mit Movgrab 1.2.1 greifen Sie<br />

Filme komfortabel bei Youtube,<br />

Myvideo, Vimeo und mehr als 40<br />

weiteren Video-Portalen ab.<br />

Möchten Sie Filme von Video-Portalen<br />

wie Youtube, Myvideo oder Vimeo für<br />

den privaten Gebrauch auf dem Rechner<br />

archivieren, ist Movgrab das Tool der<br />

Wahl: Es unterstützt den Download bei<br />

über 45 Video-Sites. Gibt es für das gewünschte<br />

Portal noch keine spezielle Unterstützung,<br />

lohnt ein Versuch im Generic-Modus:<br />

Movgrab sucht dann in der<br />

übergebenen Webseite nach Links auf<br />

Multimedia-Dateien wie MP3/​4 oder FLV.<br />

Um einen Beitrag herunterzuladen, rufen<br />

Sie das Tool mit der gewünschten<br />

URL auf. Movgrab analysiert die Website<br />

auf den enthaltenen Streaming-Link hin<br />

und startet die Übertragung. Steht das<br />

Video in mehreren Formaten zur Verfügung,<br />

wählt das Tool automatisch das<br />

erste ihm bekannte Format, das nicht unbedingt<br />

jenes mit der besten Auflösung<br />

sein muss. Welche Formate die Webseite<br />

anbietet, listet Movgrab vor der Übertragung<br />

auf. Mit dem Parameter ‐f legen<br />

Sie einen bestimmten Video-Typ fest.<br />

Movgrab kommt auch mit Webseiten zurecht,<br />

die mehrere Filme enthalten. Der<br />

Parameter ‐n ermöglicht dabei das Herunterladen<br />

nur bestimmter Videos. Neben<br />

dem reinen Download unterstützt<br />

Movgrab für den Einsatz mit Mediaplayern<br />

auch zwei Streaming-Modi. Beim<br />

einfachen Streaming (‐s) puffert es die<br />

Beiträge lokal, reicht sie parallel an den<br />

Mediaplayer weiter und löscht nach der<br />

Wiedergabe die lokale Kopie. Beim erweiterten<br />

Streaming (‐sc) bleibt diese<br />

dagegen erhalten.<br />

Da manche Portale ihren Webauftritt<br />

regelmäßig überarbeiten, kommt es vor,<br />

dass Movgrab gelegentlich plötzlich<br />

nicht mehr funktioniert. Mit dem Parameter<br />

‐T starten Sie dann einen Testlauf,<br />

um festzustellen, mit welchen Portalen<br />

die aktuelle Movgrab-Version noch zurechtkommt.<br />

Fehlt die Unterstützung für<br />

ein Portal, müssen Sie auf den Generic-<br />

Modus hoffen oder auf das neueste<br />

Movgrab-Release aktualisieren.<br />

Lizenz: GPLv3<br />

n<br />

Quelle: https:// sites. google. com/ site/​<br />

columscode/ home/ movgrab<br />

Wissensspeicher<br />

Das Notizbuch Treeline 1.4.1<br />

besticht durch seine Vielseitigkeit<br />

und verwaltet Adressen, Lesezeichen<br />

oder kurze Notizen.<br />

Das Python-Programm Treeline organisiert<br />

beliebige Textdaten in einer Baumstruktur.<br />

Für das Verwalten gängiger Daten<br />

wie Adressen oder Aufgaben liefert<br />

es bereits Eingabeformulare mit, ebenso<br />

für das Erfassen einfacher Textdokumente.<br />

Über den Menüpunkt Configure Data<br />

Types im Ausklappmenü Data erweitern<br />

Sie diese Vorlagen oder legen neue an.<br />

In der linken Fensterhälfte<br />

zeigt Treeline die Baumstruktur<br />

samt aller Einträge, zwischen<br />

denen Sie navigieren und beliebige<br />

Zweige oder Blätter einfügen.<br />

Rechts im Fenster sehen<br />

Sie den Inhalt des aktuellen<br />

Blattes. Über Reiter am unteren<br />

Rand wechseln Sie zwischen der<br />

einfachen Ansicht, der Eingabe<br />

und einer reinen Titelanzeige.<br />

Neueingaben oder Änderungen<br />

gelingen am bequemsten über<br />

die Eingabemaske, doch lassen<br />

sich alle Daten auch in der einfachen<br />

Ansicht bearbeiten.<br />

In der Baumansicht springen Sie bequem<br />

durch alle Einträge und dürfen via<br />

Drag & Drop Blätter oder ganze Zweige<br />

neu anordnen. Über Filter beschränken<br />

Sie die Anzeige auf bestimmte Einträge.<br />

Das Ergebnis der Filtereinstellung zeigt<br />

Treeline in einer flachen Übersicht statt<br />

als Baum. Über Reiter am unteren Rand<br />

der Navigationsleiste wechseln Sie jederzeit<br />

zwischen Baum- und Listenansicht.<br />

Eine Undo/​Redo-Funktion sorgt dafür,<br />

dass voreilige Änderungen folgenlos<br />

bleiben. Die Rechtschreibkontrolle übernehmen<br />

Konsolenprogramme wie Aspell<br />

oder Ispell. Alle Daten speichert Treeline<br />

im XML-Format, auf Wunsch auch komprimiert<br />

oder verschlüsselt. Als Formate<br />

für den Export unterstützt Treeline HTML,<br />

Generic-XML, ODF-Text und Mozilla-<br />

Bookmarks. Für den Import von Daten<br />

stehen die Formate Mozilla-Bookmarks<br />

und ODF-Text zur Auswahl.<br />

Lizenz: GPLv3<br />

Quelle: http:// treeline. bellz. org/<br />

n<br />

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

07.2013


Angetestet<br />

Aktuelles<br />

Der Qt-basierte IRC-Client Quassel beruht<br />

auf einem eigenen Client/​<strong>Server</strong>-Modell.<br />

Dabei stellt der Core die Verbindung mit<br />

den jeweiligen IRC-<strong>Server</strong>n her und hält<br />

die Verbindung zum IRC-<strong>Server</strong> und den<br />

Channels auch dann aufrecht, wenn sich<br />

der Client wieder vom Core trennt. Melden<br />

Sie sich zu einem späteren Zeitpunkt<br />

wieder bei der Kernkomponente an, sehen<br />

Sie die während Ihrer Abwesenheit<br />

geführte Channel-Kommunikation. Mit<br />

dem Befehl quassel starten Sie beide<br />

Tools gleichzeitig. Im Client dürfen Sie<br />

sich mit mehreren IRC-<strong>Server</strong>n gleichzeitig<br />

verbinden, wobei Quassel für jede<br />

Kommunikation einen eigenen Reiter öffnet.<br />

Die Baumstruktur am linken Fensterrand<br />

zeigt die aktuellen <strong>Server</strong>-Verbindungen<br />

und die zugehörigen Channels.<br />

Lizenz: GPLv3<br />

Quelle: http:// quassel‐irc. org/<br />

nn<br />

Rechts listet das Tool alle Gesprächspartner<br />

im aktuellen Channel auf. Für den<br />

schnellen Zugriff belegen Sie häufig verwendete<br />

Befehle oder auch Abwesenheitsnachrichten<br />

mit Aliases.<br />

Ein praktisches Feature ist der Chat-<br />

Monitor: Er zeigt die Kommunikation aller<br />

offenen Channels an. So sehen Sie sofort,<br />

wer wo was geschrieben hat und<br />

können zum Antworten direkt in den<br />

fraglichen Channel<br />

wechseln. Zu den<br />

URLs im Chat zeigt<br />

Quassel eine einfache<br />

<strong>Vorschau</strong> der<br />

Seite an. Den Verlauf<br />

jedes Chats<br />

legt das Tool in einer<br />

SQL-Datenbank<br />

ab, wofür es neben<br />

SQLite auch PostgreSQL<br />

unterstützt.<br />

Quasselstrippe<br />

Der leistungsfähige IRC-Client<br />

Quassel 0.9.0 spricht mit seinem<br />

Client/​Core-Konzept und<br />

einem praktischen Chat-Monitor<br />

insbesondere Viel-Chatter an.<br />

Das klassische X-Terminal wirkt oft etwas<br />

altbacken. Hier schafft Xtermcontrol<br />

Abhilfe. Dabei ändert es die Farben von<br />

Schrift, Hintergrund, Cursor und Mauszeiger<br />

direkt im laufenden Betrieb. Sie<br />

dürfen Sie zwischen 16 Farben wählen.<br />

Diese geben Sie wahlweise namentlich<br />

oder in Form des entsprechenden RGB-<br />

Werts an. Xtermcontrol kann jedoch<br />

nicht nur das Erscheinungsbild einer<br />

Xterm-Sitzung anpassen.<br />

Weitere Parameter ändern auf Wunsch<br />

den Sitzungstitel oder die Fenstergröße.<br />

So dehnt etwa ‐‐maximize das Fenster<br />

auf den ganzen Bildschirm aus, ‐‐restore<br />

setzt es wieder auf die Ursprungsgröße.<br />

Auch das Minimieren oder Hervorheben<br />

Lizenz: GPLv3<br />

nn<br />

Quelle: http:// www. thrysoee. dk/​<br />

000_LU1106_F-Weber_neu1.qxd xtermcontrol/<br />

18.09.2006 19:00 Uhr Seite 1<br />

von Xterm-Fenstern beherrscht Xtermcontrol.<br />

Seine Konfiguration erwartet das<br />

Tool in der Datei ~/.xtermcontrol. Hier<br />

legen Sie die Farben, die Schriftarten sowie<br />

die Fenstergrößen fest, die Xtermcontrol<br />

als Vorgabe dienen. Damit die<br />

Xtermcontrol-Befehle in einer Xterm-Sitzung<br />

funktionieren, müssen die Ressourcen<br />

allowWindowOps, allowTitleOps<br />

und allowFontOps für Xterm aktiviert<br />

sein. Für einzelne Sitzungen<br />

gelingt das interaktiv über das<br />

Kontextmenü.Um die Ressourcen<br />

für alle Xterm-Sessions zu<br />

aktivieren, hinterlegen Sie einen<br />

entsprechenden Eintrag in<br />

den Dateien ~/.Xdefaults<br />

oder /etc/X11/app‐defaults/<br />

XTerm. Vorlagen dazu finden<br />

Sie in der Manpage von Xtermcontrol.<br />

(jlu) n<br />

Kosmetiker<br />

Mithilfe von Xtermcontrol 3.0<br />

gestalten Sie das eher dröge<br />

Erscheinungsbild von Xterm-<br />

Sitzungen ganz nach<br />

Ihren Wünschen.<br />

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

7


Aktuelles<br />

Debian 7.0<br />

Debian GNU/​Linux 7 Wheezy im Überblick<br />

Spannungsbogen<br />

Stabilität und Reife zählen bei der siebten Neuauflage von Debian wieder<br />

zu den Kerntugenden. Einige der wirklich spannenden Neuerungen haben die<br />

Entwickler allerdings unter der Haube des Systems versteckt. Tim Schürmann<br />

Während andere Distributionen möglichst<br />

aktuelle Programme in die Repositories<br />

packen, versuchen die Debian-<br />

Entwickler ein möglichst solides System<br />

zusammenzustellen (siehe Kasten Eine<br />

Frage der Stabilität). Dazu erlauben sie<br />

sich eine ausgiebige Testphase, die wiederum<br />

die langen Abstände zwischen<br />

zwei Versionen begründet.<br />

Des Weiteren setzen die Macher hauptsächlich<br />

auf ältere, aber aus ihrer Sicht<br />

bewährte Softwarepakete, deren Fehler<br />

in der Regel ausgeräumt oder zumindest<br />

weitgehend bekannt sind. So läuft das<br />

System auf einem Linux-Kernel 3.2 mit<br />

Longterm-Unterstützung – aktuell war<br />

bei Redaktionsschluss hingegen schon<br />

Kernel-Version 3.9.<br />

Readme<br />

Diesmal brauchten die Debian-Entwickler<br />

„nur“ 27 Monate, um die neue Ausgabe der<br />

Distribution fertigzustellen. Das Ergebnis<br />

umfasst einige behutsame Aktualisierungen,<br />

dezente Verbesserungen und ein paar<br />

kleine Highlights unter der Haube.<br />

Eine Frage der Stabilität<br />

Debian gibt es in drei Geschmacksrichtungen:<br />

Die als „Unstable“ bezeichnete<br />

Version dient als eine Art Spielwiese, auf<br />

der die Entwickler neue Programme auf<br />

Herz und Nieren testen. Zeigt ein Programm<br />

in dieser Phase keine kritischen<br />

Fehler mehr, wandert es weiter in den<br />

„Testing“ genannten Debian-Zweig.<br />

In bestimmten Abständen frieren die Entwickler<br />

den Stand der „Testing“-Version ein<br />

und machen aus diesem Schnappschuss<br />

die nächste stabile Debian-Version. Diese<br />

erhält wiederum eine Versionsnummer<br />

und bleibt dann auf ihrem Stand – bis<br />

zum nächsten Release geben die Entwickler<br />

dann lediglich Fehlerkorrekturen und<br />

Sicherheitsaktualisierungen heraus.<br />

Die allererste Debian-Version erschien<br />

übrigens im August 1993 – also vor knapp<br />

zwanzig Jahren auf den <strong>Server</strong>n.<br />

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

07.2013


Debian 7.0<br />

Aktuelles<br />

Zum Standard-Desktop kürten die Debian-Entwickler<br />

Gnome 3.4 mit der nicht<br />

unumstrittenen Gnome Shell 1 . Sie löst<br />

das mittlerweile hoffnungslos veraltete<br />

Gnome 2 aus Debian 6 ab und verlangt<br />

zwingend nach einer Grafikkarte mit aktivierter<br />

3D-Beschleunigung.<br />

Wer der alten Benutzeroberfläche<br />

nachtrauert, dem empfiehlt das Projekt,<br />

im Dialog zum Anmelden auf den Classic-Modus<br />

umzuschalten. Dessen Bedienkonzept<br />

ähnelt jenem von Gnome 2, ist<br />

aber eigentlich für Systeme ohne 3D-Beschleunigung<br />

gedacht. Eine Lösung wie<br />

Ubuntu, das die 3D-Grafik auf den<br />

Hauptprozessor auslagert, haben die<br />

Debianer nicht eingebaut.<br />

Grauer Schreibtisch<br />

Alternativ zu Gnome bietet Debian 7<br />

auch KDE in Version 4.8.4 sowie die besonders<br />

schlanken Kollegen LXDE 0.5.5<br />

und XFCE 4.8. Der X-<strong>Server</strong> klettert auf<br />

Version 7.7. Daneben lässt sich Debian<br />

nach wie vor auch ganz ohne grafische<br />

Oberfläche betreiben.<br />

Der Beinamen „Wheezy“ von Debian 7<br />

entstammt in gewohnter Manier dem<br />

Toy-Story-Universum: So heißt in<br />

„Toy Story 2“ der kleine Plastik-<br />

Pinguin, der vor dem Verkauf auf<br />

dem Flohmarkt gerettet werden<br />

muss. Möglicherweise von seinem<br />

Äußeren inspiriert, erscheint<br />

Debian 7 rundum in schlichten<br />

Grautönen. Die Bootmenüs und<br />

Benutzeroberflächen wirken insgesamt<br />

sachlich und modern.<br />

Nutzvieh<br />

Als Webbrowser startet ein in Iceweasel<br />

umbenannter Firefox 10 2 . Da Mozilla<br />

diese Version jedoch nicht mehr unterstützt,<br />

bleibt Ihnen nichts anderes übrig,<br />

als darauf zu vertrauen, dass die Debian-<br />

Entwickler alle zukünftig entdeckten<br />

Sicherheitslücken stopfen. Anders als<br />

Firefox enthält Iceweasel bereits von<br />

Haus aus das Plugin Adblock Plus 2.1,<br />

das lästige Werbebanner ausblendet.<br />

Analog zu Iceweasel/​Firefox verbirgt<br />

sich hinter dem Mail-Client Icedove ein<br />

umetikettiertes Thunderbird, ebenfalls<br />

in der veralteten Version 10.<br />

Die Repositories bieten jetzt einige<br />

Multimedia-Codecs an, die Sie in früheren<br />

Versionen noch mühsam von Drittanbietern<br />

holen mussten. Ffmpeg haben<br />

die Debian-Macher durch den ihrer<br />

Meinung nach mit einem konservativeren<br />

Veröffentlichungsprozess gesegneten<br />

Fork LibAV ersetzt.<br />

Einspieler<br />

Der Assistent für die Installation erhielt<br />

mit Debian 7 einen generalüberholten<br />

Unterbau. Sie haben weiterhin die Wahl<br />

zwischen einer textbasierten und einer<br />

Debian 7 „Wheezy“ DVD<br />

(32+64 Bit) bootfähig,<br />

Install-CD (32+64 Bit) als ISO-Image<br />

Heft-DVD 2<br />

Bei den Büroprogrammen löst<br />

der Fork LibreOffice 3.5.4 das in<br />

Debian 6 noch verwendete<br />

OpenOffice ab; die neue KDE-<br />

Software Calligra 2.4 ersetzt den<br />

Vorgänger KOffice. Parallel entfernten<br />

die Entwickler gleich<br />

noch KDE 3 und Qt3 aus den Repositories.<br />

Das hat zur Folge, dass<br />

alte Programme, die für diese<br />

Plattform geschrieben sind, nicht<br />

mehr ohne Weiteres laufen.<br />

1 Debian 7 kommt mit einem unveränderten Gnome 3.4 als Standard-Desktop.<br />

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

9


Aktuelles<br />

Debian 7.0<br />

endlich ext4. Btrfs hat den Status einer<br />

Technologievorschau, die Sie auf eigene<br />

Gefahr einsetzen.<br />

Elf auf einen Streich<br />

2 Der Browser Iceweasel enthält<br />

neben Adblock Plus 2.1 zusätzlich den<br />

freien Flashplayer Gnash und den iTunes<br />

Application Detector.<br />

Architekturen<br />

Name<br />

i386<br />

amd64<br />

armel<br />

armhf<br />

s390x<br />

ia64<br />

mips<br />

mipsel<br />

powerpc<br />

s390<br />

sparc<br />

Ziel<br />

x86-Intel- und AMD-<br />

Prozessoren, 32 Bit<br />

x86-Intel- und AMD-<br />

Prozessoren, 64 Bit<br />

ARM EABI<br />

ARMv7 (EABI hard-float<br />

ABI)<br />

IBM System z<br />

Intel Itanium<br />

MIPS (big-endian)<br />

MIPS (little-endian)<br />

PowerPC<br />

IBM S/​390<br />

SPARC<br />

grafischen Variante, deren Benutzeroberflächen<br />

zur Vorversion nahezu unverändert<br />

blieben 3 .<br />

Immerhin erlaubt die 64-Bit-Fassung<br />

für Rechner mit Intel- und AMD-Prozessoren<br />

(Architektur amd64) jetzt die Installation<br />

auf Systemen mit UEFI. Auf Secure<br />

Boot versteht sich Debian 7 allerdings<br />

noch nicht: Hier bleibt nur der Ausweg,<br />

die Technik im BIOS zu deaktivieren.<br />

Auf Wunsch liest der Assistent alle<br />

Ausgaben am Bildschirm mittels Sprachsynthese<br />

laut vor, was vor allem Sehbehinderten<br />

ohne Braillezeile zugutekommt.<br />

Um die Funktion zu aktivieren,<br />

drücken Sie im Bootmenü [S] und bestätigen<br />

die Auswahl mit [Eingabe].<br />

Die deutsche Stimme klingt allerdings<br />

wie ein amerikanischer Roboter auf Helium,<br />

bleibt aber immerhin verständlich.<br />

Satzzeichen, Klammern und Sonderzeichen<br />

liest sie jedoch nicht vor, was teilweise<br />

etwas verwirrt. Die Sprachsynthese<br />

steht derzeit für etwa zwei Dutzend<br />

Sprachen bereit, der Assistent spricht<br />

demgegenüber insgesamt 73 verschiedene<br />

Sprachen.<br />

Über das Setup bauen Sie in dieser Release<br />

bei Bedarf IPv6-Verbindungen auf<br />

und erledigen die Installation über WPAverschlüsselte<br />

WLAN-Verbindungen. Als<br />

Standard-Dateisystem nutzt Debian 7<br />

Eine der größten Neuerungen von<br />

„Wheezy“ liegt im sogenannten Multiarch-Support.<br />

Er ermöglicht, Pakete für<br />

unterschiedliche Prozessorarchitekturen<br />

parallel auf ein und demselben System<br />

zu installieren. Bislang ließen sich nur<br />

auf Intel- und AMD-Prozessoren einigermaßen<br />

komfortabel 32-Bit-Programme<br />

in einem 64-Bit-System betreiben.<br />

Das bei Multiarch zum Einsatz kommende<br />

Paket ia32‐libs ist derzeit als<br />

„Übergangspaket“ klassifiziert und nutzt<br />

bereits das neue Multiarch-Konzept. Haben<br />

Sie ia32‐libs schon installiert, müssen<br />

Sie daher nach dem Umstieg auf<br />

Debian 7 zunächst die Multiarch-Unterstützung<br />

als Benutzer root aktivieren:<br />

# dpkg ‐‐add‐architecture i386<br />

# apt‐get update<br />

Um die Multiarch-Unterstützung kümmern<br />

sich die entsprechend angepassten<br />

Werkzeuge dpkg und apt‐get. Der<br />

Befehl dpkg ‐‐print‐architecture<br />

nennt die Architektur des aktuell genutzten<br />

Prozessors, dpkg ‐‐add‐architecture<br />

i386 fügt die i386-Architektur<br />

zu den unterstützten hinzu (siehe Tabelle<br />

Architekturen).<br />

Beim Installieren von Paketen hängen<br />

Sie den Namen der Architektur durch<br />

einen Doppelpunkt getrennt an den<br />

Paketnamen an. So spielt der folgende<br />

Befehl das Sokoban-Spiel im xsok-Paket<br />

in der 32-Bit-Fassung für Rechner mit<br />

Intel- und AMD-Prozessoren ein:<br />

# apt‐get install xsok:i386<br />

Geben Sie die Architektur nicht an, installiert<br />

Dpkg das Paket für die aktuelle<br />

Architektur. Bereits vorhandene DEB-Pakete,<br />

etwa von kommerziellen Spielen,<br />

akzeptiert das Paketmanagement weiterhin.<br />

Wer allerdings als Entwickler das<br />

neue Konzept unterstützen möchte,<br />

muss seine Pakete leicht anpassen û.<br />

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

07.2013


Debian 7.0<br />

Aktuelles<br />

Neben Debian unterstützen übrigens<br />

schon andere Distributionen wie Ubuntu<br />

das Multiarch-Konzept.<br />

Die Programme und Bibliotheken<br />

einer Architektur sammelt Debian 7 jeweils<br />

in bestimmten Unterverzeichnissen,<br />

die Bibliotheken für die i386-Architektur<br />

lagern unter /lib/i386‐linuxgnu.<br />

Entwickler haben so die Möglichkeit,<br />

mit der Multiarch-Funktion und<br />

passenden Cross-Compilern Programme<br />

wesentlich komfortabler für mehrere<br />

Architekturen zu erstellen û.<br />

Servierfertig<br />

Für Entwickler hält Debian 7 unter anderem<br />

die GNU Compiler Collection 4.7.2,<br />

Python 2.7.3 und 3.2.3 sowie das Open-<br />

JDK in den Versionen 6b27 und 7u3 bereit.<br />

<strong>Server</strong>-Betreiber freuen sich über<br />

den Webserver Apache in Version 2.2.22,<br />

PHP 5.4.4 sowie die Datenbanken My-<br />

SQL 5.5.30 und PostgreSQL 9.1.<br />

Debian 7 offeriert zudem erstmals vorbereitete<br />

Pakete für OpenStack in der<br />

Version 2012.1 („Essex“) und die Xen<br />

Cloud Platform. Das ermöglicht es Administratoren,<br />

schnell und komfortabel<br />

eine eigene Cloud aufzusetzen. Samba<br />

gibt es aber weiterhin nur in der Version<br />

3.6.6, Samba 4 folgt voraussichtlich<br />

erst in Debian 8 „Jessie“.<br />

3 Der Assistent fragt Namen, Benutzernamen<br />

und Passwort umständlich in drei<br />

aufeinanderfolgenden Dialogen ab.<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ß ;-)<br />

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

11


Aktuelles<br />

Debian 7.0<br />

4 Die Multiarch-DVD bietet die Möglichkeit,<br />

sowohl die 32-Bit- als auch eine 64-Bit-<br />

Fassung zu installieren.<br />

Die meisten Pakete haben die Entwickler<br />

mit dem Hardening-Flag des GCC-Compilers<br />

übersetzt. Das erschwert Angriffe<br />

auf laufende Anwendungen. Des Weiteren<br />

ist in Debian 7 das (unter anderem in<br />

OpenSuse zum Einsatz kommende)<br />

Apparmor aktiviert. Das System erlaubt<br />

es, die Rechte von laufenden Programmen<br />

über Regeln gezielt einzuschränken.<br />

Während viele andere große Distributionen<br />

den Startvorgang an das extrem<br />

flotte Systemd abgegeben haben, verwendet<br />

Debian 7 nach wie vor das alte<br />

Sys-V-Init. Allerdings lässt sich Systemd<br />

als Technologievorschau nachinstallieren<br />

und sogar parallel zu Sys-V-Init ausprobieren.<br />

Um den Startvorgang an<br />

Systemd zu übergeben, genügt es<br />

schon, den Kernel-Parameter init=/<br />

bin/systemd zu verwenden.<br />

Das Verzeichnis /tmp liegt jetzt vollständig<br />

im Hauptspeicher (RAMTMP). Das<br />

Fassungsvermögen fällt somit kleiner<br />

aus als zuvor, zudem gehen die Inhalte<br />

nach einem Neustart verloren. Darüber<br />

hinaus haben die Entwickler die Verzeichnisse<br />

/lib/init/rw, /var/run,<br />

/ var/lock und /dev/shm in das neue<br />

Verzeichnis /run verlagert.<br />

Abbilder<br />

Wie schon bei den Vorgängern stellen<br />

die Entwickler Debian 7 auf verwirrend<br />

vielen Medien bereit: So gibt es Images<br />

für CDs, DVDs und – im Fall der Architekturen<br />

amd64 und i386 – sogar Blu-rays.<br />

Mit dabei ist wieder das besonders<br />

schlanke Netinst-Image, das alle Pakete<br />

über das Internet nachzieht.<br />

Während Sie bei den DVDs im Bootmenü<br />

die Auswahl hinsichtlich der Desktop-Umgebung<br />

haben, fällt bei den CDs<br />

die Wahl direkt mit dem passenden<br />

Image. Auf der DVD versteckt sich die<br />

Auswahl übrigens äußerst gut hinter<br />

Advanced Options | Alternative desktop<br />

environments. Diesen Menüpunkt erreichen<br />

Sie, wenn Sie mit den Pfeiltasten<br />

immer weit nach unten fahren.<br />

Die Entwickler versprechen außerdem<br />

Medien, die Pakete für gleich mehrere<br />

Architekturen enthalten 4 . Zum Redaktionsschluss<br />

gab es jedoch lediglich ein<br />

DVD-Image und ein Image für die Installation<br />

über das Netzwerk mit Paketen für<br />

die Architekturen amd64 und i386.<br />

Abschließend gibt es noch Images mit<br />

einem Live-System, das wahlweise als<br />

Rettungsmedium oder zum unverbindlichen<br />

Kennenlernen dient û. Zum Redaktionsschluss<br />

standen für jede der vier<br />

unterstützten Desktop-Umgebungen jeweils<br />

zwei Images parat, je eines für i386<br />

und eines für amd64.<br />

Obendrein existieren noch ein Rettungs-<br />

und ein Standardsystem, die zwar<br />

noch auf eine CD passen, aber ohne grafische<br />

Benutzeroberfläche kommen.<br />

Wenn Sie eine Debian-6-Installation aktualisieren<br />

möchten, finden Sie dazu in<br />

den Informationen zur Veröffentlichung<br />

eine ausführliche Anleitung û.<br />

Fazit<br />

Die Debian-Entwickler halten ihre Distribution<br />

stabil wie einen Fels. Auch diesmal<br />

legen sie sichtlich Wert auf erprobte<br />

Software. Dies bedeutet allerdings für<br />

Anwender, dass vorwiegend ältere Software<br />

zum Einsatz kommt. Insbesondere<br />

durch den Kernel 3.2 bedingt unterstützt<br />

Debian 7 zukünftige Hardware schlechter<br />

als die Konkurrenz-Distributionen.<br />

Dank des Multiarch-Konzeptes besitzt<br />

das System gerade im Hinblick auf die<br />

immer populärer werdenden ARM-Geräte<br />

großes Potenzial. Derzeit stellt die<br />

Funktion aber vor allem auf Desktop-PCs<br />

den parallelen Betrieb von 32- und<br />

64-Bit-Programmen sicher.<br />

Die UEFI-Unterstützung war überfällig,<br />

die Sprachsynthese stellt eine große Hilfe<br />

für sehbehinderte Nutzer dar. Unter<br />

dem Strich präsentiert sich Debian 7 als<br />

behutsame Weiterentwicklung und richtet<br />

sich an alle, die langfristig ein stabiles<br />

System benötigen. (agr) n<br />

Weitere Infos und<br />

interessante Links<br />

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

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

07.2013


Mageia 3<br />

Aktuelles<br />

Mageia 3 im Kurztest<br />

Grundsolide<br />

Mageia gehört inzwischen zu den popu<br />

lärsten Linux-Distributionen û. Dieser<br />

phänomenale Erfolg resultiert nicht zuletzt<br />

aus einer behutsamen Produktentwicklung<br />

bei gleichzeitigem Festhalten<br />

an bewährten Konzepten, sodass die Anwendergemeinde<br />

bei Mageia nur wenig<br />

Spektakuläres erwartet. Optische Gimmicks,<br />

multimediale Spielereien oder gar<br />

unbedienbare, von der Praxisreife weit<br />

entfernte Oberflächen suchen Sie beim<br />

international entwickelten Mandriva-Abkömmling<br />

vergebens. Die neue Version<br />

möchte mit diesem wertkonservativen<br />

Konzept neue Freunde gewinnen.<br />

Das Projekt hat am 18. Mai die lange<br />

erwartete finale Version 3 seines freien<br />

Mandriva-Abkömmlings freigegeben.<br />

Nach mehr als einem halben Dutzend<br />

Alpha- und Beta-Versionen sowie<br />

schließlich einem Release-Kandidaten<br />

legen die Entwickler die Messlatte in Sachen<br />

Stabilität und Reife erneut höher.<br />

Mageia kommt auch in der neuen Version<br />

auf zahlreichen verschiedenen Installationsmedien<br />

û. Die Live-DVDs gibt es<br />

in 32- und 64-Bit-Varianten für den KDEund<br />

Gnome-Desktop, während die Live-<br />

CDs jeweils nur in 32-Bit-Versionen für<br />

diese beiden Oberflächen zum Download<br />

bereitstehen. Installationsmedien<br />

ohne Live-Modus erhalten Sie in Gestalt<br />

zweier DVDs für 32- und 64-Bit-Architekturen,<br />

die jeweils KDE, Gnome und LXDE<br />

und XFCE als Desktop beinhalten. Eine<br />

sogenannte Dual-Arch-CD gestattet die<br />

Installation beider Architekturen als Minimal-System.<br />

Zudem bietet das Projekt<br />

zwei CDs mit Netzwerk-Installern an.<br />

Möchten Sie Mageia 3 auf einem aktuellen<br />

Notebook betreiben, dann empfiehlt<br />

es sich, die Installation über eines<br />

der Live-Medien vorzunehmen: So können<br />

Sie direkt das Zusammenspiel der in<br />

Mageia integrierten, zahlreichen propritären<br />

Firmware-Treiber mit Ihrer Hard­<br />

Topaktuell ausgestattet,<br />

grundsolide und leicht zu<br />

verwalten – Mageia 3 bleibt<br />

seinen Prinzipien treu.<br />

Erik Bärwaldt<br />

Readme<br />

Mit einer rapide wachsenden Community<br />

kommt das Mageia-Projekt immer weiter in<br />

Schwung. Wir zeigen, was das brandneue<br />

Release Mageia 3 alles mitbringt.<br />

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

13


Aktuelles<br />

Mageia 3<br />

1 Das Projekt Mageia nutzt in der Vorgabe zwar KDE 4 als Oberfläche, doch pflegen die<br />

Entwickler daneben auch den konkurrierenden Gnome-Desktop äußerst sorgfältig.<br />

Bei den gängigen Standardprogrammen<br />

nahmen die Mageia-Entwickler eine<br />

Runderneuerung vor: LibreOffice liegt<br />

der Distribution in Version 4.0.2.2 bei,<br />

der Bildbearbeitungsbolide Gimp ist in<br />

Release 2.8.2 mit an Bord, und auch der<br />

Audioplayer Amarok in Variante 2.70 sowie<br />

der FTP-Allrounder FileZilla 3.6.0.2<br />

liegen aktualisiert vor.<br />

Eine Ausnahme bildet der Webbrowser<br />

Firefox: Er liegt Mageia 3 in der ESR-<br />

Variante 17.0.5 bei, die zwar aufgrund<br />

der hektischen Release-Politik des<br />

Firefox-Projektes auf den ersten Blick<br />

veraltet wirkt, jedoch eine besonders<br />

lange und sorgfältige Pflege erfährt.<br />

Als Bootmanager installiert Mageia in<br />

der Vorgabe den einfach zu handhabenden<br />

und ausgereiften Grub 0.97. Alternativ<br />

können Sie aber auch den bei den<br />

meisten Distributionen inzwischen zum<br />

Standard avancierten Grub2 einrichten.<br />

Installation<br />

ware testen. Speziell neuere Grafikkarten<br />

der Hersteller ATI/​AMD und Nvidia sowie<br />

manche WLAN-Karten von Intel auf mobiler<br />

Hardware benötigen zum reibungslosen<br />

Betrieb diese Komponenten. Wir<br />

haben uns die Live-DVDs mit KDE- und<br />

Gnome-Desktop näher angesehen.<br />

Runderneuert<br />

Auf den ersten Blick fallen bei Mageia 3<br />

im Live-Betrieb außer einem zurückhaltenden<br />

neuen Erscheinungsbild in den<br />

bekannten Blautönen keine Neuerungen<br />

auf. Sowohl der KDE-Desktop als<br />

auch die Gnome-Oberfläche kommen<br />

im gewohnt konservativen Look & Feel,<br />

und auch die Applikationsauswahl entspricht<br />

gängigen Standards.<br />

Unter der Haube jedoch hat Mageia 3<br />

eine sorgfältige Produktpflege erhalten:<br />

Der Betrieb auf einer Reihe von älteren<br />

Notebooks mehrerer IBM-Baureihen, die<br />

wir aufgrund der teilweise problematischen<br />

Hardware gerne zu Testzwecken<br />

reaktivierten, belegen eindrucksvoll,<br />

dass einige Grafiktreiber einen auffälligen<br />

Feinschliff erhalten haben.<br />

So werden beim optisch etwas verspielten<br />

KDE-Desktop selbst auf zehn<br />

Jahre alten Mobile-Radeon-Grafikkarten<br />

plötzlich OpenGL-Elemente mit entsprechenden<br />

Effekten fehlerfrei unterstützt –<br />

das schafft im Linux-Universum sonst<br />

nur noch Knoppix. Auch einige Bugs bei<br />

WLAN-Treibern des Herstellers Atheros<br />

bereinigten die Entwickler, sodass der<br />

Netzwerk-Manager nun auch mit neuesten<br />

Atheros-Karten fehlerfrei arbeitet.<br />

Im Hintergrund des Systems werkeln<br />

der Kernel 3.8.13, der X-<strong>Server</strong> 1.13.4<br />

und Cups 1.5.4. Die Desktops kommen<br />

in den Versionen KDE SC 4.10.2, Gnome<br />

3.6, LXDE 0.5.5 und XFCE 4.10.2. Als<br />

Entwicklungswerkzeug dient die Compiler-Suite<br />

GCC in Version 4.7.2.<br />

Mageia 3 macht es Ihnen sehr einfach,<br />

die Distribution auf die Festplatte zu befördern,<br />

um sie dauerhaft zu nutzen: Ein<br />

Klick auf das Desktop-Symbol Auf die<br />

Festplatte installieren aktiviert den Draklive-Installer,<br />

der Sie in wenigen Schritten<br />

durch die Einrichtungsroutine führt.<br />

Alte Hasen, die bereits seit Jahren mit<br />

Mandriva oder einem von dessen Derivaten<br />

arbeiten, finden sich sofort zurecht,<br />

da sich an der Einrichtungsroutine<br />

weder optisch noch funktionell etwas<br />

geändert hat. Für Einsteiger bietet der<br />

Mageia-Installer einfache Möglichkeiten,<br />

Linux ohne umständliches Fachchinesisch<br />

auf die Platte zu packen.<br />

Desktops<br />

Obwohl traditionell KDE beim Mageia-<br />

Projekt als vorgewählter Desktop dient,<br />

unterstützt die Distribution alle gängigen<br />

Arbeitsoberflächen. Als Alternative<br />

offeriert sie bereits bei der Ersteinrichtung<br />

explizit Gnome. Daneben bieten<br />

sich die sehr schlanken Oberflächen<br />

LXDE und XFCE insbesondere an, wenn<br />

Sie Mageia auf älterer Hardware flott betreiben<br />

wollen. Da die Entwickler auf un­<br />

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

07.2013


Mageia 3<br />

Aktuelles<br />

nötige technische Spielereien wie einen<br />

PAE-Kernel verzichtet haben, lässt sich<br />

das System faktisch auf nahezu jeder Intel-kompatiblen<br />

Maschine einsetzen, die<br />

in den letzten 13 Jahren gebaut wurde.<br />

Der Gnome-Desktop bietet unter<br />

Mageia auf den ersten Blick weniger Applikationsprogramme<br />

als die KDE-Variante.<br />

Dies liegt vor allem daran, dass die<br />

KDE Software Compilation bereits „ab<br />

Werk“ mit ihren vielen kleinen K-Applikationen<br />

deutlich mehr desktopspezifische<br />

Software beinhaltet als Gnome.<br />

Auch der Gnome-Desktop weist jedoch<br />

unter Mageia 3 in der Grundinstallation<br />

alle gängigen Programme auf und wirkt<br />

ausgereift. So hat auch er eine sorgfältige<br />

Lokalisierung erfahren und lässt sich<br />

somit out-of-the-box einsetzen 1 .<br />

Programmschmankerl<br />

Ein Blick in die unterschiedlichen Menüs<br />

von Mageia 3 offenbart bei genauem<br />

Hinsehen einige ungewöhnliche Programme.<br />

So finden Sie unter Gnome im<br />

Menü Anwendungen | Büroprogramme |<br />

Weitere zwei Applikationen namens Digi-<br />

Doc Client und DigiDoc Crypto. Hierbei<br />

handelt es sich um zwei aus Estland<br />

stammende kryptografische Tools, die<br />

der verschlüsselten Nachrichtenübermittlung<br />

dienen. Dazu gehört das Programm<br />

ID-card Utility im Menü Anwendungen<br />

| Werkzeuge, das spezielle ID-Karten<br />

kryptografisch nutzt.<br />

Im gleichen Menü finden Sie auch das<br />

Tweak Tool, das die Konfiguration erleichtert<br />

und der Oberfläche neue Funktionen<br />

hinzufügt. In der KDE-Variante<br />

sticht vor allem das Untermenü Anwendungen<br />

| Grafik durch neue Software wie<br />

Hugin, Panorama oder die Belichtungsvermischung<br />

ins Auge, die sich allesamt<br />

an kreative Fotografen wenden 2 .<br />

Softwarefundus<br />

einige Paketquellen freizuschalten:<br />

Mageia bietet neben den Core- und Nonfree-Quellen<br />

auch Tainted-Archive, in denen<br />

sich durch Patente eingeschränkte<br />

Programme finden. Letztere sollten Sie<br />

vor allem dann aktivieren, wenn Sie Mageia<br />

mit allen verfügbaren Multimedia-<br />

Codecs nutzen möchten. Diese sind oft<br />

durch Patente bewehrt und daher nicht<br />

in jedem Land frei verfügbar. Daneben<br />

stellt das Projekt zusätzliche <strong>Server</strong> für<br />

Updates und Backports bereit.<br />

Gegenüber Mageia 2 haben die Paketarchive<br />

erneut an Umfang zugenommen.<br />

Es finden sich viele weitere wichtige<br />

Programme angepasst in den Quellen,<br />

die in der Vorgängerversion noch<br />

nicht eingepflegt waren.<br />

Fazit<br />

Man merkt Mageia an, dass den Entwicklern<br />

unausgegorene Experimente suspekt<br />

sind und sie lieber bewährte Techniken<br />

pflegen und weiterentwickeln. Daher<br />

bietet Mageia 3 zwar nicht viel Neues,<br />

erweist sich aber dafür als System,<br />

das in Produktivumgebungen eine ausgezeichnete<br />

Figur abgibt und als Allrounder<br />

auf dem heimischen Desktop<br />

ebenfalls nicht enttäuscht. Für alle, die<br />

eine aktuelle, stabil arbeitende und<br />

leicht zu administrierende Distribution<br />

suchen, ist Mageia 3 erste Wahl. (jlu) n<br />

Mageia 3 KDE Live-DVD (32+64 Bit),<br />

Mageia 3 Dual-Arch-Install-CD (ISO)<br />

auf Heft DVD 1<br />

ESR: Extended Support Release. Mozilla<br />

wartet diese besonderen Ausgaben etwa<br />

ein Jahr lang, wobei sich der Zyklus rund<br />

drei Monate mit jenem des folgenden ESR<br />

überschneidet, um eine sanfte Migration<br />

auf die neue Version zu ermöglichen.<br />

Weitere Infos und<br />

interessante Links<br />

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

Wie alle größeren Linux-Distributionen<br />

bringt Mageia eine komfortable grafische<br />

Routine zum Verwalten der Software<br />

mit. In der via Mageia-Kontrollzentrum<br />

erreichbaren Paketverwaltung gilt<br />

es, nach der Installation eventuell noch<br />

2 Mageia 3 bringt einige neue Programme mit – hier das Bildbearbeitungstool Hugin.<br />

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

15


Schwerpunkt<br />

Amahi Home <strong>Server</strong><br />

Amahi Home <strong>Server</strong> im Test<br />

Bunter Mix<br />

Mit dem Amahi Home <strong>Server</strong><br />

verwandeln Sie mit wenigen<br />

Mausklicks einen Rechner im<br />

lokalen Netzwerk in eine<br />

komplette Medienzentrale<br />

mit vielen Extras. Jan Rähm<br />

Kleine <strong>Heim</strong>server sind überaus praktisch.<br />

Dort lagern alle Familienmitglieder<br />

zentral gelegen Musik, Filme, Bilder und<br />

auch Dokumente. Wer dafür nicht viel<br />

Aufwand betreiben möchte, greift in der<br />

Regel zu einem NAS. Jedoch ist man damit<br />

auf Software und Ausstattung angewiesen,<br />

die einem der Hersteller gönnt.<br />

Deutlich flexibler und selbstbestimmter<br />

kommt man mit einem eigenen <strong>Heim</strong>server<br />

zum Ziel. Dafür eignen sich Systeme<br />

wie FreeNAS – oder das jüngere Projekt<br />

Amahi<br />

Home <strong>Server</strong><br />

û.<br />

Der Amahi Home <strong>Server</strong> eignet sich als<br />

Medien-, Daten- und Info-Zentrale für<br />

das heimische Netzwerk und will dabei<br />

extrem anwenderfreundlich und einfach<br />

bleiben. Dazu bringt Amahi eine eigene<br />

App-Infrastruktur mit. Sie besteht aus einer<br />

Anwendungsschnittstelle (API) nebst<br />

passendem Online-Store. Der <strong>Server</strong><br />

selbst besticht mit seiner aufgeräumten<br />

und einfach verständlichen Oberfläche,<br />

auch die Installation vollbringen selbst<br />

ungeübte Anwender schnell.<br />

Installation<br />

Der Amahi Home <strong>Server</strong><br />

begnügt sich mit<br />

halbwegs aktueller<br />

Hardware. Soll er nur<br />

als Speicher für Dateien<br />

und Multi-<br />

media-<br />

Readme<br />

Ob Musik, Filme oder Bilder: Zentral im<br />

Netzwerk gespeichert, können Wiedergabegeräte<br />

jederzeit auf die Inhalte zugreifen.<br />

Wer noch einen Rechner übrig hat, der<br />

kann sich mit dem Amahi Home <strong>Server</strong><br />

seine eigene Verteilstation für Medien, Dateien<br />

und vieles mehr zusammenstellen.<br />

© Julien Eichinger, Fotolia<br />

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

07.2013


Amahi Home <strong>Server</strong><br />

Schwerpunkt<br />

1 Zur Netzwerkkonfiguration des Amahi Home <strong>Server</strong>s genügen bereits die Angabe<br />

der Adresse von Gateway und <strong>Server</strong> sowie ein Domain-Name für den Rechner.<br />

2 Den beim Herunterladen des Installers<br />

angezeigten Code benötigen Sie später<br />

zum Einrichten des <strong>Server</strong>s.<br />

Files dienen, tut es auch ein nicht mehr<br />

ganz aktueller Intel Core Duo oder Atom<br />

beziehungsweise vergleichbare AMD-<br />

Hardware. Wie bei jedem <strong>Server</strong> gilt: Je<br />

mehr Arbeitsspeicher, desto besser. Mindestens<br />

2 GByte sollten es auf jeden Fall<br />

sein. Wie groß der Plattenplatz ausfallen<br />

soll, bestimmt allein die Größe der eigenen<br />

Mediensammlung. Legen Sie Wert<br />

auf schnelle Datentransfers, sollten Sie<br />

dem Rechner eine Anbindung via Gigabit-Netzwerk<br />

spendieren. Alles in allem<br />

gibt sich Amahi ansonsten genügsam:<br />

Tastatur, Maus und Monitor brauchen<br />

Sie normalerweise nur zur Installation.<br />

Der Weg zum fertigen System verläuft<br />

über die Installation von Ubuntu respektive<br />

Fedora. Das Amahi-Projekt unterstützt<br />

offiziell nur Ubuntu 12.04.1 LTS<br />

und stellt auch nur dafür verlässliche Installationsanleitungen<br />

û und Unterstützung<br />

zur Verfügung. Alternativ können<br />

Sie Amahi jedoch auch unter Fedora 14<br />

installieren. Für ganz eilige Zeitgenossen<br />

gibt es noch eine Express-Installation û,<br />

die ebenfalls auf Fedora basiert. Für<br />

beides gibt es aber vom Projekt keine<br />

offizielle Unterstützung mehr.<br />

Ehemals diente auch der Ubuntu<br />

<strong>Server</strong> Amahi als Basis û, doch rät<br />

das Projekt davon inzwischen ab. Wer<br />

sich dennoch traut, findet Hinweise zu<br />

den alternativen Systemen im Wiki.<br />

Für welche Art der Installation Sie sich<br />

auch entscheiden: Das Einrichten von<br />

Amahi beginnt stets mit dem Anmelden<br />

auf der Projekt-Website. Mit einem Klick<br />

auf Get Started Now geht es los. Die Seite<br />

fragt einen Benutzernamen und ein Passwort<br />

sowie die eigene Mail-Adresse ab<br />

und schickt eine Bestätigungsnachricht.<br />

Sobald Sie den Link in der Mail anklicken,<br />

wird das Konto erstellt.<br />

Im folgenden Dialog ist Vorsicht geboten:<br />

Stimmen die Angaben hier nicht,<br />

kann es bei der Installation Probleme geben.<br />

Im ersten Schritt tragen Sie die interne<br />

IP-Adresse Ihres Routers sowie die<br />

geplante Adresse das <strong>Heim</strong>servers an. Einen<br />

Klick weiter auf der zweiten Seite<br />

sollen Sie eine DNS-Domain für Ihren<br />

<strong>Heim</strong>server eingeben. Ob Fantasiename<br />

oder real existierende Adresse: Sie haben<br />

die Wahl. Die Domain nutzt Amahi nur<br />

im internen Netz. Aber Vorsicht mit realen<br />

Adressen: Wählen Sie eine aus, die im<br />

Internet irgendwo bereits existiert, kann<br />

es später Probleme bei der Namensauflösung<br />

geben. Daher sei eher zu einem<br />

Fantasienamen geraten 1 .<br />

Um später eventuell<br />

von außerhalb aufs eigene<br />

Netzwerk zugreifen<br />

zu können, stellt Ihnen<br />

Amahi einen dynamischen<br />

DNS-Service zur<br />

NAS: Network Attached Storage. Ein Gerät<br />

bestehend aus Festplatte(n), CPU, Speicher<br />

und einigen Schnittstellen, das Daten im<br />

LAN zur Verfügung stellt.<br />

07.2013 17


Schwerpunkt<br />

Amahi Home <strong>Server</strong><br />

3 In der komfortablen Weboberfläche des Amahi Home <strong>Server</strong>s lassen sich alle Einstellungen<br />

rund um den Betrieb regeln. Hier starten und stoppen Sie die <strong>Server</strong>-Dienste.<br />

TIPP<br />

Bis zum Tag der Drucklegung dieses Hefts<br />

trugen im Amahi App Store alle kostenpflichtigen<br />

Apps kleine Preisschilder 4<br />

und ließen sich so problemlos von den<br />

kostenlosen unterscheiden. Tags darauf<br />

waren diese Schildchen plötzlich verschwunden<br />

– und damit die Möglichkeit,<br />

vorab ohne Amahi-Account zwischen Gratis-<br />

und Bezahl-Erweiterungen zu unterscheiden.<br />

Ob eine Störung in der Software<br />

der Website für diesen Umstand verantwortlich<br />

war oder das Projekt dies absichtlich<br />

umgestellt hat, ließ sich jedoch<br />

bis zur Drucklegung nicht mehr klären.<br />

Verfügung. Sie erhalten eine Adresse in<br />

der Form Benutzername.yourhda.org.<br />

Im dritten und finalen Schritt zeigt Ihnen<br />

die Website nun einen Install Code an,<br />

den Sie sich aufschreiben sollten 2 . Anhand<br />

dieses Codes übermittelt Amahi<br />

Ihrer Installation in der Initialisierungsphase<br />

die Netzwerkdaten und ordnet<br />

später die eventuell gekauften Apps zu.<br />

Mit weißer Weste<br />

Sie beschreiten nun den empfohlenen<br />

Weg und nehmen, wie vom Projekt<br />

empfohlen, dazu einen Rechner mit<br />

frisch eingerichtetem Ubuntu<br />

12.04.1 LTS zur Hand. Nach dem Start<br />

des Systems öffnen Sie ein Terminal und<br />

laden den wenige MByte großen Amahi-<br />

Installer herunter:<br />

$ wget http://u12.amahi.org/instaU<br />

ll‐amahi<br />

Ein beherztes sh install‐amahi startet<br />

die Einrichtung des <strong>Server</strong>s. Als Erstes<br />

fragt der Installer nach dem Install Code,<br />

den Sie zuvor bei der Anmeldung erhalten<br />

haben. Fall Sie ihn vergessen haben,<br />

finden Sie ihn notfalls nach dem Login<br />

im Amahi Control Panel auf der Amahi-<br />

Website. Nach dem Code will der Installer<br />

noch das Passwort des Benutzers erfahren,<br />

da er einige Teile als Root installieren<br />

muss. Nun ist Zeit für eine Tasse<br />

frisch gebrühten Kaffees.<br />

Zu Kaffee und Keksen bereiten Sie<br />

derweil den Router des Netzwerks für<br />

den neuen <strong>Heim</strong>server vor. Dazu rufen<br />

Sie dessen Weboberfläche auf und navigieren<br />

zum Menüpunkt, der die Netzwerkdaten<br />

und die Einstellungen für<br />

den DHCP-<strong>Server</strong> vorhält. Dort deaktivieren<br />

Sie die DHCP-Funktion, denn das<br />

Verteilen der Adressen übernimmt ab<br />

sofort Amahi, ebenso die Namensauflösung<br />

im <strong>Heim</strong>netz. So kann Amahi auch<br />

realisieren, dass Sie die vorhin gewählte<br />

individuelle URL benutzen können.<br />

Nach einigen Minuten hat der Amahi-<br />

Installer seine Arbeit beendet, ausführliche<br />

Informationen zum Ablauf hält bei<br />

Bedarf das Install-Log bereit. Zum Abschluss<br />

der Installation starten Sie den<br />

Rechner einmal neu. Auch für alle anderen<br />

Geräte und Rechner im Netzwerk<br />

steht nun ein solcher Neustart an, damit<br />

diese frische Konfigurationen mit korrekter<br />

IP und richtigem Name-<strong>Server</strong> erhalten.<br />

Betreiben Sie im LAN Geräte mit fest<br />

zugewiesener IP, sollten Sie rechtzeitig<br />

daran denken, die Werte auf den neuen<br />

<strong>Heim</strong>server anzupassen.<br />

Nach erfolgreicher Installation sollte<br />

Ihre erste Amtshandlung darin bestehen,<br />

die voreingestellten Zugangsdaten<br />

zu ändern. Wie die Erfahrung zeigt, sollten<br />

Sie als Erstes ein neues Benutzerkonto<br />

für den Administrator anlegen, dessen<br />

Benutzername nicht admin oder administrator<br />

und schon gar nicht root<br />

heißt. Gerade in jüngster Vergangenheit<br />

gab es immer wieder gezielt Angriffe auf<br />

diese Accounts, zum Beispiel Wordpress-<br />

Installationen. Nach dem Anlegen des<br />

Administrator-Kontos fügen Sie nun bei<br />

Bedarf weitere Nutzer hinzu.<br />

Noch einen weiterer Schritt empfiehlt<br />

sich, bevor Sie sich näher mit Amahi beschäftigen:<br />

Soll der <strong>Server</strong> künftig ohne<br />

Monitor auskommen, wäre es doch<br />

schön, ihn auch irgendwie warten zu<br />

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

07.2013


Amahi Home <strong>Server</strong><br />

Schwerpunkt<br />

können. Deswegen installieren Sie noch<br />

den SSH-<strong>Server</strong>, den Ubuntu schon seit<br />

einiger Zeit weglässt (und den auch<br />

Amahi nicht für zwingend notwendig erachtet).<br />

Mithilfe des Befehls sudo<br />

apt‐get install ssh gelangen die notwendigen<br />

Pakete samt Abhängigkeiten<br />

im Nu ins System. Fortan können Sie sich<br />

via ssh amahi@<strong>Server</strong>‐IP auf dem<br />

<strong>Heim</strong>server anmelden.<br />

À la carte<br />

Nun aber weg mit Monitor, Tastatur und<br />

Maus – den <strong>Server</strong> verstecken Sie in einer<br />

gemütlichen Ecke. Auf einem Client<br />

rufen Sie im Webbrowser http://hda auf<br />

(Amahi bezeichnet sich selbst als „Home<br />

Digital Assistant“). Das Dashboard empfängt<br />

Sie aufgeräumt und etwas leer.<br />

Links im Kopf der Seite befindet sich ein<br />

großes Suchfeld, das Inhalte wahlweise<br />

im Internet oder auf dem <strong>Heim</strong>server<br />

aufspürt. Rechts davon gibt es die drei<br />

Menüpunkte Setup, Help und Apps.<br />

Die unter Setup versammelten Menüpunkte<br />

fallen weitestgehend selbsterklärend<br />

aus. Unter Users fügen Sie weitere<br />

Benutzer hinzu, unter Shares richten Sie<br />

neue Verzeichnisse ein und geben diese<br />

frei. Der Punkt Storage gibt Auskunft<br />

über den Füllstand und die Gesundheit<br />

der verbauten Festplatten.<br />

Einstellungsfragen<br />

Spannender wird es beim Networking.<br />

Hier sehen Sie, welcher Rechner welche<br />

dynamische IP-Adresse bekommen hat<br />

und können außerdem feste IPs zuweisen.<br />

Dazu geben Sie eine Bezeichnung<br />

für den entsprechenden Rechner ein sowie<br />

die gewünschte Adresse. Amahi<br />

identifiziert den fraglichen Rechner über<br />

seine MAC-Adresse, also die (mehr oder<br />

weniger) einmalige Hardware-Adresse<br />

der Netzwerkschnittstelle. Haben wir einen<br />

solchen Datensatz angelegt, bekommt<br />

der Rechner ab sofort immer die<br />

gleiche IP-Adresse zugewiesen.<br />

Der Punkt Settings führt zu den Einstellungen<br />

des Amahi-<strong>Server</strong>s, die allerdings<br />

(noch) nicht sehr umfangreich ausfallen.<br />

Hier ändern Sie die Lokalisierung und<br />

4 Rund 180 Zusatzfunktionen für den Amahi Home <strong>Server</strong> installieren Sie mit einem<br />

Mausklick über sogenannte Apps. Für manche davon fallen allerdings Kosten an.<br />

auch die Optik, daneben können Sie den<br />

gesamten <strong>Server</strong> oder einzelne Prozesse<br />

anhalten beziehungsweise neu starten<br />

3 . Unter Calendars legen Sie gegebenenfalls<br />

einen CalDAV-Kalender an,<br />

den Anwendungen wie Evolution später<br />

abfragen und bestücken können û.<br />

Advanced Settings, also erweiterte Einstellungen<br />

bieten in allen erwähnten Bereichen<br />

weitere Möglichkeiten, die jedoch<br />

mit Vorsicht zu genießen sind.<br />

Amahi warnt ausdrücklich vor der Aktivierung,<br />

denn es werden auch noch instabile<br />

Funktionen sichtbar sowie solche,<br />

die in ihrer Nutzung eher komplex<br />

ausfallen. So finden Sie zum Beispiel<br />

nach dem Setzen des Häkchens unter<br />

Shares den neuen Eintrag Storage Pool.<br />

Dort könnten Sie einen auf dem Greyhole<br />

Storage Pool basierenden, erweiterbaren<br />

und ausfallsicheren Speicher bereitstellen.<br />

Das System ist allerdings<br />

noch nicht ausgereift und sollte nur von<br />

Anwendern benutzt werden, die ganz<br />

genau wissen was sie tun.<br />

Apps<br />

Den wohl wichtigsten und für die meisten<br />

Nutzer wohl interessantesten Menüpunkt<br />

stellen zweifellos die Apps dar,<br />

von denen der Amahi App Store derzeit<br />

DHCP: Dynamic Host Configuration Protocol.<br />

Das System kümmert sich um die zentrale<br />

Zuweisung von Netzwerkkonfigurationen<br />

an die Geräte im Netzwerk. Meist läuft<br />

DHCP bereits auf dem <strong>Heim</strong>netz-Router.<br />

CalDAV: Calendaring Extensions to WebDAV<br />

(RFC 4791). Ein Standard-Protokoll, das den<br />

Zugriff auf Kalenderdateien via WebDAV<br />

(HTTP) ermöglicht.<br />

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

19


Schwerpunkt<br />

Amahi Home <strong>Server</strong><br />

5 Für den Kauf von Apps müssen Sie sich beim Amahi-Projekt zunächst einmal via<br />

PayPal oder mithilfe einer Kreditkarte ein Guthaben einrichten.<br />

rund 180 Stück anbietet 4 . Mit diesen<br />

kleinen Anwendungen erweitern Sie<br />

den Amahi Home <strong>Server</strong> ganz nach Belieben.<br />

Dabei gibt es sowohl kostenlose<br />

als auch kostenpflichtige Erweiterungen,<br />

wobei die Gratis-Apps etwa im Verhältnis<br />

2:1 überwiegen. Das aktuell noch gut<br />

überschaubare Angebot umfasst Anwendungen<br />

aus verschiedenen Bereichen<br />

wie Media, Backup, Business, Games<br />

und einige weitere.<br />

Einen guten Überblick der Apps bietet<br />

die Amahi-Projektwebsite. Dort<br />

können Sie auch die kostenpflichtigen<br />

Anwendungen erwerben.<br />

Amahi bietet dazu verschiedene<br />

Guthabenpakete an, die Sie per<br />

Zahlung mit Kreditkarte oder via<br />

Online-Bezahldienst PayPal erwerben<br />

5 . Haben Sie sich<br />

für eine kostenpflichtige<br />

App<br />

entschieden,<br />

dann klicken<br />

Sie den entsprechenden<br />

Button<br />

zum Kauf an.<br />

Es folgt eine Einblendung, über die Sie<br />

den Kauf bestätigen. Anschließend können<br />

Sie die neu erworbene Anwendung<br />

auf ihrem <strong>Server</strong> installieren.<br />

Um eine der Anwendungen zu installieren,<br />

öffnen Sie im Setup des <strong>Heim</strong>server-Dashboards<br />

die Apps. Dort sehen Sie<br />

alle verfügbaren Anwendungen. Bei den<br />

kostenlosen Exemplaren blendet Amahi<br />

alle nutzbaren ein, zusätzlich erscheinen<br />

automatisch die frisch erworbenen. Klicken<br />

Sie nun eine der Anwendungen an,<br />

dann sehen Sie ein <strong>Vorschau</strong>bild und<br />

eine kurze Beschreibung, zentral angeordnet<br />

sitzt der Install-Knopf. Sobald Sie<br />

ihn anklicken, richtet Amahi die App<br />

ohne weiteres Zutun ein. Ist der Prozess<br />

abgeschlossen, ändert sich die Ansicht<br />

und zeigt zusätzlich die initialen Zugangsdaten<br />

sowie die Adresse im lokalen<br />

Netzwerk an.<br />

Im System lässt sich immer nur eine<br />

App nach der anderen installieren, den<br />

Install-Knopf bei anderen Apps blendet<br />

Amahi so lange aus. Aber keine Sorge: Je<br />

nach Hardware des <strong>Server</strong>s dauert die<br />

Installation jeweils nur ein paar Sekunden<br />

bis wenige Minuten. Alle von uns<br />

ausprobierten Apps ließen sich ohne<br />

Probleme aufspielen und nutzen.<br />

Apps im Test<br />

Von den kostenfreien Apps haben wir<br />

uns im Test für Owncloud û, Ampache,<br />

Ajaxplorer und einige weitere entschieden.<br />

Alle ausgewählten Web-Anwendungen<br />

funktionierten sofort tadellos.<br />

Allerdings entsprachen einige Pakete<br />

nicht mehr dem aktuellen Stand der jeweiligen<br />

Projekte. Wie es scheint, liegt<br />

die Schuld nicht bei deren (freien) Entwicklern,<br />

sondern beim Amahi-Projekt.<br />

Auf der Website stand zu Redaktionsschluss<br />

über Updates, dass es „demnächst“<br />

dazu Informationen geben wird.<br />

Wann „demnächst“ ist und ob die Entwickler<br />

Aktualisierungen bereits eingereicht<br />

haben, konnten wir nicht klar<br />

nachvollziehen.<br />

Bei den kostenpflichtigen Apps<br />

griffen wir zu DLNA für 4,99 US-Dollar<br />

und Wordpress für 2,99 US-Dollar. Bei<br />

DLNA handelt es sich um einen Medi-<br />

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

07.2013


Amahi Home <strong>Server</strong><br />

Schwerpunkt<br />

en-<strong>Server</strong>, der alle zum DLNA-Standard<br />

kompatiblen Geräte wie Fernseher, HiFi-<br />

Anlagen oder Spielekonsolen mit Inhalten<br />

vom <strong>Heim</strong>server versorgt. Das klappte<br />

im Test hervorragend. Der DLNA-<strong>Server</strong><br />

griff dabei auf die entsprechenden<br />

Verzeichnisse zu, die Amahi bei der Installation<br />

angelegt und via Samba freigegeben<br />

hat. So konnten wir problemlos<br />

Musik, Videos und Bilder per Netzwerk-<br />

Freigabe auf den <strong>Heim</strong>server überspielen<br />

und anschließend gestreamt im ganzen<br />

Netz genießen.<br />

Die Wordpress-App gönnten wir uns<br />

nur zum Vergleich. Wir wollten sehen, ob<br />

sich die Kauf-Anwendung besser, leichter<br />

oder schneller installieren und benutzen<br />

lässt als ein in Eigenregie auf<br />

dem <strong>Heim</strong>server eingerichtetes Wordpress.<br />

Das Resultat des Experiments: Den<br />

Kauf der Wordpress-App hätten wir uns<br />

sparen können. Das manuelle Einrichten<br />

einer eigenen Installation (siehe Kasten<br />

Blog it, baby!) dauerte nur unwesentlich<br />

länger und ließe sich auch von unerfahrenen<br />

Anwendern meistern.<br />

Daher raten wir an dieser Stelle dazu,<br />

sich den Kauf von Apps genau zu überlegen:<br />

In unseren Augen lohnt es sich<br />

nur dann, Geld auszugeben, wenn die<br />

Anwendungen bei der Einrichtung eine<br />

gewisse Komplexität überschreiten – so<br />

wie bei uns im Fall von DLNA, das wir bis<br />

dato noch nie aufgesetzt hatten.<br />

Zugriff von außen<br />

Das Thema Erreichbarkeit des <strong>Heim</strong>servers<br />

von außerhalb streifen wir hier nur<br />

kurz: Beim vorliegenden Stand des Amahi<br />

Home <strong>Server</strong>s können wir nicht dazu<br />

raten, ihn ohne Weiteres aus dem Internet<br />

erreichbar zu machen. Um das auch<br />

für Anwender ohne großartige Kenntnisse<br />

gefahrlos zu ermöglichen, fehlt Amahi<br />

derzeit noch eine einfach zu konfigurierende<br />

und dennoch ausreichende<br />

Firewall. Außerdem sprechen die nicht<br />

ganz aktuellen Webapps gegen den Betrieb<br />

im WWW: Zu oft nutzen Angreifer<br />

gegenwärtig Sicherheitslücken veralteter<br />

Webanwendungen.<br />

Bis es die Firewall und das Update-System<br />

für die Apps gibt, können wir deshalb<br />

aus Sicherheitsgründen vom Online-Betrieb<br />

vorerst nur abraten. Wenn<br />

überhaupt sollten Sie beim vorliegenden<br />

Stand von Amahi nur einige ausgesuchte<br />

und vor allem gepatchte Dienste<br />

öffentlich zugänglich machen. Dazu<br />

steht immerhin dank des Amahi-Projekts<br />

ein dynamischer DNS-Dienst parat.<br />

Aber es gibt noch einen praktischen<br />

Ausweg: Im Angebot der kostenlosen<br />

Webapps befindet sich OpenVPN. Wenn<br />

Sie dies installieren, können Sie aus der<br />

Ferne sicher aufs <strong>Heim</strong>netz zugreifen<br />

und die Dienste und Anwendungen des<br />

Amahi-<strong>Heim</strong>servers nutzen. Dazu sollten<br />

Sie ausschließlich die für OpenVPN notwendigen<br />

Ports über Ihren Router zum<br />

<strong>Heim</strong>server weiterleiten.<br />

Fazit<br />

Der Amahi Home <strong>Server</strong> hält im Großen<br />

und Ganzen, was er verspricht. Von der<br />

Installation bis zum regulären Betrieb<br />

stellt das System keine großen Anforderungen<br />

an Wissen und Geschick des Anwenders.<br />

Nach nur wenigen Mausklicks<br />

steht ein praktischer <strong>Heim</strong>server bereit,<br />

der den meisten kommerziellen NAS-<br />

Systemen in kaum in einer Disziplin<br />

nachsteht. Ans weltweite Netz sollten<br />

Sie Amahi aber nur dann gehen lassen,<br />

wenn Sie als Administrator ganz genau<br />

wissen, was Sie tun. (jlu) n<br />

Weitere Infos und<br />

interessante Links<br />

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

Blog it, baby!<br />

Zur Eigeninstallation von Wordpress aktivierten wir vorübergehend<br />

die erweiterten Einstellungen im Dashboard des Amahi-<strong>Server</strong>s und<br />

wechselten dann in den Reiter Apps | Webapps. Hinter Webapps<br />

verbirgt sich nichts anderes als das Aufsetzen einer Webseite.<br />

Nach einem Klick auf New Web App erschien ein Feld, in das wir<br />

den Namen der gewünschten Seite eintrugen, in unserem Falle My‐<br />

Web. Im Feld darunter zeigte uns das Dashboard den künftigen<br />

Pfad im System an. Per SSH meldeten wir uns nun auf dem <strong>Server</strong><br />

an und wechselten mithilfe des Befehls cd /var/hda/web‐apps/<br />

MyWeb/html/ ins Verzeichnis unserer Seite.<br />

Dort angekommen, luden wir das aktuelle Wordpress-Archiv herunter<br />

und entpackten es. Den Inhalt des neu entstandenen Verzeichnisses<br />

verschoben wir mit mv wordpress/* . ins aktuelle Verzeichnis<br />

und löschten das nun leere Verzeichnis. Dann ging es zurück<br />

in den Browser und in den App-Bereich. Dort suchten und installierten<br />

wir das kostenfreie Phpmyadmin und riefen es anschließend<br />

auf. Wir erstellten nun einen Benutzer wordpress und setzten<br />

ein Häkchen bei Erstelle eine Datenbank mit gleichem Namen und<br />

gewähre alle Rechte. Damit war Wordpress betriebsbereit.<br />

Wir riefen zur Kontrolle im Browser unsere gewählte Adresse My‐<br />

Web auf, gefolgt von der <strong>Server</strong>-Domain – in unserem Fall linuxheim.de<br />

(also http://myweb.linuxheim.de). Nun erschien der<br />

Installationsdialog von Wordpress, in den wir den Datenbanknamen,<br />

Datenbenutzer und das passende Kennwort eintrugen. Mehr<br />

blieb nicht zu tun, ein paar Klicks weiter war unsere Wordpress-Installation<br />

bereit zur Benutzung.<br />

Nun erwarben wir zum Vergleich Wordpress im Amahi-Shop für<br />

2,99 US-Dollar. Kauf und Installation verliefen ohne Probleme: Ein<br />

Klick auf den angezeigten Link, und Wordpress Nummer 2 lief fix<br />

und fertig mit der automatisch vergebenen Adresse wordpress.<br />

linuxheim.de und dem Blog-Titel My HDA Wordpress. Nicht<br />

ganz so sexy: Die Installation war nur in englischer Sprache erfolgt,<br />

die Lokalisierung û mussten wir händisch erledigen.<br />

Äußerst unerfreulich: Die gekaufte Wordpress-App legte unsere<br />

selbst angelegte Wordpress-Installation lahm, da sie ohne Nachfrage<br />

die von uns angelegte Datenbank wordpress kaperte und<br />

mit eigenen Daten überschrieb. Bereits geschriebene Blogposts<br />

wären damit verloren gewesen.<br />

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

21


Schwerpunkt<br />

Zeroshell (Teil 1)<br />

Zentrale Dienste mit Zeroshell<br />

auf dem Embedded-<strong>Server</strong><br />

Starkes Stück<br />

© Linuxgeek, sxc.hu<br />

Zeroshell erlaubt es, in wenigen<br />

Schritten umfangreiche<br />

Dienste an zentraler Stelle im<br />

LAN aufzusetzen und komfortabel<br />

zu administrieren.<br />

Erik Bärwaldt<br />

Readme<br />

Kleine multifunktionale Geräte liegen im<br />

Trend. Mit Linux und unserem Workshop<br />

machen Sie aus einem sparsamen Embedded-System<br />

im Handumdrehen einen leistungsfähigen<br />

<strong>Server</strong> mit vielen Funktionen.<br />

Die Dienste in einem modernen <strong>Heim</strong>netz<br />

stellen an den <strong>Server</strong> heute weitaus<br />

höhere Anforderungen als das noch vor<br />

wenigen Jahren der Fall war: Multimediale<br />

Inhalte und das Internet mit seinen<br />

vielfältigen Möglichkeiten und Diensten<br />

sowie immer komplexere Optionen zum<br />

Authentifizieren erfordern deutlich mehr<br />

Hardware-Ressourcen als das reine Verwalten<br />

von Daten.<br />

Mit einer passenden Linux-<strong>Server</strong>-Distribution<br />

wie dem hier vorgestellten<br />

Zeroshell bauen Sie aber dennoch relativ<br />

unkompliziert eine Schaltzentrale für<br />

das private Intranet auf, die großen <strong>Server</strong>systemen<br />

in nichts nachsteht und<br />

trotzdem die Ressourcen schont.<br />

Hardware<br />

Als Hardware-Grundlage für diesen<br />

Workshop diente ein Barebone-PC vom<br />

Typ JBC362W-2600-B des taiwanischen<br />

Herstellers Jetway, den wir bei Cartft.com<br />

aus Reutlingen bezogen. Einen ausführlichen<br />

Artikel zu dem Gerät lesen Sie in<br />

dieser Ausgabe ab Seite 85. Das Mini-<br />

ITX-System bietet ausreichend Leistung<br />

auf kleinem Raum, wobei das Gerät lüfter-<br />

und somit geräuschlos arbeitet und<br />

dank des verwendeten Atom-Prozessors<br />

sehr wenig Energie benötigt.<br />

Dem Barebone-PC spendierten wir<br />

2 GByte Arbeitsspeicher in Gestalt eines<br />

SO-DIMM-Bausteins sowie eine Festplatte<br />

mit 500 GByte Kapazität im 2,5-Zoll-<br />

Formfaktor. Der Rechner besitzt allerdings<br />

kein optisches Laufwerk, das sich<br />

zur Installation nutzen ließe. Ein via USB<br />

angeschlossenes externes DVD-Laufwerk<br />

schuf hier Abhilfe.<br />

Software<br />

Nahezu jede Linux-Distribution bietet inzwischen<br />

in ihren Repositories Pakete<br />

für eine Vielzahl gängiger <strong>Server</strong>-Dienste<br />

an. Insbesondere die bekannteren Distributionen<br />

stellen dabei aber vergleichsweise<br />

hohe Anforderungen an die Hardware-Ausstattung.<br />

Außerdem sind Sie<br />

gezwungen, die Dienste nach der Installation<br />

mit unterschiedlichsten Werkzeugen<br />

zu konfigurieren.<br />

Für den Workshop fiel unsere Wahl daher<br />

auf die spezialisierte <strong>Server</strong>-Distribu­<br />

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

07.2013


Zeroshell (Teil 1)<br />

Schwerpunkt<br />

Sie wechseln nun mit cd /mnt/loop1/ in<br />

dieses bereits von Zeroshell angelegte<br />

Verzeichnis und starten den Installation<br />

Zeroshell, die sich als Allrounder<br />

auch bestens zum Einsatz auf Embedded-Hardware<br />

eignet.<br />

Die Zeroshell-Website hält unter<br />

http:// zeroshell. org neben diversen ISO-<br />

Images auch zahlreiche Anleitungen<br />

und zusätzliche Pakete bereit.<br />

Installation<br />

Zeroshell setzt ganz auf die Kommandozeile.<br />

Die Konfiguration erledigen Sie<br />

allerdings via Browser über einen integrierten<br />

Webserver. Zur Installation ist es<br />

unbedingt nötig, die Syntax einiger<br />

grundlegender Linux-Befehle zu beherrschen,<br />

da keinerlei Werkzeuge oder Assistenten<br />

bereitstehen, um das System<br />

auf einen Massenspeicher zu packen.<br />

Grundsätzlich eignet sich Zeroshell für<br />

den Betrieb als Live-System. Manuell angelegte<br />

Konfigurationen gilt es dabei,<br />

aber auf einem zweiten Medium zu speichern,<br />

um diese nach einem Neustart<br />

des Systems zur Hand zu haben.<br />

Um die Distribution betriebsbereit auf<br />

der internen Festplatte des PCs zu installieren,<br />

nutzen Sie das aktuelle ISO-Abbild<br />

ZeroShell‐2.0.RC2.iso. Aus diesem<br />

nur rund 185 MByte großen Image<br />

brennen Sie eine bootfähige CD. Anschließend<br />

laden Sie die rund 200 MByte<br />

große Gzip-Datei ZeroShell‐2.0.RC2‐<br />

IDE‐USB‐SATA‐Disk‐2GB.img.gz zum<br />

Anlegen einer bootfähigen Festplatte<br />

herunter und speichern das Archiv auf<br />

einem USB-Stick.<br />

Zeroshell liest im Live-Betrieb keine<br />

Flash-Sticks mit dem von anderen Betriebssystemen<br />

her bekannten VFAT-<br />

Dateisystem. Daher gilt es, das Speichermedium<br />

zuvor mit einem Ext2-Dateisystem<br />

vorzubereiten, wozu Sie erst einmal<br />

Zeroshell vom optischen Laufwerk starten.<br />

Im Begrüßungsbildschirm tippen<br />

Sie [1], um den normalen Bootvorgang<br />

zu aktivieren.<br />

Nach dem Hochfahren bietet die Distribution<br />

einige Optionen, wobei Sie S<br />

für den Aufruf der Shell wählen. Stecken<br />

Sie nun den USB-Stick in eine freie Buchse,<br />

und überprüfen Sie mit dem Befehl<br />

dmesg, welche Gerätedatei das System<br />

ihm zugewiesen hat – meist /dev/sdb.<br />

Anschließend geben Sie am Prompt den<br />

Befehl fdisk /dev/sdb ein und danach<br />

d, um die auf dem USB-Stick vorhandene<br />

Partition zu löschen. Jetzt legen Sie mit n<br />

eine neue Partition an. Mit w speichern<br />

Sie schließlich die Partitionstabelle. Damit<br />

das System den USB-Stick mit den<br />

neuen Daten für die Geometrie sicher<br />

erkennt, sollten Sie anschließend neu<br />

starten, indem Sie den Befehl reboot<br />

oder init 6 eingeben.<br />

Ziehen Sie nach dem Herunterfahren<br />

den USB-Stick vom Rechner ab und starten<br />

Sie das Betriebssystem neu. Nach<br />

dem erneuten Einstecken des USB-Sticks<br />

legen Sie auf der vorbereiteten Partition<br />

mithilfe des Befehls mkfs /dev/sdb1 das<br />

Ext2-Dateisystem an. Nun speichern Sie<br />

das Zip-Archiv ZeroShell‐2.0.RC2‐IDE‐<br />

USB‐SATA‐Disk‐2GB.img.gz auf dem<br />

USB-Stick ab.<br />

Damit das Betriebssystem dann auf<br />

der internen Festplatte ordentlich läuft,<br />

löschen Sie in einem weiteren Schritt<br />

sämtliche auf dieser Festplatte vorhandenen<br />

Partitionen. Anschließend booten<br />

Sie das System von der Zeroshell-CD neu<br />

und hängen zunächst den USB-Stick<br />

mithilfe des folgenden Befehls ins Dateisystem<br />

ein:<br />

# mount /dev/sdb1 /mnt/loop1<br />

Zeroshell 2.0 RC2,<br />

ZeroShell-2.0.RC2-IDE-<br />

USB-SATA-Disk-2GB.img.gz<br />

LU/zeroshell/<br />

tionsvorgang auf der internen Rechnerfestplatte<br />

mit dem Kommando<br />

# gunzip ‐c ZeroShell‐2.0.RC2‐IDE‐U<br />

USB‐SATA‐Disk‐2GB.img.gz > /dev/sda<br />

Nach einem erneuten Reboot startet die<br />

Distribution nun von der Festplatte. Um<br />

die einzelnen Dienste einzurichten, binden<br />

Sie anschließend den <strong>Server</strong> erst<br />

einmal ins lokale Netzwerk ein.<br />

1 Die IP-Adressen für die Netzwerkschnittstellen des Zeroshell-<strong>Server</strong>s passen Sie bei<br />

Bedarf im kommandozeilenbasierten Command Menu von Hand an.<br />

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

23


Schwerpunkt<br />

Zeroshell (Teil 1)<br />

Im Jetway-PC befinden sich zwei Gigabit-<br />

Ethernet-Buchsen für den kabelgebundenen<br />

Zugang zum Netz. Diese bezeichnet<br />

Zeroshell als ETH00 und ETH01; sie erfordern<br />

jeweils eine separate Konfiguration.<br />

Zeroshell gibt für das erste Interface<br />

jeweils die IP-Adresse 192.168.0.75 vor,<br />

die Sie entsprechend Ihren Bedürfnissen<br />

ändern. Im Hauptmenü (Command<br />

Menu) wählen Sie dazu durch einen<br />

Druck auf [I] den IP Manager, der in ein<br />

Untermenü verzweigt, in welchem Sie<br />

vorhandene IP-Adressen modifizieren,<br />

löschen oder neu anlegen.<br />

Sofern – wie in unserem Jetway-PC –<br />

mehrere physische Schnittstellen vorhanden<br />

sind und Sie diese jedoch nicht<br />

alle benötigen, deaktivieren Sie hier einzelne<br />

Interfaces 1 .<br />

Oberflächliches<br />

2 Die von Zeroshell bereitgestellte Weboberfläche zur Administration bietet weitaus<br />

mehr Komfort beim Konfigurieren der Dienste als der Shell-Zugang.<br />

Dazu sollten Sie vorab überprüfen, welche<br />

Schnittstellen im System vorhanden<br />

sind. Die Eingabe des Befehls ifconfig<br />

zeigt diese übersichtlich an.<br />

Grundkonfiguration<br />

3 Zum Anlegen eines neuen Profils benötigen Sie nur einige wenige, grundlegende<br />

Konfigurationsdaten wie Hostname und IP-Adressen.<br />

Haben Sie die grundlegende IP-Einstellung<br />

für das erste Interface vorgenommen,<br />

besteht die Möglichkeit, auf den in<br />

Zeroshell integrierten Webserver zur<br />

Konfiguration und Administration der<br />

einzelnen Dienste zuzugreifen. Sie erreichen<br />

den <strong>Server</strong> von jedem beliebigen<br />

Rechner durch Eingabe der URI https://<br />

Zeroshell‐PC im Browser.<br />

Da Sie auf die Oberfläche durch eine<br />

gesicherte Verbindung zugreifen, moniert<br />

Firefox zunächst ein unsicheres<br />

Zertifikat. Fügen Sie hier eine Ausnahmeregel<br />

hinzu. Nach dem Authentifizieren<br />

mit dem Benutzernamen admin und<br />

dem Passwort zeroshell gelangen Sie in<br />

die Bedienoberfläche des <strong>Server</strong>s 2 .<br />

Das Fenster gliedert sich denkbar einfach:<br />

Links finden Sie vertikal angeordnet<br />

die einzelnen Dienste und Grundeinstellungen,<br />

sortiert nach unterschiedlichen<br />

Kategorien. Im oberen Bereich horizontal<br />

zeigt die Software jeweils entsprechende<br />

Modifikations- und Überwachungsoptionen<br />

an. Hier finden sich auch Einträge<br />

zur Anzeige von Log-Dateien.<br />

Darunter visualisiert Zeroshell den Status<br />

des entsprechenden Dienstes entweder<br />

durch ein rotes DISABLED oder über<br />

ein grünes ENABLED. Sofern Sie einen<br />

Dienst durch Setzen eines Häkchens in<br />

der betroffenen Zeile starten beziehungsweise<br />

stoppen, sollten Sie die neue<br />

Einstellung – sofern Sie diese dauerhaft<br />

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

07.2013


Zeroshell (Teil 1)<br />

Schwerpunkt<br />

speichern möchten – durch einen Mausklick<br />

auf die Schaltfläche Save sichern.<br />

Profile<br />

Um die vielfältigen Einstellungen der<br />

einzelnen Dienste dauerhaft zu speichern<br />

und nach einem Neustart des Systems<br />

wieder zu nutzen, arbeitet Zeroshell<br />

mit Profilen. Nach der Installation<br />

des Betriebssystems lädt Zeroshell ein<br />

Standardprofil, dem Sie jedoch weitere<br />

an die Seite stellen können.<br />

Während Sie im COMMAND MENU auf<br />

der Konsole lediglich die Möglichkeit haben,<br />

über [A] ein Profil zu aktivieren oder<br />

über [D] zu deaktivieren, bietet sich die<br />

Weboberfläche als komfortabler Weg an,<br />

um Profile zu modifizieren oder zu verwalten.<br />

Sie erreichen den entsprechenden<br />

Dialog durch Anklicken der Schaltfläche<br />

Profiles in der horizontal angeordneten<br />

Menüleiste.<br />

Nun erhalten Sie eine Liste mit den auf<br />

der eigens angelegten Partition vorhandenen<br />

Profilen. Direkt nach der Standardinstallation<br />

umfasst diese nur das Profil<br />

Default. Durch Anklicken des Auswahlschalters<br />

vor dem Namen des Profils öffnet<br />

sich eine weitere horizontal angeordnete<br />

Menüleiste. Sie gestattet es<br />

über die Schaltfläche Create Profile ein<br />

neues Profil zu entwerfen. In einem zusätzlichen<br />

Fenster tragen Sie dazu die<br />

grundlegenden Daten ein 3 .<br />

Durch einen Klick auf Create speichern<br />

Sie das neue Profil. Es erscheint anschließend<br />

sofort in der Liste. Um es als Grundlage<br />

für die weitere Arbeit zu aktivieren,<br />

klicken Sie in der Menüleiste auf die<br />

Schaltfläche Activate. Nach einer Sicherheitsabfrage<br />

startet der Zeroshell-Rechner<br />

mit dem modifizierten Profil neu, wobei<br />

Sie sich nun mit den im Profil eingetragenen<br />

Zugangsdaten authentifizieren.<br />

IP-Adressen<br />

4 Die richtige Konfiguration der vorhandenen Netzwerkschnittstellen gehört zu den<br />

grundlegenden Einstellungen des Zeroshell-Setups.<br />

Um den Zeroshell-Rechner später ohne<br />

Einschränkungen zu nutzen, sollten Sie<br />

im nächsten Arbeitsschritt die physikalischen<br />

Netzwerkschnittstellen mit eigenen<br />

IP-Adressen versehen und freischalten.<br />

Das von Zeroshell in der Standardinstallation<br />

eingerichtete Interface<br />

VPN99 können Sie bei stationären Systemen<br />

zunächst unberücksichtigt lassen.<br />

Rufen Sie zum Anpassen des Profils mit<br />

IP-Adressen zunächst im Fenster für die<br />

Administration das Menü SETUP | Network<br />

auf. Sie erhalten nun eine übersichtliche<br />

Liste der vorhandenen Schnittstellen<br />

samt deren Status. Rechts im Fenster<br />

befinden sich einige Schaltflächen zum<br />

Anpassen der IP-Einstellungen, während<br />

oben eine weitere horizontal angeordnete<br />

Menüleiste in Dialoge zu verschiedenen<br />

Diensten verzweigt 4 .<br />

Klicken Sie nun auf den Auswahlschalter<br />

vor dem einzustellenden Interface<br />

und anschließend rechts daneben auf<br />

die Schaltfläche Add IP. In einem weiteren<br />

Fenster geben Sie nun die gewünschte<br />

IP-Adresse zusammen mit der<br />

zugehörigen Subnetz-Maske ein. Zeroshell<br />

speichert die neue Einstellung, und<br />

die Schnittstelle schaltet die korrespondierende<br />

Adresse aktiv.<br />

Bei der Auswahl der IP-Adresse sollten<br />

Sie darauf achten, dass diese nicht aus<br />

dem gleichen Subnetz stammt wie andere<br />

im Rechner vergebene Adressen,<br />

um Konflikte und Fehler beim späteren<br />

Einrichten von Diensten zu vermeiden.<br />

Sie haben zudem die Möglichkeit, für<br />

eine im System vorhandene Schnittstelle<br />

mehrere IP-Adressen zu vergeben.<br />

Dies ist beispielsweise sinnvoll, wenn<br />

Sie beim Aufsetzen eines Routers mehrere<br />

statische IP-Adressen von Ihren Providern<br />

zugewiesen bekommen und diese<br />

alternativ einsetzen möchten. Nachdem<br />

Sie diese Arbeiten abgeschlossen<br />

haben, ist die Grundkonfiguration des<br />

Systems komplett.<br />

Fazit<br />

Zeroshell zeigt bereits auf den ersten<br />

Blick eine Fülle von Funktionen, die das<br />

System als Allround-<strong>Server</strong> empfehlen.<br />

Durch äußerst geringe Hardware-Anforderungen<br />

kommen ältere Rechner und<br />

Embedded-Systeme problemlos als<br />

Netzwerkzentrale in Betracht.<br />

Deutlich verbesserungswürdig ist allerdings<br />

die noch relativ schlechte Dokumentation,<br />

die zudem auch (noch) nicht<br />

in deutscher Sprache vorliegt. Unser<br />

Workshop begleitet Sie daher in den<br />

kommenden Teilen beim Aufsetzen der<br />

Dienste für den zentralen <strong>Server</strong> von<br />

WWW und FTP über WLAN und VPN bis<br />

hin zu DHCP und DNS. (agr) n<br />

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

25


Schwerpunkt<br />

Fail2ban vs. Sshguard<br />

Dienste vor Brute-Force- und<br />

Wörterbuch-Attacken schützen<br />

Türsteher<br />

Fail2ban und Sshguard schützen <strong>Server</strong>-<br />

Dienste gegen Brute-Force- und Wörterbuchattacken,<br />

indem sie auffällig gewordene<br />

Störenfriede kurzerhand aussperren.<br />

Falko Benthin<br />

© Gordon Bussiek, Fotolia<br />

Readme<br />

Fail2ban und Sshguard ergänzen die Funktionen<br />

einer Firewall, indem sie die <strong>Server</strong>-<br />

Logs laufend auf Anzeichen einer Attacke<br />

scannen und erkannte Angreifer anhand<br />

deren IP-Adresse vom Zugriff auf die<br />

Diens te aussperren. In Sachen Leistungsumfang<br />

und Komplexität unterscheiden<br />

sich die beiden Tools allerdings deutlich.<br />

Das Internet wimmelt geradezu von<br />

Rechnern, die still und leise ihre Dienste<br />

anbieten – etwa als Home-<strong>Server</strong> für die<br />

Familie oder als File- und Web-<strong>Server</strong> in<br />

WGs, Kirchengemeinden und Sportvereinen.<br />

Solche Maschinen stellen beliebte<br />

Ziele für Attacken dar: Einmal geknackt,<br />

lassen sie sich bestens als Ausgangspunkt<br />

für illegale Aktionen nutzen.<br />

Meist verschafft sich der Angreifer dabei<br />

über Brute-Force- und Wörterbuchattacken<br />

Zugang zum System. Das<br />

klappt auch ohne umfangreiches Wissen,<br />

denn netzwerkfähige Passwort-Cracker<br />

wie Ncrack, Hydra oder Medusa arbeiten<br />

so benutzerfreundlich, dass auch<br />

Nichtspezialisten nach kurzer Einarbeitungszeit<br />

mit ihnen umgehen können.<br />

Bei der Wörterbuchattacke versuchen<br />

Angreifer, schwache Passwörter mithilfe<br />

von Wortlisten zu knacken. Solche Listen<br />

liefern beispielsweise Spellchecker wie<br />

Aspell und Ispell, andere finden sich im<br />

Netz oder lassen sich mit geringem Aufwand<br />

aus maschinenverarbeitbaren Texten<br />

gewinnen. Weil immer noch viele<br />

Nutzer einfache Passworte ohne Großbuchstaben,<br />

Ziffern und Sonderzeichen<br />

verwenden, führen solche Wörterbuchangriffe<br />

oft schnell zum Erfolg.<br />

Bei mindestens acht Zeichen langen<br />

Passworten, die neben Groß- und Kleinbuchstaben<br />

auch Ziffern und Sonderzeichen<br />

enthalten, laufen Wörterbuchangriffe<br />

mit hoher Wahrscheinlichkeit ins<br />

Leere. Hier klappt höchstens eine Brute-<br />

Force-Attacke, bei denen der Passwort-<br />

Cracker beliebige Zeichenkombinationen<br />

durchprobiert. Je nach Länge und Güte<br />

des Passwortes führt ein derartiger Angriff<br />

früher oder später zum Erfolg. Dass viele<br />

Dienste und Anwendungen im Netz parallele<br />

Verbindungen zulassen und oft auch<br />

die Anzahl der Zeichen in Passworten beschränken,<br />

erleichtert solche Attacken.<br />

<strong>Server</strong> protokollieren zwar meist fehlgeschlagene<br />

Logins, doch solange die Dienste<br />

anstandslos laufen, macht sich kaum<br />

ein Betreiber die Mühe, die Log-Dateien<br />

regelmäßig durchzusehen. Läuft auf dem<br />

<strong>Server</strong> kein IDS, das angesichts vieler erfolgloser<br />

Login-Versuchen seine warnende<br />

Stimme erhebt, fallen Brute-Force- und<br />

Wörterbuchangriffe meist erst spät auf.<br />

Hier helfen Anwendungen weiter, welche<br />

die <strong>Server</strong>-Logs überwachen und die<br />

betroffenen Ports automatisch sperren,<br />

sobald Unregelmäßigkeiten auftreten.<br />

Zwei erfahrene „Türsteher“ aus dieser Rie-<br />

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

07.2013


Fail2ban vs. Sshguard<br />

Schwerpunkt<br />

In Fail2ban kommen Sie nicht um Filter,<br />

Aktionen und Jails herum. Bei einem Filter<br />

handelt es sich um ein Suchmuster in<br />

Form eines regulären Ausdrucks, auf dessen<br />

Basis Fail2ban die <strong>Server</strong>-Logs durchforstet.<br />

Eine Aktion ist ein auszuführendes<br />

Kommando, etwa um eine Firewall<br />

zu aktivieren oder den Admin anzumailen.<br />

Ein Jail besteht aus einem Filter sowie<br />

einer oder mehreren Aktionen.<br />

Zwar lässt sich Fail2ban auch zur Laufzeit<br />

konfigurieren, doch da die Einstellungen<br />

dann bei jedem Neustart verloren<br />

gehen, ist es sinnvoll, sie gleich in<br />

Konfigurationsdateien zu<br />

hinterlegen. Diese finden sich<br />

üblicherweise im Verzeichnis<br />

/etc/fail2ban. Im File fail‐<br />

2ban.conf treffen Sie Einstellungen<br />

hinsichtlich des <strong>Server</strong>s,<br />

wie etwa den Log-Level<br />

(Listing 1, Zeile 2). Hier legen<br />

Sie auch die Fail2ban-Logge<br />

sind Fail2ban û und Sshguard û.<br />

Beide Anwendungen dienen als Ergänzung<br />

zu einer Firewall.<br />

Eine Firewall kann zwar verhindern,<br />

dass viele parallele Verbindungen zu einem<br />

Rechner geöffnet werden, vermag<br />

aber fehlgeschlagene Logins nicht zu erkennen.<br />

Ein Angreifer braucht also nur zu<br />

ermitteln, wie viele parallele Verbindungen<br />

erlaubt sind, um dann eine auf die<br />

Firewall zugeschnittene Attacke abzusetzen.<br />

Sofern der Admin nicht über die resultierenden,<br />

riesigen Log-Dateien stolpert,<br />

verläuft der Angriff unbemerkt.<br />

Fail2ban<br />

Das Python-Programm Fail2ban nutzt<br />

eine Client/​<strong>Server</strong>-Architektur und kann<br />

die Log-Dateien mehrerer <strong>Server</strong>-Dienste<br />

überwachen, so etwa jene von SSH, Web,<br />

FTP und E-Mail. Erkennt das Tool eine Attacke,<br />

greift es auf Firewalls wie Iptables<br />

oder den TCP-Wrapper zurück, um die<br />

betroffenen Ports für eine festgelegte<br />

Zeit zu sperren. Parallel dazu benachrichtigt<br />

es den Administrator per E-Mail über<br />

die Attacke. Als Kriterium für einen Angriff<br />

nutzt Fail2ban Muster wie etwa Fehlermeldungen,<br />

die von einer IP-Adresse<br />

ausgelöst wurden.<br />

Das aktuelle Fail2ban 0.8.8 findet sich<br />

in den Repositories aller gängigen Distributionen,<br />

sodass Sie es komfortabel mithilfe<br />

der Paketverwaltung einrichten. Alternativ<br />

greifen Sie zum Sourcecode von<br />

Github.com û und führen im Quellverzeichnis<br />

python setup.py install aus.<br />

Die Programmdateien landen standardmäßig<br />

unter /usr/share/fail2ban oder<br />

/usr/bin.<br />

Die Entwickler empfehlen, Fail2ban<br />

stets über den Client zu steuern. Der Befehl<br />

fail2ban‐client ‐h prüft, ob die<br />

Installation erfolgreich war. Um Fail2ban<br />

nach einer manuellen Installation automatisch<br />

beim Booten zu starten, gilt es,<br />

eventuell noch ein Init-Skript anzulegen.<br />

Bei einer Installation aus einem Repository<br />

sollte das automatisch erfolgt sein.<br />

Fail2ban einrichten<br />

IDS: Intrusion Detection System. Bei solchen<br />

Angriffserkennungssystemen unterscheidet<br />

man grundsätzlich zwischen hostbasierten<br />

HIDS, welche die auf einem<br />

Rechner anfallenden (Log-)Daten laufend<br />

auswerten, und netzwerkbasierten NIDS,<br />

welche den Netzwerkverkehr auf Unregelmäßigkeiten<br />

hin analysieren. Viele IDS-Implementationen<br />

kombinieren heute HIDSund<br />

NIDS-Fähigkeiten.<br />

Listing 1<br />

01 # Log‐Level: 1=Error, 2=Warn, 3=Info, 4=Debug<br />

02 loglevel = 3<br />

03 logtarget = /var/log/fail2ban.log<br />

04 socket = /var/run/fail2ban/fail2ban.sock<br />

Listing 2<br />

# Regex für sshd<br />

failregex = Failed password for .* from <br />

FAILED su for .* by .*<br />

Invalid user .* from <br />

1 Alle 45 Minuten ein fehlerhafter Anmeldeversuch<br />

von einem isländischen Host? Das stinkt zum Himmel.<br />

Fail2ban-regex prüft reguläre Ausdrücke in Filtern und<br />

kann neue Erkenntnisse bringen.<br />

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

27


Schwerpunkt<br />

Fail2ban vs. Sshguard<br />

Listing 3<br />

01 [Definition]<br />

02 # Option: actionstart<br />

03 # Notes.: command executed<br />

once at the start of Fail2Ban.<br />

04 # Values: CMD<br />

05 actionstart = iptables ‐N<br />

fail2ban‐<br />

06 iptables ‐A<br />

fail2ban‐ ‐j RETURN<br />

07 iptables ‐I<br />

INPUT ‐p ‐‐dport<br />

‐j fail2ban‐<br />

08 <br />

09 # Option: actionstop<br />

10 # Notes.: command executed<br />

once at the end of Fail2Ban<br />

11 # Values: CMD<br />

12 actionstop = iptables ‐D INPUT<br />

‐p ‐‐dport <br />

‐j fail2ban‐<br />

13 iptables ‐F<br />

fail2ban‐<br />

14 iptables ‐X<br />

fail2ban‐<br />

15 <br />

16 # Option: actioncheck<br />

17 # Notes.: command executed<br />

once before each actionban<br />

command<br />

18 # Values: CMD<br />

19 actioncheck = iptables<br />

‐n ‐L INPUT | grep ‐q<br />

fail2ban‐<br />

20 <br />

21 # Option: actionban<br />

22 # Notes.: command executed<br />

when banning an IP.<br />

23 # Tags: IP address<br />

24 # number<br />

of failures<br />

25 # unix<br />

timestamp of the ban time<br />

26 # Values: CMD<br />

27 actionban = iptables ‐I<br />

fail2ban‐ 1 ‐s ‐j<br />

DROP<br />

28 <br />

29 # Option: actionunban<br />

30 # Notes.: command executed<br />

when unbanning an IP. Take<br />

care that the<br />

31 # command is executed<br />

with Fail2Ban user rights.<br />

32 # Tags: IP address<br />

33 # number<br />

of failures<br />

34 # unix<br />

timestamp of the ban time<br />

35 # Values: CMD<br />

36 actionunban = iptables ‐D<br />

fail2ban‐ ‐s ‐j<br />

DROP<br />

37 <br />

38 [Init]<br />

39 # Defaut name of the chain<br />

40 name = default<br />

41 <br />

42 # Option: port<br />

43 # Notes.: specifies port to<br />

monitor<br />

44 # Values: [ NUM | STRING ]<br />

Default:<br />

45 port = ssh<br />

46 <br />

47 # Option: protocol<br />

48 # Notes.: internally<br />

used by config reader for<br />

interpolations.<br />

49 # Values: [ tcp | udp | icmp<br />

| all ] Default: tcp<br />

50 protocol = tcp<br />

Datei (Zeile 3) fest und definieren den<br />

Unix-Socket (Zeile 4), über den der <strong>Server</strong><br />

mit dem Client kommuniziert.<br />

Im Unterverzeichnis filter.d/ hinterlegen<br />

Sie Regeln in Form regulärer Ausdrücke<br />

für die einzelnen Dienste. Eine<br />

Regel darf aus mehreren Ausdrücken bestehen,<br />

die Sie zeilenweise auflisten. Ein<br />

Beispiel für den SSH-Daemon zeigt Listing<br />

2. Beim Ausdruck handelt es<br />

sich um ein Alias, das reguläre Ausdrücke<br />

für Hostnamen sowie IPv4- und IPv6-Adressen<br />

ersetzt. Das macht die Filter leichter<br />

lesbar. Ob die Regeln funktionieren,<br />

testet folgender Befehl (Abbildung 1 ):<br />

$ fail2ban‐regex /Pfad/zur/Log‐DaU<br />

tei /etc/fail2ban/filter.d/FilterU<br />

name<br />

Fail2ban: Aktionen<br />

Das Verzeichnis action.d/ beherbergt<br />

die Aktionen, die Fail2ban ausführen soll,<br />

wenn es in einer Log-Datei so viele zu einem<br />

Filter passende Einträge findet, dass<br />

eine unmittelbare Reaktion Not tut. In<br />

der Regel finden sich deswegen an dieser<br />

Stelle Anweisungen für die Firewall,<br />

doch man kann hier auch E-Mails absetzen<br />

oder andere Befehle ausführen. Listing<br />

3 zeigt die Aktion iptables aus Debians<br />

Fail2ban-Konfiguration.<br />

Die Option actionstart (Zeile 2) legt<br />

eine neue Filterkette fail2ban‐<br />

an. Sie enthält zu Beginn nur eine Regel,<br />

die den Ball sofort wieder an die überge-<br />

Listing 4<br />

01 [DEFAULT]<br />

02 # "ignoreip" can be an IP<br />

address, a CIDR mask or a DNS<br />

host<br />

03 #ignoreip = 127.0.0.1<br />

04 bantime = 600<br />

05 maxretry = 3<br />

06 backend = polling<br />

07 destemail = falko@*<br />

08 mta = sendmail<br />

09 banaction = iptables‐multiport<br />

10 action_ = %(banaction)<br />

s[name=%(__name__)<br />

s, port="%(port)s",<br />

protocol="%(protocol)s]<br />

11 #defaul action<br />

12 action = %(action_)s<br />

13 <br />

14 # JAILS<br />

15 [ssh]<br />

16 enabled = true<br />

17 port = ssh<br />

18 filter = sshd<br />

19 logpath = /var/log/auth.log<br />

20 findtime = 3600<br />

21 maxretry = 3<br />

22 bantime = 7200<br />

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

07.2013


Fail2ban vs. Sshguard<br />

Schwerpunkt<br />

ordnete Kette zurückspielt (‐j RETURN).<br />

Die INPUT-Chain wird anschließend angewiesen,<br />

Pakete für die von Fail2ban<br />

kontrollierten Ports und Protokolle an<br />

die Chain fail2ban‐ weiterzureichen.<br />

In der Regel passiert hier also noch<br />

nichts – actionCheck (Zeile 16) prüft lediglich,<br />

ob fail2ban‐ existiert.<br />

Die Option actionban (Zeile 21) fügt<br />

in fail2ban‐ an erster Stelle eine<br />

Regel ein, mit der die Firewall den betroffenen<br />

Port für den angreifenden<br />

Host sperrt. Bei handelt es sich um<br />

einen Platzhalter, der sowohl eine IP-Adresse<br />

als auch einen Hostnamen enthalten<br />

kann. Die Option actionunban (Zeile<br />

29) löscht die entsprechende Regel<br />

wieder, actionstop (Zeile 9) macht alle<br />

in actionstart vorgenommenen Änderungen<br />

wieder rückgängig.<br />

Unter [Init] (ab Zeile 38) finden sich<br />

lediglich ein paar Variablen, die Fail2ban<br />

standardmäßig setzt, falls das aufrufende<br />

Jail keine entsprechenden Informationen<br />

liefert.<br />

Fail2ban: Jails<br />

Nach der Definition von Aktionen und<br />

Filtern gilt es, nun noch die Jails einzurichten.<br />

Die meisten Distributionen konfigurieren<br />

Fail2ban für die gängigsten<br />

Dienste bereits vor, sodass Sie nur minimale<br />

Anpassungen an den Filtern, Aktionen<br />

und Jails vornehmen müssen.<br />

Die Definitionen der Jails lagern in der<br />

Datei /etc/fail2ban/jail.conf. Hier<br />

tragen Sie beispielsweise ein, wie viele<br />

Fehlversuche Sie für einzelne Dienste erlauben<br />

(maxretry), wie lange ein Port bei<br />

zu vielen Fehlversuchen gesperrt bleibt<br />

(bantime) und welche Log-Dateien Fail-<br />

2ban auswertet (logpath).<br />

Listing 4 zeigt einen Auszug aus der<br />

jail.conf von Debian. In der Sektion<br />

[DEFAULT] legen Sie Standardwerte fest,<br />

um diese später nicht ständig wiederholen<br />

zu müssen. Ob Sie ignoreip (Zeile 3)<br />

setzen, müssen Sie sorgsam abwägen:<br />

Der Eintrag darf IP-Adressen einzelner<br />

Rechner oder ganzer Netzwerke enthalten.<br />

Hier können Angriffe Fail2bans Radar<br />

unterlaufen, falls sie von innen erfolgen<br />

oder ein Angreifer bereits ein Nutzerkonto<br />

übernommen hat. Das backend<br />

(Zeile 6) legt fest, wie Fail2ban Log-Dateien<br />

überwacht. Neben dem traditionellen<br />

polling ist auch der Einsatz des<br />

leistungsfähigeren Gamin û möglich.<br />

Neben der E-Mail-Adresse des Admins<br />

(Zeile 7) und dem zu verwendenden<br />

Mail-Programm (Zeile 8) lassen sich auch<br />

noch Variablen für verschiedene Aktionen<br />

setzen. Den Aktionen wird ein Array<br />

mit Variablen übergeben (Zeile 10), deren<br />

Werte Fail2ban in der korrespondierenden<br />

Konfigurationsdatei in action.d/<br />

einsetzt. Die Entwickler haben hier sogar<br />

an Platzhalter für den Namen des Jails<br />

gedacht (%(__name__)).<br />

Die Abschnitte für einzelne Jails leiten<br />

Sie in eckigen Klammern mit dem Namen<br />

des Jails ein (Zeile 15). Anschließend<br />

folgen Zeilen, in denen Sie festlegen,<br />

ob ein Jail aktiv ist (Zeile 16), welche<br />

Ports betroffen sind (Zeile 17), welche Filterregeln<br />

greifen (Zeile 18) und welche<br />

Log-Datei Fail2ban heranzieht (Zeile 19).<br />

Ferner dürfen Sie hier die Vorgabewerte<br />

etwa für die maximale Anzahl der Fehlversuche<br />

oder die Aktion überschreiben.<br />

Das Testen der Filterregeln bringt teilweise<br />

erhellende Einsichten – wie etwa<br />

die Erkenntnis, dass die standardmäßige<br />

bantime und findtime von 600 Sekunden<br />

nicht immer ausreicht (siehe Abbildung<br />

1 ). Dabei legt findtime fest, in<br />

welchem Zeitraum Angriffe erfolgen<br />

müssen, damit Fail2ban sie als zusammenhängend<br />

betrachtet (Zeile 20).<br />

Ist alles nach Ihren Vorstellungen eingerichtet,<br />

starten Sie Fail2ban mithilfe<br />

des Startskriptes (unter Debian / etc/<br />

init.d/fail2ban) neu oder lesen die<br />

überarbeitete Konfiguration ein. Manuell<br />

aktivieren Sie Fail2ban via fail2banclient<br />

start. Dass eine neue Konfiguration<br />

vorliegt, teilt der Client dem <strong>Server</strong><br />

mit fail2ban‐client reload mit.<br />

Sshguard<br />

Sshguard arbeitet ähnlich wie Fail2ban.<br />

Es untersucht Logs und entscheidet anhand<br />

vorgegebener Regeln, ob ein<br />

Dienst via Firewall eine Zeit lang gesperrt<br />

werden soll. Die Anwendung steht unter<br />

einer BSD-Lizenz. Da sie in C implementiert<br />

wurde, muss sie keinen Interpreter<br />

aufrufen und verbraucht so weniger<br />

Speicher- und Prozessorkapazität.<br />

Mit der „Touchiness“ verfügt Sshguard<br />

zudem über eine interessante Funktion,<br />

welche die Sicherheit erhöht. Verstößt<br />

ein Angreifer das erste Mal gegen eine<br />

Regel, sperrt Sshguard ihn für eine gewisse<br />

Zeit T aus. Mit jedem weiteren festgestellten<br />

Verstoß n erhöht sich die<br />

Sperrfrist auf 2 (n-1)·T. Die Sperrdauer<br />

steigt also exponentiell: Nach dem dritten<br />

festgestellten Verstoß bleibt der Angreifer<br />

viermal so lange gesperrt wie anfangs,<br />

nach dem vierten Angriff achtmal<br />

so lange, und so fort.<br />

Allerdings arbeitet Sshguard weniger<br />

flexibel als Fail2ban und schützt lediglich<br />

den SSH-Daemon sowie mehrere<br />

Mail- und FTP-Dienste. Sie können auch<br />

nicht ohne Weiteres eigene Muster angeben,<br />

auf die Sshguard anschließend<br />

achtet. Die Anwendung verifiziert auf<br />

Wunsch, ob Log-Einträge vom richtigen<br />

Dienst kommen und bietet eine Blacklist<br />

für Hosts, die mehrmals (Voreinstellung:<br />

dreimal) gegen die Regeln verstoßen.<br />

Ebenso ist Whitelisting möglich.<br />

Sshguard einrichten<br />

Wie Fail2ban findet sich auch Sshguard<br />

in den Repositories der gängigen Distributionen<br />

und lässt sich daher mit den<br />

Paketwerkzeugen in Betrieb nehmen.<br />

Die manuelle Installation aus den Quellen<br />

führt über folgenden Dreisatz:<br />

$ ./configure ‐‐with‐firewall= ;; make ;; make install<br />

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

29


Schwerpunkt<br />

Fail2ban vs. Sshguard<br />

Listing 5<br />

Weitere Infos und<br />

interessante Links<br />

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

# neue Chain hinzufügen<br />

iptables ‐N sshguard<br />

# INPUT‐CHAIN an sshguard<br />

weiterleiten<br />

iptables ‐A INPUT ‐j sshguard<br />

Dabei ersetzen Sie den Platzhalter<br />

durch die Bezeichnung der zu<br />

verwendenden Firewall (bei Linux meist<br />

Iptables oder der TCP-Wrapper).<br />

Anders als Fail2ban konfigurieren Sie<br />

Sshguard nicht über Dateien, sondern<br />

parametrisieren es direkt beim Befehlsaufruf.<br />

Vorab gilt es, die Firewall darauf<br />

vorzubereiten, von Sshguard Regeln entgegenzunehmen.<br />

Listing 5 zeigt ein Beispiel<br />

für eine IPv4-Firewall. Möchten Sie<br />

nicht die komplette INPUT-Chain an die<br />

Sshguard-Chain durchreichen, beschränken<br />

Sie die weiterzuleitenden Pakete mit<br />

‐m multiport ‐p tcp ‐‐destinationports<br />

21,22,110,143 auf die von Sshguard<br />

unterstützten Dienste. Da Iptables-<br />

Regeln sich mit jedem Systemstart verflüchtigen,<br />

müssen Sie sie permanent<br />

hinterlegen und beim Booten erneut laden,<br />

etwa mittels iptables‐save und<br />

iptables‐restore.<br />

Iptables arbeitet so, dass stets die erste<br />

passende Regel greift. Das bedeutet,<br />

dass bei einer bereits konfigurierten<br />

Firewall die für Sshguard gedachten Regeln<br />

mit iptables ‐A INPUT ‐j sshguard<br />

ganz am Ende landen und eventuell<br />

nicht wie erwartet wirken. Abhilfe<br />

schafft in diesem Fall der Befehl iptables<br />

‐I INPUT 1 ‐j sshguard, der die<br />

Regel in der INPUT-Chain an der ersten<br />

Stelle platziert. Damit die Chain Sshguard<br />

auch wieder verlässt und weitere<br />

Firewall-Regeln abgearbeitet werden,<br />

sollte auch hier ein iptables ‐A sshguard<br />

‐j RETURN folgen.<br />

Sshguard ab Version 1.5 ordnet jedem<br />

Angriff einen Gefährlichkeitsgrad („dangerousness“)<br />

zu, der in der Vorgabe bei<br />

10 liegt und den es bei Folgeverstößen<br />

aufaddiert. Zwei fehlerhafte Login-Versuche<br />

führen also zu einer Gefährlichkeit<br />

von 20 und so fort. Die Vorgabe für die<br />

Dangerousness definiert die Konstante<br />

DEFAULT_ATTACKS_DANGEROUSNESS in der<br />

Include-Datei sshguard.h des Quellcodes,<br />

per Kommandozeilenparameter<br />

lässt sie sich daher nicht ändern.<br />

Sshguard unterstützt die Logging-Systeme<br />

Syslog, Syslog-ng, Metalog, Multilog<br />

sowie klassische Raw-Log-Dateien.<br />

Auf Linux-<strong>Server</strong>n trifft man am häufigsten<br />

Syslog und Syslog-ng an. Ab Version<br />

1.5 kommt Sshguard auch mit dem<br />

Log Sucker û zurecht, der Log-Dateien<br />

selbstständig überwacht.<br />

In Versionen vor 1.5 müssen Sie Log-<br />

Einträge über eine Pipe an Sshguard weiterreichen.<br />

Um Syslogd dazu zu bewegen,<br />

Sshguard vor v1.5 alle protokollierten<br />

Auth-relevanten Ereignisse mitzuteilen,<br />

bedarf es folgender Anweisung:<br />

auth.info;authpriv.info | /usr/loU<br />

cal/sbin/sshguard<br />

Diese Zeile tragen Sie in der Datei /etc/<br />

syslog.conf oder deren Äquivalent ein,<br />

wie etwa der rsyslog.conf unter Debian.<br />

Für Rechner mit Syslog-ng findet sich<br />

eine Anleitung in der Setup-Sektion der<br />

Sshguard-Dokumentation û. Um Sshguard<br />

letztendlich scharf zu schalten,<br />

genügt folgendes Kommando:<br />

# sshguard ‐l /Pfad/zur/Log‐Datei/U<br />

[‐l /Pfad/zu/weiteren/Log‐DateienU<br />

/] ‐a Gefährlichkeit ‐p Sperrzeit U<br />

‐s Vergesslichkeit<br />

2 Ob Fail2ban und Sshguard wie erwartet funktionieren, finden Sie am schnellsten im<br />

Selbsttest heraus, indem Sie einen Blick auf die Firewall werfen.<br />

Hier definiert ‐l den Pfad zu den Log-<br />

Dateien, ‐a gibt an, wann Sshguard die<br />

Schotten für einen Dienst dicht macht.<br />

Als Grundlage dazu dienen die addierten<br />

Dangerousness-Werte. Bei einem<br />

Wert von 40 (Vorgabe) wären demnach<br />

4 Fehlversuche erlaubt. Bei Versionen<br />

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

07.2013


Schwerpunkt<br />

vor Sshguard 1.5 ist Vorsicht geboten:<br />

Hier entspricht ‐a einer schlichten Zählvariablen,<br />

sodass ein Wert von 40 sehr<br />

viele Fehlversuche erlauben würde.<br />

Der Parameter ‐p teilt Sshguard mit,<br />

wie viele Sekunden es einen attackierenden<br />

Host aussperren soll (Vorgabe: 7 Minuten).<br />

Die „Vergesslichkeit“ hinter ‐s<br />

legt fest, wie viele Sekunden sich Sshguard<br />

fehlerhafte Login-Versuche merkt<br />

– der Standardwert beträgt hier 20 Minuten.<br />

Probiert ein Angreifer in höheren<br />

Intervallen Nutzer/​Passwort-Kombinationen<br />

durch, zählt Sshguard nicht mit<br />

und aktiviert keine Firewall.<br />

Um Nervensägen dauerhaft auszusperren,<br />

die mehr als einmal unangenehm<br />

aufgefallen sind, ergänzen Sie den<br />

Aufruf um den Parameter ‐b [num:]Datei.<br />

Hier legt num fest, nach wie vielen<br />

Attacken Sshguard den Angreifer in die<br />

Blacklist Datei einträgt. Umgekehrt gibt<br />

es eine Whitelist, in der Sie Hosts und<br />

Netzwerke auflisten, deren Fehlversuche<br />

Sshguard ignorieren soll. Hier existiert<br />

allerdings wie bei der entsprechenden<br />

Fail2ban-Funktion die Gefahr, Angriffe<br />

von innen nicht zu erkennen.<br />

Mit ‐f Service‐Code:PID‐File weisen<br />

Sie Sshguard an, die Herkunft von<br />

Log-Meldungen zu überprüfen. Die PID-<br />

Files lassen sich nur in Verbindung mit<br />

Syslog und Syslog-ng validieren. Der<br />

Service-Code identifiziert den fraglichen<br />

Dienst û; hier steht etwa 100 für den<br />

SSH-Daemon, und das PID-File gehört<br />

dem zu überwachenden Service.<br />

Erkennt Sshguard, dass eine Log-Meldung<br />

von einem anderen als dem zu<br />

überwachenden Dienst kam, ignoriert es<br />

sie. Stimmt die PID mit dem Service oder<br />

einem übergeordneten Prozess überein,<br />

wird sie akzeptiert und ausgewertet. Die<br />

Entwickler weisen darauf hin, dass die<br />

Log-Validierung mit Log Sucker momentan<br />

noch nicht richtig funktioniert, und<br />

raten, von der Nutzung abzusehen, bis<br />

eine neue Version veröffentlicht wurde.<br />

Empfinden Sie das Agieren von Sshguard<br />

im Vordergrund als störend, dann<br />

schicken Sie den Prozess gleich nach<br />

dem Start in den Hintergrund, indem Sie<br />

ihm ein abschließendes & mitgeben. Um<br />

den Dienst nicht nach jedem Booten<br />

manuell starten zu müssen, tragen Sie<br />

die Startanweisung in ein Startskript ein,<br />

etwa in /etc/rc.local.<br />

Pförtner testen<br />

Ob Fail2ban oder Sshguard zukünftig<br />

potenzielle Störenfriede zuverlässig abweisen,<br />

können Sie schnell testen: Dazu<br />

genügt es, sich einige Male falsch einzuloggen.<br />

Bereits nach wenigen Fehlversuchen<br />

sollte sich der <strong>Server</strong> tot stellen.<br />

Eine Ausgabe der Iptables-Regeln mit<br />

iptables ‐L sollte die entsprechende<br />

Firewall-Regel anzeigen (Abbildung 2 ).<br />

Fazit<br />

Fail2ban bringt einen größeren Funktionsumfang<br />

mit als Sshguard. Es kann<br />

praktisch jede aus dem Internet erreichbare<br />

Anwendung schützen, die Log-Dateien<br />

schreibt. Zudem nimmt es bei Angriffen<br />

jede Aktion vor, die Sie definieren.<br />

Über die Paketverwaltung einer Distribution<br />

installiert, bietet Fail2ban meist<br />

bereits eine gute Basis mit zahlreichen<br />

Filtern, Aktionen und Jails.<br />

Sshguard beherrscht nur die bereits<br />

mit einkompilierten Filter, eigene Regeln<br />

kann man hier nicht ohne Weiteres hinzufügen.<br />

Andererseits müssen Sie sich<br />

hier aber auch nicht mit regulären Ausdrücken<br />

plagen: Sie bringen den Dienst<br />

in Windeseile und mit nur wenigen Tastenanschlägen<br />

in Stellung und lassen<br />

ihn dann seines Amtes walten. Bei der<br />

Touchiness handelt es sich um ein nettes<br />

Feature, das hartnäckige Fieslinge<br />

schnell ins Aus schießt.<br />

Beide Anwendungen bieten ein<br />

White listing, mit dem Sie bestimmten<br />

Hosts oder Netzen einen Freibrief ausstellen.<br />

Erfolgt jedoch ein Angriff von innen<br />

oder wurde ein als vertrauenswürdig<br />

eingestufter Host gekapert, kann die<br />

Whitelist nach hinten losgehen.<br />

Sowohl Fail2ban als auch Sshguard<br />

verrichten letztlich die zugedachten Aufgaben<br />

tadellos und zuverlässig, jedoch<br />

kann weder das eine noch das andere<br />

Programm eine Firewall ersetzen. Beide<br />

ergänzen deren Wirkung nur um eine<br />

zusätzliche Schutzfunktion. (jlu) n<br />

Neueste HP Gen8 <strong>Server</strong><br />

Generation<br />

mit 1.000 MBit Full-Flatrate<br />

NEU<br />

HP Professional S 2.0<br />

Eigener dedicated <strong>Server</strong><br />

<strong>Server</strong><br />

CPU<br />

Leistung<br />

RAM<br />

Festplatten (7.200 rpm)<br />

KVM over IP per iLO<br />

Anbindung<br />

IPv4 Adresse Inkl.<br />

IPv6 Subnetz (/64) Inkl.<br />

Betriebssysteme<br />

Extras<br />

Vertragslaufzeit<br />

Monatsgrundgebühr<br />

Einrichtungsgebühr<br />

Neu!<br />

Neu!<br />

HP ProLiant ML310e Gen8<br />

Intel XEON E3-1230 v2<br />

4 x 3,3 GHz Inkl. HT<br />

16 GB DDR3 ECC<br />

2 x 1 TB Enterprise-Edition<br />

1.000 MBit Full-Flatrate<br />

Debian 6.0, CentOS 6,<br />

openSUSE 12.1,<br />

Ubuntu 12.04,<br />

FreeBSD 9 und<br />

Neu! Windows 2012<br />

(19,99€ Aufpreis im Monat)<br />

100 GB Backup-Speicher,<br />

Monitoring, Resetund<br />

Rescue-System<br />

1 Monat<br />

69,99 €<br />

0,00 €<br />

Kostenlos vorinstallierte<br />

Virtualisierungs-Lösung mit<br />

vSphere 5.1<br />

Jetzt informieren & bestellen<br />

Tel.: 0211 / 545 957 - 330 www.webtropia.com<br />

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

Windows <strong>Server</strong> 2012 powered by 31


Schwerpunkt<br />

NST 18<br />

Komplexe Netzwerke in<br />

heterogenen Umgebungen<br />

© Lclettuce, sxc.hu<br />

aufzubauen und abzusichern<br />

erfordert einiges an<br />

Fachwissen. NST 18 greift<br />

Ihnen dabei tatkräftig unter<br />

die Arme. Erik Bärwaldt<br />

Linux zählt aufgrund seiner ausgesprochen<br />

guten Netzwerkfähigkeiten inzwischen<br />

in vielen LANs zur Grundausstattung.<br />

Doch vor allem in heterogenen<br />

Umgebungen machen viele, oft durch<br />

andere Betriebssysteme bedingte<br />

Sicher heitslücken dem Administrator<br />

das Leben schwer. Darüber hinaus bergen<br />

Fehler in der Netzwerkkonfiguration<br />

und der Leichtsinnigkeit mancher<br />

Anwender die Gefahr, das gesamte Netz<br />

zu kompromittieren. Die Linux-Distribution<br />

NST („Network Security Toolkit“,<br />

http:// www. networksecuritytoolkit. org)<br />

versucht dem Administrator mit einer<br />

stattlichen Anzahl freier Programme<br />

beim Identifizieren von Schwächen im<br />

Netzwerk unter die Arme zu greifen.<br />

Grafik oder Konsole?<br />

Nach dem Brennen des rund 1,8 GByte<br />

großen ISO-Images auf DVD bootet NST<br />

Readme<br />

Je komplexer ein Intranet ausfällt und je<br />

mehr Dienste aktiv sind, desto mehr Sicherheitslücken<br />

drohen. NST hilft dabei, das Netz<br />

sinnvoll abzusichern. Dabei bietet die Security-Distribution<br />

so viele Informationen, dass<br />

selbst Einsteiger diese Aufgabe meistern.<br />

Netzwerkanalyse und Monitoring<br />

mit dem Network Security Toolkit<br />

Spurensuche<br />

in den Live-Betrieb. Anders als die meisten<br />

Distributionen zur Administration<br />

und Pflege des Netzwerks startet das auf<br />

Fedora 18 basierende NST 18 nicht zwingend<br />

im Textmodus. Stattdessen bietet<br />

sie im Bootmenü eine Fülle von Optionen<br />

für den Start an, darunter auch ein grafisches<br />

Interface in Gestalt von Gnome 3.<br />

Nach dem eher gemächlich erfolgenden<br />

Hochfahren präsentiert sich Gnome<br />

aufgeräumt und ohne überflüssige optische<br />

Gimmicks. Zunächst sollten Sie aus<br />

Sicherheitsgründen über das Icon Set<br />

NST System Passwords eigene Passwörter<br />

vergeben. Für die dauerhafte Installation<br />

des Systems auf der Festplatte nutzen Sie<br />

dagegen das Symbol Install NST To Hard<br />

Drive, das mithilfe des Installers Anaconda<br />

in wenigen Schritten die Distribution<br />

auf die Platte packt.<br />

Software<br />

Nach einem erneuten Start fallen auf den<br />

ersten Blick kaum Unterschiede zu den<br />

großen Allround-Distributionen auf: Im<br />

Gnome-Menü Applications finden Sie die<br />

meisten gewohnten Untergruppen. Die<br />

anderen Untermenüs verweisen dagegen<br />

nur auf relativ wenige Programme,<br />

bekannte Applikationen wie Gimp oder<br />

LibreOffice fehlen. In den Gruppen Acces-<br />

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

07.2013


NST 18<br />

Schwerpunkt<br />

Der größte Teil der in NST 18 vorhandenen<br />

Tools setzt einen laufenden Webserver<br />

voraus, da Sie viele Dienste erst über<br />

die Weboberfläche erreichen. Die Distribution<br />

startet diese von Haus aus nicht;<br />

Sie aktivieren sie manuell im Terminal<br />

durch Eingabe des Befehls systemctl<br />

start httpd.service als Administrator.<br />

Anschließend öffnen Sie Firefox, der<br />

Sie automatisch mit dem Webserver verbindet.<br />

Zum Betreten der Startseite ist<br />

eine Authentifizierung notwendig: Hier<br />

melden Sie sich mit dem Benutzernamen<br />

root und dem Passwort nst2003 an.<br />

Anschließend gelangen Sie zu einer optisch<br />

sehr rustikal wirkenden Seite 1 .<br />

Diese von den Entwicklern WUI („Web<br />

User Interface“) genannte Oberfläche<br />

bietet neben allgemeinen Informationen<br />

am oberen Rand eine horizontal angeordnete<br />

Menüleiste, in der Sie alle versories,<br />

Internet, System Tools und Other<br />

tummeln sich dagegen zahlreiche Programme,<br />

die der Wartung und Pflege<br />

eines Netzwerks dienen.<br />

Zunächst gilt es, das System von der<br />

englischen auf die deutsche Sprache zu<br />

lokalisieren. Sie klicken dazu im Panel<br />

von Gnome oben rechts auf den angemeldeten<br />

Benutzer und wählen im aufgeklappten<br />

Menü den oberen Eintrag<br />

System Settings. Anschließend ändern Sie<br />

in den Menüs Region & Language sowie<br />

Keyboard die entsprechenden Einträge.<br />

Nach Schließen des Fensters steht nun<br />

sofort das deutsche Tastaturlayout bereit,<br />

womit eine ärgerliche Fehlerquelle<br />

bei der Eingabe beseitigt ist. Deutschsprachige<br />

Menüs erhalten Sie nach einem<br />

erneuten Warmstart.<br />

Netzwerk<br />

Für die Administration stellt NST vor allem<br />

im Menü Internet eine stattliche Anzahl<br />

entsprechender freier Programme<br />

bereit: So finden Sie hier beispielsweise<br />

Werkzeuge für die Analyse wie Wireshark,<br />

Zenmap, Wifi Radar und den Net<br />

Activity Viewer, aber auch den Angry IP<br />

Scanner sowie Etherape und das Sniffing-Tool<br />

Ettercap.<br />

Die Konfiguration der Firewall nehmen<br />

Sie mithilfe des Programms Firewall Builder<br />

oder entsprechender grafischer Tools<br />

im Menü Other vor. Hier finden Sie zudem<br />

diverse Optionen für unterschiedliche<br />

Dienste sowie die Software Déjà<br />

Dup Backup für die Datensicherung.<br />

Weboberfläche<br />

NST 18-4509 (32 Bit Live)<br />

schiedenen Untergruppen erneut gelistet<br />

finden. NST 18 bietet dabei im Webbrowser<br />

entsprechend angepasste<br />

Oberflächen der jeweiligen Programme.<br />

Neben Software für die Konfiguration<br />

und Administration des Intranets und<br />

der <strong>Server</strong>dienste befinden sich viele<br />

Applikationen zur Systempflege im Lieferumfang.<br />

Teilweise geht deren Leistungsumfang<br />

deutlich über jenen kleinerer<br />

Programme hinaus 2 .<br />

Insbesondere die Untermenüs System,<br />

Network und Security bieten eine Fülle<br />

von Werkzeugen, wobei aufgrund der<br />

stets gleichen Bedienoberfläche im<br />

Browser selbst bei unbekannteren Programmen<br />

nahezu kein Aufwand beim<br />

Einarbeiten anfällt. Zu jeder Applikation<br />

blendet NST auf der jeweiligen Startseite<br />

zudem kurze Erläuterungen ein und verweist<br />

auf zusätzliche Links, die Sie an der<br />

blauen, kursiven Schrift erkennen.<br />

Um die jeweiligen Optionen zu verwenden,<br />

nutzen Sie die kleinen blauen<br />

Schaltflächen auf der Arbeitsfläche, zum<br />

Zurückblättern dagegen die entsprechenden<br />

Schaltflächen des Browsers.<br />

Geolocation<br />

1 Die Weboberfläche des Network Security Toolkits wirkt optisch recht altbacken,<br />

erweist sich jedoch bei genauerem Hinsehen als funktionell auf der Höhe der Zeit.<br />

Eines der Highlights besteht in der Möglichkeit,<br />

IP-Adressen geografisch zuzuordnen.<br />

Dazu bietet NST 18 unter dem<br />

Begriff „Geolocation“ verschiedene Tools<br />

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

33


Schwerpunkt<br />

NST 18<br />

rein konsolenbasierte Software handelt,<br />

blendet NST im Browser ein Terminalfenster<br />

mit der entsprechenden Ausgabe<br />

ein. Auf der Kommandozeile einzugebende<br />

Befehle starten bereits mit sinnvollen<br />

Parametern, sodass Sie sich nur in<br />

Ausnahmefällen um die genaue Syntax<br />

zu kümmern brauchen.<br />

Bodyguard<br />

2 Über speziell für die Weboberfläche angepasste Bedienoberflächen haben Sie im<br />

Webbrowser alle wichtigen Werkzeuge zum Warten des Netzwerks zur Hand.<br />

an, um das Ergebnis zu visualisieren. Sie<br />

erreichen den Dienst über Security | Geolocation<br />

im Webbrowser. Er erlaubt, beliebige<br />

IP-Adressen auf deren geografische<br />

Herkunft zu überprüfen, wobei NST<br />

hierbei auf die Hilfe externe Datenbanken<br />

und Dienste zurückgreift 3 .<br />

Diese Dienste kommen sowohl mit<br />

IPv4 als auch mit IPv6 zurecht. Sofern es<br />

sich bei den einzelnen Programmen um<br />

3 Optisch schön aufbereitet ordnet NST IP-Adressen ihrer geografischen Lage zu.<br />

NST eignet sich aufgrund der Software<br />

von Haus aus nicht nur als Firewall oder<br />

für forensische Zwecke, sondern wegen<br />

der verschiedenen Scanner und Hilfsprogramme<br />

darüber hinaus zum Aufbau eines<br />

komplexen Intranets, wobei die Konzeption<br />

einer DMZ oder das Aufteilen in<br />

mehrere Netze die Distribution kaum<br />

vor Probleme stellt.<br />

Zudem sind für den Einsatz in heterogenen<br />

Umgebungen unterschiedliche<br />

Scanner integriert, die es erlauben, NST<br />

als Gateway für Windows-basierte Arbeitsstationen<br />

einzusetzen und dabei<br />

deren Datenverkehr zu überwachen.<br />

Fazit<br />

Das Network Security Toolkit glänzt vor<br />

allem durch die Vielzahl an Programmen<br />

und Diensten, die Sie bei anderen Distributionen<br />

zum größten Teil einzeln und<br />

mühsam nachinstallieren müssen. Die<br />

meist von der Kommandozeile aus zu<br />

startenden Applikationen bieten bereits<br />

eine sinnvolle Konfiguration. Zu den<br />

Highlights gehören das webbasierte Interface,<br />

das für die meisten Anwendungen<br />

eine einheitliche Bedienoberfläche<br />

bietet, sowie die Geolocation-Software,<br />

die IP-Adressen lokal zuordnet.<br />

Aufgrund vieler Anleitungen zu den<br />

jeweiligen Programmen, die im Webbrowser<br />

im unteren Fensterbereich verlinkt<br />

sind, erhalten Sie zudem schnell<br />

und unkompliziert nähere Informationen.<br />

Einziges Manko ist die fehlende<br />

deutsche Lokalisierung der im Webbrowser<br />

genutzten Oberfläche. Da jedoch<br />

die meisten Anzeigen selbsterklärend<br />

ausfallen, dürften die in englischer<br />

Sprache vorhandenen Erläuterungen in<br />

der Regel ausreichen. (agr) n<br />

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

07.2013


ADMIN und Linux-Magazin<br />

am Apple Newsstand!<br />

Jetzt NEU!<br />

Jetzt GRATIS<br />

testen!<br />

Alternativ finden Sie alle Titel der Medialinx AG auch bei:<br />

Pubbles, PagePlace, iKiosk, OnlineKiosk und Leserauskunft


dedizierter<br />

1Gbit/s<br />

Port


Praxis<br />

Avidemux<br />

Videos schneiden und konvertieren mit Avidemux<br />

In einem durch<br />

© Stratsam, sxc.hu<br />

Wer digitale Videos platzsparend<br />

abspeichern will,<br />

greift einfach zu Avidemux<br />

und konvertiert Filme mit<br />

wenigen Mausklicks.<br />

Peter Kreußel<br />

Readme<br />

Zahlreiche inzwischen ausgereifte Video-<br />

Editoren kaufen dem Klassiker Avidemux in<br />

Sachen Schnitt und Effekte den Schneid ab.<br />

Doch für platzsparendes Komprimieren<br />

oder Konvertieren in spezielle Formate für<br />

Mobilgeräte bleibt das Programm ungeschlagen<br />

praktisch.<br />

Der Video-Editor Avidemux û stammt<br />

aus einer anderen Zeit als die heute vorherrschenden<br />

mehrspurigen Schnittprogramme.<br />

Von deren nichtlinearem Konzept<br />

profitieren zwar der Schnitt und das<br />

kreative Gestalten von Effekten. Wer jedoch<br />

Videos bloß an den Enden beschneiden,<br />

in ein anderes Format konvertieren<br />

oder Effekte auf den ganzen<br />

Clip anwenden möchte, dem steht das<br />

aufwendige Prinzip moderner Mehrspureditoren<br />

nur im Weg. Solche einfachen<br />

Aufgaben gehen mit dem linear und einspurig<br />

ausgerichteten Avidemux 1<br />

leichter von der Hand.<br />

Zudem kennt Avidemux mehr Videoformate<br />

und Codecs als die meisten Spezialisten<br />

für Schnitt und Effekte. Wer das<br />

Windows-Urgestein Virtualdub û kennt,<br />

fühlt sich in dem ebenfalls schon seit<br />

2002 auf der Plattform Sourceforge aktiven<br />

Linux-Programm ohnehin sofort zu<br />

Hause. Doch der Neueinstieg fällt in diesem<br />

Fall leichter als bei den wesentlich<br />

komplexeren, nichtlinear konzipierten<br />

Anwendungen aus dem Bereich.<br />

Zum Navigieren durch das Video muss<br />

statt einer Zeitleiste mit aufgetragenen<br />

Einheiten ein schlichter Schieberegler im<br />

unteren Drittel des Fensters genügen.<br />

Allerdings zeigt das Programm die aktuelle<br />

Position zusätzlich in einem Zeitfeld<br />

im Format Stunden:Minuten:Sekunden:<br />

Hunderstel an. Nach einer manuellen Eingabe<br />

in dieses Feld springt die Software<br />

zur passenden Stelle.<br />

Rechts vom Schieberegler für die Position<br />

bildet das Programm ein Jogwheel<br />

nach (Abbildung 1 , rechts), wie es professionelle<br />

Schneidetische und manche<br />

Videorekorder besitzen. Damit spulen<br />

Sie in variabler Geschwindigkeit vor oder<br />

zurück, je nachdem wie weit Sie die darüber<br />

gedrückt gehaltene Maus nach<br />

rechts oder links ziehen. Dieses Verfahren<br />

hilft beim Suchen einer Szene in längeren<br />

Videos.<br />

Für eine feinere Navigation springen<br />

[Pfeil links] und [Pfeil rechts] um einen<br />

Frame sowie [Pfeil oben] und [Pfeil unten]<br />

um einen Keyframe – allerdings nur,<br />

wenn der Zeitschieberegler im Avidemux-<br />

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

07.2013


Avidemux<br />

Praxis<br />

Avidemux 2.6<br />

LU/avidemux/<br />

1 Die Funktionen zum Schneiden und die Menge der Effekte des linearen Editors Avidemux<br />

fallen im Vergleich zu nichtlinearen Mehrspureditoren eher mager aus. Doch dafür<br />

kennt das Programm viele Formate und Codecs und konvertiert komfortabel und zügig.<br />

Keyframe: Videos enthalten in der Regel nur<br />

bei sogenannten Keyframes die volle Bildinformation.<br />

Zwischen diesen Punkten speichern<br />

die Geräte nur ein Differenzabbild.<br />

Ein Schnitt ist bei vielen Applikationen nur<br />

an den Keyframes erlaubt.<br />

Fenster den Focus hat. Ein Druck auf die<br />

Leertaste startet und beendet die Wiedergabe<br />

des Videos.<br />

Unter dem Zeit-Schieberegler gibt es<br />

noch Schaltflächen, die den nächsten<br />

dunklen Frame suchen, wie er oft zu Beginn<br />

und Ende eines Werbeblocks auftritt.<br />

[Pos 1] und [Ende] springen zum<br />

Start und Ende des geladenen Clips.<br />

exportieren. Das geht wegen der komfortablen<br />

Funktionen zum Spulen flott<br />

von der Hand. Im zweiter Arbeitsschritt<br />

fügen Sie die Schnipsel dann mit Datei |<br />

Hinzufügen oder über [Strg]+[H] zu einem<br />

Clip zusammen.<br />

Dennoch bleibt anzumerken: Für Videoschnitt<br />

ist Avidemux nicht erste Wahl –<br />

schon alleine deswegen, weil es nur<br />

Schnipsel mit gleicher Auflösung und<br />

Frame-Rate zusammenfügt. Das macht<br />

aber nichts, wenn die Daten ohnehin aus<br />

einer Quelle stammen.<br />

Das Exportieren von Ausschnitten<br />

geht meist innerhalb von Sekunden und<br />

selbst bei langen Clips in wenigen Minuten<br />

über die Bühne, wenn für Video und<br />

Audio der Modus kopieren aktiv ist (Ab­<br />

Flickwerk<br />

Mithilfe der Schaltflächen A und B oder<br />

über [A] und [B] (Abbildung 1 , Mitte<br />

unten) legen Sie Beginn und Ende der<br />

Marke fest, die nur aus einem zusammenhängenden<br />

Block bestehen darf. Ist<br />

beim Speichern eine Auswahl aktiv, so<br />

beschneidet die Software das Video entsprechend.<br />

Ausgewählte Frames schneiden<br />

Sie mit [Strg]+[X] aus und fügen sie<br />

mit [Strg]+[V] an anderer Stelle ein.<br />

Da der Editor jedoch keine Möglichkeit<br />

bietet, um diese Operation rückgängig<br />

zu machen, empfiehlt es sich, zunächst<br />

alle gewünschten Ausschnitte zu<br />

2 Avidemux bringt – übersichtlich angeordnet – viele leistungsstarke Filter mit, über<br />

die Sie in vielen Fällen die Qualität der Videos nachträglich verbessern.<br />

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

39


Praxis<br />

Avidemux<br />

bildung 1 , Spureinstellungen).<br />

In diesem Fall<br />

kopiert die Software die<br />

Streams für Video und Audio<br />

aus der Datei, statt sie<br />

zu neu zu komprimieren.<br />

Auf diese Weise sparen Sie<br />

einen Großteil der sonst<br />

fälligen Rechenarbeit.<br />

Möchten Sie die Teile eines Films neu<br />

komprimieren oder diesem Effekte hinzufügen,<br />

dann ist der letzte Arbeitsschritt,<br />

der ohne Benutzereingriff durchläuft,<br />

der richtige Platz dafür. Eine sogenannte<br />

Jobliste (Datei | Zur Jobliste hinzufügen<br />

und Datei | Jobliste anzeigen) arbeitet<br />

sogar mehrere Projekte ohne weitere<br />

Unterbrechung ab.<br />

4 Die Dialoge der Filter im Video-Editor Avidemux fallen<br />

durchweg übersichtlich und komfortabel aus.<br />

3 Beispiele für Avidemux-Filter: Kamm-Artefakte aus Fernsehaufnahmen<br />

entfernen (Deinterlacing), Helligkeit und Farben anpassen sowie<br />

Skalieren des Videos mit dem hochwertigen Lanczos-Filter.<br />

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

07.2013


Avidemux<br />

Praxis<br />

Zu den Stärken von Avidemux zählt,<br />

dass es falls nötig einzelne Frames automatisch<br />

neu komprimiert, sodass Schnitte<br />

nicht mehr an Keyframes gebunden<br />

bleiben. Außerdem punktet das Programm<br />

mit zahlreichen qualitativ hochwertigen<br />

Filtern für die Retusche 2 . Anders<br />

als bei vielen anderen Projekten<br />

existiert zu den Einstellungen eine ordentliche<br />

Dokumentation û.<br />

Deinterlacer<br />

Die große Auswahl beginnt bei den<br />

Deinterlacern: Nach wie vor setzt sich<br />

Videomaterial häufig aus zwei zeitlich<br />

versetzt übertragenen Halbbildern (gerade<br />

und ungerade Zeilen) zusammen.<br />

Diese verschmelzen nur auf Wiedergabegeräten<br />

mit der Auflösung und Bildwiederholrate,<br />

für die das Video bestimmt ist<br />

– auf dem Computer also praktisch nie.<br />

Das Deinterlacing, das die CPU<br />

schwachbrüstiger Rechner wie Netbooks<br />

bei der direkten Wiedergabe teilweise<br />

heute noch überfordert, mindert die<br />

sonst sichtbaren Kamm-Artefakte. Hochwertiges<br />

Deinterlacing, wie es zum Beispiel<br />

der Yadif-Filter in Avidemux erzielt<br />

3 , ist in diesem Fall nur zu haben,<br />

wenn Sie es bereits beim Schneiden<br />

oder Rekomprimieren anwenden, statt<br />

es dem Videoplayer zu überlassen.<br />

Außerdem hat Avidemux mit Größe<br />

Ändern (Mplayer) einen leistungsstarken<br />

Filter zum Skalieren an Bord. Arbeiten<br />

Sie mit dem rechenintensiven Verfahren<br />

Lanczos3, dann wirken Videos mit geringer<br />

Auflösung nach dem Hochskalieren<br />

(Abbildung 4 , oben) auf großen Schirmen<br />

deutlich schärfer als zuvor. Fehlende<br />

Bilddetails zaubert der Filter freilich<br />

nicht herbei.<br />

Die Qualität analoger Fernsehaufnahmen<br />

oder von Videos, die mit rauschenden<br />

Bildsensoren aufgenommen wurden,<br />

steigern Sie in einigen Fällen mit<br />

Rauschfiltern. Denoise3d oder dessen auf<br />

Kosten der Rechenzeit noch einmal verbesserte<br />

Variante Hqdn3d vergleichen<br />

mehrere aufeinander folgende Einzelbilder,<br />

ziehen also die Zeit quasi als dritte<br />

Bilddimension hinzu. Meist fluktuiert das<br />

Schneetreiben des Rauschens nämlich<br />

schneller als der Rest des Videos, daher<br />

trennen es 3D-Filter wirkungsvoll ab.<br />

Weichzeichner vernichten stets Bilddetails,<br />

doch allzu verrauschte Videos<br />

retten Sie manchmal noch durch eine<br />

Gauss’sche Glättung. Mehrere Filter zum<br />

Schärfen, die den Effekt einer schlecht<br />

fokussierten Optik abmildern, liefert<br />

Avidemux gleich mit. Dazu gibt es noch<br />

zahlreiche Algorithmen zum Optimieren<br />

von Farbe, Helligkeit und Kontrast.<br />

Es liegt in der Natur der Sache, dass<br />

die Filter funktionieren, wenn Avidemux<br />

Video- oder Audio-Daten entpackt und<br />

neu komprimiert, also nicht, wenn Sie<br />

die Spuren kopieren.<br />

Schwarz-weiß<br />

Der Button Teilstück beschränkt die Effekte<br />

eines Filters auf einen Ausschnitt<br />

des Videos. Weiche Übergänge erhalten<br />

Sie damit jedoch nicht. Zum Anwenden<br />

mehrerer Effekte auf den gleichen Abschnitt<br />

gilt es zudem, sich die Nummern<br />

des Start- und End-Frames zu merken.<br />

Beim gezielten Bearbeiten von Teilbereichen<br />

vermag Avidemux also wie<br />

schon beim Schnitt nicht mit spurbasierten<br />

Editoren zu konkurrieren. Diese erlauben<br />

es, Effekte einem bestimmten<br />

Ausschnitt komfortabel per Drag & Drop<br />

hinzuzufügen. Auch fällt der Umfang an<br />

Effekten in Avidemux im Gegensatz zu<br />

den Filtern zu Korrektur spärlich aus.<br />

Eine leistungsfähige Filtervorschau<br />

gibt es aber. Sie zeigt<br />

die Wirkung des in der Liste<br />

5 Mithilfe der <strong>Vorschau</strong><br />

kontrollieren Sie jeweils die<br />

Wirkung einzelner oder aller<br />

angewandten Effekte auf ein<br />

Stück Videomaterial.<br />

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

41


Praxis<br />

Avidemux<br />

aktivierte Filter markierten und aller vorausgehenden<br />

Effekte 5 ). Die Software<br />

ermöglicht es, die Filter innerhalb der<br />

Kette zu verschieben. So zeigt sie die<br />

Wirkung der jeweils gewählten<br />

Kombina tion. Ein Schieberegler legt die<br />

Position der <strong>Vorschau</strong> im Video fest.<br />

Da es sich aber um einen blanken<br />

Regler ohne Zeiteinheiten handelt, fällt<br />

es schwer, eine bestimmte Szene zu finden.<br />

Allerdings bietet die Software die<br />

Möglichkeit, in der Hauptansicht ein<br />

zweites Videofenster einzublenden, das<br />

die Wirkung aller Effekte dem Original<br />

gegenüberstellt.<br />

Neu verpackt<br />

Zu den Spezialitäten von Avidemux gehört<br />

jedoch nach wie vor das Rekomprimieren<br />

und die Umwandeln in andere<br />

Dateiformate. Das Programm liest und<br />

schreibt die gängigen Formate AVI,<br />

MPEG, OGM, MKV (Matroska) sowie<br />

Flash- und Windows-ASF-Videos. Es erzeugt<br />

auch PS-Dateien für DVDs und TS-<br />

Streaming-Dateien, außerdem MP4-Dateien<br />

für mobile Geräte und liest die von<br />

der Videorekorder-Software MythTV<br />

beim analogen Empfang erzeugten<br />

Nuppelvideo-Dateien sowie nummerierte<br />

Folgen von Einzelbildern ein.<br />

Avidemux unterstützt zudem alle<br />

Codecs aus Ffmpeg (MPEG-1/​2, HuffYUV,<br />

FFV1, LavC MPEG4). Es nutzt allerdings<br />

nicht die auf dem System installierte<br />

Ffmpeg-Version, sodass sich weder<br />

lizenzrechtlich bedingte Beschneidungen<br />

noch Aktualisierungen auswirken.<br />

Zusätzlich bindet es die externen Libraries<br />

x264 und Xvid ein, die erst den<br />

vollen Funktionsumfang ermöglichen.<br />

Anwender mit einem OpenSuse-System<br />

brauchen dafür das passende Packman-<br />

Repository û. Als Audio-Codecs stehen<br />

Vorbis, FAAC, MP2, AC3, MP3 sowie unkomprimiertes<br />

Wave-Audio bereit.<br />

Video-Dateien fallen generell so groß<br />

aus, dass der Gewinn durch das Komprimieren<br />

selbst bei den aktuellen Größen<br />

von Festplatten noch eine Rolle spielt.<br />

So schrumpfen die auch heute noch mit<br />

dem MPEG-2-Verfahren aus den 90er-<br />

Jahren kodierten DVDs nach dem Rekomprimieren<br />

mit H264 bei in etwa gleicher<br />

Bildqualität um rund die Hälfte.<br />

Der passende Dialog verbirgt sich in<br />

Avidemux hinter der Videospur-Option<br />

MPEG-4 AVC. Wählen Sie diese statt der<br />

beim Start des Programms aktiven Einstellung<br />

kopieren. Ein Klick auf Konfigurieren<br />

unter der Codec-Auswahl öffnet<br />

die Einstellungen mit auf den ersten<br />

Blick abschreckend vielen Reitern 6 .<br />

Zum Glück fasst der Reiter Allgemein<br />

die wenigen wichtigen Einstellungen zusammen.<br />

Für alle anderen ist Expertenwissen<br />

zu den beim Komprimieren genutzten<br />

Algorithmen gefragt. Die Einstellungen<br />

speichern Sie bei Bedarf in<br />

einem Profil, das die Software dann am<br />

oberen Rand des Dialogs anzeigt.<br />

Doppelt genäht<br />

6 Avidemux eignet sich hervorragend zum Komprimieren von DVD-Videomaterial mit<br />

dem H264-Codec. Dieser spart bei vergleichbarer Optik etwa 50 Prozent Platz ein.<br />

Entscheiden Sie sich zuerst für einen<br />

Kodiermodus. Es gibt zwei Verfahren, um<br />

das Verhältnis von Qualität und Dateigröße<br />

einzustellen. Das erste arbeitet<br />

mit der Bitrate pro Sekunde. Die Größe<br />

des komprimierten Videos ergibt sich<br />

einfach aus Bitrate mal Dauer. Allerdings<br />

fehlt in dieser Kalkulation die Audio-<br />

Spur. Zudem handelt es sich bei dem<br />

Wert für die Bitrate nur um eine Näherung:<br />

Der Codec über- oder unterschreitet<br />

sie je nach Detailreichtum oder Rauschen<br />

im Material teilweise deutlich.<br />

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

07.2013


Avidemux<br />

Praxis<br />

Alternativ regeln Sie die Qualität beim<br />

Komprimieren über die Quantisierung,<br />

einer abstrakten Maßzahl für die Stärke<br />

beim Komprimieren. Sie zielt weniger<br />

auf eine Größenvorgabe als auf konstante<br />

Qualität ab. Normal sind für heutige<br />

Ansprüche Faktoren um 25.<br />

Bei einem Wert unter 20 steigt die<br />

Größe der Datei erheblich, doch eine<br />

bessere Qualität erzielen Sie auf diese<br />

Weise nicht. Bei Faktoren über 30 treten<br />

meist Blockartefakte auf. Bei Faktoren<br />

über 40 schließlich sinkt die Qualität derart,<br />

dass es unmöglich ist, humanoide<br />

Lebensformen zu unterscheiden.<br />

Außer zwischen bitraten- und quantisierungsbasierter<br />

Komprimierung unterscheiden<br />

sich die Kodiermodi noch nach<br />

der Zahl der Durchläufe: Verfahren mit<br />

zwei Durchläufen dauern fast doppelt so<br />

lang, liefern aber ein deutlich besseres<br />

Verhältnis von Dateigröße und Qualität.<br />

Der H.264-Codec bietet für zwei Durchgänge<br />

die Wahl zwischen bitratenbasierter<br />

Komprimierung und direkter Eingabe<br />

der gewünschten Dateigröße.<br />

Auf die Audio-Spur hat das keine Auswirkung.<br />

Daher fließt diese nicht in die<br />

Rechnung ein. Abhilfe schafft der Kalkulator<br />

im Menü Werkzeuge, den Sie alternativ<br />

über [F7] erreichen. Er errechnet<br />

die Größe der Audio-Spur und subtrahiert<br />

diese von der Dateigröße.<br />

Der Programmautor verspricht, dass mit<br />

der neuen Major-Version die früher des<br />

Öfteren aufgetretenen Probleme beim<br />

Synchronisieren von Audio und Video<br />

der Vergangenheit angehören. Die GUI<br />

verändert sich dagegen kaum.<br />

Die Pakete heißen nun avidemux3_<br />

qt4, avidemux3_gkt und avidemux3_cli<br />

statt wie bisher avidemux2 plus Suffix.<br />

Das erlaubt es, Versionen der Serien 2.5<br />

und 2.6 parallel zu installieren.<br />

Fazit<br />

Avidemux‘ Stärken liegen im Konvertieren<br />

von Formaten sowie im Rekomprimieren,<br />

wo es lästige Zwischenschritte<br />

erspart. Schnitte in nicht zu großer Anzahl<br />

gelingen ebenfalls mühelos. Außerdem<br />

bringt die Software viele Effekte für<br />

die Retusche mit, die allerdings oft unkomfortabel<br />

im Einsatz sind.<br />

Trotz seines reifen Alters leistet sich<br />

die Software ab und zu Abstürze – allerdings<br />

in der Regel seltener als bei den<br />

ebenfalls nicht gerade bombenstabilen<br />

Konkurrenzprogrammen. (agr) n<br />

Nuppelvideo: Ein Containerformat für Videodateien,<br />

das unter anderem bei MythTV zum<br />

Einsatz kommt. Darin legt die Software Videos<br />

im Format MPEG-4 oder MJPEG ab.<br />

Weitere Infos und<br />

interessante Links<br />

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

Kompaktpaket<br />

Zur erwähnen bleibt noch, dass Avidemux<br />

in einer inzwischen funktional identischen<br />

Qt- und GTK-Fassung vorliegt.<br />

Die Distributionen liefern in der Regel<br />

Pakete für beide Frontends mit. Viele<br />

Funktionen stehen außerdem über die<br />

Kommandozeile bereit û, praktisch alle<br />

über eine Javascript-Schnittstelle û.<br />

Am 9. Mai 2013 erschien mit Avidemux<br />

2.6.4 die erste stabile Version der<br />

Serie 2.6 û. Ein besonderes Plus des<br />

Programmes liegt in dem im Quellcode<br />

mitgelieferten Skript, das die Software<br />

vollautomatisch kompiliert und in ein<br />

RPM- oder Debian-Paket verpackt û.<br />

Version 2.6 basiert auf einem neuen<br />

Kern, behält die bekannte Oberfläche<br />

aber mit wenigen Änderungen bei 7 .<br />

7 Die endlich stabile Serie 2.6 des Video-Editors Avidemux verändert fast nichts an der<br />

Oberfläche, setzt aber auf einen neuen Kern auf, der beim Synchronisieren von Audiound<br />

Video-Spur nun nach Aussage des Entwicklers wesentlich zuverlässiger arbeitet.<br />

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

43


Praxis<br />

Alice 3.1<br />

Visuell programmieren mit Alice<br />

Findet Nemo!<br />

© Cbpix, 123RF<br />

Sie können Ihren Desktop<br />

bedienen? Dann können Sie<br />

auch programmieren: Alles<br />

was Sie dazu brauchen, ist<br />

die Maus, die IDE Alice und<br />

etwas Experimentierfreude.<br />

Tim Schürmann<br />

Readme<br />

Die Entwicklungsumgebung Alice erlaubt<br />

das Erstellen von Programmen mit 3D-Grafik,<br />

wobei Sie alle nötigen Aktionen und Abläufe<br />

mit der Maus zusammenklicken.<br />

In Alice müssen Sie keinen einzigen Befehl<br />

eintippen oder gar eine kryptische<br />

Programmiersprache erlernen. Stattdessen<br />

klicken Sie Programme einfach mit<br />

der Maus zusammen: Zunächst ziehen<br />

Sie in eine noch leere 3D-Welt vorgefertigte<br />

Gegenstände. Jeder davon bietet<br />

Alice installieren<br />

mehrere Aktionen an, die sein Aussehen,<br />

seine Lage oder sein Verhalten ändern.<br />

Die gewünschten Aktionen übernehmen<br />

Sie dann einfach per Drag & Drop<br />

in einen Ablaufplan, den Alice auf Zuruf<br />

ausführt. Diese kinderleichte Bedienung<br />

hat freilich auch ihre Grenzen. So sind<br />

Um Alice 3.1 für Linux herunterzuladen,<br />

wechseln Sie auf die Alice-Homepage,<br />

wählen im Menü Downloads | Get Alice<br />

3.1 und klicken dann im Bereich Universal<br />

Installer den Link Download Alice 3.1 Universal<br />

.zip for all platforms an. Sie erhalten<br />

dabei ein ZIP-Archiv, das Sie in Ihrem <strong>Heim</strong>atverzeichnis<br />

entpacken. Dort entsteht<br />

automatisch das Unterverzeichnis Alice3.<br />

In diesen machen Sie die Datei alice3.<br />

sh ausführbar (indem Sie sie mit der rechten<br />

Maustaste anklicken, Eigenschaften<br />

wählen und dann auf dem Register Zugriffsrechte<br />

den mit als Programm ausführen<br />

oder ähnlich beschrifteten Punkt abhaken).<br />

Möchten Sie Alice später wieder<br />

loswerden, müssen Sie nur das komplette<br />

Alice3-Verzeichnis löschen.<br />

Als Nächstes benötigen Sie noch Java in<br />

Form eines Java Development Kits, kurz<br />

JDK. Das von vielen Distributionen installierte<br />

Java Runtime Environment (JRE) genügt<br />

hier nicht. Unter Ubuntu installieren<br />

Sie das JDK schnell in einem Terminal-<br />

Fenster mit dem Befehl sudo apt‐get<br />

install default‐jdk. Anschließend<br />

können Sie Alice im Verzeichnis Alice3<br />

über das Skript alice3.sh starten.<br />

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

07.2013


Alice 3.1<br />

Praxis<br />

die erstellten Anwendungen immer auf<br />

die 3D-Welt festgenagelt. Alice eignet<br />

sich folglich vorwiegend für 3D-Animationen<br />

oder Spiele. Die 3D-Welt verlangt<br />

zudem fast zwingend, dass Linux die 3D-<br />

Beschleunigung Ihrer Grafikkarte nutzt:<br />

Andernfalls läuft das selbst erstellte Programm<br />

nur im Schneckentempo ab.<br />

Nummerngirl<br />

Alice gibt es derzeit in zwei verschiedenen<br />

Fassungen û. Nach den Vorstellungen<br />

der Macher sollen Kinder die ältere<br />

Version 2 verwenden. Sie lehrt vor allem<br />

logisches Denken und die Grundlagen<br />

der Programmierung. Die neue Version 3<br />

legt den Schwerpunkt dagegen auf die<br />

objektorientierte Programmierung,<br />

nutzt verstärkt die dort übliche Terminologie<br />

und ermöglicht so später einen<br />

einfacheren Umstieg auf Java.<br />

Die grundlegende Arbeitsweise gestaltet<br />

sich jedoch in beiden Versionen<br />

gleich, die größten Unterschiede liegen<br />

im Aussehen der Benutzeroberfläche<br />

und in einer leicht abweichenden Terminologie.<br />

Im Folgenden soll deshalb die<br />

Version 3.1 im Vordergrund stehen, alle<br />

Erläuterungen gelten jedoch weitgehend<br />

auch für Alice 2.3.<br />

Bei der an der Carnegie<br />

Mellon University im USamerikanischen<br />

Pittsburgh<br />

entstandenen Programmierumgebung<br />

handelt es<br />

sich nicht um freie Software.<br />

Alice unterliegt einer<br />

zwar kostenlosen Lizenz, ist<br />

jedoch nicht Open Source.<br />

Die Installation der IDE beschreibt<br />

der Kasten Alice<br />

installieren.<br />

1 Nach dem Start bietet Alice verschiedene Untergründe für die 3D-Welt an. Zur Not<br />

wählen Sie irgendeine Vorgabe und ersetzen sie später durch eine farbige Fläche.<br />

welt schwimmen, weswegen Sie sich für<br />

den SEA_FLOOR entscheiden. Nach dem<br />

Klick auf OK öffnet sich das eigentliche<br />

Hauptfenster aus Abbildung 2 . Da es<br />

sehr viel Platz beansprucht, sollten Sie es<br />

auf den gesamten Bildschirm vergrößern.<br />

Lassen Sie sich zudem nicht von<br />

den vielen Elementen erschrecken – es<br />

Einrichtungshaus<br />

Nach dem Start der Programmierumgebung<br />

öffnet<br />

sich das Fenster aus Abbildung<br />

1 . Dort müssen Sie<br />

zunächst den Bodenbelag<br />

für Ihre 3D-Welt auswählen.<br />

Im Folgenden soll ein Fisch<br />

durch eine Unterwasser-<br />

2 Das im Anschluss an die Wahl eines Bodenbelags erscheinende Hauptfenster von Alice beansprucht<br />

aufgrund der vielen Listen und Anzeigeelemente reichlich Platz auf dem Bildschirm.<br />

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

45


Praxis<br />

Alice 3.1<br />

3 In dieser Darstellung bevölkern Sie Ihre Welt mit allerlei Objekten.<br />

sieht schlimmer aus, als es tatsächlich ist.<br />

Betrachten Sie für den Moment nur den<br />

linken oberen Fensterbereich.<br />

Dort sehen Sie die derzeit noch leere<br />

3D-Unterwasserwelt. Um sie mit einem<br />

Fisch und somit einem ersten Objekt zu<br />

bevölkern, klicken Sie auf den Knopf Setup<br />

Scene oder wählen aus dem Menü<br />

Window | Perspectives | Setup Scene. Alice<br />

wechselt jetzt in die Darstellung aus Abbildung<br />

3 , was ein paar Sekunden dauern<br />

kann. Der Blick in die 3D-Welt nimmt<br />

den größten Teil des Hauptfensters ein.<br />

Am unteren Rand finden Sie eine Palette<br />

mit allen zur Verfügung stehenden<br />

Gegenständen. Damit Sie in der Fülle der<br />

Objekte den Überblick behalten, sortiert<br />

Alice alle Gegenstände in Kategorien<br />

ein. Hinter Flyer Classes finden Sie beispielsweise<br />

alle Objekte, die fliegen können<br />

– derzeit ausschließlich Vögel. Mit<br />

einem Klick auf All Classes gelangen Sie<br />

wieder zur Übersicht zurück. Eine alternative<br />

Gruppierung wartet auf dem Register<br />

Browse Gallery By Theme. Dort finden<br />

Sie etwa hinter Sea alle Objekte, die<br />

sich für ein Unterwasserszenario eignen.<br />

Schließlich können Sie auch auf dem Register<br />

Search Gallery nach einem bestimmten<br />

Objekt suchen.<br />

Für das angepeilte Unterwasserszenario<br />

wechseln Sie auf das Register Browse<br />

Gallery By Theme und wählen den ocean.<br />

Halten Sie jetzt die linke Maustaste auf<br />

dem kleinen gelben Clownfisch gedrückt,<br />

ziehen ihn dann in die Unterwasserwelt,<br />

aber lassen dort die Maustaste<br />

noch nicht los. In der Welt erscheint jetzt<br />

wie in Abbildung 3 ein gelber Würfel.<br />

Ziehen Sie ihn mit der Maus an den<br />

4 In diesem Fenster<br />

geben Sie dem frisch<br />

angelegten Objekt einen<br />

eingängigen Namen.<br />

In unserem Beispiel<br />

soll der Fisch<br />

Nemo heißen.<br />

Hubwagen<br />

Platz, an dem der Clownfisch<br />

erscheinen soll. Im Beispiel<br />

fahren Sie an den linken unteren<br />

Fensterrand. Sie werden<br />

dabei merken, dass Alice das<br />

Objekt immer dicht über den<br />

Boden bewegt – für einen<br />

schwimmenden Fisch nicht<br />

besonders optimal, derzeit<br />

aber noch nicht zu ändern. Sobald<br />

Sie eine geeignete Position<br />

gefunden haben, lassen Sie<br />

die Maustaste los. Alice öffnet<br />

daraufhin das Fenster aus Abbildung<br />

4 . Es verrät, dass Sie<br />

jetzt in der 3D-Welt ein neues<br />

Objekt vom Typ ClownFish erstellt<br />

haben. Um es später einfacher<br />

weiterzuverwenden,<br />

sollten Sie dem Fisch im Feld<br />

name eine Bezeichnung geben<br />

(hier: Nemo) und dann mit<br />

OK das Fenster schließen.<br />

Der kleine Nemo erscheint jetzt in der<br />

Unterwasserwelt. Ein grüner Kreis wie in<br />

Abbildung 5 zeigt an, dass er gerade<br />

ausgewählt ist. Per Drag & Drop verschieben<br />

Sie den Fisch beliebig, mit Klicks auf<br />

einen der gebogenen Pfeile am unteren<br />

Rand der 3D-Welt verändern Sie bei Bedarf<br />

die Perspektive. Belassen Sie jedoch<br />

fürs Erste die derzeitige Schrägansicht.<br />

Am rechten Fensterrand finden Sie<br />

eine Palette mit allen Eigenschaften des<br />

kleinen Fisches (in Alice 2 verstecken sich<br />

diese auf dem Register properties links<br />

unten). Über die Ausklappliste neben<br />

Paint dürfen Sie Nemo eine andere Farbe<br />

geben. Der unter Opacity eingestellte<br />

Wert gibt an, wie durchsichtig der Fisch<br />

erscheint. Beim Wert 1.0 ist Nemo vollständig<br />

zu sehen, bei 0.5 nur noch halb.<br />

Mit Vehicle ketten Sie Nemo an ein anderes<br />

Objekt an, wie beispielsweise ein<br />

Boot. Er folgt dann automatisch allen Bewegungen<br />

des entsprechenden Objektes.<br />

Besonders interessant sind die Werte<br />

für Nemos Position und seine Größe<br />

(Size). Zunächst sollten Sie den Fisch etwas<br />

vom Boden anheben, damit er<br />

gleich frei schwimmen kann. Dazu tra-<br />

46<br />

www.linux-user.de<br />

07.2013


Alice 3.1<br />

Praxis<br />

gen Sie unter y den Wert 0.5<br />

ein und drücken die Eingabetaste.<br />

Alice hebt den Fisch<br />

jetzt an, wie Abbildung 5<br />

zeigt. Analog würde ein anderer<br />

Wert unter x Nemo auf der<br />

Waagerechten verschieben,<br />

ein neuer z-Wert nach vorne<br />

und hinten. Die voreingestellte<br />

Größe von Nemo ist für das<br />

Beispiel perfekt.<br />

Weltraum<br />

Neben dem Fisch tummeln<br />

sich schon ein paar weitere Objekte<br />

in der Szene: Neben dem<br />

Bodenbelag gibt es auch noch<br />

eine Kamera, durch die Sie gerade<br />

in den Ozean schauen.<br />

Alle diese Objekte listet Alice in<br />

der linken oberen Fensterecke<br />

auf, wobei es das gerade angewählte<br />

Objekt gelb hinterlegt.<br />

Auch die Kamera und der Boden besitzen<br />

Eigenschaften, die Sie verändern<br />

dürfen. Dazu klicken Sie links oben in der<br />

Ecke den Namen des entsprechenden<br />

Objektes an oder wählen es am rechten<br />

Rand aus der dicken Ausklappliste, die<br />

derzeit mit this.Nemo beschriftet ist. Auf<br />

diese Weise wechseln Sie etwa nachträglich<br />

den Bodenbelag. Auch die 3D-Welt<br />

selbst ist ein eigenes Objekt und trägt –<br />

etwas gewöhnungsbedürftig – den Namen<br />

this. Das gestattet jedoch, der gesamten<br />

Umgebung ein anderes Licht zu<br />

spendieren oder sie in Nebel zu tauchen:<br />

Wählen Sie aus der dicken Ausklappliste<br />

einmal this, und betrachten Sie die Eigenschaften.<br />

Den Namen der übrigen<br />

Objekte ist ein this. vorangestellt, weil sie<br />

sich in der Umgebung befinden.<br />

Nun wird es Zeit, Nemo etwas hinund<br />

herschwimmen zu lassen, wozu Sie<br />

einen passender Ablaufplan zusammenstellen.<br />

Kehren Sie über den Knopf Edit<br />

Code oder Window | Perspectives | Edit<br />

Code zunächst zur alten Darstellung zurück.<br />

Hier sehen Sie jetzt Nemo links<br />

oben in der Ecke. Direkt darunter finden<br />

Sie eine Liste mit allen Aktionen und<br />

Tricks, die Nemo auf Lager hat. So könnten<br />

Sie ihn etwas sagen (say) oder sich<br />

5 Mit den neuen Eigenschaften schwebt das Objekt jetzt ungefähr in der Mitte der Welt.<br />

bewegen lassen (move). Alice bezeichnet<br />

alle diese Aktionen als Procedures.<br />

Drehwurm<br />

Nemo soll über den Bildschirm nach<br />

rechts schwimmen. Im Moment sieht er<br />

aber noch geradeaus, weswegen Sie ihn<br />

als Erstes nach rechts blicken lassen. Suchen<br />

Sie in der Liste die Prozedur turn<br />

(im Bereich orientation). Ziehen Sie diese<br />

Aktion mit der Maus auf die rechte, noch<br />

leere Seite an den Punkt drop statement<br />

here (unter Alice 2: Do nothing).<br />

Alice möchte jetzt wissen, wohin sich<br />

Nemo drehen soll. Damit der Fisch anschließend<br />

nach rechts blickt, muss er<br />

6 Sofern eine Prozedur<br />

nach einer Einstellung verlangt,<br />

wählen Sie diese bequem<br />

aus einer Liste mit<br />

Vorgaben aus.<br />

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

47


Praxis<br />

Alice 3.1<br />

7 Eine <strong>Vorschau</strong> auf den Ablauf der erstellten Animation erhalten Sie<br />

nach einem Druck auf den Schalter Run. Es öffnet sich dann dieses Fenster,<br />

in dem Sie das Programm mithilfe der entsprechenden Knöpfe am<br />

oberen Rand pausieren und neu starten können.<br />

8 Diese hier gezeigte Befehlskette lässt unseren Fisch wenden, nach<br />

rechts schwimmen, dort erneut wenden, wieder nach links schwimmen<br />

und dann am ursprünglichen Ausgangspunkt erneut geradeaus schauen.<br />

9 Diese erweiterte Befehlskette bringt Wiederholung ins Spiel: Die<br />

while-Schleife lässt Nemo endlos im vorgegebenen Bewegungsmuster<br />

hin- und herschwimmen. Um das Fischlein wieder zu stoppen, müssen Sie<br />

das Programm manuell abbrechen.<br />

sich selbst nach links rotieren. Entscheiden<br />

Sie sich folglich für Left. Anschließend<br />

gilt es noch die Frage zu klären, wie<br />

weit sich Nemo drehen soll. In diesem Fall<br />

ist der in Abbildung 6 gezeigte Wert<br />

0.25 korrekt, was einer viertel Drehung<br />

um die eigene Achse entspricht. Um das<br />

prüfen, klicken Sie auf den Knopf Run. Es<br />

öffnet sich jetzt ein neues Fenster, in dem<br />

Nemo wie in Abbildung 7 nach rechts<br />

schaut. Schließen Sie das Fenster wieder.<br />

Als Nächstes muss Nemo nach rechts<br />

schwimmen. Dafür sorgt die Prozedur<br />

move. Ziehen Sie diese aus der Liste am<br />

linken Rand nach rechts unter die turn-<br />

Aktion. Nemo selbst soll geradeaus<br />

schwimmen. Wählen Sie daher aus der<br />

Liste Forward. Bei einem Wert von 2.0<br />

bliebe Nemo in der Mitte des Schirms<br />

stehen, bei 10.0 würde er aus dem Blickfeld<br />

verschwinden. Klicken Sie deshalb<br />

Custom DecimalNumber an, tragen mit<br />

dem erscheinenden Taschenrechner den<br />

Wert 3.5 ein und klicken auf OK.<br />

Aktivieren Sie jetzt Run, schwimmt<br />

Nemo auf die rechte Seite. Das Ganze<br />

läuft allerdings noch relativ schnell ab.<br />

Klicken Sie deshalb auf add detail in der<br />

move-Aktion. Um die Dauer des Schwimmens<br />

zu beeinflussen, wählen Sie die Duration<br />

und dann 2.0. Damit verlangsamt<br />

die Animation auf die Hälfte.<br />

Für immer und ewig<br />

Am Endpunkt muss Nemo wieder umdrehen.<br />

Also ziehen Sie wieder die Prozedur<br />

turn unter die anderen beiden im Ablaufplan.<br />

Nemo muss sich rechts herum drehen<br />

(Right) und zwar um den Wert 0.5 –<br />

damit schaut er wieder nach links. Mit einer<br />

weiteren Aktion move lassen Sie ihn<br />

an seine Ausgangsposition zurückschwimmen.<br />

Die Schwimmrichtung ist<br />

wieder geradeaus (Forward) um den Wert<br />

3.5. Diesen geben Sie wieder über Custom<br />

DecimalNumber ein. Die Geschwindigkeit<br />

können Sie der Einfachheit halber<br />

auf ihrem Standardwert belassen.<br />

Abschließend lassen Sie Nemo wieder<br />

geradeaus schauen. Dazu ziehen Sie<br />

noch einmal die Prozedur turn in den<br />

Ablaufplan, lassen Nemo nach links rotieren<br />

(Left) und zwar um 0.25. Das Pro-<br />

48<br />

www.linux-user.de<br />

07.2013


Alice 3.1 Praxis<br />

Digitales aBO<br />

gramm sollte jetzt wie in Abbildung 8<br />

aussehen. Sobald Sie es per Run starten,<br />

schwimmt Nemo nach rechts, wendet<br />

dort, schwimmt zurück und schaut wieder<br />

geradeaus. Damit Nemo erneut nach<br />

rechts schwimmt, müssten Sie das Programm<br />

neu starten.<br />

Erfreulicherweise kann Alice auch Prozeduren<br />

in einer Schleife laufen lassen.<br />

Dazu schließen Sie das <strong>Vorschau</strong>fenster<br />

wieder und werfen im Hauptfenster einen<br />

Blick an den rechten unteren Rand.<br />

Dort stellt Alice ein paar Spezialaktionen<br />

bereit. Ziehen Sie while in Ihrem Ablaufplan<br />

über alle bisherigen Prozeduren.<br />

Alice zeigt Ihnen dabei mit einer grünen<br />

Linie an, wo es die Aktion einfügen würde,<br />

wenn Sie die Maustaste losließen.<br />

Aus dem aufklappenden Menü wählen<br />

Sie true – dazu gleich mehr. Verschieben<br />

Sie jetzt alle bisherigen Prozeduren<br />

zwischen while und loop. Das Ergebnis<br />

sollte wie in Abbildung 9 gezeigt aussehen.<br />

Damit haben Sie eine Endlosschleife<br />

definiert: Solange (while) der<br />

Wert true gleich true ist – also immer –<br />

führt Alice alle Prozeduren bis zum loop<br />

aus. Nemo schwimmt also endlos hin<br />

und her. Das können Sie direkt prüfen,<br />

indem Sie auf Run klicken. Um das Programm<br />

anzuhalten, schließen Sie einfach<br />

das Fenster.<br />

Ausblick<br />

TIPP<br />

Um eine Prozedur aus dem Ablaufplan<br />

wieder loszuwerden, ziehen Sie sie zurück<br />

in die Liste im linken unteren Bereich.<br />

Dort erscheint ein Mülleimer-Symbol,<br />

über dem Sie die Maustaste loslassen.<br />

Die neben while stehende Prüfbedingung<br />

ist offensichtlich trivial. An ihrer<br />

Stelle könnten Sie hier auch eine komplexere<br />

einstellen und Nemo zum Beispiel<br />

nur dann losschwimmen lassen,<br />

wenn ein anderer Fisch mit ihm kollidiert.<br />

Bei der Zusammenstellung einer<br />

Bedingung helfen insbesondere die<br />

Functions, die Sie auf dem gleichnamigen<br />

Register finden. Sie liefern Werte zurück<br />

wie etwa Nemos Aufenthaltsort,<br />

seine Größe oder seine Farbe.<br />

Sobald Sie mit der Maus über eine der<br />

Funktionen fahren, markiert Alice die<br />

Stellen im Ablaufplan, an denen Sie diese<br />

einsetzen können. Genau wie Nemo<br />

besitzen auch die anderen Objekte in<br />

der 3D-Welt Prozeduren und Funktionen.<br />

Alice listet diese auf, wenn Sie sie in<br />

der Welt anklicken oder sie aus der überdimensionalen<br />

Ausklappliste unterhalb<br />

der <strong>Vorschau</strong> auswählen.<br />

Nemo besteht aus mehreren Einzelteilen,<br />

die Sie unabhängig voneinander bewegen<br />

beziehungsweise manipulieren<br />

dürfen. Möchten Sie den Fisch etwa mit<br />

dem Schwanz wedeln lassen, wählen Sie<br />

aus der großen Ausklappliste den Punkt<br />

this.Nemo, fahren dann über das kleine<br />

Dreieck und entscheiden sich für this.<br />

Nemo.getTail. Alle jetzt in der Liste darunter<br />

angezeigten Prozeduren und<br />

Funktionen beziehen sich nur noch auf<br />

den Schwanz. Auf diese Weise können<br />

Sie den Schwanz etwa während des<br />

Schwimmens animieren.<br />

Fazit<br />

Programmieren ist gar nicht so schwer:<br />

Mit Alice genügen wenige Mausklicks,<br />

um einen Fisch durch das Meer schwimmen<br />

zu lassen. Die einfache Animation<br />

kratzt jedoch nur an den Möglichkeiten<br />

der Entwicklungsumgebung. Sollten Sie<br />

jetzt an dieser Gefallen gefunden haben,<br />

experimentieren Sie einfach mit den<br />

übrigen Prozeduren und Funktion.<br />

Dazu sollten Sie sich allerdings besser<br />

ein verregnetes Wochenende freihalten:<br />

Die Arbeit mit Alice macht schnell süchtig<br />

und lässt die Zeit vergessen. Einen<br />

Überblick über die Benutzeroberfläche<br />

verschaffen die Online-Hilfe û, die ausführlicheren<br />

Howtos und Screencasts der<br />

„Alice 3.1 Curriculum Resources“ û sowie<br />

diverse englischsprachige Bücher û,<br />

die sich aber durchweg noch auf die ältere<br />

Version Alice 2 beziehen. (jlu) n<br />

Weitere Infos und<br />

interessante Links<br />

www. linux‐user. de/ qr/ 28530<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!<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 />

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

E-Mail: abo@linux-user.de 49


Praxis<br />

OCR auf der Shell<br />

Texte scannen und mit OCR nachbearbeiten<br />

Mühsam entziffert<br />

© Hworks, sxc.hu<br />

Mit einem kleinen Skript verarbeiten<br />

Sie große Mengen<br />

an Textscans zu PDF-Dateien,<br />

die Sie dank OCR mit typischen<br />

Unix-Werkzeugen im<br />

Volltext durchsuchen.<br />

Wer gedruckte Schrift in digitaler Form<br />

richtig nutzen möchte, braucht sie in einer<br />

Form, die ein Durchsuchen erlaubt.<br />

Ein reines Umwandeln in Bitmaps macht<br />

das nicht möglich. Darf das Layout der<br />

Informationen gegenüber dem Original<br />

abweichen, bietet sich ein Speichern als<br />

ASCII-Text an. Möchten Sie das Original<br />

erhalten, ist das PDF die erste Wahl, das<br />

am Anfang oder Ende die per Texterkennung<br />

(OCR) gewonnene Information zusätzlich<br />

beinhaltet. Diese Datei durchsu-<br />

Harald Zisler<br />

Readme<br />

Ein kleines Kochrezept für die Shell zeigt,<br />

wie Sie ohne viele Mausklicks selbst umfangreiche<br />

Dokumente einscannen und als<br />

Text weiterverarbeiten. Das Skript automatisiert<br />

den Vorgang weitgehend, sodass für<br />

Sie nur noch die abschließende Rechtschreibkorrektur<br />

zu tun bleibt.<br />

1 Mit sane‐find‐scanner und scanimage ‐L haben Sie im Handumdrehen die angeschlossenen<br />

Scanner identifiziert. Die USB-ID brauchen Sie für die Konfiguration.<br />

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

07.2013


OCR auf der Shell<br />

Praxis<br />

chen Sie unter Linux dann mit den gängigen<br />

Werkzeugen für die Kommadozeile<br />

wie zum Beispiel Grep.<br />

Hinter vielen GUI-Anwendungen zum<br />

Scannen und zur Texterkennung arbeiten<br />

Werkzeuge im Hintergrund. Deren<br />

Möglichkeiten stehen alternativ direkt<br />

als Shell-Kommando bereit. Auf diese<br />

Weise schaffen Sie bei Bedarf eigene<br />

Tools, die Ihren Anforderungen entsprechen.<br />

Die Grundlagen bilden Scanimage<br />

und Cuneiform oder Tesseract.<br />

Vom Papier zum Bild<br />

Installieren Sie die Pakete libsane und<br />

sane -utils û. Es ist nicht zwingend notwendig,<br />

den Sane-Daemon zu starten.<br />

Im normalen Betrieb reicht der Aufruf<br />

des Programmes in einem Terminal. Bei<br />

der Installation über den Paketmanager<br />

legt das Setup einen Benutzer sane oder<br />

scanner in /etc/passwd zusammen mit<br />

einer entsprechenden Gruppe an. Fügen<br />

Sie in /etc/group in der zutreffenden<br />

Zeile jene Benutzer hinzu, die auf den<br />

Scanner zugreifen dürfen. Das sieht ähnlich<br />

wie im folgenden Beispiel aus:<br />

scanner:x:115:saned,harald,monikaU<br />

,kopierer<br />

Die Anleitung von Sane gibt umfangreiche<br />

Hinweise darauf, wie und ob die<br />

Software einen Scanner unterstützt. In<br />

manchen Fällen setzt das voraus, dass<br />

Sie eine Datei aus dem Treiber für Windows<br />

extrahieren und auf dem Linux-<br />

Rechner ablegen. Viele neuere Scanner<br />

unterstützt die Software Sane direkt.<br />

Eine gute Beschreibung zum Installieren<br />

eines Scanners finden Sie im Web û.<br />

Suchen Sie nach dem angeschlossenen<br />

Scanner mit sane‐find‐scanner 1 .<br />

Das Programm schickt, mit Ausnahme<br />

bei den Stapeljobs, die Daten auf die<br />

Standardausgabe. Dann lenken Sie die<br />

Ausgabe selbst in eine Datei um.<br />

Nach der Konfiguration testen Sie mit<br />

scanimage ‐T deren Funktionsfähigkeit:<br />

Beim Scanner sollte sich jetzt der Schlitten<br />

mit der Lesezeile in Bewegung setzen<br />

und im Terminal sollte eine entsprechende<br />

Ausgabe zu sehen sein 2 .<br />

2 War die Konfiguration korrekt, erzeugt der Testlauf eine entsprechende Ausgabe.<br />

Hat bis zu dieser Stelle alles funktioniert,<br />

ist das Einbinden der Hardware abgeschlossen.<br />

Wichtige Optionen von Scanimage<br />

finden Sie in der Tabelle Optimale<br />

Konfiguration. Verfügen Sie über einen<br />

Scanner mit automatischem Dokumenteneinzug<br />

und Wendeeinheit (ADF),<br />

lohnt sich ein Blick auf das Tool Scanadf.<br />

Optimale Konfiguration<br />

Option<br />

Aktion<br />

‐L Anzeige angeschlossener Scanner<br />

OCR: Optical Character Recognition (engl.).<br />

Ein Verfahren zum automatisierten Erkennen<br />

von Textstellen durch optische Lesegeräte<br />

sowie das anschließende Umwandeln<br />

in Textzeichen inklusive Fehlerkorrektur.<br />

‐A Anzeige aller Optionen, passend zum Modell<br />

‐d Gerätedatei Angabe des Scanners<br />

‐‐mode Modus<br />

Auswahl zwischen Schwarz/​Weiß (lineart), Grau (gray)<br />

oder Farbe (color)<br />

‐‐resolution DPI Auflösung in DPI, mögliche Werte siehe Ausgabe von ‐A<br />

‐‐depth Wert Angabe Farbtiefe: 1 (Schwarz/​Weiß), sonst 8 oder 16<br />

‐‐brightness Wert Helligkeit (‐100% bis +100%)<br />

‐‐batch<br />

‐‐batch‐count Zahl<br />

‐‐batch‐start Zahl<br />

‐‐batch‐increment Zahl<br />

‐‐batch‐prompt<br />

‐‐format=FORMAT<br />

Stapelbetrieb<br />

‐T Testlauf<br />

Begrenzt den Stapelbetrieb<br />

Startwert für Seite<br />

Schrittweite für Seitenzahl, 2 für doppelseitige Dokumente<br />

Warten auf Eingabe beim Stapelbetrieb<br />

Format der Ausgabedatei (PNM/​TIFF)<br />

‐p Fortschrittsanzeige<br />

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

51


Praxis<br />

OCR auf der Shell<br />

Listing 1<br />

01 #! /bin/sh<br />

02 SCANNER="genesys:libusb:002:<br />

002"<br />

03 TXTLANG="deu"<br />

04 EDITOR="kwrite"<br />

05 <br />

06 echo ‐n "Projektname: ";<br />

07 read PROJEKT<br />

08 if [ ‐z $PROJEKT ];<br />

09 then<br />

10 exit<br />

11 fi<br />

12 scanimage ‐d $SCANNER<br />

‐‐batch ‐‐batch‐start 10000<br />

‐‐batch‐prompt ‐‐resolution<br />

600 ‐‐mode lineart<br />

‐‐format=tiff<br />

13 <br />

14 for TIF in out*.tif; do<br />

15 echo "Reading $TIF"<br />

16 TXT=$TIF.tif.txt<br />

17 tesseract $TIF $TXT ‐l<br />

$TXTLANG<br />

18 done<br />

19 <br />

20 cat *.txt >> $PROJEKT.txt<br />

21 $EDITOR $PROJEKT.txt<br />

22 <br />

23 PAGES=$(ls ‐l out*.tif | wc<br />

‐l)<br />

24 <br />

25 for TIF in out*.tif; do<br />

26 echo "Converting $TIF"<br />

27 PDF=$TIF.tif.pdf<br />

28 if [ "$TIF" = "out10000.tif"<br />

]; then<br />

29 convert $TIF vorlage.pdf<br />

30 else<br />

31 convert $TIF $PDF<br />

32 pdftk A=vorlage.pdf B=$PDF<br />

CAT A B output vorlage‐1.pdf<br />

33 mv vorlage‐1.pdf vorlage.pdf<br />

34 fi<br />

35 done<br />

36 <br />

37 recode UTF8..ISO‐8859‐15<br />

$PROJEKT.txt<br />

38 a2ps ‐o $PROJEKT.ps $PROJEKT.<br />

txt<br />

39 ps2pdf14 $PROJEKT.ps<br />

$PROJEKT‐text.pdf<br />

40 pdftk A=vorlage.pdf<br />

B=$PROJEKT‐text.pdf CAT A B<br />

output $PROJEKT.pdf<br />

41 okular $PROJEKT.pdf<br />

42 <br />

43 echo ‐n "Hilfsdaten löschen ?<br />

(j) ";<br />

44 read loesch<br />

45 if [ "$loesch" = "j" ]; then<br />

46 rm $projekt.ps<br />

47 rm out*.tif<br />

48 rm out*.pdf<br />

49 rm out*.txt<br />

50 rm vorlage.pdf<br />

51 rm $projekt‐text.pdf<br />

52 rm *~<br />

53 fi<br />

Die Schritte beim Scannen von Dokumenten<br />

eignen sich hervoragend, um<br />

ein Skript daraus zu basteln. Listing 1 arbeitet<br />

die folgenden Punkte ab: Einscannen<br />

der Dokumente, Ablage im TIF-Format<br />

sowie Auslesen des Textes aus den<br />

TIFF-Dateien (OCR). Anschließend ruft<br />

das Skript einen Editor auf.<br />

Stimmt alles, bleibt nur noch das Konvertieren<br />

der TIFF-Datei ins PDF-Format.<br />

Zu guter Letzt erzeugt das Skript eine<br />

PDF-Datei aus der Datei mit dem Ergebnis<br />

aus dem OCR-Lauf und fügt die beiden<br />

PDF-Dateien zusammen. Als Ergebnis<br />

erhalten Sie eine PDF-Datei, die es erlaubt,<br />

diese mit Pdfgrep zu durchsuchen.<br />

Zeile 12 mit dem Aufruf von Scanimage<br />

zeigt das Einbinden des Stapelbetriebes.<br />

Die Zahl der zu scannenden Seiten<br />

bleibt dabei offen. Sie fordern mit<br />

[Eingabe] jede Seite einzeln an; für den<br />

Abbruch des Vorganges nutzen Sie<br />

[Strg]+[D]. Im Beispiel war dies nach<br />

zwei Seiten der Fall. Die Ziffer im Dateinamen<br />

beginnt mit 10000. Auf diese<br />

Weise umgehen Sie Fehler beim Sortieren<br />

der Dateien, die sich auf das Erzeugen<br />

der Textdateien auswirken.<br />

Qual der Wahl<br />

Ferner erstellen Sie die Scans mit einer<br />

Auflösung von 600 DPI. Das bietet sich<br />

an, wenn die Vorlage kleine Schrift enthält.<br />

Die Scans sollen in Schwarz-Weiß<br />

erfolgen. Die Bilddateien legt das Skript<br />

im TIF-Format ab 3 .<br />

Manche älteren Modelle arbeiten bei<br />

einer Auflösung über 600 DPI besonders<br />

langsam. Solche Geräte lesen die Seite<br />

oft stückweise ein und bleiben dann stehen,<br />

bis die Daten auf dem Rechner abgelegt<br />

sind. Erst danach bewegt sich der<br />

Schlitten wieder ein Stück weiter. Das<br />

verführt zu der Annahme, dass Scanimage<br />

hängt und nur der Ausweg bleibt,<br />

den Prozess mit Gewalt zu beenden.<br />

Mit der Fortschrittsanzeige (‐p) haben<br />

Sie den Verlauf im Blick. Erst wenn sich<br />

die Anzeige 4 über mehrere Minuten<br />

nicht verändert, sollten Sie das Programm<br />

abbrechen. Des Weiteren war im<br />

Test die Angabe des Gerätes (‐d Gerät)<br />

notwendig, weil sonst durch das Umlenken<br />

der Ausgabe die Fehlermeldung<br />

über nicht gefundene Cups-Geräte in<br />

der Zieldatei gelandet wäre.<br />

Einen eindeutigen Favoriten unter den<br />

OCR-Programmen gibt es nicht. Mit Cuneiform<br />

û und Tesseract û stehen aber<br />

zwei alltagstaugliche Programme bereit.<br />

Im Test kam ein kleiner Mustertext zum<br />

Einsatz 5 , der von beiden Programmen<br />

die Stärken und Schwächen aufzeigt. Die<br />

eingescannte Datei lag im TIF-Format<br />

mit einer Auflösung von 600 DPI vor.<br />

Cuneiform<br />

Im Test wurde das Programm auf einem<br />

Debian-System aus den Quellen installiert,<br />

was nach dem Auflösen einiger Abhängigkeiten<br />

klappte. Die Software er-<br />

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

07.2013


OCR auf der Shell<br />

Praxis<br />

wartet Eingabedateien im TIF-Format.<br />

Der Aufruf des Programms folgt der folgenden<br />

Syntax:<br />

Die Option ‐l Sprache ermöglicht die<br />

Texterkennung in der angegebenen<br />

Sprache. Die unterstützten Sprachen finden<br />

Sie in der Tabelle Sprachen in Cuneiform.<br />

Die Option ‐f bestimmt das Format<br />

der Ausgabe: text für reinen Text,<br />

smarttext für Text mit Zeilen und Absätzen<br />

entsprechend der Vorlage, rtf für<br />

eine Rich-Text-Format-Datei und html<br />

für eine HTML-Datei. Weitere Optionen<br />

fügen Sie bei Bedarf nach der Angabe<br />

der Ausgabedatei ein. Dazu gehört unter<br />

anderem ‐‐dotmatrix, was das Auswerten<br />

von Ausdrucken von Nadeldruckern<br />

verbessert, mit ‐‐singlecolumn fassen<br />

Sie mehrere Spalten zu einer zusammen<br />

und ‐‐fax verbessert das Auswerten<br />

von gefaxten Dokumenten.<br />

In Abbildung 6 finden Sie einen Auswertungslauf<br />

mit anschließendem Ergebnis.<br />

Versuche mit Vorlagen, welche<br />

weniger als 200 DPI aufwiesen, brachten<br />

keine brauchbaren Ergebnisse. Ab 300<br />

DPI funktioniert das Auswerten. Kommen<br />

in der Vorlage verschiedene Schriftgrößen<br />

und sehr kleine Schriftarten vor,<br />

brauchen Sie beim Scannen eine Auflösung<br />

von 600 DPI.<br />

cuneiform ‐l Sprache ‐f text ‐o AU<br />

usgabedatei Bilddatei<br />

Tesseract<br />

Die Entwicklung von Tesseract begann<br />

1985. Im Gegensatz zu Cuneiform gibt<br />

die Software reine Textdateien aus. Dem<br />

Paket liegen Hilfsprogramme bei, mit<br />

denen Sie dem Programm neue Schriften<br />

beibringen (cntraining, mftraining).<br />

Ein OCR-Lauf mit Tesseract folgt<br />

der Syntax in Listing 1, Zeile 17.<br />

Derzeit verarbeitet Tesseract folgende<br />

Sprachen: Deutsch (deu), Frakturschriften,<br />

Deutsch (deu‐f), Englisch (eng),<br />

Französisch (fra), Niederländisch (nld),<br />

Italienisch (ita), Portugiesisch (por),<br />

Spanisch (spa) und Vietnamesisch (vie).<br />

Das Auswerten setzt die Daten in Form<br />

einer Bilddatei im TIF-Format voraus.<br />

Abbildung 7 zeigt einen Durchlauf. Im<br />

Vergleich zu Cuneiform erkennt Tesseract<br />

Sonderzeichen und Zahlen besser.<br />

Helferlein<br />

Das mächtige Programm Convert aus<br />

dem ImageMagick-Paket û hilft beim<br />

Erstellen der PDF-Datei aus der TIFF-Datei.<br />

Mit diesem haben Sie nicht nur die<br />

Möglichkeit, andere<br />

Formate zu verarbeiten,<br />

sondern<br />

auch weitere Eigenschaften<br />

von Bilddateien<br />

per Shell-<br />

Befehl zu ändern.<br />

Zum Erzeugen einer<br />

einfachen PDF-<br />

Datei reicht allerdings<br />

der Aufruf aus<br />

Listing 1, Zeile 31.<br />

TIPP<br />

Bei Scans von Zeitschriftenartikeln, Gebrauchsanleitungen<br />

und Buchseiten fällt<br />

das Ergebnis weniger unterschiedlich aus.<br />

Daher erweist es sich für ein Shellskript<br />

als gute Taktik, beide OCR-Programme<br />

einzusetzen.<br />

Mit Pdftk û fügen Sie PDF-Dateien zusammen.<br />

Zeile 32 in Listing 1 zeigt, wie<br />

Sie die Software einsetzen. Weitere<br />

Funktionen des Programmes sind das<br />

Zerlegen, Rotieren, Ver- und Entschlüsseln<br />

und Verändern von PDF-Dateien.<br />

Zum Erzeugen einer PDF-Datei aus einer<br />

Textdatei braucht es mehrere Schritte:<br />

Die allermeisten Distributionen setzen<br />

auf UTF-8 als Zeichensatz in der<br />

Shell. Nachdem viele Werkzeuge zum<br />

Konvertieren auf die Zeichensätze aus<br />

der ISO-8859-Familie getrimmt sind, set-<br />

3 Die Ausgabe der Scans erfolgt in diesem Beispiel im TIF-Format.<br />

Als Alternative käme PNM als Format infrage.<br />

4 Die Fortschrittsanzeige hilft bei älteren Scanner-Modellen,<br />

dem Verlauf der Arbeit von Scanimage zu folgen.<br />

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

53


Praxis<br />

OCR auf der Shell<br />

5 Ein Mustertext deckt relativ einfach die Stärken und Schwächen der Texterkennungsprogramme<br />

Cuneiform und Tesseract im direkten Vergleich auf.<br />

zen Sie als ersten Schritt mit Recode û<br />

die Textdatei um (Listing 1, Zeile 37). Das<br />

Programm setzt selbst uralte Zeichensätze<br />

aus den Siebzigerjahren des letzten<br />

Jahrhunderts um.<br />

Mit Enscript û oder A2ps û erzeugen<br />

Sie als Zwischenschritt eine Postscript-Datei.<br />

Die beiden Programme unterscheiden<br />

sich vor allem in der Form<br />

Weitere Infos und<br />

interessante Links<br />

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

der Ausgabe. Sie funktionieren aktuell<br />

nur mit den ISO-Zeichensätzen. Den Aufruf<br />

von A2ps sehen Sie in Listing 1, Zeile<br />

38; der von Enscript funktioniert analog.<br />

Im letzten Schritt erzeugt das Skript<br />

noch ein PDF-File aus der Postscript-Datei.<br />

Hierfür bietet sich das Programm<br />

Ps2pdf14 aus dem Ghostscript-Paket û<br />

an (Listing 1, Zeile 39).<br />

Im letzten Schritt setzt das Skript die<br />

eingescannten Dokumente und den extrahierten<br />

Text zusammen. Damit erhalten<br />

Sie letztendlich ein Dokument, das<br />

Ihnen den Inhalt liefert und die Möglich-<br />

keit bietet, diesen zusätzlich mit üblichen<br />

Unix-Tools zu durchsuchen.<br />

Fazit<br />

Das Einscannen von Dokumenten und<br />

das Extrahieren von Text aus diesen gelingt<br />

mit den Werkzeugen der Shell ohne<br />

großen Aufwand. Das Muster-Skript liefert<br />

bereits ein funktionsfähiges Ergebnis.<br />

Mit ein wenig Shell-Know-how erweitern<br />

Sie es und passen es auf Ihre Bedürfnisse<br />

leicht an, zum Beispiel mit<br />

dem Tool Unpaper û. (agr) n<br />

Sprachen in Cuneiform<br />

Sprache<br />

Kürzel<br />

Bulgarisch<br />

bul<br />

Dänisch<br />

dan<br />

Deutsch<br />

ger<br />

Englisch<br />

eng<br />

Estländisch<br />

est<br />

Französisch<br />

fra<br />

Italienisch<br />

ita<br />

Kroatisch<br />

hrv<br />

Lettländisch<br />

lav<br />

Litauisch<br />

lit<br />

Niederländisch dut<br />

Polnisch<br />

pol<br />

Portugiesisch<br />

por<br />

Rumänisch<br />

rum<br />

Russisch<br />

rus<br />

Schwedisch<br />

swe<br />

Serbisch<br />

srp<br />

Slowenisch<br />

slo<br />

Spanisch<br />

spa<br />

Tschechisch<br />

cze<br />

Türkisch<br />

tur<br />

Ukrainisch<br />

ukr<br />

Ungarisch<br />

hun<br />

6 Nach dem Auswerten einer Seite mit Cuneiform weist das Ergebnis Fehler auf.<br />

7 Tesseract wertet Sonderzeichen und Zahlen oft besser aus als der Mitbewerber.<br />

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

07.2013


LaTeX automatisieren<br />

Praxis<br />

LaTeX-Dokumente automatisiert kompilieren<br />

In kleinen Schritten<br />

© Johnnyberg, sxc.hu<br />

Erfahrene LaTeX-Anwender kennen ihre<br />

Werkzeuge und verfügen über ein tieferes<br />

Verständnis für das Zusammenspiel<br />

der beteiligten Programme. Mit der Zeit<br />

geraten Ihnen die einzelnen Handgriffe<br />

zur Routine. Einsteiger dagegen suchen<br />

häufig nach den richtigen Befehlen und<br />

Parametern. Mit einem einfachen Skript<br />

gelingt aber auch LaTeX-Anfängern das<br />

Übersetzen im Handumdrehen – inklusive<br />

geordnetem Aufräumen am Schluss.<br />

Standardweg<br />

Eine LaTeX-Datei im Rohformat macht<br />

noch lange keine Layouts. Für das Übersetzen<br />

ins gewünschte Format existieren<br />

mehrere Wege 1 . Einer davon führt<br />

mittels eines Zwischenschrittes über das<br />

Device Independent Format DVI. Zum<br />

Erzeugen einer Postscript-Datei kommen<br />

die Kommandos latex und dvips<br />

zum Einsatz, für das Erstellen eines PDF-<br />

Dokumentes hingegen latex und dvipdf.<br />

Ein etwas direkterer, alternativer Weg<br />

zum PDF führt über pdflatex.<br />

Der Ablauf entspricht in etwa jenem<br />

beim Kompilieren von Quellcode: Es entstehen<br />

Stück für Stück Inhalts-, Abbildungs-<br />

und Tabellenverzeichnisse sowie<br />

die Querverweise. Für einfache Dokumente<br />

genügt dabei ein Durchlauf, bei<br />

umfangreicheren Texten mit Verzeichnissen<br />

und Verweisen im Text fallen in der<br />

Regel drei Durchläufe an (Listing 1). Das<br />

gilt selbst beim Einsatz von Pdflatex (wobei<br />

in diesem Fall die Schritte 4 und 5<br />

aus Listing 1 entfallen).<br />

Während des Übersetzens der Quellen<br />

entstehen eine Reihe von weiteren Dateien<br />

(siehe Tabelle Hilfsdateien). Darin<br />

merkt sich LaTeX alle dynamischen Objekte,<br />

die es während der Analyse des<br />

Dokumentes findet und die es im nächsten<br />

Durchlauf in das finale Dokument<br />

übertragen muss – beispielsweise Quer-<br />

Wer gelegentlich mit LaTeX<br />

arbeitet, der profitiert von einem<br />

sauber geschriebenen<br />

Skript, das beim Übersetzen<br />

der Quelldateien hilft.<br />

Frank Hofmann<br />

Readme<br />

Wer häufig mit dem Textsatzsystem LaTeX<br />

arbeitet, dem gelingen die Handgriffe zum<br />

Übersetzen nach Postscript oder PDF im<br />

Schlaf. Mit einem Shell-Skript haben Sie<br />

auch als Einsteiger in die Materie immer die<br />

richtigen Kommandos zur Hand.<br />

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

55


Praxis<br />

LaTeX automatisieren<br />

1 Mit einigen wenigen Befehlen übersetzen<br />

Sie TeX-Quelldateien wahlweise in die<br />

Formate Postscript oder PDF.<br />

Listing 1<br />

01 $ latex dokument.tex<br />

02 $ latex dokument.tex<br />

03 $ latex dokument.tex<br />

04 $ dvipdf dokument.dvi<br />

05 $ ps2pdf dokument.ps<br />

Listing 2<br />

01 #!/bin/bash<br />

02 pdflatex dokument.tex<br />

03 pdflatex dokument.tex<br />

04 pdflatex dokument.tex<br />

Listing 3<br />

01 #!/bin/bash<br />

02 pdflatex "$1"<br />

03 pdflatex "$1"<br />

04 pdflatex "$1"<br />

05 find . ‐regextype<br />

posix‐extended ‐regex '.+\.U<br />

(aux|lo[gft]|toc|idx)' ‐delete<br />

verweise mit der korrekten Seitenzahl.<br />

Mit Ausnahme der .log- und .aux-Datei<br />

werden diese Zwischendaten nur dann<br />

ausgegeben, wenn LaTeX das entsprechende<br />

Verzeichnis erzeugen soll.<br />

Ab ins Skript<br />

Die Abfolge der Kommandos aus Listing<br />

1 ergibt bereits ein einfaches Batch-<br />

Skript (Listing 2), das wir im Folgenden<br />

make‐pdf.sh nennen. Der Einfachheit<br />

halber kommt in unserem Beispiel Pdflatex<br />

zum Einsatz.<br />

Nachdem Sie das Skript mittels chmod<br />

+x make‐pdf.sh mit den entsprechenden<br />

Rechten ausgestattet haben, rufen<br />

Sie es mit ./make‐pdf.sh auf. Es arbeitet<br />

die gespeicherten Kommandos ab und<br />

übersetzt dabei die Datei dokument.tex<br />

in ein PDF namens dokument.pdf.<br />

Damit Sie flexibel bleiben und sich<br />

beim Übersetzen nicht nur auf ein einziges<br />

Dokument festzulegen brauchen, ergänzen<br />

Sie das Skript um einen Parameter<br />

beim Aufruf – den Dateinamen der<br />

LaTeX-Datei. Diesen Dateinamen reicht<br />

das Skript in der Variablen $1 an den Befehl<br />

pdflatex weiter (Listing 3). Die Variable<br />

$1 steht in Anführungszeichen, damit<br />

auch Dateinamen mit Leerzeichen<br />

nicht zum Stolperstein geraten.<br />

Bleibt noch das Aufräumen am Schluss,<br />

also das Löschen der Zwischendaten. In<br />

Zeile 5 von Listing 3 entfernen Sie diese<br />

über Find in Kombination mit einem<br />

Suchmuster als regulären Ausdruck û.<br />

Das Suchmuster beinhaltet mindestens<br />

ein beliebiges Zeichen (.+), gefolgt<br />

Hilfsdateien<br />

Suffix<br />

.log<br />

.toc<br />

.lof<br />

.lot<br />

.aux<br />

.idx<br />

Beschreibung<br />

Details zum letzten Übersetzen<br />

Inhaltsverzeichnis<br />

(„Table of Contents“)<br />

Verzeichnis der Abbildungen<br />

(„List of Figures“)<br />

Verzeichnis der Tabellen<br />

(„List of Tables“)<br />

Informationen zwischen den<br />

Durchläufen<br />

Mit makeindex erzeugte<br />

Indexdateien<br />

von einem Punkt (\.) und entweder der<br />

Zeichenkette aux, toc, idx oder lo in<br />

Kombination mit g, f oder t. Das Pipe-<br />

Zeichen fungiert innerhalb der runden<br />

Klammern als Oder-Operator.<br />

Eine explizite Kennzeichnung des Anfangs<br />

(^) beziehungsweise des Endes<br />

des Suchmusters ($) ist nicht erforderlich<br />

– Find fügt das eigenständig hinzu. Ausgehend<br />

vom aktuellen Verzeichnis, symbolisiert<br />

durch den Punkt, stöbert das<br />

Programm alle Dateien auf, die auf das<br />

angegebene Suchmuster passen. Mit<br />

dem Parameter ‐delete am Ende des<br />

Aufrufs löscht die Software jeden Treffer.<br />

Sie übergeben Find das Suchmuster<br />

als erweiterten POSIX-Ausdruck, was die<br />

zusätzliche Option ‐regextype posix‐extended<br />

im Aufruf notwendig<br />

macht. Nutzer von BSD oder Mac OS X<br />

nutzen stattdessen die Option ‐E.<br />

Parameter prüfen<br />

Bislang erfolgt das Abarbeiten des obigen<br />

Skriptes ohne jede Überprüfung der<br />

Listing 4<br />

01 #!/bin/bash<br />

02 <br />

03 if [ ‐z "$1" ]<br />

04 then<br />

05 echo "Aufruf: `basename $0`<br />

LaTeX‐Datei"<br />

06 exit 1<br />

07 fi<br />

08 <br />

09 if [ ! ‐f "$1" ]<br />

10 then<br />

11 echo "angegebene LaTeX‐Datei<br />

$1 nicht gefunden"<br />

12 exit 2<br />

13 fi<br />

14 <br />

15 pdflatex "$1"<br />

16 pdflatex "$1"<br />

17 pdflatex "$1"<br />

18 <br />

19 find . ‐regextype<br />

posix‐extended ‐regex '.+\.U<br />

(aux|lo[gft]|toc|idx)' ‐delete<br />

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

07.2013


LaTeX automatisieren<br />

Praxis<br />

übermittelten Parameter. Daher sollten<br />

Sie nun noch sicherstellen, dass Pdflatex<br />

zum einen als Parameter überhaupt einen<br />

Wert mit Inhalt bekommt und zum<br />

anderen die im Parameter angegebene<br />

Datei tatsächlich existiert.<br />

Dazu erweitern Sie das Listing 3 um<br />

entsprechende Abfragen (Listing 4). Die<br />

Zeile 3 von Listing 4 beinhaltet ein If-<br />

Konstrukt samt dazugehöriger Bedingung<br />

in den eckigen Klammern. Mittels<br />

‐z prüfen Sie, ob die Variable $1 leer ist –<br />

falls ja, kommt der Block zwischen then<br />

und fi zum Einsatz. In dem Fall beschwert<br />

sich das Skript mit einer Fehlermeldung<br />

über den Aufruf und bricht mit<br />

dem Rückgabewert 1 ab.<br />

Hat das Skript die erste Hürde erfolgreich<br />

gemeistert, dann überprüft es anschließend<br />

in Zeile 9, ob die fragliche<br />

Datei überhaupt existiert. Dazu kommt<br />

ein ähnliches If-Konstrukt zum Einsatz,<br />

diesmal aber in Kombination mit ‐f. Damit<br />

prüft die Bash, ob der Inhalt der Variablen<br />

$1 als Datei existiert. Falls ja, ist alles<br />

gut, und Sie sind auf der sicheren Seite.<br />

Falls nicht, erhalten Sie wieder eine<br />

Fehlermeldung, und das Skript bricht<br />

diesmal mit dem Rückgabewert 2 ab.<br />

Fazit<br />

Obwohl Tools wie Gummi û und LyX û<br />

bereits einen sehr hohen Grad an Automatisierung<br />

ermöglichen, lohnt es sich<br />

dennoch, die Hand- und Kopfarbeit in<br />

etwas Eigenes zu investieren. Für ein<br />

kleines Projekt genügt in der Regel bereits<br />

ein einfaches Skript, das Sie bei Bedarf<br />

später leicht erweitern.<br />

Falls dann etwas schiefläuft, kommen<br />

Sie in den dank Textform gut lesbaren<br />

Skript-Dateien dem Fehler schnell auf<br />

die Spur und beheben ihn ohne großen<br />

Aufwand selbst. Gleichzeitig lernen Sie<br />

auf diese Weise (in appetitlichen Häppchen)<br />

mehr über die einzelnen Tools und<br />

deren Funktion. (agr) n<br />

Weitere Infos und<br />

interessante Links<br />

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

Alles zum ThemA Android<br />

Die Monatszeitschrift für Android-Fans, Smartphone- und Tablet-Nutzer<br />

DigisuB: nur 39,90 € im Jahr (12 PDFs)<br />

Jetzt bestellen unter:<br />

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

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

57<br />

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

+<br />

Lesen Sie News und<br />

Artikel schon 1 Woche<br />

vor dem Kiosk-Termin!


Schwerpunkt<br />

UBUNTU<br />

user<br />

Tilde 0.2.2<br />

Texteditor Tilde bringt das GUI-Feeling auf die Konsole<br />

Anpassungsfähig<br />

Tilde versucht das Look & Feel<br />

der für grafische Oberflächen<br />

entwickelten Texteditoren auf<br />

die Konsole zu übertragen.<br />

Karsten Günther<br />

© Nala2409, sxc.hu<br />

Readme<br />

Oft reicht ein Texteditor ohne grafische<br />

Oberfläche vollkommen aus – etwa, um<br />

eine Konfigurationsdatei auf die Schnelle<br />

anzupassen. Verhält sich dieser Editor genau<br />

so wie seine grafischen Kollegen, fällt der<br />

Umstieg leicht. Tilde zeigt, dass das geht.<br />

Tilde einrichten<br />

Der Entwickler stellt Tilde in Form der<br />

Quelltexte bereit. Für Ubuntu gibt es darüber<br />

hinaus fertige Pakete, die Sie über<br />

eine einfache Befehlszeile einspielen<br />

( Listing 1). Die Tilde-Website beschreibt<br />

das Verfahren im Detail.<br />

Kleine Editoren für Linux gibt es viele.<br />

An häufigsten kommt heute vermutlich<br />

Nano zum Einsatz, die freie Implementation<br />

des legendären Pico-Editors, aber<br />

auch Spezialisten wie e3 und viele andere<br />

stehen hier bereit.<br />

Diese kleinen Programme haben neben<br />

dem geringen Bedarf an Plattenplatz<br />

– der sie für Mini-Distributionen<br />

und Rettungssysteme interessant macht<br />

– zusätzlich den Vorteil, dass sie extrem<br />

schnell starten. Geht es also nur um das<br />

Ergänzen oder Ändern weniger Zeilen<br />

etwa in einer Konfigurationsdatei, dann<br />

eignen sie sich dafür mindestens so gut<br />

wie die großen Brüder vom Kaliber Gvim<br />

oder Kate.<br />

Ein typisches Problem dieser Editoren<br />

liegt in der oft recht speziellen Funktionsweise,<br />

ungewöhnlichen Tastenkür-<br />

Listing 1<br />

$ wget http://os.ghalkes.nl/<br />

sources.list.d/install_repo.sh<br />

$ sudo sh ./install_repo.sh<br />

$ sudo apt‐get install tilde<br />

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

07.2013


Tilde 0.2.2<br />

UBUNTU<br />

Schwerpunkt<br />

user<br />

1 So sehen die Abhängigkeiten der Libraries für Tilde aus. Grau sind die elementaren Libraries des Systems dargestellt.<br />

zeln und dem Mangel an Möglichkeiten<br />

zum Anpassen. In der Regel verzichten<br />

die Entwickler bei den Programmen zugunsten<br />

eines kompakteren Codes auf<br />

die meisten Möglichkeiten zum Konfigurieren.<br />

Hier geht Tilde û unter geschicktem<br />

Ausnutzen von System- und Zusatzbibliotheken<br />

einen anderen Weg û und<br />

bietet deutlich mehr 1 .<br />

Das Tilde-Binary ist gerade einmal<br />

340 KByte groß, benötigt aber wie gezeigt<br />

eine ganze Reihe von Libraries.<br />

Diese sind aber in vielen Fällen, so auch<br />

bei Ubuntu, bereits im System installiert.<br />

Praxis<br />

[Strg]+[R] aktivieren Sie das Ersetzen.<br />

Dabei bietet das Programm viele Möglichkeiten<br />

3 . So unterstützt es Muster<br />

aus regulären Ausdrücken oder die Suche<br />

ausschließlich innerhalb von ausgewählten<br />

Bereichen (In Selection).<br />

Haben Sie GPM installiert, steht die<br />

Maus auch im Terminal zur Verfügung.<br />

Die können mit ihr dann nicht nur die<br />

Programmmenüs aktivieren, sondern<br />

darüber hinaus auch Bereiche auswählen.<br />

Sie starten den entsprechenden<br />

Daemon unter Debian/​Ubuntu über das<br />

folgende Kommando:<br />

$ sudo /etc/init.d/gpm start<br />

Beim ersten Start zeigt Tilde eine Information<br />

an, die Ihnen beim Einsatz von<br />

[Esc] hilft 2 . Im Menü Options passen<br />

Sie dieses Verhalten Ihren Wünschen<br />

entsprechend an. Ansonsten erfolgt die<br />

Arbeit fast so wie mit einem beliebigen<br />

Editor mit grafischer Oberfläche. Über<br />

[Umschalt] und die Pfeiltasten markieren<br />

Sie Text, [Strg]+[X] schneidet ihn aus,<br />

[Strg]+[C] kopiert ihn,<br />

und [Strg]+[V] fügt<br />

ihn wie gewohnt an<br />

der Position des Cursors<br />

wieder ein.<br />

Die Suche nutzen<br />

Sie mit [Strg]+[F].<br />

Über [F3] springen Sie<br />

zum nächsten Treffer,<br />

über [Umschalt]+[F3]<br />

zum vorigen. Mit<br />

Durch den Einsatz der ebenfalls vom<br />

Tilde-Entwickler stammenden Bibliothek<br />

libt3highlight verfügt Tilde über eine<br />

konfigurierbare Highlight-Funktion û.<br />

Das nützt bei vielerlei Aufgaben, unter<br />

anderem dem Bearbeiten von Konfigurationsdateien,<br />

da es die Übersicht deutlich<br />

erhöht. Tilde unterstützt diese Arbeiten<br />

übrigens auch durch eine spezielle<br />

2 Diese Fenster mit Informationen zum Einsatz der Escape-<br />

Taste zeigt Tilde nur beim ersten Start.<br />

TIPP<br />

Müssen Sie mit Platz geizen, greifen Sie<br />

am besten zum Editor Nano, der sich sogar<br />

noch deutlich genügsamer gibt als<br />

Tilde: Das Binärprogramm belegt gerade<br />

mal 192 008 Bytes und benötigt deutlich<br />

weniger Bibliotheken.<br />

Listing 2<br />

format = 1<br />

[...]<br />

%lang {<br />

name = "Shell"<br />

name‐regex = "^(?i)(?:ba)?sh$"<br />

file‐regex = "(?i)\.sh$"<br />

lang‐file = "sh.lang"<br />

}<br />

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

61


Schwerpunkt<br />

UBUNTU<br />

user<br />

Tilde 0.2.2<br />

3 Beim Suchen und Ersetzen bietet Tilde mehr Features als viele andere Editoren.<br />

Weitere Infos und<br />

interessante Links<br />

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

Suchfunktion, mit der Sie zu Klammern<br />

das jeweils passende Gegenstück finden.<br />

Spezialitäten<br />

Das Syntax-Highlighting passen Sie bei<br />

Bedarf ganz einfach in der Datei lang.map<br />

an, die Sie unter /usr/share/ oder / usr/<br />

local/share im Verzeichnis libt3highlight‐Version<br />

finden. Für ein neues<br />

Highlighting definieren Sie darin zwischen<br />

geschweiften Klammern mit regulären<br />

Ausdrücken ein Muster, über welches<br />

das Programm dann ein sogenanntes<br />

Language-File (in unserem Beispiel<br />

sh.lang, Listing 2) nachlädt. Entsprechende<br />

XML-Dateien für C/​C++, Python,<br />

Java, LaTeX, XML und vieles andere mehr<br />

stellt das zumeist schon installierte Paket<br />

libgtksourceview2.0-common bereit. Die<br />

dort enthaltenen Dateien können Sie je<br />

nach Bedarf ergänzen oder modifizieren.<br />

Zu den weiteren praktischen Funktionen<br />

von Tilde zählt die Möglichkeit, zwei<br />

oder mehr geladene Dateien gleichzeitig<br />

anzuzeigen und zwischen ihnen zu<br />

wechseln. Dabei bietet das Programm<br />

mit Split Horizontal und Split Vertical im<br />

Menü Window zwei Möglichkeiten an,<br />

die Bereiche zu arrangieren. Über Next<br />

Window oder [F8] springen Sie dabei<br />

vorwärts durch die Fensterliste, mit<br />

Previous Window oder [Umschalt]+[F8]<br />

wechseln Sie gegenläufig 4 .<br />

Vielschreiber wissen die Kombination<br />

[Strg]+[Leertaste] zu schätzen: Sie versucht<br />

das aktuelle Wort automatisch zu<br />

komplettieren. Bei mehreren Möglichkeiten<br />

zeigt Tilde eine Liste an, was etwas<br />

umständlicher ausfällt als die vom<br />

Emacs bereitgestellte Funktion.<br />

Eigentliche sollte Tilde in der Lage<br />

sein, mit Unicode-Zeichen korrekt umzugehen.<br />

Das funktioniert bei der Eingabe,<br />

Anzeige und dem Einfügen via Clipboard<br />

auch tadellos. Die speziell dafür<br />

vorgesehene Funktion Insert Character<br />

([F9]) führte im Test von Tilde 0.2.2 unter<br />

Ubuntu-Versionen nach 12.04 wiederholt<br />

zu Abstürzen mit Core-Dumps.<br />

Fazit<br />

4 Tilde öffnet und bearbeitet bei Bedarf auch mehrere Dateien gleichzeitig und ermöglicht<br />

es auf diese Weise, deren Inhalte abwechselnd zu bearbeiten.<br />

Erfahrene Anwender finden in Tilde<br />

wohl keinen Ersatz für den individuellen<br />

Lieblings-Editor, sei es nun Emacs oder<br />

Vim. Beide erlauben ebenfalls den Einsatz<br />

in einem Terminalemulator.<br />

Das kleine Programm wendet sich<br />

vielmehr an Anwender, die nur gelegentlich<br />

auf der Konsole arbeiten. Sie<br />

können in Tilde mit den aus der grafischen<br />

Benutzeroberfläche gewohnten<br />

Tastenbindungen arbeiten und brauchen<br />

auch dort nicht auf Komplettierungen<br />

und ein komfortables Highlighting<br />

zu verzichten. (agr/​jlu) n<br />

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

07.2013


Community-<br />

Edition<br />

CC-Lizenz:<br />

Frei kopieren und<br />

weiter verteilen!<br />

Jeden Monat 32 Seiten als kostenloses PDF!<br />

Jetzt bestellen unter:<br />

http://www.linux-user.de/ce


Schwerpunkt<br />

UBUNTU<br />

user<br />

Ubuntu Gnome 13.04<br />

Ubuntu mit Gnome Shell<br />

statt Unity-Desktop<br />

Neues<br />

Gesicht<br />

© Hornharry, Photocase<br />

Nicht alle Ubuntu-Anwender<br />

begeistern sich vorbehaltslos<br />

für den Unity-Desktop. Wer<br />

trotzdem nicht gleich die<br />

Distribution wechseln will,<br />

dem verspricht Ubuntu<br />

Gnome 13.04 einen Ausweg.<br />

Thomas Drilling<br />

Readme<br />

Möchten Sie eine aktuelle Gnome-Version<br />

mit Ubuntu als Fundament nutzen, müssen<br />

Sie seit wenigen Wochen keinen größeren<br />

Aufwand mehr treiben: Mit Ubuntu Gnome<br />

steht erstmals wieder eine offizielle Ubuntu-<br />

Variante mit Gnome-Desktop zur Verfügung.<br />

Unity spaltet die Ubuntu-Anwender in<br />

Fans und Verweigerer. Da mit der drohenden<br />

Einführung von Canonicals neuem<br />

Display-<strong>Server</strong> Mir auch für das Kubuntu-Projekt<br />

potenziell Probleme ins<br />

Haus stehen, wird es für Ubuntu wohlgesonnene<br />

Nutzer, die kein Unity nutzen<br />

wollen, langsam eng (siehe auch Kasten<br />

Kubuntu und Mir).<br />

Mit Ubuntu wird auf lange Sicht wohl<br />

nur der glücklich, der Unity und das<br />

kommende Unity Next ohne Wenn und<br />

Aber befürwortet. Das trifft wohl am<br />

ehesten auf Umsteiger aus der Windows-<br />

und vor allem der Mac-Welt zu,<br />

weil sich Unity im Look & Feel von Version<br />

zu Version mehr an Mac OS X orientiert.<br />

Spitze Zungen behaupten, viele<br />

Windows-Umsteiger hätten sich deshalb<br />

für Ubuntu entschieden, weil sie mit<br />

Linux nicht zurechtgekommen seien.<br />

Fallback-Modus<br />

Seit Canonical zudem Unitys 2D-Fallback-Modus<br />

entfernt hat und für Grafikkarten<br />

ohne OpenGL-Treiber ausschließlich<br />

auf Llvmpipe û setzt, stellt der Einsatz<br />

von Ubuntu mit Unity in einer virtuellen<br />

Maschine oder auf schwachbrüstiger<br />

Hardware hinsichtlich der Performance<br />

eine Katastrophe dar und ist<br />

kaum mehr zumutbar.<br />

Das ist an sich aber kein Problem von<br />

Ubuntu/​Unity, sondern betrifft Gnome 3.8<br />

ebenso: Auch die Gnome-Entwickler haben<br />

bekanntlich den alten Fallback-<br />

Modus mit Einführung der neuen Version<br />

3.8 entfernt. Zwar gibt es in Gnome 3.8<br />

neuerdings wieder einen Classic-Modus,<br />

doch der dient nur dazu, für Gnome-2-<br />

Liebhaber die alten Menüs an den oberen<br />

Bildschirmrand zu packen. Nichtsdestotrotz<br />

läuft im Hintergrund die Gnome<br />

Shell, sodass sich auch Gnome 3.8<br />

nur mit einem funktionierenden<br />

OpenGL- Treiber oder Llvmpipe vernünftig<br />

nutzen lässt.<br />

Das gilt für KDE übrigens nicht, wie der<br />

KWin-Maintainer Martin Gräßlin Ende<br />

letzten Jahre in einem umfangreichen<br />

Blog-Post û detailliert erläuterte. Wer<br />

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

07.2013


Ubuntu Gnome 13.04<br />

UBUNTU<br />

Schwerpunkt<br />

user<br />

also Linux derzeit in einer virtuellen Maschine<br />

nutzen will oder muss, der sollte<br />

besser zu einer Distribution mit guter<br />

KDE-Integration greifen, wie beispielsweise<br />

OpenSuse.<br />

Auch wenn das Problem mit dem nicht<br />

mehr vorhandenen 2D-Fallback-Modus<br />

von Unity oder Gnome 3.8 alle Distributionen<br />

betrifft, ist unter Fachleuten kein<br />

Geheimnis, dass Ubuntus Grafik-Stack<br />

reichlich Probleme verursacht, was auch<br />

ein Blick in den Bugtracker offenbart.<br />

Ubuntu ohne Unity<br />

Wer Ubuntu bisher aus verschiedenen<br />

Gründen befürwortet – die Distribution<br />

hat ja durchaus auch ihre Reize – aber<br />

den Standard-Desktop Unity nicht mag,<br />

der greift wahlweise zu einem offiziellen<br />

Ubuntu-Derivat mit alternativem Desktop<br />

wie Lubuntu oder Xubuntu oder –<br />

wenn es ein leistungsfähiger Kingsize-<br />

Desktop sein soll – zu Kubuntu. Daneben<br />

erfreut sich Linux Mint mit seinem<br />

innovativen Cinnamon-Desktop immer<br />

größerer Beliebtheit.<br />

Darüber hinaus gibt es noch eine Reihe<br />

inoffizieller, nichtsdestoweniger aber<br />

sehr interessanter Ubuntu-Ableger wie<br />

etwa den Ubuntu Cinnamon Remix û.<br />

Die Zukunft von Kubuntu steht allerdings<br />

ebenfalls in den Sternen, weil dessen<br />

KDE-Team künftig auf Wayland setzen<br />

wird und bereits bekannt gegeben<br />

hat, Canonicals Display <strong>Server</strong> Mir nicht<br />

zu unterstützen.<br />

Eine weitere Möglichkeit, unter Ubuntu<br />

einen anderen Desktop als Unity zu nutzen,<br />

stellt das manuelle Nachinstallieren<br />

der entsprechenden Pakete für LXDE,<br />

XFCE, KDE, Gnome oder Maté (Gnome 2)<br />

dar, was angesichts der Verfügbarkeit<br />

der bereits genannten Alternativen nur<br />

dann eine praktikable Option ist, wenn<br />

von vorneherein mehrere Desktops<br />

parallel zum Einsatz kommen sollen.<br />

Man muss sich dann nur für einen der<br />

Login-Manager LightDM (Standard seit<br />

Ubuntu 11.10) oder GDM entscheiden.<br />

Ubuntu Gnome<br />

Möchten Sie eine aktuelle Gnome-Version<br />

mit Ubuntu als Fundament nutzen,<br />

dann müssen Sie seit wenigen Wochen<br />

keinen größeren Aufwand mehr treiben,<br />

denn mit Ubuntu Gnome û steht seit<br />

„Raring Ringtail“ erstmals wieder eine<br />

offizielle Ubuntu-Variante mit Gnome-<br />

Desktop zur Verfügung. Der Download<br />

gelingt am schnellsten von Canonicals<br />

Image-<strong>Server</strong> û.<br />

Inoffiziell gibt es Ubuntu Gnome unter<br />

der Bezeichnung „Ubuntu GNOME Remix“<br />

bereits seit der Version 12.10. Die<br />

Installation an sich unterscheidet sich<br />

nicht von jener von Ubuntu. Allerdings<br />

ist auch der Grafik-Stack (wie zu erwarten)<br />

nicht besser als unter Ubuntu und<br />

der Betrieb in einer virtuellen Maschine<br />

nach wie vor eine Zumutung: Bis das<br />

System auf Mausklicks reagiert, vergehen<br />

gefühlt Minuten.<br />

Schuld ist der auf Llvmpipe basierende<br />

Ausweichmodus, der die Nutzung von<br />

Unity 3D oder Gnome 3.8 auf Systemen<br />

ermöglicht, auf denen kein OpenGL-Treiber<br />

zur Verfügung steht. Distributionen<br />

wie Ubuntu lassen die Grafik dann via<br />

Llvmpipe vom der CPU statt der GPU berechnen,<br />

woraus die unerträgliche Langsamkeit<br />

resultiert.<br />

Der Einsatz von Llvmpipe mag für den<br />

nativen Einsatz eine praktikable Lösung<br />

darstellen, stößt aber in einer virtuellen<br />

Maschine an seine Grenzen. Ob bei Ihnen<br />

der Gallium-Llvmpipe-Treiber zum<br />

Einsatz kommt, finden Sie leicht heraus,<br />

indem Sie in den Systemeinstellungen<br />

Informationen | Grafik anklicken 1 .<br />

Kubuntu und Mir<br />

Ubuntu Gnome versteht sich wie Kubuntu als Alternative für Ubuntu-Nutzer, die den<br />

Unity-Desktop nicht mögen. Da sich angesichts der Tatsache, dass Canonical mit Mir<br />

einen eigenen Display-<strong>Server</strong> plant, inzwischen sowohl das KDE-Projekt als auch die<br />

Gnome-Entwickler für einen baldigen Wechsel auf Wayland als Display-<strong>Server</strong> ausgesprochen<br />

haben, steht die Zukunft von Projekten wie Kubuntu und Ubuntu Gnome<br />

derzeit in den Sternen.<br />

Zumindest die KDE-Entwickler haben durch den KWin-Maintainer Martin Gräßlin inzwischen<br />

unmissverständlich klar gemacht û, dass KDE Mir nicht unterstützen wird.<br />

Aus KDE-Sicht brächte Mir keinen einzigen Vorteil gegenüber Wayland, als Nachteil<br />

stünden dem mindestens das instabile Protokoll und die Lizenzprobleme gegenüber.<br />

Für zusätzliche Verwirrung sorgt in dieser Situation, dass das Kubuntu-Team bereits<br />

Mir-Unterstützung angekündigt hat: Dazu müssten die Kubuntu-Entwickler Downstream-Patches<br />

einführen, was die Stabilität nicht eben zu fördern verspricht.<br />

1 Als Verursacher der virtuellen Langsamkeit<br />

entpuppt sich Llvmpipe. Allerdings gibt es derzeit<br />

dazu keine Alternative – außer einem Umstieg<br />

auf KDE, Maté, LXDE oder XFCE.<br />

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

65


Schwerpunkt<br />

UBUNTU<br />

user<br />

Ubuntu Gnome 13.04<br />

2 Das obligatorische Installieren der VBox-Gastsystem-Treiber beim Betrieb in einer VM.<br />

In der virtuellen Maschine<br />

Unabhängig vom Llvmpipe-Problem besteht<br />

die erste Amtshandlung beim Betrieb<br />

von Ubuntu Gnome unter Virtual-<br />

Box im Installieren der VirtualBox-Gastsystem-Treiber.<br />

Diese sorgen zumindest<br />

für eine vernünftige Auflösung mit akzeptabler<br />

Farbtiefe und regeln das Problem<br />

„überschüssiger“ Mauszeiger.<br />

Im Test klappte das Nachrüsten über<br />

Ubuntus Software-Center allerdings<br />

nicht: Dieses lief in der virtuellen Maschine<br />

nicht vernünftig und quittierte jeglichen<br />

Startversuch konsequent mit der<br />

Meldung Es wurde ein Problem mit der<br />

Systemanwendung gefunden. Die Anwendung<br />

stürzte dann zwar nicht vollends<br />

ab, es ließen sich jedoch weder<br />

Paketquellen hinzufügen noch die Suchfunktion<br />

verwenden.<br />

Zum Installieren des VirtualBox-Gastsystem-Treibers<br />

binden Sie entweder<br />

das vom Hostsystem zur Verfügung gestellte<br />

ISO ein und führen das Installations-Skript<br />

vom entsprechenden CD-<br />

Laufwerk aus 2 , oder Sie greifen stattdessen<br />

zur Kommandozeile und installieren<br />

die entsprechenden VirtualBox-<br />

Treiber direkt aus den Ubuntu-Paketquellen<br />

des Gastsystems 3 :<br />

$ sudo apt‐get install virtualboxU<br />

‐guest‐utils virtualbox‐guest‐dkms<br />

Bei der Gelegenheit empfiehlt es sich,<br />

auch gleich den GTK-Paketmanager Synaptic<br />

mit apt‐get install synaptic<br />

zu installieren und mit apt‐get upgrade<br />

gegebenenfalls erste Aktualisierungen<br />

einzuspielen. Der Default-Kernel ist mit<br />

der Versionsnummer 3.8.0-19 auf einem<br />

recht aktuellen Stand.<br />

Für die Gnome Shell an sich gilt das<br />

nicht, denn diese trägt noch die Versionsnummer<br />

3.6 4 , obwohl bereits seit<br />

Ende März Gnome 3.8 verfügbar ist. Der<br />

Grund dafür dürfte wohl darin zu suchen<br />

sein, dass Gnome 3.6 noch den Fallback-<br />

Modus besitzt. Dessen Code pflegen die<br />

Entwickler aber nicht mehr weiter und<br />

haben ihn in Gnome 3.8 vollends aus der<br />

Desktop-Umgebung entfernt.<br />

Auf dem PC<br />

3 Die Vbox-Gastsystem-Treiber finden sich auch in den Ubuntu Paketquellen.<br />

Betreiben Sie Ubuntu Gnome allerdings<br />

nicht in einer virtuellen Maschine, sondern<br />

auf physischer Hardware mit funktionierendem<br />

OpenGL-Treiber, dann<br />

können und sollten Sie zügig auf<br />

Gnome 3.8 aktualisieren.<br />

Das gelingt über das Launchpad-PPA<br />

gnome3-team/​gnome3 problemlos. Das<br />

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

07.2013


Ubuntu Gnome 13.04<br />

UBUNTU<br />

Schwerpunkt<br />

user<br />

Ist das PPA erst einmal importiert, nehmen<br />

Sie die Aktualisierung auf das neue<br />

Gnome 3.8 problemlos beispielsweise in<br />

Synaptic vor 5 . Hierzu genügt ein Klick<br />

auf Alle Aktualisierungen vormerken. Fühlen<br />

Sie sich auf der Kommandozeile wohler,<br />

dann nutzen Sie zum Update die beiden<br />

Befehle aus Listing 1.<br />

Fazit<br />

4 Ubuntu Gnome basiert noch auf der Version 3.6 der Gnome Shell.<br />

Einbinden der Paketquelle erledigen Sie<br />

am schnellsten auf der Kommandozeile<br />

mit folgendem Befehl:<br />

$ sudo add‐apt‐repository ppa:gnoU<br />

me3‐team/gnome3<br />

Dass es mit Ubuntu Gnome wieder eine<br />

offizielle Ubuntu-Variante mit Gnome-<br />

Desktop gibt, interpretieren viele Unity-<br />

Kritiker als pikantes Zugeständnis von<br />

Canonical. Das ist es aber keineswegs,<br />

denn die Distribution stammt ja nicht<br />

von Canonical, auch wenn sie den Status<br />

eines offiziellen Derivates genießt. Zudem<br />

macht Gnome 3 ein Ubuntu-System<br />

im Vergleich zu Unity auch nicht unbedingt<br />

besser, sondern hebt bestenfalls<br />

dessen Attraktivität für die Zielgruppe<br />

der eingefleischten Gnome-Anwender.<br />

Wer allerdings primär eine aktuelle<br />

Distribution mit Gnome-3-Desktop nutzen<br />

will, sollte vielleicht besser zu Fedora<br />

greifen, das dem Gnome-Projekt traditionell<br />

ebenfalls nahesteht und sich insbesondere<br />

in der jeweils „vorigen“ Version<br />

(derzeit Fedora 17) als sehr stabil erweist,<br />

sofern sämtliche Updates eingespielt<br />

sind. Außerdem muss man sich hier nicht<br />

über unerwünschte Kaufvorschläge in<br />

der Desktop-Suche oder Werbeeinblendungen<br />

im Paketmanager ärgern.<br />

Wie es in Bezug auf Canonicals eigenen<br />

Display-<strong>Server</strong> Mir mit Kubuntu und<br />

Ubuntu Gnome weitergeht, steht derzeit<br />

noch in den Sternen. Daher gilt in Bezug<br />

auf die Distribution mit den lustigen Tiernamen<br />

mehr denn je: entweder Linux<br />

oder Ubuntu. Dass Mark Shuttleworth<br />

„sein“ Ubuntu auf lange Sicht eher zu einem<br />

eigenen Betriebssystem ausbauen<br />

will als nur zu einem „besseren Debian“,<br />

war im Grunde genommen von Anfang<br />

an klar. Daraus haben weder er noch seine<br />

Firma je einen Hehl gemacht. (jlu) n<br />

Listing 1<br />

$ sudo apt‐get update<br />

$ sudo apt‐get dist‐upgrade<br />

Weitere Infos und<br />

interessante Links<br />

5 Ein Update auf Gnome 3.8 ist mit dem Paketmanager schnell erledigt.<br />

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

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

67


Netz&System<br />

SmartPM<br />

Debian-Pakete verwalten mit dem Smart Package Manager<br />

Mit allen Extras<br />

Hinter SmartPM verbirgt<br />

sich ein kleiner Werkzeugkasten<br />

für das Paketmanagement,<br />

der alltägliche Aufgaben einfach<br />

macht, aber Profis die volle Kontrolle ermöglicht. Frank Hofmann<br />

© Andrewatla, sxc.hu<br />

Readme<br />

Das in Python geschriebene SmartPM beherrscht<br />

alle wesentlichen Funktionen der<br />

Paketverwaltung. Eine mächtige Schnittstelle<br />

für die Kommandozeile erlaubt zudem die<br />

volle Kontrolle über das Softwaremanagement.<br />

SmartPM versteht sich auf verschiedene<br />

Systeme – wir zeigen, wie Sie es auf<br />

DEB-basierten Distributionen einsetzen.<br />

Paketmanager vereinfachen die oftmals<br />

komplexen Vorgänge beim Verwalten<br />

der Software auf einem Linux-System.<br />

Dabei existieren Tools für die Kommandozeile,<br />

Werkzeuge mit graphischer<br />

Oberfläche und sogar webbasierte<br />

Schnittstellen. SmartPM gelingt es mit<br />

Bravour, die Funktionen für die Kommandozeile<br />

mit einer ansprechenden<br />

grafischen Oberflächen zu kombinieren.<br />

Außerdem versteht sich die Software auf<br />

verschiedene Paketformate.<br />

Das Programm steht auf der Webseite<br />

des Projektes û bereit. Alternativ finden<br />

Sie das aktuelle Paket für verschiedene<br />

Distributionen auf der Heft-DVD der<br />

Media-Ausgabe. Aktionen, bei denen Sie<br />

den Paketbestand ändern, setzen Administratorrechte<br />

voraus.<br />

Die verschiedenen Bedienmodi aktivieren<br />

Sie beim Programmaufruf. Die<br />

grafische Benutzeroberfläche (GUI) erreichen<br />

Sie über das Kommando smart und<br />

auf Wunsch mit der Option ‐‐gui, die interaktive<br />

Applikation für die Konsole<br />

hingegen über ‐‐shell. Dieses Interface<br />

gleicht dem von Apt und Aptitude. Fügen<br />

Sie die Option ‐‐gui im Aufruf hinzu,<br />

wechselt SmartPM vor dem Ausführen<br />

in den Grafikmodus und zeigt in<br />

Form eines farbigen Ladebalkens den<br />

Fortschritt bei der Arbeit an.<br />

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

07.2013


SmartPM<br />

Netz&System<br />

Das modular konzipierte SmartPM versteht<br />

sich auf die Paketformate DEB und<br />

RPM. Darüber hinaus verwaltet es Tar-<br />

Archive für Slackware. Jede Paketquelle<br />

bindet es als sogenannten Channel ein.<br />

Oberfläche<br />

Die Oberfläche bedienen Sie über eine<br />

Menüleiste und eine Reihe von Schaltflächen.<br />

Die Übersicht beinhaltet die Kategorien<br />

der Software und Informationen<br />

zu den Paketen sowie die entsprechenden<br />

Details zur Auswahl. Den Abschluss<br />

am unteren Fensterrand bildet die Statuszeile<br />

mit der Summe der verfügbaren<br />

und bereits installierten Pakete 1 .<br />

Über den Unterpunkt Datei | Alle Kanäle<br />

aktualisieren bringen Sie die Listen mit<br />

den Informationen über die Pakete auf<br />

den neuesten Stand. Eine individuelle<br />

Auswahl gelingt mithilfe von Ausgewählten<br />

Kanal aktualisieren 2 . Letztere Funktion<br />

gibt es bislang nur bei SmartPM, bei<br />

Apt und Aptitude steht sie hingegen seit<br />

Längerem auf der Wunschliste der Erweiterungen<br />

û.<br />

Über den Eintrag Bearbeiten aus der<br />

Menüleiste prüfen Sie verwendete Pakete<br />

auf ungelöste Abhängigkeiten, verwalten<br />

die Repositories, markieren Pakete<br />

und vergeben Prioritäten für die Bezugsquellen.<br />

Damit nehmen Sie direkt<br />

Einfluss darauf, wie das Programm die<br />

Quellen auswertet. Abbildung 3 zeigt<br />

dies für das Paket gnome-sudoku.<br />

Über den Eintrag Anzeigen filtern Sie<br />

die Anzeige in der Auswahlliste der Pakete<br />

und sehen darüber zum Beispiel<br />

nur die nicht aktualisierbaren, die gesperrten<br />

(hold) oder die installierten Pakete.<br />

Zudem wählen Sie über den Menüpunkt<br />

Anzeigen |Baumansicht zwischen<br />

der Sortierung nach Kategorien, Paketquellen<br />

oder nach Paketgruppen.<br />

Unter dem Eintrag Hilfe finden Sie neben<br />

den Informationen zur jeweiligen<br />

Programmversion eine Übersicht zu den<br />

von SmartPM verwendeten Symbolen.<br />

Wichtige Menüpunkte sind zusätzlich als<br />

Knöpfe ausgeführt, wie die Korrektur der<br />

letzten Änderungen und das komplette<br />

Aktualisieren aller installierten Pakete<br />

auf einem System.<br />

Rechts daneben finden Sie ein Eingabefeld,<br />

dessen Inhalt als Filter für die Paketliste<br />

fungiert. Dabei erfolgt allerdings<br />

keine Suche in den Beschreibungen<br />

oder über die Dateinamen im Archiv.<br />

Abbildung 1 zeigt nur Einträge, bei denen<br />

die Zeichenkette smartpm im Namen<br />

des Paketes vorkommt.<br />

Nach der Wahl eines Paketes aus der<br />

Liste zeigt SmartPM darunter weitere<br />

Details an. Neben allgemeinen Informationen<br />

wie Status, Priorität, Kategorie,<br />

Größe, Paketquelle und URL finden Sie<br />

hier die Beschreibung sowie die Liste der<br />

Dateien, die das Paket mitbringt. Außerdem<br />

gibt das Protokoll der Änderungen<br />

(ChangeLog) Auskunft über die Entwicklungsschritte,<br />

und Sie sehen, von welchen<br />

anderen Paketen eine Software abhängt<br />

oder welche es empfiehlt. Zur Ansicht<br />

des jeweiligen Details wählen Sie<br />

den passenden Reiter aus.<br />

Parameter<br />

Mehr Aktionen stehen über die Schnittstelle<br />

für die Kommandozeile bereit. Die<br />

Schreibweise und Funktion der Optionen<br />

deckt sich in vielen Fällen mit jenen<br />

der Debian-Werkzeuge Apt, Apt-get,<br />

SmartPM 1.4.1<br />

LU/smartpm/<br />

1 Einfach und übersichtlich: SmartPM vereinfacht das Verwalten von Software.<br />

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

69


Netz&System<br />

SmartPM<br />

‐‐download lädt das Programm die Archive<br />

nur herunter, installiert aber nichts.<br />

Mit dem Kommando smart reinstall<br />

Paket installieren Sie ein Paket erneut,<br />

mit smart remove Paket löschen Sie es.<br />

Es fehlt aber eine Option im Stil von<br />

Aptitudes ‐‐purge für das vollständige<br />

Entfernen der Konfigurationsdateien.<br />

2 Bei Bedarf bringen Sie nur einzelne<br />

Software-Listen auf den neuesten Stand<br />

und sparen so Zeit beim Herunterladen.<br />

Aptitude û und Apt-cache. Zudem haben<br />

die Entwickler die Software um etliche<br />

sinnvolle Optionen ergänzt.<br />

Die gesamten Paketquellen aktualisieren<br />

Sie über das Kommando smart update.<br />

Mit dem Aufruf smart update<br />

Quelle frischen Sie hingegen nur die Liste<br />

zu einer bestimmten Quelle auf. Pakete<br />

installieren Sie über smart install<br />

Paket. Mit der zusätzlichen Option<br />

Erst prüfen<br />

Mit smart update Paket hieven Sie die<br />

bestehenden Pakete mit Sicherheitspatches<br />

auf den neuesten Stand, smart upgrade<br />

Paket spielt eine neuere Version<br />

des Paketes ein. Ob überhaupt Aktualisierungen<br />

vorliegen, verraten Ihnen die<br />

beiden Optionen ‐‐check und<br />

‐‐check‐update. Erstere prüft nur, ob es<br />

Neuigkeiten gibt, die zweite prüft und<br />

aktualisiert in einem Zug.<br />

Des Weiteren validiert SmartPM die<br />

Abhängigkeiten mit smart check und<br />

repariert diese durch Nachinstallieren<br />

oder Entfernen von Paketen. Dazu dient<br />

das Kommando smart fix. Den gesamten<br />

Cache räumen Sie mit dem Aufruf<br />

von smart clean auf.<br />

Die Abfragen zu den installierten und<br />

den Paketen, welche die Quellen bereitstellen,<br />

erscheinen noch nicht ganz ausgefeilt.<br />

Im Test gab es Ungereimtheiten<br />

in Form fehlerhafter Ausgaben. Eine Suche<br />

nach Paketen über den Namen, die<br />

Zusammenfassung und die Beschreibung<br />

gelingt über den Aufruf smart<br />

search Paket. Die Option ‐‐installed<br />

listet offiziell nur die installierten Pakete<br />

auf, zeigt in der Realität aber deutlich<br />

3 Über die Prioritäten bestimmen Sie<br />

gezielt, aus welcher Quelle der Paketmanager<br />

eine konkrete Software bezieht.<br />

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

07.2013


SmartPM<br />

Netz&System<br />

mehr 4 . Gleiches gilt für die Suche<br />

nach verfügbaren Paketen mittels smart<br />

query Paket sowie die Ausgabe der Informationen<br />

mittels smart info Paket.<br />

Bei Letzterem fehlt in der Ausgabe die<br />

Paketbeschreibung. Diese Patzer leistet<br />

sich SmartPM in der GUI nicht.<br />

Interaktiv<br />

Das interaktive Interface von SmartPM<br />

gleicht in vielerlei Hinsicht der Apt-<br />

Shell û. Über ein Terminal stehen die<br />

speziellen Kommandos wie install,<br />

remove, reinstall sowie update, upgrade,<br />

check und fix bereit. Deren Funktion<br />

deckt sich mit den bereits vorgestellten<br />

Optionen. Eine Ausnahme bildet<br />

ls, über das Sie komfortabel in der Liste<br />

der Pakete blättern.<br />

Wichtig ist, dass die Software die einzelnen<br />

Operationen zunächst nur auf<br />

dem Cache ausführt. Erst das Kommando<br />

commit setzt die Änderungen im System<br />

um. Abbildung 5 zeigt den vollständigen<br />

Ablauf beim Entfernen des<br />

Paketes mc.<br />

Eine vollständige Liste aller übrigen<br />

Kommandos erhalten Sie mittels help<br />

über die integrierte Hilfe. Zum Verlassen<br />

des Shell-Modus tippen Sie entweder<br />

EOF, exit oder quit ein. SmartPM merkt<br />

sich die von Ihnen getippten Kommandos,<br />

aber nicht die vorgemerkten Operationen.<br />

Es verhält sich damit anders als<br />

Aptitude, das über eine solche Art von<br />

Gedächtnis verfügt.<br />

4 Die Suchen nach dem Begriff solr fördert mehr Treffer zutage als erwartet. Diese<br />

Funktion von SmartPM weist in der jetzigen Form noch einen Fehler auf.<br />

von der Apt-Familie her kennen. Dieser<br />

Modus eignet sich für alle, die den vollen<br />

Umfang der Funktionen des Paketmanagements<br />

ausreizen möchten.<br />

Negativ fiel im Test die unvollständige<br />

Lokalisierung auf, die sich in einem<br />

Mischmasch aus deutschen und englischen<br />

Begriffen offenbart. Ebenso traten<br />

kleine Fehler in der CLI ans Licht: Hier<br />

funktionieren nicht alle Optionen einwandfrei.<br />

Insgesamt machte die Software<br />

aber einen sehr positiven Eindruck.<br />

Bleibt abzuwarten, ob die Entwickler das<br />

Potenzial, das das Programm bietet, in<br />

Zukunft voll ausschöpfen. (agr) n<br />

Weitere Infos und<br />

interessante Links<br />

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

Fazit<br />

Der Paketmanager SmartPM ist eine runde<br />

Sache: Auf der einen Seite bietet es<br />

alle Funktionen, die Sie im Alltag benötigen,<br />

kompakt in einer Oberfläche. Die<br />

glänzt mit einem durchdachten Konzept,<br />

läuft stabil und erscheint auf Anhieb<br />

verständlich. Analog zu PackageKit<br />

versucht das Programm, ein einheitliches<br />

Frontend für verschiedene Systeme<br />

zu bieten. Damit vereinfacht sich das<br />

Warten verschiedener Distributionen.<br />

Auf der anderen Seite kombiniert die<br />

Software mit der Shell-Schnittstelle die<br />

verschiedenen Funktionen, wie Sie sie<br />

5 Das Programm SmartPM bearbeitet zuerst nur den Paketpuffer. Erst, wenn Sie die gewünschten<br />

Operationen bestätigen, setzt die Software die Änderungen im System um.<br />

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

71


Netz&System<br />

Zulucrypt<br />

Dateien und Laufwerke<br />

verschlüsseln<br />

Hinter<br />

Schloss<br />

und Riegel<br />

Gegenüber den sonst dazu verwendeten<br />

Kommandozeilenwerkzeugen erleichtert<br />

Zulucrypt das Verschlüsseln privater<br />

Datenbestände wesentlich, ohne dass<br />

Sie dabei Abstriche beim Leistungsumfang<br />

in Kauf nehmen müssten.<br />

Erik Bärwaldt<br />

Readme<br />

Die Sicherheit persönlicher Daten wird auch<br />

unter Linux inzwischen ganz groß geschrieben.<br />

Mit Zulucrypt erhalten Sie ein passendes<br />

Tool zum unkomplizierten Verschlüsseln<br />

aller Datenbestände.<br />

Externe Datenträger erfreuen sich allgemein<br />

großer Beliebtheit. Mit ihnen<br />

lassen sich auch große Datenmengen<br />

schnell und unkompliziert sichern, ohne<br />

dass man dabei ein Vermögen für Backup-Medien<br />

ausgeben müsste. Doch<br />

transportable Festplatten oder USB-<br />

Sticks gehen wegen ihrer kompakten<br />

Abmessungen und ihres geringen Gewichtes<br />

auch leicht verloren oder können<br />

gestohlen werden.<br />

Daher sollten Sie Ihre persönlichen<br />

Datenbestände nie auf solchen Massenspeichern<br />

ablegen, ohne sie durch eine<br />

wirkungsvolle Verschlüsselung vor neugierigen<br />

Blicken zu schützen. Mit dem<br />

Duo Dm_crypt/​Cryptsetup und der<br />

komfortablen grafischen Oberfläche Zulucrypt<br />

gelingt das im Handumdrehen.<br />

Vorbereitungen<br />

Unter dem freien Betriebssystem hat<br />

sich als Standardverfahren zur Datenverschlüsselung<br />

eine Kombination aus<br />

dem Kernel-Modul Dm_crypt und dem<br />

auf der Kommandozeile eingesetzten<br />

Tool Cryptsetup etabliert. Mithilfe des<br />

Duos verschlüsseln Sie auch Gerätedateien<br />

und ganze Partitionen. Die in<br />

Cryptsetup seit Version 1.0.5 enthaltene<br />

Erweiterung LUKS vereinheitlicht zudem<br />

das Datei-Format und erlaubt den Einsatz<br />

mehrerer Schlüssel.<br />

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

07.2013


Zulucrypt<br />

Netz&System<br />

das neu angelegte Unterverzeichnis.<br />

Hier sollten Sie unbedingt die Datei<br />

BUILD_INSTRUCTIONS lesen und zur Installation<br />

der Software streng nach deren<br />

Anweisungen vorgehen: Zulucrypt<br />

weist eine große Anzahl an Abhängigkeiten<br />

auf, die zur uneingeschränkten<br />

Funktion des Programmes korrekt installiert<br />

sein müssen.<br />

Auch die Integration der PCLinuxOS-<br />

Pakete unter Mageia geht nicht reibungslos<br />

vonstatten: Zum Erfüllen der<br />

Abhängigkeiten müssen Sie hier, damit<br />

der Paketmanager das Hauptpaket überhaupt<br />

auf die Festplatte packen kann,<br />

zunächst die sekundären Pakete libcryptsetup,<br />

libpwquality und libZulucrypt beschaffen<br />

und ins System einpflegen û.<br />

Erst danach lässt sich Zulucrypt installieren<br />

und liegt unter Gnome im Unterverzeichnis<br />

Anwendungen | Werkzeuge | Systemwerkzeuge,<br />

während Sie die Software<br />

unter KDE im Unterverzeichnis Werkzeuge<br />

| Konfiguration finden.<br />

Zulucrypt 4.6.2<br />

LU/zulucrypt/<br />

LUKS: Das Linux Unified Key Setup erweitert<br />

die verschlüsselten Daten um einen 592 Byte<br />

großen Header, der Metadaten sowie bis zu<br />

acht Schlüssel aufnimmt û.<br />

Fast alle Distributionen führen Cryptsetup<br />

bereits seit Langem in den Repositories,<br />

sodass es sich komfortabel über den<br />

jeweiligen Paketmanager einrichten<br />

lässt. Dagegen gilt es, Zulucrypt in der<br />

Regel manuell zu installieren, da bislang<br />

nur wenige Distributionen es in ihren<br />

Software-Sammlungen führen. Lediglich<br />

Arch Linux und PCLinuxOS stellen vorbereitete<br />

Pakete bereit; zumindest Mageia<br />

kann die Pakete von PCLinuxOS nutzen.<br />

Falls Sie eine andere Distribution verwenden,<br />

laden Sie die Quellen von Zulucrypt<br />

als Tarball von der Projektseite û<br />

herunter. Nach dem Entpacken des Archivs<br />

mit dem Befehl tar ‐xjvf zulucrypt‐4.6.2.tar.bz2<br />

wechseln Sie in<br />

© Norebbo, 123RF<br />

Systematisches<br />

Bevor Sie jetzt aber mithilfe der einfach<br />

zu bedienenden Programmoberfläche<br />

direkt mit dem Verschlüsseln von Laufwerken<br />

beginnen, sollten Sie sich unbedingt<br />

im Zulucrypt-Wiki û über die<br />

Empfehlungen zum Umgang mit unterschiedlichen<br />

Partitionstypen informieren:<br />

Zulucrypt unterscheidet zwischen<br />

System- und Nicht-Systempartitionen,<br />

wobei eine versehentliche Verschlüsselung<br />

einer Systempartition unabsehbare<br />

Folgen haben kann.<br />

Als Systempartitionen gelten bei Zulucrypt<br />

alle in der Datei /etc/fstab genannten<br />

Laufwerke. Üblicherweise handelt<br />

es sich dabei neben der eigentlichen<br />

Systempartition auch um das<br />

Swap-Laufwerk und Partitionen, auf denen<br />

benutzerdefinierte Daten lagern.<br />

Dagegen tauchen Wechseldatenträger<br />

hier nicht auf, sodass Zulucrypt sie als<br />

Nicht-Systempartitionen betrachtet.<br />

Erste Schritte<br />

Nach dem Start präsentiert sich Zulucrypt<br />

mit einer äußerst schlichten Ober-<br />

fläche: Im Programmfenster zeigt es neben<br />

einer Menüleiste lediglich die Tabellenspalten<br />

Encrypted volume path, Encrypted<br />

volume mount point path und Type an.<br />

Zunächst müssen Sie einen Container<br />

anlegen, in dem später die verschlüsselten<br />

Dateien gespeichert werden können.<br />

Diesem Container gilt es, anschließend<br />

einen wahlfreien Schlüssel zuzuweisen.<br />

Dieser Schlüssel sollte möglichst<br />

kompliziert ausfallen und aus Groß- und<br />

Kleinbuchstaben sowie Ziffern in gemischter<br />

Reihenfolge bestehen, um im<br />

Falle einer versuchten Entschlüsselung<br />

durch Unbefugte gegen Wörterbuch-<br />

Angriffe und Brute-Force-Attacken möglichst<br />

immun zu sein.<br />

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

73


Netz&System<br />

Zulucrypt<br />

Beachten Sie bitte, dass eine Entschlüsselung<br />

des Containers nur nach Eingabe<br />

des korrekten Schlüssels klappt. Vergessen<br />

Sie diesen oder können ihn aus irgendeinem<br />

anderen Grund nicht mehr<br />

rekonstruieren, sind die gespeicherten<br />

Daten unwiederbringlich verloren. Daher<br />

bietet Zulucrypt auch die Option, zunächst<br />

eine Schlüsseldatei zu generieren,<br />

die es später nicht nur bei der Anlage<br />

eines Containers nutzt, sondern die<br />

auch die Entschlüsselung vereinfacht.<br />

Sie generieren eine solche Schlüsseldatei<br />

über das Menü create | keyfile, wobei<br />

Sie neben dem Namen der Schlüsseldatei<br />

auch deren Speicherpfad angeben.<br />

Aus Sicherheitsgründen sollten Sie die<br />

Schlüsseldatei nicht in Ihrem Home-Verzeichnis<br />

ablegen, sondern möglichst auf<br />

einem externen Datenträger sichern, sodass<br />

ein Entschlüsseln des Containers<br />

ohne das externe Speichermedium mit<br />

der Schlüsseldatei unmöglich wird 1 .<br />

Im nächsten Schritt können Sie nun<br />

die Containerdatei anlegen. Sie erscheint<br />

später im Dateimanager wie ein<br />

herkömmliches, eingehängtes Laufwerk.<br />

Vor der Anlage eines Containers sollten<br />

Sie noch prüfen, ob das Ziellaufwerk eingehängt<br />

ist. Dies erledigen Sie auf der<br />

Kommandozeile mit dem Befehl mount<br />

ohne Eingabe von Parametern. Sollte<br />

das Ziellaufwerk aktiviert sein, so entfernen<br />

Sie es mit dem Befehl umount Laufwerk<br />

aus der Liste der aktiven Volumes,<br />

da Zulucrypt keine eingehängten Laufwerke<br />

bearbeiten kann.<br />

Anschließend öffnen Sie zum Generieren<br />

des Containers zunächst das Menü<br />

create. Hier haben Sie die Wahl zwischen<br />

den Optionen encrypted container in a<br />

file und encrypted container in a partition.<br />

Sofern Sie größere Datenbestände verschlüsseln<br />

möchten, empfiehlt sich die<br />

Option, den Container in einer Partition<br />

anzulegen. Beachten Sie jedoch vor dem<br />

Anlegen des Containers, dass dieser die<br />

gesamte gewählte Partition ausfüllt und<br />

die darin zuvor enthaltenen Daten verloren<br />

gehen.<br />

Im nächsten Schritt zeigt Ihnen Zulucrypt<br />

die möglichen Partitionen für das<br />

Anlegen des Containers an, wobei es in<br />

der Standardeinstellung keine Systempartitionen<br />

anzeigt. Externe Laufwerke<br />

dagegen finden Sie nicht nur mit deren<br />

Gerätenamen aufgeführt, sondern auch<br />

mit der zugehörigen UUID. Sofern Sie<br />

häufig mobile Datenträger wie USB-<br />

Sticks, externe Festplatten oder Speicherkarten<br />

nutzen und den verschlüsselten<br />

Container auf mehreren Rechnern<br />

ansprechen möchten, sollten Sie beim<br />

Anlegen des verschlüsselten Volumes<br />

die Option use uuid anklicken, damit Zulucrypt<br />

den Container zukünftig anhand<br />

seiner UUID identifiziert. Damit beugen<br />

Sie bei mehreren simultan an einem<br />

Rechner genutzten externen Laufwerken<br />

Verwechslungen vor.<br />

Nach einem Doppelklick auf das gewünschte<br />

Laufwerk gilt es nun, den zugehörigen<br />

Schlüssel mit dem Container<br />

zu verbinden. Sofern Sie bereits eine<br />

Schlüsseldatei angelegt haben, können<br />

Sie diese nutzen, indem Sie auf den Auswahlschalter<br />

key from a keyfile klicken<br />

und anschließend in der darunter befindlichen<br />

Eingabezeile den Pfad zur<br />

Schlüsseldatei angeben. Das erspart<br />

1 In drei einfachen Schritten generieren Sie zunächst einmal<br />

eine Schlüsseldatei für Zulucrypt.<br />

2 Anschließend legen Sie im Handumdrehen einen neuen Container<br />

(hier: ein ganzes Volume) für die verschlüsselten Daten an.<br />

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

07.2013


Zulucrypt<br />

Netz&System<br />

erfreulicherweise auch, wie bei der manuellen<br />

Anlage den Schlüssel nochmals<br />

zur Verifikation wiederholen zu müssen.<br />

Im unteren Bereich des Fensters zum<br />

Anlegen des Containers definieren Sie<br />

für diesen noch ein Dateisystem sowie<br />

die Art der Verschlüsselung. Hier gibt Zulucrypt<br />

die Option luks vor, die einen<br />

256 Bit langen symmetrischen Schlüssel<br />

nach dem AES-Standard generiert. Mit<br />

einem Klick auf die Schaltfläche create<br />

schließen Sie das Anlegen des Containers<br />

ab 2 .<br />

Zulucrypt fordert nun recht eindringlich<br />

dazu auf, den LUKS-Header zusätzlich<br />

zu sichern. Dieser enthält verschiedene<br />

Metadaten wie beispielsweise Informationen<br />

über die Container sowie<br />

unterschiedliche Schlüssel, sodass sich<br />

ein Backup durchaus empfiehlt. Zulucrypt<br />

öffnet dazu den bereits gewohnten<br />

Dateidialog, wobei es das Backup in der<br />

Vorgabe aus Sicherheitsgründen nicht<br />

auf dem verschlüsselten Volume ablegt,<br />

sondern in Ihrem Home-Verzeichnis. Sie<br />

können den LUKS-Header jedoch auch<br />

jederzeit im Zulucrypt-Programmfenster<br />

über das Menü luks | backup header sichern<br />

oder – im Fall der Zerstörung des<br />

originalen Headers – wiederherstellen.<br />

Leseübung<br />

Um mit dem verschlüsselten Container<br />

wie mit einem herkömmlichen Laufwerk<br />

arbeiten zu können, müssen Sie ihn manuell<br />

ins System einbinden. Linux erkennt<br />

zwar das Laufwerk, gestattet aber<br />

ohne die entsprechende Schlüsseldatei<br />

keinerlei Zugriff auf den Container.<br />

Sie müssen daher erneut Zulucrypt aufrufen<br />

und über das Menü open | encrypted<br />

container in a partition die entsprechende<br />

Partition auswählen. Dazu zeigt<br />

die Software eine Liste aller im System<br />

erkannten Laufwerke mitsamt einer Angabe<br />

zum jeweiligen Dateisystem an,<br />

wobei verschlüsselte Container stets in<br />

der Spalte type den Eintrag crypto_LUKS<br />

aufweisen 3 .<br />

Nach einem Doppelklick auf den Container<br />

bindet Zulucrypt diesen in Ihrem<br />

Home-Verzeichnis als neuen Ordner ein,<br />

wobei die Laufwerksbezeichnung als<br />

Ordnername dient. Sie können nun mit<br />

dem Container wie mit einem herkömmlichen<br />

Verzeichnis arbeiten.<br />

Um den Container nach Abschluss aller<br />

Arbeiten korrekt aus dem System zu<br />

entfernen, klicken Sie in Zulucrypt im<br />

Menü zC die Option close all opened volumes<br />

an. Das Tool meldet den verschlüsselten<br />

Container nun ab, sodass sich<br />

dessen Inhalt ohne erneutes Einbinden<br />

via Zulucrypt nicht mehr einsehen lässt.<br />

Dateien verschlüsseln<br />

Wollen Sie nicht gleich einen ganzen<br />

Container anlegen, sondern lediglich<br />

einzelne Dateien vor neugierigen Blicken<br />

schützen, dann verschlüsseln Sie<br />

diese in Zulucrypt einzeln mithilfe der<br />

Option zC | encrypt a file. Zulucrypt verlangt<br />

nach Auswahl dieser Option den<br />

Namen der zu verschlüsselnden Datei<br />

und einen entsprechenden Schlüssel. Sie<br />

können hier erneut entweder einen<br />

Schlüssel manuell eingeben oder aus<br />

einer Schlüsseldatei einlesen lassen.<br />

AES: Advanced Encryption Standard. Frei<br />

verfügbares, offengelegtes symmetrisches<br />

Kryptosystem mit einer Blocklänge von<br />

128 Bit und Schlüssellängen von wahlweise<br />

128, 192 oder 256 Bit. AES wurde Ende der<br />

90er-Jahre auf Anforderung der US-Behörden<br />

entwickelt und ist in den USA für staatliche<br />

Dokumente mit höchster Geheimhaltungsstufe<br />

zugelassen.<br />

3 Zum Einbinden von Containern zeigt Zulucrypt eine übersichtliche Liste<br />

alle Laufwerke mitsamt dem jeweils verwendeten Dateisystem an.<br />

4 Statt ganzer Volumes sichert Zulucrypt bei Bedarf<br />

auch nur einzelne Dateien vor neugierigen Blicken.<br />

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

75


Netz&System<br />

Zulucrypt<br />

Dateisystem auch eine Größe zuweisen.<br />

Sofern Sie mehrere verschlüsselte Laufwerke<br />

und Container simultan nutzen,<br />

zeigt Zulucrypt alle in seinem Listenfenster<br />

an. Dadurch können Sie blitzschnell<br />

zwischen einzelnen Inhalten wechseln<br />

und beim Herunterfahren des Systems<br />

auch alle offenen Container in einem<br />

Rutsch über den Menüpunkt zC | close all<br />

opened volumes schließen 5 .<br />

5 Zulucrypt erlaubt das simultane Nutzen mehrerer verschlüsselter Container.<br />

Extras<br />

Weitere Infos und<br />

interessante Links<br />

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

Anschließend codiert Zulucrypt die fragliche<br />

Datei und legt diese mit demselben<br />

Dateinamen, ergänzt um die Erweiterung<br />

.zc, in Ihrem Home-Verzeichnis<br />

ab. Sowohl den Dateinamen als auch das<br />

Zielverzeichnis ändern Sie im Verschlüsselungsdialog<br />

bei Bedarf nach Ihren Vorstellungen<br />

4 . Achten Sie bitte darauf,<br />

dass der originale Dateiname keine Leerzeichen<br />

enthält, da Zulucrypt in diesem<br />

Fall die Verschlüsselung verweigert.<br />

Um eine verschlüsselte Datei wieder<br />

zu entschlüsseln, wählen Sie im Programm<br />

die Option zC | decrypt a file.<br />

Über den gleichen übersichtlichen Dialog<br />

wie bei der Codierung stoßen Sie<br />

nun das Entschlüsseln der gewünschten<br />

Datei an. Das klappt recht flott: Im Test<br />

benötigte Zulucrypt für das Decodieren<br />

einer rund 100 MByte großen Datei nur<br />

wenige Sekunden.<br />

Container in Datei<br />

Zum Schutz kleinerer Datenbestände<br />

können Sie – alternativ zu einem kompletten<br />

verschlüsselten Laufwerk – mit<br />

Zulucrypt auch Container-Dateien anlegen,<br />

die nicht das ganze Volume beanspruchen.<br />

Ansonsten unterscheiden sich<br />

diese Container in der Bedienung nicht<br />

von ihren größeren Brüdern.<br />

Sie legen einen solchen Container<br />

über den Menüpunkt create | encrypted<br />

container in a file an und tragen die benötigten<br />

Daten anschließend im gleichen<br />

Dialog ein wie beim Anlegen einer<br />

verschlüsselten Partition. Der einzige<br />

Unterschied: Sie müssen der Container-<br />

Datei neben dem zu verwendenden<br />

Über den Menüpunkt zC | erase data in a<br />

device eröffnet Zulucrypt besonders<br />

sicherheitsbewussten Anwendern die<br />

Möglichkeit, bestehende Daten in einem<br />

Container physikalisch zu löschen. Dazu<br />

überschreibt es den gesamten Container-Inhalt<br />

mit Zufallszeichen, was eine<br />

Rekonstruktion der zuvor vorhandenen<br />

Daten unmöglich macht. Der Container<br />

selbst bleibt dabei erhalten.<br />

Um die sichere Löschfunktion aktivieren<br />

zu können, müssen Sie jedoch zunächst<br />

die verschlüsselten Laufwerke<br />

aushängen. Noch eingehängte Laufwerke<br />

lassen sich nicht von überflüssigen<br />

Datenbeständen befreien.<br />

Fazit<br />

Mit Zulucrypt erhalten Sie ein kleines,<br />

aber leistungsfähiges Verschlüsselungsprogramm,<br />

das sich aufgrund seiner<br />

Funktionsvielfalt für jeden Bedarf eignet.<br />

Im Test arbeitete die Software sehr stabil<br />

und ohne das geringste Problem. Dabei<br />

erfreute das Programm durch seine hohe<br />

Arbeitsgeschwindigkeit: So gelang das<br />

Anlegen verschlüsselter Laufwerke von<br />

GByte-Größe innerhalb kurzer Zeit, und<br />

selbst bei größeren Containern erfolgte<br />

das Löschen binnen weniger Sekunden.<br />

Als größtes Manko von Zulucrypt erwies<br />

sich neben der aufgrund fehlender<br />

Distributionspakete umständlichen und<br />

zeitaufwendigen Installation die noch<br />

fehlende deutsche Lokalisierung. Haben<br />

Sie jedoch diese Hürden erst genommen,<br />

so erhalten Sie mit Zulucrypt ein<br />

höchst nützliches Werkzeug, das die<br />

Sicherheit Ihrer persönlichen Daten signifikant<br />

erhöht. (jlu) n<br />

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

07.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


Hardware<br />

RasPi als Jukebox<br />

Raspberry Pi zur Miniatur-<br />

Musikzentrale ausbauen<br />

Kompakte<br />

Jukebox<br />

© ladyann, 123RF<br />

Der Music Player Daemon macht aus dem RasPi eine kleine Jukebox. Die Konfiguration ist allerdings<br />

nicht immer geradlinig. Wir zeigen, worauf Sie dabei achten müssen. Marcus Nasarek<br />

Readme<br />

Manchmal ist ein komplettes Mediacenter<br />

mit Full-HD-Monitor und Dolby-Surround zu<br />

viel des Guten. Hier bietet sich der RasPi als<br />

moderner Ersatz für das Kofferradio an: Er<br />

holt Radiosender aus dem Internet, streamt<br />

die digitale Musiksammlung aus dem LAN<br />

oder von der externen Festplatte und lässt<br />

sich dabei per Smartphone fernsteuern.<br />

Der Raspberry Pi kostet einschließlich eines<br />

kleinen Lautsprechers weit weniger<br />

als ein WLAN-Radio. Mit ein wenig Handarbeit<br />

macht der Music Player Daemon<br />

MPD û aus dem RasPi einen netzwerkfähigen<br />

Musikplayer, der sich hinter einem<br />

WLAN-Kofferradio nicht zu verstecken<br />

braucht. Mit einer Smartphone-App lässt<br />

er sich zudem weit komfortabler bedienen<br />

als über das „Mäusekino“, wie es einfache<br />

Stand-Alone-Geräte bieten.<br />

Im Gegensatz zu einem Radio muss<br />

man dem RasPi das Musikabspielen aber<br />

erst beibringen. Die folgende Anleitung<br />

baut auf einem bereits mit dem Image<br />

des auf Debian 7 basierenden Raspbian<br />

„Wheezy“ û eingerichteten Raspberry Pi<br />

auf û. Zum Einrichten der benötigten<br />

Komponenten setzen wir in der folgenden<br />

Beschreibung die Werkzeuge für die<br />

Kommandozeile ein. Der für eine Konfiguration<br />

von einem anderen Rechner benötigte<br />

SSH-Zugang sollte daher bereits<br />

ebenfalls auf dem RasPi vorhanden sein.<br />

Die Hardware<br />

Der RasPi besitzt einen analogen Sound-<br />

Ausgang. Dessen Klangqualität fällt zwar<br />

nicht gerade berauschend aus, aber ein<br />

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

07.2013


RasPi als Jukebox<br />

Hardware<br />

kleiner Lautsprecher mit begrenztem<br />

Frequenzumfang verschluckt eben auch<br />

die meisten störenden Nebengeräusche.<br />

Das Ergebnis kann auf jeden Fall mit einem<br />

einfachen Kofferradio mithalten.<br />

Das hier vorgestellte Low-Fi-System<br />

besteht im Grundausbau aus dem RasPi<br />

mit Netzwerkanschluss sowie einem<br />

Lautsprecher von Raikko û, der trotz seines<br />

geringen Gewichtes (100 Gramm)<br />

eine Lautstärke von mehr als 80 dB erzeugt<br />

1 . Die Musiksammlung kann sich<br />

auf einer externen Festplatte, im LAN auf<br />

einem Netzlaufwerk oder in einem<br />

Cloud-Speicher befinden. Sie steuern die<br />

Musikausgabe über das lokale Netzwerk<br />

mit einem Client auf dem Smartphone<br />

oder dem PC. Solche Clients gibt es für<br />

Linux, Android und Windows.<br />

Die mangelhafte Tonqualität der analogen<br />

Sound-Ausgabe des RasPi fällt bei<br />

entsprechend kleinen Lautsprechern<br />

wenig auf. Bei größeren Lautsprechern<br />

kann es dagegen sinnvoll sein, auf eine<br />

gute USB-Soundkarte auszuweichen. Für<br />

eine gewisse Optimierung sorgt auf jeden<br />

Fall schon einmal die Nutzung von<br />

Pulseaudio anstelle von ALSA als Sound-<br />

System. Wie Sie das einstellen, erklären<br />

wir später noch genauer.<br />

In Sachen Hardware ist das System nun<br />

schon fast komplett. Noch fehlt jedoch<br />

die Möglichkeit zum Einbinden der eigenen<br />

Musiksammlung. Eine solche lagert<br />

üblicherweise auf einer externen Festplatte,<br />

die sich per USB mit dem Raspberry<br />

Pi verbinden lässt. Netzwerk-Festplatten<br />

bindet der RasPi am einfachsten<br />

in Form einer Samba-Freigabe ein.<br />

Die Software<br />

Das Kernstück der Software-Austattung<br />

für das RasPi-Radio bildet der Music<br />

1 Der Raspberry Pi mit einem Lautsprecher von Raikko im Einsatz als Mini-Jukebox.<br />

Player Daemon MPD, den Sie zusammen<br />

mit dem Kommandozeilen-Client mpc<br />

zunächst einmal via Terminal installieren.<br />

Das Pulseaudio-Soundsystem richten<br />

Sie aus den oben erwähnten Gründen<br />

am besten gleich mit ein. Die dazu<br />

notwendigen Befehle zeigt das Listing 1.<br />

Die Installation von mpg321 und lame<br />

stellt sicher, dass auch die MP3-Codecs<br />

eingerichtet werden und Sie die Sound-<br />

Ausgabe auf der Kommandozeile testen<br />

können. Mit dieser Grundausstattung<br />

steht auf dem Raspberry Pi alles Nötige<br />

für das Abspielen von MP3-Dateien und<br />

entsprechenden Streams zur Verfügung.<br />

Clients für die Steuerung des MPD gibt<br />

es für alle wichtigen Betriebssysteme. Im<br />

MPD Community Wiki û findet sich eine<br />

Liste mit Clients für Linux, Windows, Mac<br />

OS und Smartphones. Auf die Clients für<br />

das Smartphone, für Linux und für Windows<br />

gehen wir später noch ein. Alternativ<br />

zu einer lokalen Anwendung können<br />

Sie auch einen Web-Client einrichten,<br />

wofür das Wiki ebenfalls Beispiele auflistet.<br />

Logischerweise setzt das Verwenden<br />

des im Browser laufenden Web-Clients<br />

Listing 1<br />

$ sudo apt‐get install mpd mpc pulseaudio pulseaudio‐module‐zeroconf<br />

$ sudo apt‐get install mpg321 lame<br />

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

81


Hardware<br />

RasPi als Jukebox<br />

allerdings die Installation eines Webservers<br />

auf dem MPD-System voraus, weshalb<br />

wir es hier außen vor lassen.<br />

MPD konfigurieren<br />

Der MPD sollte auf dem Raspberry Pi als<br />

Systemdienst starten. In diesem Fall liest<br />

der Daemon seine Konfiguration aus der<br />

Datei /etc/mpd.conf ein. Rufen sie ihn<br />

stattdessen als Benutzer auf, greift er auf<br />

die Konfigurationsdatei ~/.mpdconf zu –<br />

das ist für Testzwecke gut zu wissen.<br />

Den wichtigsten Punkt der Konfiguration<br />

stellt die Angabe dar, an welcher<br />

Stelle der MPD nach Musik suchen soll.<br />

Ohne anderweitige Angaben nutzt er<br />

dazu das Verzeichnis /var/lib/mpd/<br />

music/. MPD akzeptiert nur eine einzige<br />

Angabe für die Option music_directory.<br />

Wollen Sie die Musik also auf mehrere<br />

Verzeichnisse verteilen, müssen Sie die<br />

anderen Verzeichnisse einfach im Standardordner<br />

verlinken.<br />

Beim ersten Start baut der MPD seine<br />

Datenbank mit den Titeleinträgen aus<br />

den MP3-Tags der Musikdateien auf. Das<br />

kann bei großen Musiksammlungen einige<br />

Zeit in Anspruch nehmen: Das Auswerten<br />

von rund 10 000 Titeln dauerte in<br />

unserem Test rund 20 Minuten. Findet<br />

der MPD trotz vorhandener Dateien im<br />

angegebenen Verzeichnis keine Musik –<br />

mpc stats gibt über den aktuellen Stand<br />

Auskunft –, dann kann das daran liegen,<br />

dass die Rechte für das Verzeichnis nicht<br />

korrekt eingestellt sind: Der MPD startet<br />

als Benutzer mpd und braucht für diesen<br />

Leserechte im Musikverzeichnis.<br />

Nach der Grundkonfiguration richten<br />

Sie den MPD als Systemdienst auf dem<br />

RasPi ein. Dazu genügt folgender Aufruf:<br />

$ sudo update‐rc.d mpd defaults<br />

Dieses Kommando konfiguriert den<br />

Dienst so, dass das System ihn beim<br />

Start automatisch mitlädt.<br />

Knisterfrei durch Pulseaudio<br />

In der Standardkonfiguration nutzt<br />

Debi an auf dem Raspberry Pi das ALSA-<br />

Sound-System für die Audio-Ausgabe.<br />

Nach dem Umstellen des Standardausgabekanals<br />

von HDMI auf den Analogausgang<br />

mittels amixer cset numid=3<br />

1 (die 1 steht für analog) knackt und<br />

klirrt es jedoch unerträglich. Blogs im<br />

Internet berichten dazu, dass bei der<br />

Audio-Hardware des RasPi aus verständlichen<br />

Gründen gespart wurde.<br />

Probleme mit großen Musiksammlungen lösen<br />

Das Pulseaudio-Soundsystem funktioniert<br />

mit dem RasPi deutlich besser. Um<br />

die Tonausgabe daher alternativ auf Pulseaudio<br />

umzustellen, nehmen Sie den<br />

Eintrag aus Listing 2 mit in die Konfigurationsdatei<br />

/etc/mpd.conf auf.<br />

Die Anpassungen des Pulseaudio-<br />

Soundsystems für den RasPi erweisen<br />

sich allerdings als knifflig. Damit es letztlich<br />

wie erwartet funktioniert, gilt es an<br />

gleich drei Stellen zu schrauben. Im ersten<br />

Schritt sorgen Sie dafür, dass das Betriebssystem<br />

pulseaudio mit jedem Systemstart<br />

lädt. Dafür passen Sie die zwei<br />

in Listing 3 gezeigten Einträge in der<br />

Datei /etc/default/pulseaudio an.<br />

Im zweiten Schritt halten Sie Pulseaudio<br />

davon ab, in den Stromsparmodus<br />

zu gehen, sobald keine Töne ausgegeben<br />

werden: Dieses Verhalten sorgt für<br />

unschöne Klickgeräusche am Anfang<br />

und Ende jedes Titels. Dazu modifizieren<br />

Sie einige Einträge in der Datei /etc/<br />

pulse/system.pa (Listing 4). Hier kommentieren<br />

Sie zum einen den Eintrag<br />

load‐module module‐suspend‐on‐idle<br />

aus. Zum anderen gilt es, die Netzwerkberechtigungen<br />

für das lokale Netzwerk<br />

(in unserem Beispiel das <strong>Heim</strong>netz<br />

192.168.4.0) anzupassen.<br />

Listing 2<br />

audio_output {<br />

type: "pulse"<br />

name: "MPD PulseAudio Output"<br />

}<br />

Listing 3<br />

PULSEAUDIO_SYSTEM_START=1<br />

DISALLOW_MODULE_LOADING=0<br />

Beim Einlesen von 10 136 Musikdateien<br />

von einer Samba-Freigabe war bei der<br />

Testinstallation nach 4028 Titeln erst einmal<br />

Schluss. Ein manuelles Update der Datenbank<br />

per mpc update brachte es dann<br />

auf 7623 Titel. Aber auch das waren ja<br />

längst nicht alle Titel.<br />

Das Verhalten schien aber ein Einzelfall zu<br />

sein, denn eine längere Recherche im Internet<br />

brachte keine vergleichbaren Probleme<br />

zutage. Mit einem kleinen Work-<br />

Around klappte der Import der Titel aber<br />

dann doch noch. Die einzelnen Unterverzeichnisse<br />

der Musiksammlung enthielten<br />

jeweils nur maximal 15 Verzeichnisse mit<br />

Musikalben. Mit dem schrittweisen Einlesen<br />

der Datenbank schien der MPD kein<br />

Problem zu haben.<br />

Daher lasen wir mit dem in Listing 10 gezeigten<br />

Skript jeweils nur ein Unterverzeichnis<br />

per Update ein und hangelten uns<br />

so durch die gesamte Sammlung. Anschließend<br />

waren dann alle Titel in der Datenbank<br />

vorhanden.<br />

Listing 4<br />

#load‐module module‐suspend‐on‐idle<br />

Listing 5<br />

pcm.pulse { type pulse }<br />

load‐module module‐native‐protocol‐tcp auth‐ip‐acl=127.0.0.1;192.168.0.<br />

0/24 auth‐anonymous=1<br />

load‐module module‐zeroconf‐publish<br />

ctl.pulse { type pulse }<br />

pcm.!default { type pulse }<br />

ctl.!default { type pulse }<br />

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

07.2013


RasPi als Jukebox<br />

Hardware<br />

Anschließend stellen Sie im dritten<br />

Schritt die Konfiguration der ALSA-Bibliotheken<br />

auf Pulseaudio um. Zu diesem<br />

Zweck ersetzen Sie den Inhalt der Datei<br />

/etc/asound.conf durch die in Listing 5<br />

gezeigten Zeilen. Damit haben Sie die<br />

für Pulseaudio notwendigen Konfigurationsaufgaben<br />

erfolgreich abgeschlossen.<br />

Ein Neustart der Systemdienste für<br />

Pulseaudio und den MPD sorgt jetzt dafür,<br />

dass die vorgenommenen Änderungen<br />

auch greifen (Listing 6).<br />

Externe Festplatten<br />

Liegt die Musiksammlung auf einem externen<br />

Datenträger oder einer anderen<br />

Partition, gilt es, das entsprechende Laufwerk<br />

zur Aktualisierung der Datenbank<br />

und zum Abspielen der Titel einzubinden.<br />

Größere externe Festplatten sind<br />

üblicherweise mit NTFS formatiert, das<br />

Einbinden erfordert daher die NTFS-Treiber.<br />

Die Installation des Paketes ntfs-3g<br />

mittels sudo apt‐get install ntfs‐3g<br />

liefert die benötigten Mount-Module.<br />

Das automatische Einbinden externer<br />

Platten zum Systemstart steuern Sie<br />

über /etc/fstab. Welchen Gerätenamen<br />

der Kernel einer USB-Festplatte zuordnet,<br />

erfahren Sie über den Aufruf dmesg<br />

| tail gleich nachdem Sie die Festplatte<br />

an den RasPi anschlossen haben. Für eine<br />

externe Festplatte, auf deren erster beziehungsweise<br />

einziger Partition die Musiksammlung<br />

liegt, lautet der Gerätename<br />

in der Regel sdb1. Den zugehörigen Eintrag<br />

für die / etc/fstab, um die Platte direkt<br />

in das MPD-Standardverzeichnis für<br />

Musik einzuhängen, zeigt Listing 7.<br />

Listing 6<br />

$ sudo /etc/init.d/pulseaudio<br />

restart<br />

$ sudo /etc/init.d/mpd restart<br />

Netzwerkfreigaben<br />

Die meisten NAS-Laufwerke stellen die<br />

Daten als Windows-Freigabe im LAN zur<br />

Verfügung. Solche Shares sprechen Sie<br />

von Linux aus mit einem Samba-Client<br />

an, den Sie mittels sudo apt‐get install<br />

samba‐client installieren. Ein Windows-Share<br />

erfordert meist einen Benutzernamen<br />

und ein Passwort für die Einbindung.<br />

Um das Passwort nicht in die<br />

für jeden lesbare Fstab-Datei eintragen<br />

zu müssen, erzeugen Sie eine Datei mit<br />

den entsprechenden Zugangsdaten, die<br />

Sie am besten im Verzeichnis /root ablegen.<br />

Listing 8 zeigt den Aufbau einer solchen<br />

Datei, der man üblicherweise den<br />

Namen .smbcredentials gibt.<br />

Das Einbinden der Freigabe erfolgt<br />

auch hier wieder über die Datei /etc/<br />

fstab. Listing 9 zeigt den entsprechenden<br />

Eintrag für ein Samba-Share namens<br />

MUSIK auf dem <strong>Server</strong> 192.168.2.2, wobei<br />

der Optionsteil gleichzeitig den Zeichensatz<br />

korrekt auf UTF‐8 einstellt.<br />

Ein Aufruf von sudo mount /var/lib/<br />

mpd/music bindet das Verzeichnis anschließend<br />

auch ohne Neustart ein. Das<br />

Ergebnis überprüfen Sie bei Bedarf mit<br />

dem Aufruf sudo mount ‐l ‐t cifs.<br />

Anschließend können Sie die Musikdatenbank<br />

mit MPC, dem MPD-Client für<br />

die Kommandozeile, durch einen Aufruf<br />

von mpc update aktualisieren.<br />

Internetradio hören<br />

Radiosender sind im MPD nicht vorkonfiguriert.<br />

Um sie manuell einzupflegen,<br />

legen Sie eine oder mehrere Dateien mit<br />

Listing 8<br />

# /root/.smbcredentials<br />

username=Username<br />

password=Passwort<br />

2 MPDroid für Android macht sowohl<br />

auf dem Smartphone als auch auf dem<br />

Tablet eine gute Figur.<br />

NAS: Network Attached Storage. Ein Massenspeichersystem,<br />

das die enthaltenen<br />

Festplatten im Netz zur Verfügung stellt,<br />

meist in Form einer Windows-Freigabe.<br />

Kleine NAS bestehen in der Regel aus ein<br />

bis zwei Festplatten in einem kompakten<br />

Gehäuse mit eigener Stromversorgung.<br />

Listing 7<br />

# /etc/fstab<br />

Listing 9<br />

# /etc/fstab<br />

/dev/sdb1 /var/lib/mpd/music<br />

auto defaults 0 0<br />

//192.168.2.2/MUSIK /var/lib/mpd/music cifs credentials=/root/.smbcr<br />

edentials,iocharset="utf8" 0 0<br />

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

83


Hardware<br />

RasPi als Jukebox<br />

3 Den Desktop-Client Gnome Music Player gibt es sowohl für Linux als auch für Windows.<br />

an den Feedbacks der Nutzer, einen<br />

ganz guten Eindruck. Die App wirkt im<br />

Vergleich zu den anderen relativ ausgereift<br />

und in der Bedienung ansprechend<br />

und übersichtlich 2 .<br />

Die Konfiguration beschränkt sich in<br />

der Regel darauf, die IP-Adresse des<br />

Raspberry Pi einzutragen, danach findet<br />

MPDroid den MPD sofort. Die Auswahl<br />

der Alben, Titel oder Wiedergabelisten<br />

erfolgt intuitiv. Dank MPDroid beantwortet<br />

sich auch besonders schnell die<br />

Frage, wie man denn die Wiedergabelautstärke<br />

der RasPi-Jukebox einstellt:<br />

Diese regeln Sie über einen Schieber auf<br />

der Hauptseite der App treffsicher.<br />

Weitere Infos und<br />

interessante Links<br />

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

der Endung .m3u in jenem Verzeichnis<br />

an, das Sie in der Konfigurationsdatei<br />

/ etc/mpd.conf mit der Option playlist_directory<br />

ausgewählt haben. Die<br />

Internetadressen der Streams û tragen<br />

Sie dann zeilenweise in die M3U-Datei<br />

ein. Stream-Adressen in Form von M3U-<br />

Wiedergabelisten können Sie direkt herunterladen<br />

und im Playlist-Verzeichnis<br />

speichern. Die enthaltenen MP3-Stream-<br />

Adressen zeigen Sie mittels des folgenden<br />

Aufrufs an:<br />

$ echo $(wget ‐q ‐O ‐ M3U‐URL)<br />

Sie können die Adressen anschließend<br />

direkt in eine vorhandene Wiedergabeliste<br />

mit aufnehmen.<br />

Steuern per Smartphone<br />

Im Google Play Store finden sich einige<br />

Android-Apps rund um den MPD. Die<br />

Apps bitMPC, Droid MPD Client und MP-<br />

Droid fallen dabei sofort ins Auge. Insbesondere<br />

MPDroid û macht, gemessen<br />

Listing 10<br />

fs=$IFS<br />

IFS=$(echo ‐en "\n\b")<br />

for f in $(ls Verzeichnis);<br />

do echo "$f";<br />

mpc update ‐‐wait "$f";<br />

done<br />

IFS=$fs<br />

Desktop-Client<br />

Hinsichtlich eines Clients für den Desktop<br />

stellen kritische Geister vielleicht die<br />

Frage, warum man denn einen RasPi im<br />

selben Raum mit einem solchen zur Musikausgabe<br />

bewegen sollte, wenn der<br />

vorhandene Desktop das ja auch selbst<br />

kann. Die Antwort lautet „42“ û.<br />

Spaß beiseite: Klammert man die Frage<br />

nach dem Sinngehalt einmal aus, eignet<br />

sich der Gnome Music Player û als<br />

einfacher, aber ausreichend komfortabler<br />

MPD-Client für den Desktop bestens<br />

3 . Da der Player auch nach Windows<br />

portiert wurde, lässt er sich ebenfalls<br />

auf Microsoft-Clients nutzen.<br />

Zu den besonders angenehmen Features<br />

des GMP zählen die grafische Albenübersicht<br />

sowie die Zusatzinfos zu<br />

dem gerade abgespielten Titel, darunter<br />

die Liedtexte und der Verweis auf ähnliche<br />

Interpreten.<br />

Fazit<br />

Mit dem Music Player Daemon übernimmt<br />

der Raspberry Pi zeitgemäß den<br />

Platz des Kofferradios und lässt sich per<br />

Smartphone zudem noch komfortabel<br />

steuern. Die Einrichtung des MPD, die<br />

auf einem Desktop ziemlich geradlinig<br />

wäre, gestaltet sich aufgrund der spärlichen<br />

Audio-Hardware des RasPi etwas<br />

holperig. Am Ende hat aber auch dieses<br />

Projekt wieder Spaß gemacht und ein<br />

Alltagsproblem gelöst. (jlu) n<br />

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

07.2013


Jetway-Mini-PC<br />

Hardware<br />

Der Jetway Mini-PC beansprucht<br />

kaum mehr Platz<br />

als ein Taschenbuch. Dabei<br />

glänzt der kompakte Atom-<br />

Rechner aber durch hervorragende<br />

Leistungsdaten.<br />

Erik Bärwaldt<br />

Kompakte und technisch abgespeckte<br />

PCs haben als Thin Clients in Netzen viele<br />

Jahre lang ein Nischendasein geführt.<br />

Inzwischen nimmt jedoch – vor allem<br />

dank der zügigen Entwicklung von<br />

Intels Atom-Prozessoren – die Leistungsfähigkeit<br />

der kleinen Rechner deutlich<br />

zu, sodass sie sich anschicken, den heimischen<br />

Schreibtisch zu erobern.<br />

Als ein besonders interessantes Modell<br />

erweist sich der aus Taiwan stammende<br />

Jetway JBC362F36W-2600-B, der<br />

trotz kompakter Abmessungen (15 x 11<br />

x 3,5cm) so manch älteren Desktop-PC<br />

in den Schatten stellt. Für den Test bezogen<br />

wir den Jetway-PC von der Firma<br />

Cartft.com aus Reutlingen û, die das<br />

Gerät als Barebone-Rechner lieferte. Es<br />

galt also noch Arbeitsspeicher und Festplatte<br />

oder SSD zu ergänzen.<br />

Beim Auspacken des Paketes von der<br />

Größe eines Schuhkartons fällt zunächst<br />

der opulente Lieferumfang auf: Neben<br />

dem Rechner finden sich in der Box ein<br />

kompaktes externes Netzteil mit einer<br />

Leistung von 60 Watt, eine WLAN-Antenne,<br />

zwei Standfüße für den vertikalen Betrieb,<br />

ein Satz Schrauben sowie ein DVI-<br />

VGA-Adapter. Mehrere Kurzanleitungen<br />

mit Fotos und Zeichnungen sowie zwei<br />

CDs mit Treibern für andere Betriebssysteme<br />

runden den Lieferumfang ab.<br />

Anschlusswunder<br />

Kurztest Jetway Mini-PC<br />

JBC362F36W-2600-B<br />

Zwerg<br />

mit<br />

Power<br />

Bei der ersten Inaugenscheinnahme entpuppt<br />

sich der Mini-ITX-Rechner als wahres<br />

Wunderwerk in Sachen Anschlüsse:<br />

Auf der Rückseite bietet er neben zwei<br />

Gigabit-Ethernet-Buchsen einen DVIund<br />

vier USB-Anschlüsse sowie eine<br />

Buchse für Line-out. Zudem gibt es einen<br />

standardisierten RP-SMA-Antennenanschluss<br />

für die WLAN-Anbindung. Zu guter<br />

Letzt findet sich noch ein 12-Volt-Anschluss<br />

für das externe Netzteil an der<br />

Rückseite des Systems 1 .<br />

Mit dieser Vielfalt auf kleinstem Raum<br />

empfiehlt sich der Mini-PC nicht nur als<br />

Arbeitsgerät, sondern aufgrund der zwei<br />

Ethernet-Buchsen auch als Zentrale im<br />

Netzwerk – sei es zu Hause oder im klei-<br />

Readme<br />

Nettops und Mini-PCs mit Atom-CPU haftet<br />

der Ruf an, kaum Leistung zu bringen. Doch<br />

Intel hat mittlerweile seine Hausaufgaben<br />

gemacht. Wir zeigen, wozu ein kompakter<br />

Atom-PC aktuell unter Linux in der Lage ist.<br />

© Linder6580, sxc.hu<br />

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

85


Hardware<br />

Jetway-Mini-PC<br />

Innere Werte<br />

1 Kleiner geht’s nimmer – der Jetway-PC im Vergleich zu einem Taschenbuch.<br />

nen Büro. An der Frontseite des Gerätes<br />

befinden sich lediglich zwei Leuchtdioden<br />

zur Anzeige des Status sowie ein<br />

großer Taster zum Ein- und Ausschalten.<br />

Der Mini-PC verfügt über keinen Lüfter,<br />

die Abwärme der CPU entweicht nur<br />

über das Gehäuse. Das besteht aus massivem<br />

Metall, wobei eine Seite des Gehäuses<br />

(bei vertikaler Aufstellung die linke)<br />

großflächig mit Kühlrippen aus Aluminium<br />

versehen ist.<br />

Doch nicht nur äußerlich glänzt der kleine<br />

Rechner, das Innenleben beeindruckt<br />

ebenfalls: Als Prozessor versieht ein mit<br />

1,6 GHz getakteter Intel Atom N2600 den<br />

Dienst. Er weist zwei Kerne auf, beherrscht<br />

Hyper-Threading und besitzt einen<br />

1 MByte großen L2-Cache.<br />

Als herausragendes Merkmal der zur<br />

Cedar-Trail-Familie gehörenden CPU entpuppt<br />

sich jedoch ihr geringer Energiebedarf:<br />

Lediglich 3,5 Watt Leistungsaufnahme<br />

weist der Hersteller für dieses<br />

Modell aus û. Aufgrund der geringen<br />

Verlustleistung eignet sich der Prozessor<br />

für den lüfterlosen Betrieb, was das Gesamtsystem<br />

flüsterleise macht.<br />

Da es sich um ein Barebone-System<br />

handelt, sind noch Arbeitsspeicher und<br />

eine Festplatte oder SSD für den Betrieb<br />

vonnöten. Für den Arbeitsspeicher steht<br />

auf der Hauptplatine ein kompakter SO-<br />

DIMM-Steckplatz nach DDR3-Spezifikation<br />

bereit. Als Massenspeicher nimmt<br />

das Gehäuse eine Festplatte oder SSD im<br />

Formfaktor 2,5 Zoll auf. Damit kam das<br />

Gesamtsystem im Test mit einem RAM-<br />

Speicher von 2 GByte und einer<br />

500 GByte großen Festplatte von Western<br />

Digital auf rund 290 Euro.<br />

Massenspeicher<br />

2 Die kompakten Maße des Jetway-PCs lassen zwar kaum Raum zum Manövrieren, aber<br />

eine WLAN-Karte mit Mini-PCIe-Anschluss fand im Testsystem dennoch Platz.<br />

Auf dem hochintegrierten Motherboard<br />

mit sechs Layern finden sich neben dem<br />

SATA-Anschluss für den Massenspeicher<br />

noch ein Mini-PCIe-Slot (der im Test die<br />

WLAN-Karte beherbergte) sowie ein Sockel<br />

für eine CFast-Karte 2 . Das erlaubt,<br />

simultan zwei Massenspeicher zu nutzen,<br />

wobei die CFast-Karte dem SATA-<br />

Standard mit 3.0 Gbit/​s entspricht und<br />

daher bei Einsatz entsprechend schneller<br />

Karten eine Geschwindigkeit ähnlich einer<br />

SSD entwickelt.<br />

Eine Festplatte oder SSD schrauben Sie<br />

an zwei Schienen an, die Sie dann wiederum<br />

am Rechnergehäuse fixieren. Die gesamte<br />

Gehäusekonstruktion wirkt sehr<br />

solide und durchdacht. Einziges Manko<br />

für handwerklich wenig versierte Anwender:<br />

Es gilt nicht weniger als 14 winzige<br />

Schrauben zu lösen, um das Rechnerge-<br />

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

07.2013


Jetway-Mini-PC<br />

Hardware<br />

häuse vollständig zu öffnen. Dank einer<br />

bebilderten Anleitung und einem aussagekräftigen<br />

Handbuch kommt es dabei<br />

aber kaum zu Problemen.<br />

Test mit Hürden<br />

Nach dem ersten, rundum positiven Eindruck<br />

bescherte uns der Mini-PC im Test<br />

unter Linux zunächst einiges Kopfzerbrechen:<br />

Die Installation von Mageia 3 verlief<br />

von einem externen DVD-Laufwerk<br />

zwar problemlos, nach dem anschließendem<br />

Neustart hatte das System jedoch<br />

einen Blackout. Auch OpenSuse 12.3 laborierte<br />

am gleichen Symptom und war<br />

ebenfalls nicht zur Mitarbeit zu bewegen.<br />

Das nicht mehr taufrische, sehr<br />

schlanke Slitaz 3.0 hingegen erfreute auf<br />

Anhieb mit einer grafischen Oberfläche –<br />

allerdings in der nicht mehr zeitgemäßen<br />

SVGA-Auflösung.<br />

Selbst das stets bestens mit Treibern<br />

versorgte Knoppix ließ sich in älteren Varianten<br />

nicht dazu überreden, mit einer<br />

Auflösung von mehr als 800 x 600 Punkten<br />

zu arbeiten. Lediglich Ubuntu zeigte<br />

sich kooperativer und startete in den Versionen<br />

12.04 und 12.10 mit einer brauchbaren<br />

XGA-Auflösung.<br />

Als Verursacher dieser Misere machten<br />

wir den beim N2600 eingesetzten Chipsatz<br />

Intel GMA3600 mit einem SGX-545-<br />

Grafikprozessor von PowerVR dingfest.<br />

Für diesen gibt es unter Linux bislang lediglich<br />

einen rudimentären freien Treiber.<br />

Intel selbst stellt weder Software<br />

noch Support, sondern verweist an die<br />

Entwickler der Distributionen û. Ein<br />

freier Treiber steht ab Kernel 3.3 bereit.<br />

Mehrere weitere Distributionen, darunter<br />

auch Fedora 18, Linux Mint 14 und<br />

Knoppix 7.0.5, wählten jeweils automatisch<br />

XGA-Auflösung für die Grafik. Sie<br />

verwenden allesamt den vorhandenen<br />

Treiber für den GMA500-Chipsatz. Zum<br />

Leistungstest kamen anschließend<br />

Ubuntu 12.10 und Knoppix 7.0.5 auf der<br />

Hardware zum Einsatz. Beide Distributionen<br />

zeigten keine Auffälligkeiten bei der<br />

Installation und erkannten alle Hardware-Komponenten.<br />

Auch die mit einem<br />

noch recht jungen Chipsatz ausgestattete<br />

WLAN-Karte von Atheros zeigte ein<br />

gutes Leistungsverhalten.<br />

Im praktischen Einsatz hatte jedoch<br />

eindeutig Knoppix die Nase vorn: Während<br />

Ubuntu mit seiner schwerfälligen<br />

und wenig intuitiven Oberfläche immer<br />

wieder eine hohe Last erzeugte, agierte<br />

Knoppix souverän ohne Latenz. Ein weiterer<br />

Live-Test mit Lubuntu und Xubuntu<br />

erbrachte ein wesentlich besseres Verhalten<br />

als bei Ubuntu selbst. Die Last hält<br />

sich somit bei schlankeren Oberflächen<br />

dank der zwei Prozessorkerne mit Hyper-<br />

Threading im Rahmen, während der Arbeitsspeicher<br />

von 2 GByte selbst bei vielen<br />

geöffneten Applikationen kaum an<br />

Grenzen stößt 3.<br />

Fazit<br />

Der kleine Jetway JBC362F36W-2600-B<br />

hinterlässt insgesamt einen recht guten<br />

Eindruck. Das größte Manko liegt in der<br />

bislang noch unvollständigen Unterstützung<br />

der GMA3600-Grafikkarte, die einen<br />

Einsatz des Rechners mit 3D-Spielen<br />

oder leichten CAD-Applikationen sowie<br />

auch Bildverarbeitungsprogrammen unter<br />

Linux verhindert. Sehr gute Leistungen<br />

zeigt dagegen der Atom N2600, der<br />

dank zwei Kernen mit Hyper-Threading<br />

und einem ausreichend großen Cache<br />

längst die Schwächen der ersten Atom-<br />

Generationen überwunden hat.<br />

Im praktischen Betrieb mit Anwendungen<br />

für Büro und Internet erbringt der<br />

Prozessor eine Leistung, die sich in etwa<br />

mit jener einer Core-Duo-CPU mit Yonah-<br />

Kern vergleichen lässt. Damit lässt er sich<br />

für den täglichen Einsatz auch jenseits<br />

von Nettops und Netbooks durchaus gebrauchen.<br />

Zudem glänzt der kleine PC<br />

durch geringen Energieverbrauch und<br />

lautlosen Betrieb. Der Rechner empfiehlt<br />

sich daher für den Einsatz als schlanker<br />

<strong>Server</strong> oder Desktop. (agr) n<br />

3 Selbst aktuelle Distributionen wie Ubuntu 12.10, Fedora 18 oder Knoppix 7.0.5 schaffen<br />

es im Normalbetrieb nicht, den Jetway-Mini-PC so richtig ins Schwitzen zu bringen.<br />

Weitere Infos und<br />

interessante Links<br />

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

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

87


Know-how<br />

RPMs im Eigenbau<br />

RPM-Pakete ohne Vorlage selbst erstellen<br />

Baumeister<br />

Der Prozess, mit dem Distributoren bestehende Pakete auf eine<br />

neue Softwareversion heben, erlaubt auch dem Normalanwender<br />

den un komplizierten Bau eigener Pakete. Peter Kreußel<br />

© Golkin Oleg, 123RF<br />

Readme<br />

Dieser Artikel erläutert, wie aus dem Quelltext<br />

einer Software RPM-Pakete entstehen.<br />

Als Einstieg in die Paketentwicklung beschreibt<br />

er, wie Sie offizielle Distributionspakete<br />

mit wenigen Handgriffen auf eine<br />

aktuelle Programmversion aktualisieren. Mit<br />

dem dabei erworbenen Wissen gelingt Ihnen<br />

schließlich auch das Erstellen eigener<br />

Pakete ohne eine Vorlage.<br />

Ist das neue Programm erst einmal<br />

kompiliert, kann man es meist kaum<br />

noch erwarten, make install auszuführen<br />

und die Anwendung endlich zu starten.<br />

Doch dieser Aufruf als Root ist gefährlich:<br />

Er überschreibt ohne Vorwarnung<br />

Dateien. Der Aufruf make uninstall<br />

ist oft gar nicht implementiert –<br />

und wenn doch, löscht er die installierten<br />

Dateien, ohne eventuell vorher überschriebene<br />

Dateien einer anderen Version<br />

dabei wiederherzustellen.<br />

<strong>Sicherer</strong> ist es, für selbst kompilierte<br />

Software Pakete zu erstellen und diese<br />

über das systemweite Paketmanagement<br />

zu installieren. Viele Anwender<br />

schrecken vor dem zusätzlichen Aufwand<br />

zurück. Doch ein Blick auf die Arbeitsweise<br />

der Distributoren, die für jedes<br />

Release Tausende Pakete neu bauen,<br />

zeigt, dass in vielen Fällen viel weniger<br />

Arbeit dahintersteckt als erwartet.<br />

Baumaschine<br />

Gentoo, bei dem der Paketmanager Portage<br />

jedes Softwarepaket vollautomatisch<br />

auf dem Rechner des Anwenders<br />

kompiliert, besitzt genau genommen<br />

TIPP<br />

Das Debian-Pendant zu SRC-RPMs bietet<br />

einen ähnlichen Leistungsumfang, die Bedienung<br />

fällt jedoch grundlegend anders<br />

aus. Ihr widmet sich der zweite Teil dieser<br />

Artikelserie im nächsten Heft.<br />

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

07.2013


RPMs im Eigenbau<br />

Know-how<br />

kein Alleinstellungsmerkmal: Sowohl in<br />

der RPM- als auch in der Debian-Welt gehört<br />

ein leistungsfähiges Build-System<br />

zur Standardausstattung, die das Kompilieren<br />

und Verpacken von Programmen<br />

in ein Paket automatisiert 1 .<br />

SRC-RPMs (Dateiendung .src.rpm)<br />

bilden die Basis für das RPM-Build-System.<br />

Anders als Binär-RPMs enthalten sie<br />

keine ausführbaren Dateien, sondern<br />

den Quellcode eines Programms samt<br />

dem „Rezept“ zum Kompilieren. Um ein<br />

SRC-RPM in ein normales RPM umzuwandeln,<br />

genügt daher der Aufruf:<br />

$ rpm ‐‐rebuild Paket.src.rpm<br />

Dieser Befehl stößt das Kompilieren aus<br />

den Quellen an und verpackt die entstandenen<br />

Programmdateien in ein Binär-<br />

RPM. Das dazu erforderliche Rpmbuild-<br />

Programm finden Sie unter OpenSuse im<br />

Paket rpm-build. Unter Fedora installieren<br />

Sie die Gruppe @development-tools<br />

sowie das Paket fedora-packager.<br />

Transportabler Container<br />

Schon der GPL wegen stellen die Distributionen<br />

jedem Binär-Repository dessen<br />

Quellcode-Pendant zur Seite. Wenn<br />

Sie dieses im Paketmanager aktivieren,<br />

lädt yumdownloader ‐‐source Paket<br />

unter Fedora ein Quellcode-RPM für das<br />

genannte Programm herunter. Für<br />

OpenSuse finden Sie die SRC-RPMs in<br />

1 Für die meisten Anwender ist RPM ein Synonym für Binär-RPMs, die Anwendungen<br />

und andere Systemkomponenten installationsfertig verpacken. Das ausgeklügelte System<br />

aus SRC-RPMs und Rpmbuild kennen dagegen selbst viele Power-User nicht.<br />

der Online-Paketsuche û des Build-Services<br />

nach einem Klick auf den Link<br />

Show other Versions.<br />

Der Aufruf rpm ‐‐rebuild Paket.<br />

src.rpm erzeugt aus dem SRC-RPM ein<br />

zum offiziellen Distributionspaket identisches<br />

Binär-RPM. Liegt Ihnen lediglich<br />

ein SRC-RPM für eine andere Version der<br />

von Ihnen genutzten Distribution vor,<br />

lohnt sich der Rpmbuild-Durchlauf ganz<br />

besonders: Quelltext-RPMs sind deutlich<br />

weniger an eine bestimmte Distributionsversion<br />

gebunden als Binärpakete<br />

(siehe Kasten Programmpakete und Abhängigkeiten).<br />

DLL-Hölle: Unkontrolliertes Überschreiben<br />

der von mehreren Programmen genutzten<br />

Bibliotheken (DLLs, Entsprechung zu So-<br />

Dateien unter Linux) durch die Setup-Programme<br />

bis Windows Vista.<br />

Programmpakete und Abhängigkeiten<br />

Jede der unüberschaubar vielen Distributionen enthält andere Versionen<br />

der gängigen Bibliotheken. Kompilierte Programme – also<br />

auch Binär-RPMs – funktionieren oft nur mit einer bestimmten Version<br />

dieser Hilfsprogramme, während beim Kompilieren eine neuere<br />

Version der Bibliothek meist keine Probleme bereitet.<br />

Ein Blick in die Verzeichnisse /usr/lib/ oder /usr/lib64/ hilft<br />

zu verstehen, warum das so ist. Die meisten Dateien darin tragen<br />

einen Namen der Form libName.so.1.23. Wenn die Entwickler<br />

Funktionen entfernen oder deren Aufrufparameter verändern, stürzen<br />

Programme ab, die mit der alten Schnittstelle rechnen. Das passiert<br />

oft nicht gleich beim Start, sondern erst beim Aufruf eines bestimmten<br />

Menüpunktes. Um solche Überraschungen zu verhindern,<br />

signalisieren die Entwickler nicht rückwärtskompatible Änderungen<br />

durch Erhöhen der zwei- oder dreistelligen Versionsnummer.<br />

Manchmal geht es dabei lediglich um kleine Anpassungen, die<br />

längst nicht alle Anwendungen betreffen. Ob ein Programm mit der<br />

neuen Version einer Bibliothek zusammenarbeitet, zeigt sich in der<br />

Regel aber erst beim Kompilieren der Software. RPMs speichern die<br />

Bibliotheksversionen (Soname, von „shared object name“), gegen<br />

die die enthaltenen Programme übersetzt sind, als Abhängigkeit.<br />

Die Distributionen übersetzen daher jedes Paket beim Update der<br />

Distribution neu aus dem Quellcode.<br />

Auch als Anwender müssen Sie den Compiler bemühen, wenn kein<br />

passendes Paket vorliegt. Dafür bleibt ihnen die DLL-Hölle früherer<br />

Windows-Versionen erspart. Dass alle Programme gegen eine bestimmte<br />

Version der Hilfsprogramme kompiliert sind, spart unter<br />

Linux auch Plattenplatz und Arbeitsspeicher ein.<br />

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

89


Know-how<br />

RPMs im Eigenbau<br />

2 Bevor rpm ‐‐rebuild den Quellcode kompiliert und in ein installationsfertiges Binär-<br />

RPM verpackt, prüft das Tool, ob alle zum Kompilieren nötigen Devel-Pakete vorliegen.<br />

Patch: „Flicken“. Eine mit Diff erzeugte Textdatei,<br />

die Änderungen am Quellcode eines<br />

Programms in einer speziellen Notation<br />

festhält. Das Programm Patch, das Rpmbuild<br />

wenn nötig automatisch aufruft, spielt<br />

die Änderungen ein. Es gilt als guter Stil, in<br />

SRC-RPMs den veröffentlichten Code unverändert<br />

einzupacken und alle Änderungen in<br />

Patches auszulagern.<br />

Beim ersten Aufruf fehlen meist noch einige<br />

Devel-Pakete 2 . Nach deren Einrichten<br />

erzeugt ein erneuter Aufruf des<br />

Befehls ein auf Ihr System zugeschnittenes<br />

Binary. Dabei laufen neben wenigen<br />

zum Paketbau gehörigen Meldungen<br />

solche über den Bildschirm, die Sie beim<br />

Aufruf von make zu sehen bekämen.<br />

Ein eigenes Binär-RPM zu kompilieren<br />

ist viel sicherer, als wegen der aktuellen<br />

Version eines Programms ein instabiles<br />

Repository einzubinden. Dabei zieht die<br />

Installation nämlich oft so viele Abhängigkeiten<br />

nach, dass dies unter Umständen<br />

einem Upgrade auf eine instabile<br />

Version der Distribution nahekommt.<br />

Scripted Reality<br />

Ihr volles Potenzial geben SRC-RPMs 3<br />

erst dann preis, wenn Sie sie auf dem<br />

System installieren. Wie bei gewöhnlichen<br />

RPMs erledigt dies der Aufruf rpm<br />

‐i Paket.src.rpm – allerdings als normaler<br />

Anwender, nicht als Root. Open­<br />

Suse-Anwender installieren SRC-RPMs<br />

mit zypper source‐install Paket direkt<br />

aus dem Online-Repository. Zypper<br />

spielt dabei auch gleich alle für das Kompilieren<br />

nötigen Devel-Pakete (BuildRequires)<br />

ein.<br />

Das SRC-RPM-Paket enthält neben<br />

dem Quellcode auch andere systemweit<br />

zu installierende Dateien. Dazu gehören<br />

neben Startmenü-Einträgen auch Patches,<br />

die vor dem Kompilieren Fehler im<br />

Quellcode bereinigen, sowie Spec-Dateien,<br />

die Name, Version, Beschreibung und<br />

Abhängigkeiten sowie die Befehle zum<br />

Kompilieren des Quellcodes enthalten.<br />

Wie Sie Patches selbst bauen, klärt der<br />

Kasten Patches erstellen.<br />

Beim ersten Installieren eines SRC-<br />

RPMs legt RPM in Ihrem <strong>Heim</strong>atverzeichnis<br />

das Verzeichnis rpmbuild inklusive<br />

der Unterverzeichnisse BUILD, BUILD­<br />

ROOT, RPMS, SOURCES, SPECS und SRPMS an.<br />

Unter SOURCES finden Sie die Tarballs<br />

und Patches mit dem Quellcode für alle<br />

installierten SRC-RPMs.<br />

Die Spec-Dateien im Verzeichnis SPECS<br />

bündeln beschreibende Daten und<br />

Handlungsanweisungen für Rpmbuild,<br />

das daraus den Quellcode kompiliert<br />

und in ein Binär-RPM verpackt. Wenn Sie<br />

SRC-RPMs installieren, anstatt direkt binäre<br />

RPMs daraus zu bauen, können Sie<br />

die Spec-Dateien vor dem Build-Aufruf<br />

mit einem Editor verändern. Der folgende<br />

Aufruf erzeugt ein Binär-RPM:<br />

$ rpmbuild ‐bb Name.spec<br />

Patches erstellen<br />

3 Ein SRC-RPM schnürt alle für den Bau des Paketes erforderlichen Komponenten, wie<br />

Spezifikation, Patches und zusätzliche Dateien, in ein gepacktes Archiv zusammen.<br />

Wie Sie Änderungen am Quellcode eines<br />

Programms in einen Patch verpacken,<br />

zeigt Listing 1. Zunächst benennen Sie das<br />

Basisverzeichnis um (Zeile 1) und entpacken<br />

dann das unveränderte Quellcode-<br />

Archiv erneut. Im nächsten Schritt erzeugen<br />

Sie einen Patch für alle Änderungen<br />

(Zeile 2). Möchten Sie die Änderungen<br />

einzelner Dateien separat erfassen, dann<br />

rufen Sie das Programm Diff wie in Zeile 3<br />

gezeigt auf.<br />

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

07.2013


RPMs im Eigenbau<br />

Know-how<br />

Alle im Spec referenzierten Quellcode-<br />

Archive und Patches müssen dabei unter<br />

SOURCES bereitliegen.<br />

Dreh- und Angelpunkt<br />

Als einfaches Beispiel für das Update einer<br />

Spec-Datei auf eine neue Version des<br />

enthaltenen Programmes eignet sich die<br />

Taschenrechner-Software Galculator û<br />

unter OpenSuse 12.2. Auf anderen RPMbasierten<br />

Distributionen fällt die Spec-<br />

Datei anders aus, doch das geschilderte<br />

Vorgehen lässt sich übertragen. Open­<br />

Suse 12.2 bringt Galculator 1.3.4, inzwischen<br />

steht aber Version 2.0.1 bereit, die<br />

nun GTK3 benutzt und sich so besser in<br />

den aktuellen Gnome-Desktop einfügt.<br />

Listing 1<br />

01 $ mv galculator‐2.0.1 galculator‐2.0.1_changed<br />

02 $ diff ‐ur galculator‐2.0.1 galculator‐2.0.1_changed > my.patch<br />

03 $ diff ‐u galculator‐2.0.1/fDatei galculator‐2.0.1_changed/Datei<br />

Listing 2<br />

01 Name: galculator<br />

02 Summary: A GTK 2 based calculator<br />

03 Version: 1.3.4<br />

04 Release: 18.1.2<br />

05 License: GPL‐2.0<br />

06 Group: System/GUI/GNOME<br />

07 Url: http://galculator.sourceforge.<br />

net/index.html<br />

08 <br />

09 Source0: %name‐%version.tar.bz2<br />

10 Patch0: %name‐ld_fix.diff<br />

11 BuildRoot: %{_tmppath}/%{name}‐%{version}‐b<br />

uild<br />

12 BuildRequires: autoconf automake fdupes gcc<br />

gcc‐c++ make<br />

13 BuildRequires: doxygen gtk2‐devel intltool<br />

pkg‐config<br />

14 BuildRequires: libglade2‐devel<br />

update‐desktop‐files<br />

15 BuildRequires: libtool<br />

16 <br />

17 %description<br />

18 Galculator is a GTK 2 based calculator with<br />

ordinary notation/reverse<br />

19 polish notation, [...]<br />

20 <br />

21 %prep<br />

22 %setup ‐q<br />

23 %patch0<br />

24 <br />

25 %build<br />

26 autoreconf ‐fi<br />

27 %configure<br />

28 %__make %{?jobs:‐j%{jobs}}<br />

29 <br />

30 %install<br />

31 %makeinstall<br />

32 %suse_update_desktop_file ‐r %name GTK Utility<br />

Calculator<br />

33 %find_lang %name<br />

34 %fdupes ‐s %{buildroot}<br />

35 <br />

36 %clean<br />

37 %__rm ‐fr %buildroot<br />

38 <br />

39 %if 0%{?suse_version} >= 1140<br />

40 <br />

41 %post<br />

42 %desktop_database_post<br />

43 %icon_theme_cache_post<br />

44 <br />

45 %postun<br />

46 %desktop_database_postun<br />

47 %icon_theme_cache_postun<br />

48 %endif<br />

49 <br />

50 %files ‐f %name.lang<br />

51 %defattr(‐,root,root)<br />

52 %_bindir/%name<br />

53 %_datadir/applications/*<br />

54 %dir %_datadir/%name<br />

55 %dir %_datadir/%name/glade<br />

56 %_datadir/%name/glade/*.glade<br />

57 %_mandir/man1/%name.1.gz<br />

58 %_datadir/pixmaps/%name.*<br />

59 <br />

60 %changelog<br />

61 * Sat Oct 1 2011 xxxx@suse.com<br />

62 ‐ add libtool as buildrequire to make the spec<br />

file more reliable<br />

63 * Sat Sep 17 2011 xxxxx@gmx.de<br />

64 ‐ added Patch0 (gcalculator‐ld_fix.diff) to fix<br />

the build for factory<br />

65 (this patch requires a autoreconf call)<br />

66 [...]<br />

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

91


Know-how<br />

RPMs im Eigenbau<br />

Gängige RPM-Makros<br />

Makro<br />

%{_bindir}<br />

%{_datadir}<br />

%{_libdir}<br />

%{_mandir}<br />

Funktion<br />

Installationsverzeichnis<br />

für Binaries<br />

Verzeichnis /share<br />

Verzeichnis für Shared-<br />

Libraries<br />

Verzeichnis für Manpages<br />

Datenfelder in Spec-Dateien<br />

Datenfeld<br />

%description<br />

%prep<br />

%build<br />

%check<br />

%install<br />

%clean<br />

%files<br />

%changelog<br />

Beschreibung<br />

Installieren Sie also zuerst das Quellpaket<br />

zu Galculator mit dem Aufruf zypper<br />

source‐install galculator als normaler<br />

User. Dies überträgt die Datei gcalculator.spec<br />

nach rpmbuild/SPECS/<br />

sowie die beiden Files galculator‐1.<br />

3.4.tar.bz2 und galculator‐ld_fix.<br />

diff nach rpmbuild/SOURCES/. Danach<br />

öffnen Sie galculator.spec im Editor<br />

(Listing 2).<br />

Die ersten 15 Zeilen von galculator.<br />

spec bilden einzeilige Felder in der Form<br />

Feldname: Feldinhalt. Die Zeilen 1 bis 7<br />

liefern dem Paketmanagement elementare<br />

Daten wie Name, Version und<br />

Upstream-URL, Lizenz sowie eine kurze<br />

Beschreibung. In den Zeilen darunter<br />

folgen Informationen für Rpmbuild.<br />

Listing 3<br />

01 [bis inklusive<br />

%description‐Block wie oben]<br />

02 %prep<br />

03 %setup ‐q<br />

04 %patch0<br />

05 <br />

06 %build<br />

07 autoreconf ‐fi<br />

08 %configure<br />

09 make<br />

10 <br />

11 %install<br />

12 %makeinstall<br />

13 <br />

14 %files<br />

15 %{_bindir}/galculator<br />

16 %{_datadir}*<br />

mehrzeilige Beschreibung, Zeilenlänge


RPMs im Eigenbau<br />

Know-how<br />

Das OpenSuse-Spec-File ersetzt beinahe<br />

alle Shell-Befehle für das Kompilieren<br />

des Quellcodes durch Makros. Vieles<br />

lässt sich für ein Paket vereinfachen, das<br />

immer noch funktioniert, allerdings<br />

nicht mehr die Qualitätsnorm für Open­<br />

Suse-Pakete erfüllt û. Listing 3 enthält<br />

daher eine simplere Fassung. Orientieren<br />

Sie sich an dieser, wenn Sie Ihre erste<br />

eigene Spec-Datei erstellen.<br />

Das Makro %setup ‐q in der Sektion<br />

%prep entpackt das Archiv und wechselt<br />

mit cd in das Quellcode-Verzeichnis. Der<br />

Autoconf-Aufruf unter %build ist ein<br />

ausgesprochener Sonderfall, bedingt<br />

durch Veränderungen am Makefile-Template<br />

in Patch0. %configure ruft ./configure<br />

auf, fügt jedoch eine Vielzahl von<br />

auf das OpenSuse-System abgestimmten<br />

Optionen hinzu. Wer die im Detail sehen<br />

möchte, liest sie in der RPM-Konfigurationsdatei<br />

/usr/lib/rpm/macros nach.<br />

Zum Kompilieren des Programms genügt<br />

das altbekannte make, %__make in<br />

der Suse-Originalversion expandiert<br />

schlicht zu /usr/bin/make. Die Make-<br />

Option %{?jobs:‐j%{jobs}} sorgt dafür,<br />

dass dem Build-Prozess im Rechner-<br />

Cluster des OpenSuse-Build-Service eine<br />

angemessene Zahl an CPUs zur Verfügung<br />

stehen. Für lokale Builds ist sie<br />

nicht erforderlich.<br />

Das %install-Feld enthält lediglich<br />

eine unverzichtbare Zeile: Jene mit<br />

%makeinstall, die den Konsolenbefehl<br />

make install vertritt. Dieser blanke Aufruf<br />

genügt beim Bauen von Paketen allerdings<br />

nicht. Der Befehl muss hier make<br />

DESTDIR=%{buildroot} install lauten,<br />

sonst versucht Make die Dateien an die<br />

für die endgültige Installation vorgesehenen<br />

Stellen zu schreiben, etwa nach<br />

/ usr/bin/ oder /usr/share/, was mit<br />

User-Rechten fehlschlägt.<br />

Das Setzen der Umgebungsvariablen<br />

DESTDIR weist make install an, die Dateien<br />

relativ zum dort genannten Verzeichnis<br />

zu installieren. %{buildroot}<br />

gibt ein für Paketnamen und ‐version<br />

eindeutiges Verzeichnis unterhalb von<br />

~/rpmbuild/BUILD/ zurück, %makeinstall<br />

kürzt den Aufruf ab.<br />

Die Abschnitte %post und %postun enthalten<br />

Makros, die der Paketmanager<br />

beim Installieren und Deinstallieren des<br />

Paketes ausführen soll. Bedingt durch<br />

das Makro %if 0%{?suse_version} >=<br />

1140 aktualisieren Sie im Beispiel die<br />

Startmenüs und den Icon-Cache für<br />

Suse-Versionen ab 11.4 – Feinheiten, die<br />

Anfänger ungestraft ignorieren dürfen.<br />

Inhaltsverzeichnis<br />

Das mehrzeilige Feld %files darf in keiner<br />

Spec-Datei fehlen, denn ohne dieses<br />

bleibt das binäre RPM leer: Rpmbuild<br />

packt beim Paketbau nur die dort zeilenweise<br />

gelisteten Dateien ein. Der *-Operator<br />

funktioniert dabei als Wildcard.<br />

Die vereinfachte Version des %files-<br />

Feldes benutzt nur die zwei Makros %{_<br />

bindir} (Verzeichnis für ausführbare<br />

Dateien) und %{_datadir} (share/-Verzeichnis),<br />

die passend zum mit %configure<br />

gesetzten Prefix zu usr/bin/ und<br />

usr/share/ unterhalb des per DESTDIR<br />

angegebenen Pseudo-Root /home/Benut-<br />

4 Treffer! Rpmbuild hat ein Paket für für das Taschenrechnerprogramm Galculator 2.0.1 gebaut (rot)<br />

und dabei die Abhängigkeiten automatisch berechnet (blau). Auch der Check auf in %files übersehene<br />

Dateien war erfolgreich (keine Meldung, grün).<br />

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

93


Know-how<br />

RPMs im Eigenbau<br />

zername/rpmbuild/BUILDROOT/galculator‐1.3.4‐18.1.2.i386/<br />

expandieren.<br />

Die vereinfachte Dateiliste packt die<br />

Hauptprogrammdatei galculator und<br />

alle von make install unter share/ abgelegten<br />

Dateien in das RPM-Paket. Das<br />

Original-Spec pickt gezielt die Unterverzeichnisse<br />

aus share/ heraus. Das ist im<br />

Hinblick auf Updates sicherer: Rpmbuild<br />

meldet dann neu hinzugekommene Dateien<br />

zunächst mit dem Fehler unpackaged<br />

files found. Der Maintainer kann<br />

prüfen, ob diese mit anderen Paketen in<br />

Konflikt stehen. Weitere Tricks zur<br />

%files-Sektion der OpenSuse-Spec-Datei<br />

erläutert ein englischsprachiger Artikel<br />

auf OpenSuse.org û.<br />

Einfacher als gedacht<br />

5 Wenn Rpmbuild nicht bis zum Ende durchläuft, helfen Schalter, die den Bauprozess<br />

nur bis zu einer bestimmten Stelle ausführen, bei der Fehlersuche.<br />

Da Patches für eine bestimmte Version<br />

eines Programmes geschrieben sind und<br />

die neuere Fassung die mit ihnen adressierten<br />

Fehler hoffentlich ohnehin beseitigt<br />

hat, sollten Sie zunächst einmal alle<br />

entsprechenden Zeilen mit einer Raute<br />

(#) auskommentieren.<br />

Im Galculator-Spec betrifft dies die<br />

Zeilen 11 (Patch0: %name‐ld_fix.diff),<br />

24 (%patch0) sowie den Aufruf von autoreconf‐fi<br />

in Zeile 27, der erst durch den<br />

Patch nötig wird, wie sich dem Changelog-Eintrag<br />

2 entnehmen lässt.<br />

Dass Galculator++2.0 jetzt GTK3 benutzt,<br />

lässt sich auf der als Upstream-<br />

URL in der Spec-Datei genannten Programm-Homepage<br />

nachlesen. Ändern<br />

Sie daher unter BuildRequires: die Abhängigkeit<br />

gtk2‐devel nach gtk3‐devel.<br />

Dann brauchen Sie nur noch das<br />

Version:-Feld auf 2.0.1 sowie die Release-Nummer<br />

für das Paket (Release:)<br />

auf 1.0.0 zu setzen und das Quellcode-<br />

Archiv galculator‐2.0.1.tar.bz2 von<br />

der Projektseite in das Verzeichnis rpmbuild/SOURCES/<br />

herunterzuladen.<br />

Nun ist die Spec-Datei reif für den Aufruf<br />

rpmbuild ‐bb galculator.spec. Installieren<br />

Sie gegebenenfalls noch alle als<br />

Failed build dependencies angemahnten<br />

Weitere Infos und<br />

interessante Links<br />

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

Weiterführendes<br />

Wer mehr Informationen zum Bauen von<br />

Paketen braucht, findet im Fedora-Wiki<br />

eine vom Umfang her verdauliche Anleitung<br />

û, die sich auch auf andere RPM-basierte<br />

Distributionen übertragen lässt. Als<br />

umfassendes Standardwerk gilt Eric<br />

Foster- Johnsons „RPM-Guide“ û.<br />

Suse-spezifische Informationen liefern die<br />

ebenfalls sehr umfangreichen und auf professionelle<br />

Maintainer zugeschnittenen<br />

OpenSuse-Packaging-Guidelines û, die<br />

Einsteiger allerdings überfordern dürften.<br />

Das gilt in gleicher Weise für das Pendant<br />

von Fedora û. Die zahlreichen Makros für<br />

OpenSuse- û beziehungsweise Fedora-<br />

Spec-Dateien û beschreiben Artikel auf<br />

den Webseiten der beiden Projekte.<br />

Auf dem OpenSuse-Build-Service û und<br />

im Git-Repository für Fedora-Pakete û<br />

sind Spec-Dateien für nicht bei der Distribution<br />

mitgelieferten Programme oder<br />

Programmversionen zu finden.<br />

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

07.2013


RPMs im Eigenbau<br />

Know-how<br />

Pakete. Bei einem erneuten Aufruf von<br />

Rpmbuild signalisiert die Zeile Wrote: /<br />

home/​user/​rpmbuild/​RPMS/​i586/​galculator-2.0.1-1.0.0.i586.rpm<br />

gegen Ende der<br />

Meldungen, dass ein RPM für Galculator<br />

2.0.1 im RPMS-Verzeichnis liegt 4 .<br />

Schritt für Schritt<br />

Nicht immer verläuft ein Update auf eine<br />

neue Programmversion so reibungslos<br />

wie beim Galculator-Beispiel, wo schon<br />

ein Auskommentieren der Patches und<br />

Anpassen des Version-Felds zum Erfolg<br />

führt. Für einen Fehlschlag gibt es die<br />

verschiedensten Ursachen: Oft stimmen<br />

die BuildRequires nicht mehr, manchmal<br />

ändern sich die Optionen für configure.<br />

Dass die %files-Liste in unserem<br />

Beispiel trotz Major-Versionssprung<br />

noch zutrifft, ist eher die Ausnahme.<br />

Wenn es Ihnen aber gelingt, das Programm<br />

von Hand zu kompilieren, lässt<br />

es sich praktisch immer auch in ein RPM<br />

verpacken. Wechseln Sie nach einem<br />

Misserfolg mit Rpmbuild auf der Konsole<br />

in das Verzeichnis ~/rpmbuild/BUILD/<br />

Name‐Version/, denn dort liegt der<br />

Quellcode in dem Zustand, wie ihn der<br />

abgebrochene Bauversuch hinterlässt.<br />

Kompilieren Sie das Programm von dort<br />

aus, und verändern Sie mit den so gewonnenen<br />

Erkenntnissen die %build-<br />

Sektion in der Spec-Datei. Das Kommando<br />

rpmbuild ‐bc name.spec führt nur<br />

die Befehle unter %prep und %build aus,<br />

womit Sie prüfen, ob die Spec-Datei bis<br />

einschließlich %build in Ordnung ist 5 .<br />

Bei rpmbuild ‐bi name.spec laufen<br />

die Befehle unter %install mit durch.<br />

Klappt dabei alles, liegen alle Dateien,<br />

die make install einspielt, unter ~/rpmbuild/BUILDROOT/Name‐Version/.<br />

Überprüfen<br />

Sie nun, ob die %files-Liste diese<br />

alle erfasst. Trifft das zu, sollte sich das<br />

Binärpaket mit rpmbuild ‐bb name.spec<br />

bauen lassen. Bei allen Schritten sorgt<br />

die Option ‐vv für mehr Information.<br />

Die auf Verlässlichkeit getrimmten Spec-<br />

Dateien, aus denen die offiziellen Distributionspakete<br />

entstehen, im Detail zu<br />

verstehen, fällt oft nicht ganz leicht. Darüber<br />

sollten Sie aber nicht vergessen,<br />

dass zum Update einer bestehenden<br />

Spec-Datei auf eine neue Software-Version<br />

in manchen Fällen das Anpassen des<br />

Version:-Feldes und das Herunterladen<br />

des Quellcode-Archives nach ~/rpmbuild/SOURCES<br />

genügt.<br />

Wer ein paar Fingerübungen dieser<br />

Art hinter sich gebracht hat, dem fällt es<br />

auch nicht mehr schwer, ein RPM-Paket<br />

ohne Vorlage zu erzeugen. Auch wenn<br />

das Resultat nicht den Qualitätsanforderungen<br />

der Distributionen entspricht,<br />

lässt es sich zumindest wieder sicher<br />

deinstallieren oder durch das Originalpaket<br />

des Systems ersetzen. Der Paketmanager<br />

verhindert dabei das Überschreiben<br />

von Dateien, die zu anderen<br />

Paketen gehören, und schützt so das<br />

System vor Schaden. (tle/​jlu) n<br />

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

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

Neu!<br />

Jetzt bestellen unter:<br />

Kennenlernangebot:<br />

3 AusgAben<br />

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

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

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

95<br />

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


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 />

Heinlein Support GmbH 10119 Berlin, Schwedter Str. 8/9b 030-405051-0 www.heinlein-support.de √ √ √ √ √ √<br />

TUXMAN Computer 10369 Berlin, Anton-Saefkow-Platz 8 030-97609773 www.tuxman.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 22083 Hamburg, Osterbekstraße 90b 040 / 69 64 37 20 www.itechnology.de √ √ √ √<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 30169 Hannover, Calenberger Esplanade 3 0511-123599-0 www.talicom.de √ √ √ √ √<br />

primeLine Solutions GmbH<br />

32549 Bad Oeynhausen,<br />

Dornenbreite 18a<br />

05731/​86940 www.primelinesolutions.de<br />

√ √ √ √<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 />

LINET Services GmbH 38118 Braunschweig, Cyriaksring 10a 0531-180508-0 www.linet-services.de √ √ √ √ √ √<br />

OpenIT GmbH 40599 Düsseldorf, In der Steele 33a-41 0211-239577-0 www.OpenIT.de √ √ √ √ √<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.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 />

GONICUS GmbH 59755 Arnsberg, Moehnestr. 55 02932-9160 www.gonicus.com √ √ √ √ √<br />

saveIP GmbH 64283 Darmstadt, Schleiermacherstr. 23 06151-666266 www.saveip.de √ √ √ √ √<br />

1 = Hardware 2 = Netzwerk/TK 3 = Systemhaus 4 = Seminaranbieter 5 = Software 6 = Schulung/Beratung <br />

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

07.2013


IT-Profimarkt<br />

Service<br />

IT-Profimarkt<br />

Firma Anschrift Telefon Web 1 2 3 4 5 6<br />

LAMARC EDV-Schulungen u. Beratung GmbH 65193 Wiesbaden, Sonnenberger Straße 14 0611-260023 www.lamarc.com √ √ √ √<br />

ORDIX AG 65205 Wiesbaden, Kreuzberger Ring 13 0611-77840-00 www.ordix.de √ √ √ √ √<br />

LinuxHaus Stuttgart 70565 Stuttgart, Hessenwiesenstraße 10 0711-2851905 www.linuxhaus.de √ √ √ √ √<br />

Manfred Heubach EDV und Kommunikation 73728 Esslingen, Hindenburgstr. 47 0711-4904930 www.heubach-edv.de √ √ √ √<br />

Waldmann EDV Systeme + Service<br />

74321 Bietigheim-Bissingen,<br />

Pleidelsheimer Str. 25<br />

07142-21516 www.waldmann-edv.de √ √ √ √ √<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 />

Tuxedo Computers GmbH 86343 Königsbrunn , Zeppelinstr. 3 0921-16498787 - 0 www.linux-onlineshop.de √ √ √ √<br />

OSTC Open Source<br />

90425 Nürnberg, Waldemar-Klink-Str. 10 0911-3474544 www.ostc.de √ √ √ √ √ √<br />

Training and Consulting GmbH<br />

pascom - Netzwerktechnik GmbH & Co.KG 94469 Deggendorf, Berger Str. 42 0991-270060 www.pascom.net √ √ √ √ √<br />

Dipl.-Ing. Christoph Stockmayer GmbH 90571 Schwaig, Dreihöhenstr. 1 0911-505241 www.stockmayer.de √ √ √<br />

RealStuff Informatik AG CH-3007 Bern, Chutzenstrasse 24 0041-31-3824444 www.realstuff.ch √ √ √<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 1 = Hardware Phoenix GmbH 2 = Netzwerk/TK 3 = Systemhaus IT-39100 4 = Bozen, Seminaranbieter Kravoglstraße 5 = 4Software 6 = Schulung/Beratung 0039 0471 56 41 11 √ √ √ √<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 />

99<br />

www.linux-magazin.de/newsletter


Jetzt<br />

am KiosK<br />

für nur<br />

9,80 euro<br />

•Über 100 Jahre Motorrad-Passion<br />

•Exklusiver Einblick in das Triumph Foto Archiv<br />

•Die Geschichte der legendären Marke im Überblick


Seminare<br />

Service<br />

DiD you<br />

know?<br />

IT-Onlinetrainings<br />

Mit Experten lernen.<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 />

MEDIALINX<br />

IT-ACADEMY<br />

www.medialinx-academy.de<br />

IT-Academy_1-9_LPIC-Schulungen.indd 1<br />

IT-Onlinetrainings<br />

Mit Experten lernen.<br />

18.03.2013 17:05:57 Uhr<br />

MEDIALINX<br />

IT-ACADEMY<br />

IT-Onlinetrainings<br />

Mit Experten lernen.<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 />

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_Python-Schulung.indd 1<br />

IT-Onlinetrainings<br />

Mit Experten lernen.<br />

www.medialinx-academy.de<br />

18.03.2013 17:07:32 IT-Academy_1-9_Bash-Schulung.indd Uhr<br />

1<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 />

IT-Onlinetrainings<br />

Mit Experten lernen.<br />

MEDIALINX<br />

IT-ACADEMY<br />

Einfache IMAP-<strong>Server</strong><br />

mit Dovecot<br />

mit Peer Heinlein,<br />

Heinlein Support GmbH<br />

249 €<br />

18.03.2013 17:04:16 Uhr<br />

www.medialinx-academy.de<br />

07.2013 IT-Academy_1-9_Zarafa-Schulung.indd www.linux-user.de 1 18.03.2013 17:08:02 IT-Academy_1-9_Dovecot-Schulung.indd Uhr<br />

1<br />

101<br />

LMI_3-9h_german_2504-2013.indd 1<br />

25.04.2013 15:06:17 Uhr<br />

18.03.2013 17:05:11 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 (Datenträger)<br />

Abo-Service<br />

Pressemitteilungen<br />

Chefredakteur<br />

Stellv. Chefredakteur<br />

Redaktion<br />

Linux-Community<br />

Datenträ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 Gudrun Blanz (Teamleitung) <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 Datenträger 1 )<br />

€ 5,95 € 6,70 Sfr 11,90 (siehe Titel)<br />

DVD-Ausgabe<br />

(mit 2 Datenträ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 />

07.2013


Veranstaltungen/Autoren/Inserenten<br />

Service<br />

Veranstaltungen<br />

20.-21.06.2013<br />

Open Source Tage der Landeshauptstadt München<br />

München<br />

http://www.muenchen.de/OpenSourceTage<br />

24.-28.06.2013<br />

USENIX Federated Conferences Week<br />

San Jose, CA, USA<br />

https://www.usenix.org/conference/fcw13<br />

01.-07.07.2013<br />

Europython 2013<br />

Florenz, Italien<br />

http://ep2013.europython.eu<br />

11.-12.07.2013<br />

Akademy-es 2013<br />

Bilbao, Spanien<br />

http://www.kde-espana.es/akademy-es2013<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 />

01.-08.08.2013<br />

Guadec 2013<br />

Brünn, Tschechien<br />

http://guadec.org<br />

14.-16.08.2013<br />

USENIX Security ’13<br />

Washington, D.C., USA<br />

https://www.usenix.org/conference/usenixsecurity13<br />

24.-25.08.2013<br />

FrOSCon 2013<br />

Hochschule Bonn-Rhein-Sieg<br />

Grantham-Allee 20<br />

53757 Sankt Augustin<br />

http://www.froscon.de<br />

03.-05.09.2013<br />

Uplinq 2013 Mobile CodeFest & Hackathon<br />

San Diego, CA, USA<br />

https://www.uplinq.com/<br />

11.-13.10.2013<br />

Ubucon 2013<br />

SRH Berufsförderungswerk Heidelberg<br />

Bonhoefferstraße 6<br />

69115 Heidelberg<br />

http://www.ubucon.de<br />

16.-18.10.2013<br />

Medientage München<br />

ICM München<br />

http://www.medientage.de<br />

03.-08.11.2013<br />

USENIX LISA ’13<br />

Washington, D.C., USA<br />

https://www.usenix.org/conference/lisa13<br />

Autoren<br />

Inserenten<br />

Erik Bärwaldt Mageia 3 im Kurztest (13), LAN-<strong>Server</strong> mit Zeroshell (22),<br />

Netzanalyse mit NST 18 (32), Verschlüsseln mit Zulucrypt (72),<br />

Jetway-Mini-PC als Desktop und <strong>Server</strong> (85)<br />

Falko Benthin <strong>Server</strong>schutz mit Fail2ban und Sshguard (26)<br />

Thomas Drilling Gnome Shell statt Ubuntu Unity (64)<br />

Karsten Günther Komfortabler Kommandozeilen-Texteditor Tilde (60)<br />

Frank Hofmann LaTeX-Dokumente skriptgesteuert umwandeln (55),<br />

Paketverwaltung mit dem Smart Packet Manager (68)<br />

Peter Kreußel Videos unkompliziert konvertieren mit Avidemux (38),<br />

RPM-Pakete selbst bauen (88)<br />

Marcus Nasarek Raspberry Pi als Medien-Renderer (80)<br />

Jan Rähm Komfortable <strong>Heim</strong>netz-Zentrale Amahi Home <strong>Server</strong> (16)<br />

Tim Schürmann Neues in Debian 7 (8), Visual Programming mit Alice 3.1 (44)<br />

Uwe Vollbracht Aktuelle Software im Kurztest (6)<br />

Harald Zisler OCR auf der Kommandozeile (50)<br />

Android Apps & Tipps www.android-user.de 77<br />

Android User www.android-user.de 57, 95<br />

Fernschule Weber GmbH www.fernschule-weber.de 7<br />

Linux Magazine www.linux-magazine.com 101<br />

Linux-Hotel www.linuxhotel.de 11<br />

Linux-Magazin www.linux-magazin.de 35<br />

Linux-Magazin Online www.linux-magazin.de 99<br />

<strong>LinuxUser</strong> www.linuxuser.de 49, 63, 103<br />

Medialinx IT-Academy www.medialinx-academy.de 101, 108<br />

Mortons www.mortons.co.uk 100<br />

Plus<strong>Server</strong> AG www.plusserver.de 36, 58, 78, 96<br />

Spenneberg Training www.spenneberg.com 101<br />

Tuxedo Computers GmbH www.linux-onlineshop.de 107<br />

Verion GmbH www.verion.de 2<br />

Webtropia www.webtropia.com 31<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 08/2013<br />

Die nächste Ausgabe<br />

erscheint am 18.07.2013<br />

Grafik und Foto<br />

Ein einfacher Pinselstrich macht noch<br />

lange keinen Picasso, aber die zahlreichen<br />

Grafikprogramme unter Linux helfen<br />

Ihnen bei den langwierigen Übungen<br />

auf dem Weg zum Meisterwerk. Sowohl<br />

für die Werke aus dem Handgelenk<br />

als auch die Aufnahmen aus der Digitalkamera<br />

brauchen Sie geeignete Werkzeuge<br />

zum Nachbearbeiten. In der kommenden<br />

Ausgabe geben wir Anregungen,<br />

stellen neue Tools und Programme<br />

vor und zeigen in Workshops die Tricks,<br />

mit denen die Profis mehr aus ihrem<br />

Bildmaterial herausholen.<br />

Debian-Pakete im Eigenbau<br />

Fehlt die aktuelle Version der Software<br />

oder ein dringend benötigtes Programm<br />

in den Repositories von Debian/Ubuntu,<br />

heißt es, selbst Hand anlegen: Wir zeigen,<br />

wie Sie Software paketieren, sodass<br />

es sich nahtlos in ein System einfügt.<br />

RasPi als Druckerserver<br />

© CSPStock, Fotolia<br />

Eigentlich sollte der alte USB-Drucker in<br />

den Elektroschrott, aber ein kleiner <strong>Server</strong><br />

auf Basis des Einplatinen-PC Raspberry<br />

Pi reaktiviert die Hardware noch<br />

einmal und stellt sie gleichzeitig für alle<br />

Clients im Netz bereit.<br />

Die Redaktion behält sich vor,<br />

Themen zu ändern oder zu streichen.<br />

Ausgabe 03/2013 erscheint am 11.07.2013<br />

10 Jahre EasyLinux<br />

Ende Mai 2003 ist mit Heft 06/​2003 die<br />

erste EasyLinux-Ausgabe erschienen.<br />

Zum Jubiläum blicken wir auf die zehn<br />

vergangenen EasyLinux-Jahre zurück<br />

und schauen, was sich geändert hat –<br />

nicht nur für Linux selbst, sondern auch<br />

bei den Vorstellungen und Erwartungen<br />

von Linux-Einsteigern.<br />

Enlightenment E17<br />

Zu KDE, Gnome, Xfce und LXDE gibt es<br />

seit vielen Jahren eine Alternative namens<br />

Enlightenment, die nur Insider<br />

kennen. Die Entwickler haben an Version<br />

E17 ungewöhnlich lange gearbeitet, und<br />

sie bietet neuartige Features. Wir prüfen<br />

mit einem Praxistest, ob sich der Aufwand<br />

gelohnt hat.<br />

MAGAZIN<br />

Ausgabe 08/2013 erscheint am 04.07.2013<br />

© Maksim Kabakou, 123RF<br />

Angemessener Schutz<br />

Das nächste Titelthema versucht den<br />

Aufwand für den Datenschutz der Irrationalität<br />

des Bauchgefühls zu entreißen.<br />

Als Auftakt setzt die Redaktion eine<br />

Messlehre für den Wert von Unternehmensdaten<br />

an. Hinzu gesellen sich Artikel<br />

über Intrusion Detection und Data<br />

Leak Prevention, Netz-Anonymisierung<br />

oder datenorientierte Analysesoftware.<br />

Geeksphone mit Firefox OS<br />

Ein freies und sicheres Smartphone will<br />

die Mozilla Foundation auf den Markt<br />

bringen und hat dazu einige Hardwarehersteller<br />

ins Boot geholt. Das<br />

Linux-Magazin hat eines der ersten Geräte<br />

mit dem Boot-2-Gecko-Nachfolger<br />

getestet und beschreibt Hardware, grafische<br />

Oberfläche und gibt Tipps zum Entwickeln<br />

eigener Apps.<br />

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

07.2013


Heft-DVD-Inhalt<br />

Service<br />

Neues auf den Heft-DVDs<br />

Mandriva-Fork neu aufgelegt: Mageia 3 KDE Live<br />

Nachdem Mandriva die Entwicklung<br />

schleifen ließ, übernahm die Community<br />

das Projekt und führt es unter dem Namen<br />

Mageia weiter. Mageia 3 verwendet Kernel<br />

3.8.13, Kmod, Systemd 195 sowie Grub<br />

Legacy. Erstmals ist ein Grub2-Paket für<br />

Umstiegswillige im Angebot, als Desktop<br />

dient die auf der Heft-DVD enthaltene Version<br />

KDE 4.10.2. Unter den Anwendungen<br />

finden sich LibreOffice 4.0.3, Firefox und<br />

Thunderbird 17.0.6, VLC 2.0.6, Gimp 2.8.2<br />

und Ardour 3. Außerdem ist die Spiele-<br />

Plattform Steam for Linux erhältlich. Auf<br />

Seite A der DVD finden Sie die bootbare<br />

32-Bit-Version der Distribution, Seite B enthält<br />

neben der 64-Bit-Variante auch das<br />

ISO-Image der CD im Verzeichnis iso-image/​.<br />

Einen Test lesen Sie ab Seite 13.<br />

Alle Desktops unter einer Haube: Hybryde Linux 13.04<br />

Auf dem gerade aktuellen Ubuntu „Raring<br />

Ringtail“ basiert die Distribution Hybryde<br />

Linux 13.04, die Sie auf Seite A der ersten<br />

DVD finden. Die Spezialität dieser Distribution<br />

ist dabei, dass sie die wichtigsten<br />

Desktop-Umgebungen und Window-<br />

Manager umschaltbar unter einem Dach<br />

vereint. So können Sie am Login-Fenster<br />

zwischen Gnome 2 oder 3, KDE, LXDE,<br />

XFCE, Unity, Maté, Cinnamon, Openbox<br />

und FVWM wählen. Der Unterbau ist weitgehend<br />

identisch mit jenem von Ubuntu<br />

13.04 und besteht im Wesentlichen aus<br />

dem Kernel 3.8 und dem X.org-<strong>Server</strong><br />

1.13.1. Als Bürosuite dient dabei Libre-<br />

Office 4.0.2.<br />

Schlankes Arbeitstier: Slackel 3.1 Live Openbox<br />

Wie der Name schon erahnen lässt, basiert<br />

die Distribution Slackel 3.1 Live Openbox<br />

auf Slackware. Sie enthält den Kernel 3.8.8<br />

und gegenüber der Vorgängerversion<br />

zahlreiche Updates von Slackwares<br />

„Current“-Tree. Als Desktop-Umgebung<br />

kommt das schlanke Openbox zum Zug,<br />

das sich durch seine ressourcenschonende<br />

Arbeitsweise auch für den Einsatz auf älteren<br />

Rechnern eignet. Midori 0.4.9 dient als<br />

Webbrowser, Claws-Mail 3.8.1 kümmert<br />

sich um den Empfang und Versand von<br />

E-Mails. Um Platz zu sparen, setzt die Distribution<br />

anstelle der großen Office-Suiten<br />

auf das schlanke Duo Abiword (Textverarbeitung)<br />

und Gnumeric (Tabellenkalkulation).<br />

Sie starten die installierbare Live-<br />

Distro von Seite A der ersten DVD.<br />

Schwachstellen im LAN auf der Spur: NST 18-4509<br />

Wenn Sie ein Netz nach Sicherheitslücken<br />

abscannen möchten, bietet Ihnen die auf<br />

Fedora 18 basierende Distribution NST 18-<br />

4509 das dafür passende Werkzeug: Das<br />

System fasst Hunderte von Analyse- und<br />

Security-Programmen aller Couleur unter<br />

einem Dach zusammen. Sie bedienen die<br />

Tools dabei komfortabel über eine Ajaxbasierte<br />

Weboberfläche namens NST WUI.<br />

Mit dabei sind unter anderem aus der<br />

Netzwerkecke Wireshark, Snort, Ngrep,<br />

Etherape, Argus und Nagios. WLAN-<br />

Schwachstellen spüren Sie unter anderem<br />

mit Kismet, Airsnort und Aircrack auf. Um<br />

NST zu nutzen, legen Sie Seite B der ersten<br />

DVD ein und booten Ihren Rechner damit.<br />

Einen Artikel zu NST 18 finden Sie ab Seite<br />

32 im Schwerpunkt dieser Ausgabe.<br />

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

105


Service<br />

Heft-DVD-Inhalt<br />

Debian 7.0<br />

Für das Release von Debian 7 alias<br />

„Wheezy“ ließ sich das Projekt wieder<br />

einmal reichlich Zeit: 27 Monate mussten<br />

die Fans darauf warten – nach<br />

„Sarge“ (3.1) die längste Spanne<br />

zwischen zwei Releases. Gewohnt<br />

konservativ gingen die<br />

Entwickler bei der Auswahl<br />

der Software zu Werke. Die<br />

Distribution verwendet<br />

den Kernel 3.2 und setzt<br />

das Dateisystem Ext4 ein.<br />

Zum Desktop kürten die<br />

Debian-Entwickler Gnome<br />

3.4 samt Gnome Shell.<br />

Es löst das veraltete Gnome<br />

2 ab und verlangt nach<br />

einer Grafikkarte mit aktivierter<br />

3D-Beschleunigung.<br />

Als Browser startet ein in Iceweasel<br />

umbenannter Firefox 10,<br />

die Mails holt Icedove alias Thunderbird<br />

ebenfalls in Version 10 ab.<br />

Einen Artikel zum neuen Debian finden<br />

Sie ab Seite 8 in dieser Ausgabe. (tle)<br />

Bei der DVD-Edition von <strong>LinuxUser</strong> ist an dieser Stelle der zweite Heft-Datenträ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 />

Das Konsolenprogramm Movgrab 1.2.1 unterstützt beim Download<br />

von Video-Dateien aus Portalen wie Youtube. Es kennt mehr<br />

als 40 solcher Quellen und bietet zahlreiche Einstellungsoptionen.<br />

Mit Treeline 1.4.1 organisieren Sie Daten und Texte übersichtlich in<br />

einer Baumstruktur und verwalten so zahlreiche Informationen<br />

vom Lesezeichen und Link-Sammlungen bis hin zum Adressbuch.<br />

Versucht ein Angreifer in einen Webserver einzudringen, sollten Sie<br />

ihn nicht nur davon abhalten, sondern auch künftige Attacken verhindern.<br />

Sshguard 1.5 überwacht im Hintergrund Login-Versuche<br />

und setzt potenzielle Angreifer auf die schwarze Liste.<br />

Zwar kaufen inzwischen zahlreiche ausgereifte Video-Editoren dem<br />

Klassiker Avidemux 2.6.4 in Sachen Schnitt und Effekte den<br />

Schneid ab, doch für das unkomplizierte Komprimieren oder Konvertieren<br />

in spezielle Formate für Mobilgeräte bleibt das Programm<br />

ungeschlagen praktisch.<br />

Mit Alice 3.1 klicken Sie Programme einfach mit der Maus zusammen:<br />

Zunächst ziehen Sie in eine noch leere 3D-Welt vorgefertigte<br />

Gegenstände. Jeder davon bietet mehrere Aktionen an, die sein<br />

Aussehen, seine Lage oder sein Verhalten ändern. Die gewünschten<br />

Aktionen übernehmen Sie dann einfach per Drag & Drop in einen<br />

Ablaufplan, den Alice auf Zuruf ausführt.<br />

Der in Python geschriebene SmartPM 1.4.1 bringt alle Funktionen<br />

mit, die Sie für gängige Aufgaben beim Verwalten von Paketen<br />

brauchen. Eine Schnittstelle für die Kommandozeile erlaubt darüber<br />

hinaus die volle Kontrolle über das Paketmanagement.<br />

Transportable Festplatten oder USB-Sticks gehen wegen ihrer kompakten<br />

Abmessungen und dem geringen Gewicht leicht verloren.<br />

Daher sollten Sie auf solchen Speichern nie persönliche Datenbestände<br />

ablegen, ohne diese durch Verschlüsselung vor neugierigen<br />

Blicken zu schützen. Mit Dm_crypt/​Cryptsetup und deren grafischen<br />

Oberfläche Zulucrypt 4.6.2 gelingt das im Handumdrehen.<br />

Die freie Monitoring-Software Monitorix 3.2.0 unterstützt jetzt den<br />

preiswerten Einplatinen-Computer Raspberry Pi. Es protokolliert<br />

dessen Taktfrequenzen, Temperatur sowie Stromspannungen. Daneben<br />

gibt es Unterstützung für die Temperatursensoren von ATI-<br />

Grafikkarten, die aber die proprietären Treiber erfordert. n<br />

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

07.2013


MEDIALINX<br />

IT-ACADEMY<br />

IT-Onlinetrainings<br />

Mit Experten lernen.<br />

powered by<br />

n Lernen Sie, wo und wann Sie möchten.<br />

n Sparen Sie Zeit und Kosten.<br />

n Bleiben Sie trotz zeitlicher Engpässe<br />

up-to-date.<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 />

– die offiziellen Trainings<br />

mit Marco Welter,<br />

Zarafa Deutschland GmbH<br />

Zarafa Administrator<br />

249 €<br />

Zarafa Engineer<br />

249 €<br />

Effiziente BASH-Skripte<br />

mit Klaus Knopper,<br />

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

knopper.net<br />

199 €<br />

Einfache IMAP-<strong>Server</strong> mit Dovecot<br />

mit Peer Heinlein,<br />

Heinlein Support GmbH<br />

249 €<br />

Python für Systemadministratoren<br />

mit Rainer Grimm,<br />

science + computing AG<br />

199 €<br />

www.medialinx-academy.de

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!