26.02.2014 Aufrufe

Linux-Magazin Paket-Service im Test (Vorschau)

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

03/13<br />

Anzeige:<br />

Born to Be ROOT!<br />

Dedizierte StrAto Server. » strato-pro.de siehe Seite 27<br />

STR0213_DE_TKS_DServer_120x17.indd 1<br />

21.01.2013 15:54:48 Uhr<br />

Tools für bootfähige<br />

USB-Sticks<br />

Ergebnis: 1x gut, 1x befriedigend, 2x ausreichend,<br />

1x mangelhaft, 2x ungenügend S. 40<br />

Spam-Statistik<br />

Sendmail Analyzer auch für<br />

Postfix, Amavis, Clam AV<br />

und Spamassassin S. 59<br />

Big Finder<br />

Lucene ist Spezialist <strong>im</strong><br />

Indizieren und Durchsuchen<br />

großer Textmengen S. 88<br />

<strong>Paket</strong>-<strong>Service</strong> <strong>im</strong> <strong>Test</strong><br />

Ob und wie wichtige Distributionen auf Sicherheitslücken, Bugs<br />

und neue Funktionen reagieren<br />

■ Maintenance-Vergleich bei Debian, Suse,<br />

Fedora, Ubuntu, SLES, RHEL S. 22<br />

■ Der Weg von Sicherheitspatches<br />

bei Suse und Red Hat S. 28<br />

■ Was tun, wenn der Long Term Support<br />

ausläuft? S. 30<br />

■ Wenn der Upstream stockt: Klaus Knopper<br />

sauer über folgenlose Bugreports S. 34<br />

■ Nicht ganz einfach: Datenträger<br />

für Offline-Updates brennen S. 36<br />

■ Splunk statt Grep: Logdateien<br />

der GByte-Klasse analysieren S. 60<br />

■ Heterogene Storage-Landschaften<br />

einheitlich verwalten S. 66<br />

Die freie Groupware Kolab erneuert in Version 3 den Webmailer und die mobile Synchronisation S. 48<br />

www.linux-magazin.de<br />

Deutschland Österreich Schweiz Benelux Spanien Italien<br />

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

4 192587 305954 03


„Kein Hosting-<strong>Paket</strong> ist<br />

günstiger als bei STRATO.<br />

Außer bei STRATO!“<br />

4 Domains, 10 MySQL-<br />

Datenbanken inklusive<br />

10.000 MB Speicher<br />

und 5 GB E-Mailspace<br />

Profi-Features: PHP,<br />

Perl, BackupControl<br />

0 ,–<br />

0 ,–<br />

0 ,–<br />

1-Klick-Installation mit<br />

0 zahlreichen Apps ,–<br />

Webhosting<br />

PowerWeb Basic<br />

für ein ganzes Jahr<br />

€/Mon.*<br />

JETZT 30 TAGE<br />

KOS TENLOS TESTEN! *<br />

HOSTED<br />

IN GERMANY<br />

* Aktion bis 28.02.2013. PowerWeb Basic 30 Tage kostenlos testen, danach 12 Monate 0 €/Mon., danach 4,99 €/Mon.<br />

Einmalige Einrichtungsgebühr 8,60 €. Mindestvertragslaufzeit 24 Monate. Preis inkl. MwSt.<br />

<strong>Service</strong>telefon: 030 - 300 146 - 21


Neuländler<br />

Login 03/2013<br />

Editorial<br />

Der Artikel ab Seite 22 betritt mit seinem Thema Neuland. Noch niemand Unabhängiges<br />

hat sich ernsthaft drangesetzt, die Maßnahmen zur <strong>Paket</strong>pflege bei<br />

<strong>Linux</strong>-Distributionen systematisch zu untersuchen. Der fünfseitige Beitrag macht<br />

einen Anfang – und der war schwer genug: Obwohl langfristig vorbereitet, erwies<br />

sich das Recherchieren und Bewerten der Update- und Upgrade-Ereignisse von<br />

Open Suse, Fedora, Debian, Ubuntu, RHEL und SLES als komplex. Denn jede<br />

Distribution verwendet selbst erfundene Versionsschemata und <strong>Paket</strong>namen –<br />

manche sind länglich und überbest<strong>im</strong>mt, andere behalten bei kleinen Fixes die <strong>Paket</strong>version<br />

kurzerhand bei, wohl um dem Anwender Stabilität zu signalisieren.<br />

Zum Herumgrasen in zumindest den frei zugänglichen Repositories hatte sich<br />

die <strong>Magazin</strong>-Redaktion der Unterstützung von Perl-Kolumnist Michael Schilli<br />

versichert. Der lieferte mit seinem Artikel (Seite 94) prompt ein Tool ab, das Jan Kleinert, Chefredakteur<br />

<strong>Paket</strong>e auf den Servern der Distributoren gezielt sucht und zusammen mit dem<br />

Veröffentlichungsdatum ausgibt. Das per Plugin zur jeweiligen Distribution passend gemachte Perl-Programm<br />

erwies sich überraschenderweise in der Redaktion als teilweise unzuverlässig. Ein paar <strong>Test</strong>s machten klar,<br />

dass nicht die Programmierkunst von Perlmeister Schilli ursachlich war, sondern die Repositories selbst. Einige<br />

Betreiber der Server löschen nämlich solche <strong>Paket</strong>e aus den Verzeichnissen, für die es neuere gibt. Das<br />

konterkariert natürlich die <strong>Paket</strong>-historische Aufarbeitung, da der Zeitraum zwischen dem letzten Update und<br />

dem Releasedatum der ganzen Distribution dem digitalen Radiergummi zum Opfer fällt.<br />

Dass der genannte Artikel nun erscheint, beweist, dass die Redakteure das Problem auf andere Weise in den<br />

Griff bekommen haben. Die Geschichte zu erzählen lohnt trotzdem, weil sich die Löschlust der Repository-<br />

Admins auch auf all die Benutzer der Distribution auswirkt, die ihre <strong>Linux</strong>-Rechner nicht täglich hochfahren.<br />

Mancher wird sich gefragt haben, warum ihn sein <strong>Paket</strong>manager mit Fehlermeldungen über nicht gefundene<br />

<strong>Paket</strong>e bombardiert, wenn er den Rechner eine Zeit lang nicht benutzt hat – bereinigte Repositories sind schuld.<br />

Betroffene User müssen dann die <strong>Paket</strong>liste vom Server neu einlesen, was mindestens für Rechner unpraktisch<br />

ist, die sich unbeaufsichtigt updaten sollen.<br />

PCs, die noch länger aus gewesen sind, geraten sogar in die Gefahr, Opfer komplexer Ringabhängigkeiten zu<br />

werden, beispielsweise wenn der erste Updateversuch mit einer alten <strong>Paket</strong>liste teilweise ge- und teilweise<br />

misslingt. Dadurch kommen einige ganz neue <strong>Paket</strong>e ins System, deren Abhängigkeiten wiederum ganz andere<br />

<strong>Paket</strong>e nachziehen wollen, deren Dependencies sich mit alten <strong>Paket</strong>en beißt. Zurück bleibt ein System, das auch<br />

mit einer neuen <strong>Paket</strong>liste nicht mehr updatebar ist. Ein ebenso tödliches Ergebnis erzielen Benutzer leicht,<br />

wenn sie ein paar Wochen nach dem Ende des Maintenance-Zeitraum mit ihren Systemen be<strong>im</strong> Distributor ihres<br />

Vertauens antraben. Der hat mit einiger Wahrscheinlichkeit in der Zwischenzeit auf seinen Servern alle oder –<br />

besonders perfide – nur einige Repositories gelöscht oder zumindest krude umbenannt. Auf jeden Fall crasht<br />

nun die <strong>Paket</strong>verwaltung des Users und kriegt auch keine valide <strong>Paket</strong>liste mehr zusammen.<br />

Was mag die Serverbetreiber zu ihrer manischen Löschlust treiben? Die Preise für TByte-Platten machen ökonomische<br />

Motive unwahrscheinlich. Zu vermuten ist ein Mangel an Empathie: Die Serveradmins zählen sicherlich<br />

zu den Early Adopters der eigenen Distribution, die jedes Stück eigener Hardware jeden Tag updaten und<br />

niemals eine Release auslassen. Neuland zu betreten, ist für sie der Normfall. Dass es Gelegenheitsanwender<br />

gibt oder mancher Rechner wochenlang ohne Internet auskommen muss, liegt außerhalb ihrer Vorstellung.<br />

www.linux-magazin.de<br />

3


Inhalt<br />

www.linux-magazin.de 03/2013 03/2013<br />

4<br />

Sie bringt kaum Ruhm, ist aber ungemein wichtig – die stete Pflege abertausender <strong>Paket</strong>e<br />

einer Distribution, die vor Monaten oder Jahren erschienen ist. Distributionshersteller, die<br />

hier schlampen, gefährden die Systeme ihrer Anwender. Besondere Sorgfalt darf man be<strong>im</strong><br />

Thema Maintenance von Red Hat und Suse erwarten, die für diesen Dienst Geld verlangen.<br />

Aktuell<br />

Titelthema: <strong>Paket</strong>-<strong>Service</strong> <strong>im</strong> <strong>Test</strong><br />

6 N ew s<br />

n Hiawatha 8.7 mit HSTS<br />

n Samba XP 2013: Call for Papers<br />

n Idoit kommt in Version 1.0<br />

n Nummer 18: Firefox und Fedora<br />

22 Update-Qualität<br />

Titel<br />

Wann Open Suse, Fedora, Debian, Ubuntu,<br />

SLS und RHES ihre <strong>Paket</strong>e erneuern.<br />

34 Abgeleitete Distributionen<br />

Klaus Knopper schreibt sich den Frust<br />

von der Seele: Warum viele Bugreports<br />

lange, zu lange unbeachtet bleiben.<br />

Neu in der Groupware Kolab 3: Der Webmailer<br />

Round cube und Active-Sync mit Syncroton.<br />

14 Zahlen & Trends<br />

n Wik<strong>im</strong>edia übern<strong>im</strong>mt Wikivoyage<br />

n Neo4j: NoSQL für Moviepilot<br />

n <strong>Linux</strong>-Notebook Bestseller by Amazon<br />

Eine Recherchequelle: Novell Patch Finder.<br />

28 Security-Updates<br />

Vom CVE zum Patch: Wie Suse und Red<br />

Hat sicherheitsrelevante Updates in die<br />

Repositories bringen.<br />

Lieber selbst anpacken als auf manche Maintainer<br />

warten, das rät Klaus Knopper. Denn<br />

wer wartet, wird bisweilen verzweifeln.<br />

36 Update-Datenträger<br />

Wenn Rechner keine oder nur langsame<br />

Internetverbindung haben, muss der Ad<br />

min mit Update-CD oder -DVD anrücken.<br />

Red Hat Security Advisories benachrichtigen<br />

die Anwender, hier über ein Firefox-Update.<br />

Shuttleworths jüngster Streich: So soll Ubuntu<br />

for Phones aussehen.<br />

20 Zacks Kernel-News<br />

n Avi Kivity legt KVM-Betreuung nieder<br />

n Verletzt Rising Tides I-SCSI die GPL?<br />

Das Tool Gource macht aus 21 Jahren <strong>Linux</strong>-<br />

Entwicklung drei Stunden Video.<br />

30 Long-Term<br />

Extended Support: Wenn sieben Jahre<br />

Standardsupport nicht reichen.<br />

DELUG-DVD<br />

E-Book gratis<br />

Samba 4<br />

TOOL TOOL<br />

TOOL<br />

Kostet regulär 40 Euro: „High<br />

Performance MySQL“ – das wahrscheinlich<br />

beste Werk, um verlässliche<br />

MySQL-Server aufzusetzen<br />

Chaos-Treffen<br />

DELUG-Mediathek: Die coolsten<br />

Vorträge vom 29C3 in Hamburg<br />

Insel-Systeme gibt es nicht nur auf dem mit<br />

Breitband unterversorgten Land, auch viele<br />

hochsichere Maschinen dürfen nicht ins Web.<br />

Details zu DVD-<br />

TOOL<br />

Inhalten auf S. 39<br />

Bootet direkt von DVD: Vorkonfigurierte<br />

Active-Directory-Appliance<br />

vom Samba-Spezialisten Sernet<br />

Kolab 3 testen<br />

TOOL<br />

Passend zum Artikel auf S. 48:<br />

Die neue Groupware als virtuelle<br />

Maschine zum sofort Loslegen


03/2013 03/2013<br />

Inhalt<br />

40 Windige Starthilfe<br />

Längst hat der USB-Stick hat die<br />

DVD als Bootmedium abgelöst. Doch<br />

welche Tools zum Erstellen von Live-<br />

Sticks sind wirklich hilfreich?<br />

60 Nicht suchen, finden!<br />

Logserver, Logfile-Überwachung, IDS<br />

und Monitoring — Splunk ist von allem<br />

ein bisschen, bringt aber auch schnelle<br />

Indizierung und intelligente Suche.<br />

88 Schlau gefunden<br />

Das Open-Source-Framework Lucene<br />

<strong>im</strong>plementiert die neuesten Such-<br />

Algorithmen und macht damit große<br />

Textsammlungen zugänglich.<br />

www.linux-magazin.de<br />

5<br />

Software<br />

Sysadmin<br />

Know-how<br />

39<br />

Einführung<br />

Auf der DELUG-DVD: Samba 4, Kolab 3,<br />

Videos vom 29C3 und ein Mini-Server.<br />

59 Einführung<br />

Titel<br />

Aus dem Alltag eines Sysadmin: Charly<br />

inspiziert seine Anti-Spam-Truppen.<br />

86 Insecurity Bulletin<br />

Ein Root-Exploit in Samsung-Androiden<br />

bedroht Smartphones.<br />

40 Bitparade<br />

Titel<br />

Fünf Tools für bootfähige USB-Sticks.<br />

48 Kolab 3<br />

Titel<br />

Die freie Groupware Kolab erneuert<br />

Webmailer und Synchronisation.<br />

Titel<br />

60 Splunk<br />

Titel<br />

Der kommerzielle Loganalyzer Splunk hat<br />

seine Stärken vor allem bei umfangreichen<br />

und heterogenen Protokolldateien.<br />

66 Open Attic<br />

Titel<br />

Als Unified-Storage-Manager bringt<br />

Open Attic Ordnung ins mit Fileserver-<br />

Protokollen überladene LAN.<br />

Telefon mit Loch: Immer mehr rückt das<br />

Smartphone ins Visier der Angreifer.<br />

Dem schlanken Ajax-Mailer Roundcube verpass<br />

ten die Kolab-Entwickler viele Extra-Features.<br />

56 Tooltipps<br />

Boxes 1.1.1, Ht 2.0, Likwid 3.0, Linkchecker<br />

8.3, Mkproject 0.4.6 und V<strong>im</strong>pal 1.2 <strong>im</strong><br />

Kurztest.<br />

Auch eine vollständige Dienstüberwachung ist<br />

in Open Attic integriert, Nagios ebenso.<br />

Programmieren<br />

88 Lucene<br />

Titel<br />

Große Textmengen schneller indizieren<br />

und durchsuchen mit Lucene.<br />

V<strong>im</strong>pal erweitert Gnomes Editor Gv<strong>im</strong> um einen<br />

rud<strong>im</strong>entären Date<strong>im</strong>anager.<br />

<strong>Service</strong><br />

3 Editorial<br />

100 IT-Prof<strong>im</strong>arkt<br />

101 Stellenanzeige<br />

104 Veranstaltungen<br />

104 Inserenten<br />

105 Impressum<br />

106 <strong>Vorschau</strong><br />

Forum<br />

72 Auflösung Winterrätsel<br />

Auflösung des Winterrätsels.<br />

76 Recht<br />

Der <strong>Linux</strong>-<strong>Magazin</strong>-Rat geber antwortet:<br />

Dieses Mal geht‘s um Rechtswahl,<br />

Rückabwicklung und Compliance.<br />

80 Bücher<br />

Bücher zur LPIC-2-<br />

Prüfungs vorbereitung.<br />

82 Leserbriefe<br />

Auf den Punkt gebracht.<br />

Das Solr-Webinterface gibt Auskunft über den<br />

Status des Systems und vorhandene Indizes.<br />

94 Perl-Snapshot<br />

Passend zum Titelthema: Mike<br />

Schilli nutzt Mouse und Moose, um<br />

Distributionsrepositories abzufragen.<br />

Verschiedene Distributions-Server berichten<br />

ihre Releasedaten des Pulseaudio-<strong>Paket</strong>s.


Aktuell<br />

www.linux-magazin.de News 03/2013<br />

6<br />

News<br />

System-on-Module mit <strong>Linux</strong>-Kit<br />

Die US-amerikanische Firma<br />

Crystalfontz [http://​www.​<br />

​crystalfontz.​com] arbeitet an einem<br />

System-on-Modul mit <strong>Linux</strong>-Entwicklerkit.<br />

Das Board<br />

CFA-10036 verwendet den<br />

ARM-9-Prozessor i.MX283<br />

von Freescale mit 454 MHz.<br />

Die Grundausstattung an<br />

Arbeitsspeicher beträgt 128<br />

MByte, auf Wunsch gibt es<br />

das Doppelte. Ein Micro-SD-<br />

Socket erlaubt es, Speicherkarten<br />

bis zu 64 GByte Kapazität<br />

zu verwenden.<br />

Das System ist mit großzügigen<br />

91 oder 126 Pins für General<br />

Purpose Input/​Output<br />

(GPIO) konzipiert, die jeder<br />

Integrator für seine Zwecke<br />

verwenden kann.<br />

Die <strong>Linux</strong>-Unterstützung für<br />

den Prozessor i.MX28 stammt<br />

noch von Kernel 2.6. Daher<br />

hat Crystalfontz die Embedded-Experten<br />

Free Electrons<br />

[http://​free‐electrons.​com] damit<br />

beauftragt, ein aktuelles<br />

Board-Support-<strong>Paket</strong> zu entwickeln.<br />

Das Resultat sind ein<br />

i.MX28-Zweig des Kernels 3.7<br />

sowie eine angepasste Version<br />

des Tools Buildroot, die System<br />

und Toolchain erzeugt.n<br />

Open NMS Conference <strong>im</strong> März<br />

Der Open NMS Foundation Europe<br />

e.V., die Hochschule Fulda<br />

und die Open NMS Group<br />

Inc. veranstalten vom 12. bis<br />

zum 15. März 2013 in Fulda<br />

eine Konferenz für Anwender<br />

der Monitoringsoftware. Dem<br />

Konferenzprogramm gehen<br />

zwei Trainingstage über Monitoring<br />

und fortgeschrittene<br />

Techniken voraus.<br />

Das Programm bietet zum<br />

einen aktuelle Informationen<br />

direkt von den Open-NMS-<br />

Hiawatha 8.7 mit HSTS<br />

Entwicklern und zum anderen<br />

Vorträge zu verschiedenen<br />

Monitoring-Themen wie etwa<br />

SNMPv3, Monitoring von virtualisierten<br />

Umgebungen oder<br />

von speziellen Applikationen<br />

wie der freien Telekommunikationslösung<br />

Asterisk. Eine<br />

Diskussionsrunde beschließt<br />

die Veranstaltung.<br />

Weitere Informationen zur<br />

Konferenz sowie Tickets finden<br />

sich unter [http://​www.​<br />

​opennms.​eu]. n<br />

Das Modul CFA-10036 beherbergt einen kompletten <strong>Linux</strong>-Rechner mit einer<br />

Vielzahl von I/​O-Anschlüssen.<br />

Der Open-Source-Webserver<br />

Hiawatha ist in der stabilen<br />

Version 8.7 erhältlich. Die<br />

neue Release setzt HTTP Strict<br />

Transport Security (HSTS)<br />

um. Ist dieses Feature aktiviert,<br />

sendet der Server einen<br />

besonderen Header an kompatible<br />

Browser wie Firefox<br />

oder Chrome, die daraufhin<br />

SSL-Verschlüsselung auf die<br />

ganze Sitzung anwenden. Der<br />

PHP-Betrieb via PHP-fcgi, in<br />

der Vorgängerversion als deprecated<br />

markiert, ist entfallen.<br />

Die empfohlene Methode<br />

ist nun der Fast CGI Process<br />

Manager (PHP-FPM).<br />

Weitere Informationen sowie<br />

den GPL-Quelltext und Binärdateien<br />

gibt es unter [http://​<br />

​www.​hiawatha‐webserver.​org]. n<br />

Kritische Schwachstelle in Java<br />

Laut Bundesamt für Sicherheit<br />

in der Informationstechnik<br />

(BSI) weist Oracles Java-<br />

Laufzeitumgebung JRE 1.7<br />

eine schwerwiegende Sicherheitslücke<br />

auf, die es Angreifern<br />

ermöglicht, aus der Ferne<br />

Code auf kompromittierten<br />

Rechnern auszuführen. Bereits<br />

das Aufrufen einer Webseite<br />

in einem Browser mit<br />

aktiviertem Java-Plugin reicht<br />

laut BSI aus, um den Code<br />

eines Angreifers auf dem<br />

Rechner auszuführen. Da die<br />

Schwachstelle bereits in diversen<br />

Exploit-Kits zur Verfügung<br />

steht, gehe von der Lücke eine<br />

massive Gefahr aus, so das<br />

Bundesamt.<br />

Technische Einzelheiten sind<br />

bislang nicht bekannt. Betroffen<br />

sind die aktuellen Versionen<br />

von Java 7 bis Patchlevel<br />

10, der Vorgänger Java 6<br />

aber nicht. Ein Patch, das die<br />

Lücke schließt, stand bei Redaktionsschluss<br />

nicht bereit.<br />

Das BSI empfiehlt deshalb,<br />

vorläufig die Browser-Plugins<br />

entweder zu deinstallieren<br />

oder zu deaktivieren. n


Neuheiten von O’Reilly<br />

Lösungen vorprogrammiert<br />

CfP: Samba XP 2013 sucht Beiträge<br />

Das Unternehmen Sernet<br />

veranstaltet vom 14. bis zum<br />

17. Mai 2013 in Göttingen die<br />

Konferenz Samba XP. Derzeit<br />

suchen die Organisatoren Beiträge<br />

rund um Samba. Einen<br />

Schwerpunkt der Konferenz<br />

soll die Samba-Version 4 bilden,<br />

die den Betrieb von Active-Directory-Controllern<br />

mit<br />

freier Software ermöglicht.<br />

Weitere Themen sind Clustering<br />

mit CTDB und Samba sowie<br />

private Cloud-Infrastrukturen.<br />

Beiträge sind zu vielen<br />

Aspekten des Samba-Einsatzes<br />

gesucht: von Storage über<br />

Performance-Opt<strong>im</strong>ierung bis<br />

zu Identity Management und<br />

Backup.<br />

Interessierte reichen ihre<br />

Vorschläge bis 28. Februar<br />

2013 per Formular auf der<br />

Call-for-Papers-Seite ein.<br />

Bis zu diesem Stichtag sind<br />

auch Tickets zum reduzierten<br />

Frühbucherpreis erhältlich.<br />

Weitere Informationen zur<br />

Konferenz, an die sich auch<br />

2013 wieder ein eintägiges<br />

Barcamp anschließt, gibt es<br />

unter [http://​sambaxp.​org]. n<br />

HTML und CSS von Kopf bis Fuß, 2. Auflage<br />

Elisabeth Robson, Eric Freeman, 768 Seiten, 2013<br />

44,90 €, ISBN 978-3-86899-934-1<br />

Endlich in Neuauflage: Unter Einsatz von<br />

vielen Übungen, die zum Mitmachen an<strong>im</strong>ieren,<br />

lernen Sie die Grundlagen von<br />

HTML und CSS kennen. Und ehe Sie es sich<br />

versehen, sind Sie in der Lage, eine Website<br />

für verschiedene Bildschirmgrößen (inkl.<br />

Smartphones und Tablets) zu entwerfen, sie<br />

zu gestalten, mit Formularen auszustatten<br />

u.v.m. – Die 2. Auflage dieses Bestsellers<br />

wurde aktualisiert und behandelt nun auch<br />

HTML5 und CSS3.<br />

Programmieren lernen mit Python<br />

Allen B. Downey, 312 Seiten, 2013, 24,90 €<br />

ISBN 978-3-86899-946-4<br />

Python ist eine moderne, interpretierte, interaktive<br />

und objektorientierte Skriptsprache,<br />

vielseitig einsetzbar und sehr beliebt. Dieses<br />

Buch führt Sie Schritt für Schritt durch die<br />

Sprache, beginnend mit grundlegenden<br />

Programmierkonzepten, über Funktionen,<br />

Syntax und Semantik, Rekursion und<br />

Datenstrukturen bis hin zum objektorientierten<br />

Design.<br />

RHEL 5.9<br />

Mit Red Hat Enterprise <strong>Linux</strong><br />

(RHEL) 5.9 unterstreicht Red<br />

Hat das Bekenntnis zu einer<br />

zehnjährigen Wartungsperiode<br />

für die Version 5.x, bei<br />

der auch neue Features hinzukommen<br />

sollen.<br />

In der letzten Release der Reihe<br />

betrifft das beispielsweise<br />

die weiter ausgebaute Hardware-Unterstützung<br />

für neue<br />

CPUs und Chipsets. Erweitert<br />

wurden auch die Sicherheitsvorkehrungen,<br />

so gibt es für<br />

Dmraid Root Devices nun einen<br />

FIPS-Mode (Federal Information<br />

Processing Standard),<br />

der das Anlegen, Erkennen,<br />

Aktivieren und Anzeigen von<br />

Eigenschaften solcher Geräte<br />

unterstützt.<br />

Die Virtualisierung profitiert<br />

von neuen Hyper-V-Treibern,<br />

Entwickler können sich über<br />

Open JDK 7 und ein verbessertes<br />

Systemtap freuen. Das<br />

Syslog-Package erhielt ein<br />

Update auf die neue Release<br />

5. Zudem hat der Hersteller<br />

die Tools für das Subscription<br />

Management überarbeitet. n<br />

Gemeinschaft 5.0<br />

In Version 5 des freien Telefonie-Servers<br />

Gemeinschaft<br />

haben die Entwickler den<br />

VoIP-Server Asterisk aufgegeben<br />

und arbeiten nun mit der<br />

ebenfalls freien Software Freeswitch.<br />

Nicht behobene Fehler,<br />

die schon lange für Ärger<br />

sorgten, seien der Grund für<br />

den Wechsel, lassen die Entwickler<br />

wissen. Version 4 hat<br />

für viel Unmut und Ärger gesorgt,<br />

sodass die Programmierer<br />

jetzt die Reißleine zogen<br />

und mit Version 5 erstmals<br />

eine Variante komplett ohne<br />

Asterisk anbieten.<br />

GS5, so das Kürzel der Entwickler,<br />

könne jetzt auf gleicher<br />

Hardware deutlich mehr<br />

Telefone bedienen als die Vorgänger,<br />

die Programmierlogik<br />

innerhalb der Anlage lasse<br />

sich dank Freeswitch jetzt<br />

mit der Sprache Lua definieren,<br />

während das Web-GUI<br />

mit Ruby on Rails 3.2 läuft.<br />

Wer die neue Version testen<br />

will, lädt sich GS5 als ISO-<br />

Image von [http://​amooma.​de/​<br />

​gemeinschaft/​gs5] herunter. n<br />

Blog:<br />

community.oreilly.de/blog<br />

Google+:<br />

bit.ly/googleplus_oreillyverlag<br />

Einstieg in Reguläre Ausdrücke<br />

Michael Fitzgerald, 156 Seiten, 2012, 19,90 €<br />

ISBN 978-3-86899-940-2<br />

Reguläre Ausdrücke gehören zu den fortgeschrittenen<br />

Programmiertechniken. Manche<br />

Programmierlösung in Perl, Java, JavaScript<br />

oder C# kommt ohne den Einsatz dieses<br />

mächtigen Werkzeuges kaum aus. Einstieg<br />

in Reguläre Ausdrücke vermittelt mithilfe<br />

zahlreicher, klug gewählter didaktischer<br />

Beispiele Schritt für Schritt den Einsatz dieses<br />

Filter- und Textmustersuchinstrumentes.<br />

O'Reillys Erfolgsreihen <strong>im</strong> Hosentaschenformat.<br />

jetzt mit neuen Bänden!<br />

Android-Programmierung – kurz & gut<br />

ISBN 978-3-86899-155-0, 12,90 €<br />

Eltern sein – kurz & geek<br />

ISBN 978-3-86899-827-6, 9,90 €<br />

O’REILLY ®<br />

www.oreilly.de<br />

Facebook:<br />

facebook.com/oreilly.de<br />

Twitter:<br />

twitter.com/oreilly_verlag


Aktuell<br />

www.linux-magazin.de News 03/2013<br />

8<br />

Devconf.cz 2013: Programm steht<br />

An einem Wochenende (23.<br />

und 24. Februar 2013) findet<br />

die tschechische Entwicklerkonferenz<br />

Devconf.cz in Brno<br />

(Brünn) statt. Nun steht das<br />

Programm fest. In den Räumen<br />

der Informatik-Fakultät<br />

an der Masaryk-Universität<br />

wird es rund 90 Vorträge geben.<br />

Die Sitzungen finden in<br />

englischer Sprache statt. Der<br />

Eintritt ist kostenlos.<br />

Nicht zufällig behandeln viele<br />

Beiträge Fedora und Red Hat,<br />

denn in Brno hat das <strong>Linux</strong>-<br />

Unternehmen sein tschechisches<br />

Hauptquartier. Daher<br />

stehen etwa Anaconda, SE<br />

<strong>Linux</strong>, Jboss und Openshift<br />

auf der Tagesordnung. Distributionsübergreifende<br />

Themen<br />

sind aber auch in Hülle und<br />

Fülle geboten, unter anderem:<br />

der <strong>Linux</strong>-Kernel, Profiling<br />

mit Perf, Gnome, JVM-Monitoring,<br />

Contentmanagement,<br />

PostgreSQL, Open Stack und<br />

Systemd.<br />

n<br />

Alphalemon: CMS auf Symfony2-Basis<br />

Xmonad 0.11 taugt für Java-Anwendungen<br />

Der kachelnde Window-Manager<br />

Xmonad ist in Version<br />

0.11 erhältlich, die einige Bugs<br />

behebt und neue Erweiterungen<br />

bringt. Obwohl viele technisch<br />

versierte Anwender die<br />

Entwicklerversion einsetzen,<br />

haben sich die Xmonad-Macher<br />

entschlossen, nach über<br />

einem Jahr eine neue stabile<br />

Release zu vorzulegen.<br />

Sie behebt unter anderem<br />

Fokus-Probleme <strong>im</strong> Zusammenspiel<br />

mit Java-GUI-Anwendungen.<br />

Daneben kann<br />

Xmonad nun eine Infobox mit<br />

Tastaturkürzeln für Einsteiger<br />

anzeigen und den Fokus-<br />

Klick an Anwendungen weitergeben.<br />

Auch gibt es einige<br />

neue Erweiterungen, die beispielsweise<br />

zum Debugging<br />

dienen oder die Navigation<br />

über mehrere Bildschirme organisieren.<br />

Xmonad ist in Haskell geschrieben<br />

und steht unter<br />

BSD-Lizenz. Weitere Informationen<br />

sowie den aktuellen<br />

Quelltext gibt es auf [http://​<br />

​xmonad.​org]. Die Software lässt<br />

sich mit dem Haskell-Tool Cabal<br />

aus dem Hackage-Repository<br />

installieren.<br />

n<br />

Mit Version 1.0.0 von Alphalemon<br />

CMS stellt sich ein<br />

neues Contentmanagement-<br />

System für Websites vor. Die<br />

Open-Source-Software richtet<br />

sich mit dem Bearbeiten von<br />

Inhalten mittels Kontextmenü<br />

und Wysiwyg-Editor insbesondere<br />

an Anwender ohne<br />

technisches Know-how. Dabei<br />

können diese beispielsweise<br />

Videos einbinden oder mehrere<br />

Sprachversionen verwalten.<br />

Wer eigene Inhaltstypen<br />

oder Themes anlegen möchte,<br />

muss allerdings zur Kommandozeile<br />

und zum Quelltext-Editor<br />

greifen. Unter der<br />

Haube verwendet die GPLv2-<br />

Software das PHP-Framework<br />

Symfony2, die Template-Engine<br />

Twig, den <strong>Paket</strong>manager<br />

Composer sowie Git als Versionskontrolle.<br />

Die Dokumentation und einige<br />

Screencasts unter [http://​<br />

​alphalemon.​com] erläutern Installation<br />

und Bedienung von<br />

Alphalemon. Demo-Zugänge<br />

zum CMS gibt es auf Anforderung<br />

per Mail, daneben steht<br />

die Software zum Download<br />

in Form einer Symfony2-Anwendung<br />

bereit.<br />

n<br />

Amarok 2.7 mit Last.fm-Synchronisation<br />

Amarok [http://​amarok.​kde.​org],<br />

eine KDE-Anwendung zum<br />

Verwalten und Abspielen von<br />

Musiksammlungen, ist in Version<br />

2.7 mit einigen Neuerungen<br />

erhältlich. Die Release mit<br />

dem Namen „A Minor Tune“<br />

bringt erstmals Unterstützung<br />

für das Metadaten-Framework<br />

Nepomuk, das Audiodateien<br />

unabhängig vom Speicherort<br />

auf dem lokalen Rechner findet.<br />

Daneben kann sie Statistiken<br />

zwischen den lokalen<br />

Musiksammlungen und dem<br />

Online-Musikdienst Last.fm<br />

synchronisieren. Es waren<br />

Stipendiaten des Förderprogramms<br />

Google Summer of<br />

Code 2012, die beide Features<br />

umgesetzt haben.<br />

Zudem gibt es Verbesserungen<br />

am Dateibrowser, auch<br />

das Abspielen von Audio-CDs<br />

funktioniert wieder. Insgesamt<br />

hat das Projekt über 470<br />

Bugreports und 17 Feature-<br />

Anfragen bearbeitet. n<br />

Software-Appliance mit Samba 4 von Sernet<br />

Der Samba-Spezialist Sernet<br />

hat eine kostenlose Software-<br />

Appliance mit Samba 4 veröffentlicht,<br />

die Anwendern<br />

das <strong>Test</strong>en der neuen Version<br />

erleichtern soll.<br />

Das installierbare Betriebssystem<br />

in einem ISO-Image<br />

basiert auf Debian Squeeze<br />

(i386). Es enthält Samba-4.0-<br />

<strong>Paket</strong>e und hilft den Anwender<br />

mit dem Tool »dcpromo«<br />

be<strong>im</strong> Einrichten der freien<br />

Software als einzigem Domain<br />

Controller (DC) in einer Active<br />

Directory Domain. Windows-<br />

Clients lassen sich mittels<br />

Group Policies und Windows<br />

Remote Server Administration<br />

Tools verwalten.<br />

Daneben bietet die Appliance<br />

Integration für die Groupware<br />

Zarafa, durch deren Installation<br />

samt AD-Schema-Extensions<br />

die Software führt.<br />

Außerdem unterstützt die Appliance<br />

sichere DNS und NTP-<br />

Updates. Die aktuelle Version<br />

0.6 steht unter [http://​www.​<br />

​enterprisesamba.​org/​samba4ad/​<br />

​samba‐4‐appliance/] zum Download<br />

bereit.<br />

Zur Cebit 2013 plant Sernet<br />

eine aktualisierte Appliance<br />

mit Opsi, einer Open-Source-<br />

Lösung für die Softwareverteilung<br />

auf Windows-Clients.<br />

Daneben sollen sich dann<br />

auch Exchange-Server integrieren<br />

lassen. <br />

n


Firefox 18 bringt schnelleres Javascript<br />

Mozilla hat den Open-Source-<br />

Browser Firefox mit einigen<br />

Verbesserungen in Version 18<br />

veröffentlicht. Der Browser<br />

verspricht gegenüber der Vorgängerversion<br />

eine um rund<br />

25 Prozent beschleunigte Ausführung<br />

von Javascript insbesondere<br />

bei UI-intensiven<br />

Web-Apps und Spielen. Dafür<br />

soll die neue Javascript-Engine<br />

Ion Monkey sorgen. Zum<br />

Ausprobieren empfehlen die<br />

Mozilla-Entwickler das Onlinespiel<br />

Bananabread, das in<br />

HTML 5, Javascript und Web<br />

GL umgesetzt ist.<br />

Daneben dürfen sich Anwender<br />

von Mac OS X 10.7 und<br />

neuer über Unterstützung für<br />

das hochauflösende Retina-<br />

Display freuen. Erstmals haben<br />

die Programmierer auch<br />

Web RTC umgesetzt, ein<br />

Web-API für Echtzeitkommunikation<br />

wie Videochat und<br />

Telefonie <strong>im</strong> Browser. Ebenfalls<br />

neu ist der Support für<br />

die HTML-5-Technologie W3C<br />

Touch Events. Verbesserte<br />

Startzeiten und Security-Fixes<br />

runden den neuen Firefox ab.<br />

Unter [http://​www.​mozilla.​org/​<br />

​en‐US/​firefox/​all/] steht die neue<br />

Release für verschiedene Betriebssysteme<br />

und Sprachen<br />

zum Download bereit.<br />

Die Android-Ausgabe des neuen<br />

Firefox soll ebenfalls von<br />

der neuen Javascript-Engine<br />

profitieren. Sie bietet einen<br />

nun standardmäßig aktivierten<br />

Safe-Browsing-Modus, der<br />

das Smartphone vor Schadsoftware<br />

und den Anwender<br />

vor Phishing schützen soll. n<br />

Firefox 18 beschleunigt Browserspiele wie Bananabread dank der neuen<br />

Javascript-Engine und Web GL.<br />

News 03/2013<br />

Aktuell<br />

www.linux-magazin.de<br />

9<br />

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

Jahren <strong>im</strong> <strong>Linux</strong>hotel. 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 <strong>Linux</strong> *<br />

Embedded <strong>Linux</strong> * 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 * <strong>Linux</strong> * 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ß ;-)


Aktuell<br />

www.linux-magazin.de News 03/2013<br />

10<br />

Dokumentationslösung I-doit als 1.0<br />

Die Synetics GmbH hat I-doit,<br />

ihr Open-Source-basiertes System<br />

für IT-Dokumentation, in<br />

Version 1.0 veröffentlicht. Die<br />

Release bringt ein neues GUI<br />

mit Breadcrumb-Navigation,<br />

neuem Farbschema und vielen<br />

weiteren Usability-Verbesserungen.<br />

Außerdem erweitert<br />

Version 1.0 die Dokumentation<br />

um eine Rack-Ansicht mit<br />

HE-, Netzwerk-, Strom- und<br />

Patchinformationen. Auch<br />

Blade- und Chassis-Konfigurationen<br />

lassen sich inklusive<br />

Visualisierung festhalten. Die<br />

neuen Informationen sollen<br />

sich laut Synetics-Chef Joach<strong>im</strong><br />

Winkler wie bisher nach<br />

dem Motto „Einmal inventarisieren<br />

und wiederverwenden“<br />

einsetzen lassen.<br />

Interessierte können das neue<br />

I-doit in einer Demo-Installation<br />

kennenlernen. Daneben<br />

steht eine 30-Tage-<strong>Test</strong>version<br />

von I-doit Pro zum Download<br />

unter [http://​www.​i‐doit.​com] bereit.<br />

Die Community-Version<br />

ist nicht aktualisiert. n<br />

Open Suse auf dem Chromebook<br />

Einige Open-Suse-Entwickler<br />

haben Googles Chromebook<br />

mit ihrer Community-Distribution<br />

zum Laufen gebracht.<br />

Das berichtet der Suse-Mitarbeiter<br />

Will Stephenson in<br />

seinem Blogeintrag. Im Auslieferungszustand<br />

läuft auf<br />

dem Samsung-Gerät Chrome<br />

OS von Google. Das Modell 3<br />

mit ARM-System-on-a-Chip<br />

hält Stephenson für ein interessantes<br />

Gerät, das es in der<br />

Performance mit Intel-Atom-<br />

Netbooks aufnehmen könne.<br />

Zudem verspricht es stolze<br />

6 Stunden Laufzeit mit dem<br />

eingebauten 30-Wattstunden-<br />

Akku.<br />

Nun gibt es ein erstes Image<br />

von Open Suse 12.2 für das<br />

Chromebook, das sich von<br />

USB-Speicher oder SD-Karte<br />

booten lässt. Es verwendet<br />

die Ressourcen-schonende<br />

Desktopumgebung LXDE<br />

und bringt auch den WLAN-<br />

Chip zum Laufen. Was noch<br />

nicht funktioniert: Hardwarebeschleunigte<br />

Grafik und die<br />

Installation auf dem eingebauten<br />

Flashspeicher.<br />

Die Entwickler geben aber<br />

nicht auf und möchten das<br />

Gerät in Open Suse 12.3 unterstützen.<br />

Dazu wollen sie<br />

unter anderem die Energieverwaltung<br />

verbessern und Open<br />

GL ES für die Benutzeroberfläche<br />

einsetzen. Dafür suchen<br />

sie nach <strong>Test</strong>benutzern, die<br />

bereits ein solches Chromebook<br />

besitzen. Weitere Informationen<br />

gibt es bei [https://​en.​<br />

​opensuse.​org/​HCL:ARMChromebook]<br />

<strong>im</strong> Open-Suse-Wiki. n<br />

Die Dokumentationssoftware I-doit erfasst in Version 1.0 auch Rack-Schränke<br />

samt HE-, Netzwerk-, Strom- und Patchinformationen.<br />

Spracheingabe S<strong>im</strong>on lernt Kontext<br />

S<strong>im</strong>on, ein Open-Source-System<br />

zum Steuern von Anwendungen<br />

mittels Spracheingabe,<br />

ist in Version 0.4.0 erhältlich.<br />

Die neue Release zeigt ein<br />

überarbeitetes Hauptfenster.<br />

Unter der Oberfläche bietet<br />

S<strong>im</strong>on Unterstützung für das<br />

freie Spracherkennungs-Toolkit<br />

CMU Sphinx, das künftig<br />

als Standard dient. HTK und<br />

Julius sollen aber weiterhin<br />

funktionieren.<br />

Das Englisch-Sprachmodell<br />

der freien Sammlung Voxforge<br />

ist jetzt für S<strong>im</strong>on erhältlich,<br />

zudem können Anwender ihre<br />

Training-Samples für S<strong>im</strong>on<br />

an den Voxforge-Server übermitteln<br />

und so der Community<br />

bereitstellen.<br />

Daneben kann die GPL-Software<br />

nun den Kontext berücksichtigen.<br />

Das heißt, sie hört<br />

nur dann auf den gesprochenen<br />

Befehl »Close Tab«, wenn<br />

auch wirklich ein Webbrowser<br />

mit Tabs geöffnet ist. Der Entwickler<br />

Peter Grasch hat unter<br />

[http://​s<strong>im</strong>on‐listens.​blogspot.​<br />

​de] einen informativen Eintrag<br />

mit zahlreichen Links und<br />

einigen Screencasts zu den<br />

Neuerungen verfasst. n<br />

Kolab 3.0 fertiggestellt<br />

Der freie Groupware-Server<br />

Kolab [http://​kolab.​org] ist in<br />

Version 3 verfügbar. Als neuer<br />

Webmailer dient Roundcube,<br />

auch für die Administration<br />

gibt es eine neue Weboberfläche.<br />

Daneben bietet die<br />

Software nun Active-Sync-<br />

Anbindung für Smartphones<br />

und unterstützt auch Mozilla<br />

Thunderbird als Client. Eine<br />

große Neuerung ist die Einbindung<br />

des KDE-Frameworks<br />

Akonadi. Es klinkt sich zwischen<br />

Clients und Server ein,<br />

cacht und indiziert die Daten<br />

und soll damit für einen deutlichen<br />

Geschwindigkeitszuwachs<br />

sorgen (siehe Artikel<br />

in der Software-Rubrik). n<br />

Als Webclient bringt die Groupware Kolab 3.0 nun Roundcube mit.


Kurznachrichten<br />

Kraft 0.50: Die betriebswirtschaftliche Anwendung erstellt Rechnungen<br />

und Ähnliches für kleine Handwerksbetriebe. Neu: Die Release unterstützt<br />

mehrere Steuersätze innerhalb eines Dokuments, etwa Posten, die steuerfrei<br />

oder mit reduziertem Steuersatz abgerechnet werden. Außerdem gibt<br />

es Verbesserungen bei Dokumentenerstellung und Performance. Lizenz:<br />

GPLv2 [http://​volle‐kraft‐voraus.​de]<br />

Bodhi <strong>Linux</strong> 2.2.0: Die Distribution auf Ubuntu-Basis eignet sich auch für<br />

ältere oder schlecht ausgestattete PCs. Neu: Als Desktopumgebung dient<br />

Enlightenment 17. Installationsmedien mit und ohne PAE-Unterstützung <strong>im</strong><br />

Kernel. Lizenz: GPL und andere [http://​www.​bodhilinux.​com]<br />

Rekonq 2.0: Der KDE-Browser mit Webkit-Engine stellt eine Alternative<br />

zu Konqueror dar. Neu: Tabs oberhalb der Adresszeile, Web-App-Ansicht<br />

ohne Bedienelemente sowie Inkongnito-Modus. Im Zusammenspiel mit Qt<br />

Webkit 2.3 besitzt der Browser eine Rechtschreibprüfung. Lizenz: GPLv3<br />

[http://​rekonq.​kde​org]<br />

Baruwa 2.0: Das Webfrontend für Mailscanner ist mit dem Python-Framework<br />

Pylons umgesetzt. Neu: Import und Export der Einstellungen, Unterstützung<br />

für DKIM-Domain-Keys und Volltextsuche. Ebenfalls neu sind<br />

die Integration in Active Directory sowie die Lokalisierung in über 25<br />

Sprachen. Lizenz: GPLv3 [http://​www.​baruwa.​org]<br />

Slackel Openbox 1.0: Die Desktop-Distribution verwendet den Current-<br />

Zweig von Slackware sowie einige <strong>Paket</strong>e und Tools von Salix OS. Neu:<br />

Openbox in Version 3.5.0 und <strong>Linux</strong>-Kernel 3.7.1, daneben Browser Midori<br />

0.4.7 und Claws-Mail 3.8.1 sowie Space Fm als Date<strong>im</strong>anager. Abiword und<br />

Gnumeric dienen als Office-Software, für Libre Office 3.6.4 gibt es aber<br />

auch ein <strong>Paket</strong>. Lizenz: GPL und andere [http://​www.​slackel.​gr]<br />

Kajona 4.0: Das Contentmanagement-System ist in PHP 5 geschrieben.<br />

Neu: Admin-Seiten in neuer Gestaltung mit Ajax-Funktionen, Drag & Drop<br />

und dialogbasierten Abläufen. <strong>Paket</strong>verwaltung zum Installieren von Modulen<br />

und Templates. Lizenz: LGPLv2.1 [http://​www.​kajona.​de]<br />

Shake 0.5: Das Buildsystem ersetzt Make in Haskell-Projekten. Neu:<br />

Reduziert den hohen Speicherverbrauch der Vorgängerversionen. Stark<br />

typisierte Oracle-Regeln, in selbst geschriebenen Regeln muss es nun<br />

»storedValue« statt »validStored« heißen. Lizenz: BSD [http://​hackage.​<br />

​haskell.​org/​package/​shake]<br />

Tiki Wiki 10: Die PHP-Webanwendung vereint Elemente von CMS, Wiki und<br />

Groupware in sich. Neu: Batch-Upload für Mult<strong>im</strong>ediadateien, Indizieren<br />

von Office-Dokumenten in den Microsoft-Formaten DOCX, XLSX und PPTX.<br />

Compliance mit den neuen europäischen Cookie-Vorschriften. Lizenz:<br />

LGPLv2.1 [http://​info.​tiki.​org]<br />

News 03/2013<br />

Aktuell<br />

www.linux-magazin.de<br />

11<br />

Scala 2.10.0: Promises, Futures und Akka-Actors<br />

Die objektorientierte und<br />

funktionale Programmiersprache<br />

Scala ist in Version<br />

2.10.0 mit einigen Neuerungen<br />

erhältlich. Dazu gehören<br />

Value-Klassen sowie <strong>im</strong>plizite<br />

Klassen. Daneben kennt Scala<br />

nun Futures und Promises<br />

zur Abst<strong>im</strong>mung paralleler<br />

Abläufe. String-Interpolation<br />

macht es wie in vielen anderen<br />

Sprachen möglich, Variablen<br />

direkt in Zeichenketten<br />

einzufügen.<br />

Der vom Scala-Compiler<br />

erzeugte Bytecode ist nun<br />

standardmäßig für die Java-<br />

Laufzeitumgebung 1.6 gedacht,<br />

auf Wunsch lässt sich<br />

auch Code für die Version 1.7<br />

erzeugen. Das Backend für 1.5<br />

dagegen gilt als nicht mehr<br />

empfohlen. Scala verwendet<br />

nun die Aktoren aus dem<br />

Akka-Projekt, die ursprünglichen,<br />

Scala-eigenen Actors<br />

gelten als veraltet. Außerdem<br />

haben die Entwickler den Pattern<br />

Matcher verbessert und<br />

Steigerungen bei der Performance<br />

erreicht. Detaillierte<br />

Informationen mit Verweisen<br />

auf die Onlinedokumentation<br />

finden sich unter [http://​www.​<br />

​scala‐lang.​org/​node/​27499]. Dort<br />

gibt es auch Links zu den aktuellen<br />

Binär- und Quelltext-<br />

Versionen der Scala-Komponenten<br />

sowie der Eclipse-basierten<br />

Scala-IDE. n<br />

Fedora in Version 18 veröffentlicht<br />

Nachdem es die Version 18<br />

mehrfach verschoben hatte,<br />

konnte das Fedora-Team am<br />

15. Januar schließlich die<br />

Veröffentlichung der aktualisierten<br />

<strong>Linux</strong>-Distribution<br />

bekannt geben. Schuld an<br />

der Verzögerung war insbesondere<br />

die Neuentwicklung<br />

des Installers, der noch aus<br />

den Anfangszeiten der <strong>Linux</strong>-<br />

Distributionen von Red Hat<br />

stammte. Anwender müssen<br />

be<strong>im</strong> neuen Installer nicht<br />

mehr jeden Schritt obligatorisch<br />

durchlaufen, sondern<br />

können sich auf wichtige<br />

Einstellungen beschränken.<br />

Bis zuletzt enthielt der Installer<br />

aber noch schwerwiegende<br />

Bugs, die das geplante<br />

Erscheinen der Version mehrfach<br />

verhinderten.<br />

Als Kernel verwendet Fedora<br />

18 die Version 3.7. Erstmalig<br />

ist die <strong>Linux</strong>-Distribution dafür<br />

ausgelegt, auch auf Rechnern<br />

zu booten, bei denen<br />

UEFI Secure Boot aktiviert<br />

ist. Dafür haben die Fedora-<br />

Entwickler einen Bootloader<br />

names Sh<strong>im</strong>, den <strong>Linux</strong>-Kernel<br />

und auch die Kernelmodule<br />

mit Schlüsseln signiert,<br />

die wiederum von Microsoft<br />

unterschrieben sind.<br />

Als Desktopumgebung ist<br />

neben Gnome 3.6 der Mate<br />

Desktop enthalten, der auf<br />

Gnome 2 basiert und somit<br />

auf die umstrittene Gnome-<br />

Shell verzichtet. Außerdem<br />

bringt Fedora 18 die neueste<br />

Version 4.0 des Samba-<br />

Servers mit. Unter anderem<br />

lassen sich mit der Identity-<br />

Management-Software Free<br />

IPA gesicherte Verbindungen<br />

zwischen Active-Directory-<br />

Domains aufbauen – so genannte<br />

Cross Forest Trusts.<br />

Weitere Neuerungen betreffen<br />

den Firewall-Daemon<br />

»firewalld«, den System Storage<br />

Manager »ssm« und die<br />

Virtualisierung mit KVM.<br />

ISO-Images stehen unter<br />

[http://​fedoraproject.​org] zum<br />

Download bereit. (jcb/​mfe/​<br />

ofr/​tle/​mhu)<br />

n


1&1 feiert Geburtstag – feiern Sie mit! Wir schenken Ihnen<br />

50,– € Jubiläums-Bonus! *<br />

DOMAINS | E-MAIL | WEBHOSTING | E-SHOPS | SERVER<br />

* 1&1 Jubiläumsaktion bis 28.02.13 für Neukunden: 1&1 WebHosting <strong>Paket</strong>e 6 Monate 0,– €/Monat, danach z. B. 1&1 Dual Unl<strong>im</strong>ited 24,99 €/Monat, 14,90 € Einrichtungsgebühr,<br />

einmaliger Jubiläumsbonus 50,– €. 1&1 Dynamic Cloud Server Basiskonfi guration 3 Monate 0,– €/Monat, danach 39,99 €/Monat, 39,– € Einrichtungsgebühr, einmaliger Jubiläumsbonus


1&1 WEBHOSTING<br />

1&1 feiert 25-jähriges Jubiläum. Profitieren Sie von 25 Jahren Erfahrung und geben Sie Ihren Web-Projekten eine sichere<br />

Zukunft. Denn mit weltweit über 11 Mio. Kundenverträgen, 5.000 Mitarbeitern und 5 Hochleistungs-Rechenzentren ist<br />

1&1 einer der größten Webhoster weltweit. Als Kunde profitieren Sie von unserem langjährigen Know-how und unserem<br />

24/7 Experten-Support. Und das Beste ist: Allen, die sich bis 28.02.13 für 1&1 entscheiden, schenken wir bis zu 50,– €<br />

Jubiläums-Bonus!<br />

1&1 WebHosting<br />

1&1 Cloud Server<br />

1&1 Dedicated Server<br />

■ Opt<strong>im</strong>ale Sicherheit durch parallelen<br />

Betrieb und tägliche Backups<br />

■ Bis zu 8 Inklusiv-Domains<br />

■ Freie Wahl des Betriebssystems<br />

(<strong>Linux</strong> oder Windows)<br />

■ NEU! PHP 5.4 inklusive<br />

■ Inklusive aller Tools zur Realisierung<br />

Ihrer Ideen<br />

■ Unl<strong>im</strong>ited Traffic inklusive<br />

6 MONATE<br />

0,–<br />

+ 50,– € *<br />

JUBILÄUMS-<br />

€ * BONUS<br />

■ Voller Root Zugriff<br />

■ Individuelle Kombination aus CPU,<br />

RAM und Festplattenspeicher<br />

■ Abrechnung stundengenau und<br />

konfigurationsbasierend<br />

■ Opt<strong>im</strong>ale Sicherheit durch parallelen<br />

Betrieb<br />

■ Wiederherstellung per Snapshot<br />

■ Unl<strong>im</strong>ited Traffic inklusive<br />

3 MONATE<br />

0,–<br />

+ 50,–<br />

€ *<br />

JUBILÄUMS-<br />

€ * BONUS<br />

■ Voller Root Zugriff<br />

■ Bis zu 32 Cores und 64 GB RAM<br />

■ Große Auswahl an Betriebssystemen<br />

■ Bereitstellung und Austausch<br />

innerhalb von 24h<br />

■ Nahezu 100 % Verfügbarkeit und<br />

Erreichbarkeit<br />

■ Unl<strong>im</strong>ited Traffic inklusive<br />

3 MONATE<br />

0,–<br />

+ 50,–<br />

€ *<br />

JUBILÄUMS-<br />

€ * BONUS<br />

AKTION NUR BIS 28.02.2013!<br />

0 26 02 / 96 91<br />

0800 / 100 668<br />

1und1.info<br />

50,– €. 1&1 Dedicated Server 3 Monate 0,– €/Monat, danach z. B. 1&1 Server XXL24i 399,– €/Monat, 99,– € Einrichtungsgebühr, einmaliger Jubiläumsbonus 50,– €. Für alle Aktionsangebote<br />

12 Monate Mindestvertragslaufzeit. Jubiläumsbonus wird mit der jeweiligen monatlichen Grundgebühr ab dem ersten Bezahlmonat verrechnet. Preise inkl. MwSt.


Aktuell<br />

www.linux-magazin.de Zahlen & Trends 03/2013<br />

14<br />

Zahlen & Trends<br />

Angekündigt: Ubuntu for Phones<br />

Der Ansturm war groß genug,<br />

um die Webseite von Canonical<br />

für ein paar Minuten zu<br />

blockieren. Die Ursache gilt<br />

tatsächlich als Überraschung,<br />

denn Ubuntus Hauptsponsor<br />

Mark Shuttleworth stellte in<br />

einem Video „Ubuntu for<br />

Phones“ vor.<br />

Diese spezielle <strong>Linux</strong>-Distribution<br />

soll in Zukunft auf vielen<br />

Smartphones laufen. Konkrete<br />

Geräte sind aber ebenso wenig<br />

angekündigt wie Kooperationen<br />

mit Hardwarepartnern.<br />

Erste Informationen gibt es<br />

unter [http://​www.​ubuntu.​com/​<br />

​devices/​phone]. Native Web-<br />

Apps sollen auf Ubuntu for<br />

Phones ebenso laufen wie<br />

QML-Anwendungen. Canonical<br />

stellt eine QML-Entwicklungsumgebung<br />

für Android<br />

bereit, wobei native QML-<br />

Anwendungen vollen Zugriff<br />

auf alle Open-GL-Funktionen<br />

haben.<br />

Auch HTML-5-Apps anderer<br />

Plattformen lassen sich laut<br />

© ubuntu.com<br />

Shuttleworth einfach portieren.<br />

Die Kern-Anwendungen<br />

wie Uhr und Kalender seien<br />

von nun an offen für Designer<br />

und Entwickler, meldet der<br />

Ubuntu-Chef. Dabei benutzt<br />

Canonicals Lösung offenbar<br />

den Android-Kernel mitsamt<br />

Android-Treibern.<br />

n<br />

Shuttleworths jüngster Streich: So soll Ubuntu for Phones aussehen.<br />

Libre-Office-Zahlen<br />

Italo Vignoli, Vorstandsmitglied<br />

der Document Foundation,<br />

hat Zahlen zur Libre-<br />

Office-Entwicklung <strong>im</strong> Jahr<br />

2012 veröffentlicht. Rund<br />

320 Entwickler hätten <strong>im</strong><br />

vergangenen Jahr Code zur<br />

freien Bürosuite beigetragen,<br />

schreibt der Italiener in einem<br />

Blogeintrag.<br />

Die Mehrheit bildeten dabei<br />

Ehrenamtliche, professionelle<br />

Entwickler in den Diensten<br />

von Suse, Red Hat, Canonical<br />

oder Lanedo seien eine Minderheit.<br />

Unter den Top 33 der<br />

Libre-Office-Entwickler mit<br />

mehr als 100 Commits befinden<br />

sich 16 Ehrenamtliche<br />

und 17 Hauptberufliche. n<br />

Freies Reiseportal: Wikivoyage<br />

Perl-Förderung<br />

Die Liste der Wik<strong>im</strong>edia-Projekte<br />

ist am 15. Januar 2013<br />

durch das freie Reiseportal<br />

Wikivoyage [http://​wikivoyage.​<br />

​org] bereichert worden. Wikivoyage<br />

existiert seit Ende<br />

NoSQL für Moviepilot<br />

Die NoSQL-Datenbank Neo4J<br />

[http://​www.​neo4j.​org] hat die<br />

Hauptrolle in Moviepilots Datenbank<br />

gewonnen. Das Filmempfehlungssystem<br />

[http://​<br />

​www.​moviepilot.​de] mit über 19<br />

Millionen Bewertungen und<br />

2006 und wurde vom Verein<br />

Wikivoyage e.V. ins Leben<br />

gerufen. In Zukunft wird das<br />

Projekt offiziell von der Wik<strong>im</strong>edia<br />

Foundation mit Sitz in<br />

San Francisco betrieben.<br />

Die Seite befindet sich derzeit<br />

<strong>im</strong> Betastadium und zählt<br />

über 12 000 Artikel und rund<br />

500 angemeldete Benutzer.<br />

Sie enthält Reisetipps zu Zielen<br />

weltweit.<br />

n<br />

160 000 Benutzern wird in<br />

Zukunft seine Daten in der<br />

Graphdatenbank speichern.<br />

„Sie basiert auf der Modellierung<br />

und Speicherung der<br />

Daten in Form von Knoten<br />

und Kanten und kann so opt<strong>im</strong>al<br />

Beziehungen zwischen<br />

Objekten beziehungsweise<br />

den Moviepilot-Nutzern abbilden“,<br />

heißt es in der Pressemitteilung.<br />

Ein weiteres Argument<br />

für Neo4J sei die gute<br />

Skalierbarkeit der Software.n<br />

Die Perl Foundation vergibt<br />

<strong>im</strong> März 2013 Fördergelder an<br />

Projekte, die der Programmiersprache<br />

und ihrer Community<br />

zugutekommen.<br />

Es sind Zuschüsse von 500 bis<br />

2000 US-Dollar geplant. Förderungswürdig<br />

sind Projekte,<br />

die der Perl-Anwenderschaft<br />

oder einem großen Teil der<br />

Community nützen. Daneben<br />

muss der Antragsteller glaubhaft<br />

machen, dass er seine<br />

Ziele auch erreichen kann.<br />

Die Ausschreibung, Hinweise<br />

zum Projektantrag sowie die<br />

Teilnahmebedingungen sind<br />

unter [http://​www.​perlfoundation.​<br />

​org] nachzulesen.<br />

n


Hacker-Trends 2013: Black Cloud liegt vorne<br />

Das kalifornische Security-<br />

Unternehmen Imperva hat<br />

fünf Hacker-Trends für das<br />

Jahr 2013 ausgemacht. „Vor<br />

allem die Nutzung von Cloud<br />

Computing für Angriffe werden<br />

Hacker <strong>im</strong> kommenden<br />

Jahr noch verfeinern“, meint<br />

Dietmar Kenzle, Area Vice<br />

President Sales DACH and<br />

Eastern Europe.<br />

Die größten Gefahren und<br />

Entwicklungen: Erstens würde<br />

Regierungsmalware (wie etwa<br />

Staatstrojaner) kommerziell<br />

genutzt und ließe so die<br />

Grenze zwischen Cyberwar<br />

und Cyberkr<strong>im</strong>inalität verschw<strong>im</strong>men.<br />

Zweitens stünden<br />

den Angreifern <strong>im</strong>mer<br />

größere Ressourcen in der<br />

Cloud offen, etwa Amazons<br />

EC2-Dienste. Angriffe, die mit<br />

diesen preiswerten Ressourcen<br />

arbeiten, nennt Imperva<br />

„Schwarze Wolken“.<br />

Trend Nummer drei sei die Zusammenarbeit:<br />

Unternehmen<br />

und Regierungen werden 2013<br />

verstärkt kooperieren müssen,<br />

um Angriffe zu erschweren.<br />

Analog zu Techniken, die bei<br />

der Spam-Erkennung schon<br />

Stand der Kunst sind, ließen<br />

sich auf diese Weise auch Angriffe<br />

proaktiv erkennen und<br />

verhindern.<br />

Leidtragende werden (viertens)<br />

besonders die kleinen<br />

Unternehmen sein, die nicht<br />

auf technisch aufwändige<br />

Szenarien zurückgreifen können.<br />

Hatten sich (fünftens)<br />

„Hacktivisten“ 2012 noch<br />

auf die gezielte Analyse von<br />

und Angriffe auf spezifische<br />

Organisationen konzentriert,<br />

so glaubt Imperva, dass 2013<br />

vor allem die Contentmanagement-Systeme<br />

öffentlicher<br />

Webseiten <strong>im</strong> Fokus stünden,<br />

„mit altbewährten Techniken<br />

wie Google-Dork-Suchen oder<br />

Error Grabbing. S<strong>im</strong>pel, aber<br />

wirkungsvoll, mit Blick auf<br />

Quantität statt Qualität“. n<br />

Zahlen & Trends 03/2013<br />

Aktuell<br />

www.linux-magazin.de<br />

15<br />

Open-IT Summit in Berlin<br />

In unmittelbarer Nachbarschaft<br />

zum <strong>Linux</strong>tag 2013<br />

veranstalten die OSB Alliance<br />

und die Messe Berlin am 22.<br />

und 23. Mai den ersten Open-<br />

IT Summit. Die Konferenz mit<br />

Workshops, Showrooms und<br />

Vorträgen versteht sich als<br />

Treffpunkt für IT-Entscheider<br />

und professionelle Open-<br />

Source-Anwender in Verwaltung<br />

und Wirtschaft.<br />

Unter dem Motto „Anbieter,<br />

Anwender und Entwickler unter<br />

einem Dach“ wollen die<br />

Veranstalter dabei ein betont<br />

freies Gegenstück zum jährlich<br />

stattfindenden IT-Summit<br />

der Bundesregierung setzen,<br />

aber auch den <strong>Linux</strong>tag um<br />

eine Business-Messe für anspruchsvolle<br />

Enterprise-Anwender<br />

erweitern.<br />

Laut der Website [http://​www.​<br />

​open‐it‐summit.​de] wollen die<br />

Organisatoren in „Tandem-<br />

Präsentationen und Best-<br />

Practice-Workshops“ offenbar<br />

Praxis und Visionen<br />

vereinen, aber auch „den<br />

unterschiedlichen Bedürfnissen<br />

der Com munity und den<br />

Business-orientierten Ausstellern<br />

Rechnung“ tragen, wofür<br />

man Vorteile durch „die Nähe<br />

zu Politik, Wirtschaft und Verwaltung“<br />

in der Bundeshauptstadt<br />

zu nutzen hoffe. n<br />

Der Open-IT Summit soll den <strong>Linux</strong>tag 2013 um eine Business- und Behörden-<br />

Veranstaltung ergänzen.<br />

Marktforscher: Windows-Markt wird 2013 schrumpfen<br />

Einer Studie des Marktforschers<br />

Canalys [http://​www.​<br />

​canalys.​com] zufolge wird sich<br />

<strong>im</strong> Verlauf des Jahres 2013 der<br />

Marktanteil von PCs mit Windows<br />

und Intel-CPUs von 72<br />

Prozent 2012 auf 65 Prozent<br />

verringern.<br />

Die Gewinner sind Tablets<br />

und Smartphones, mit denen<br />

viele Anwender Aufgaben<br />

wie E-Mails lesen oder Browsen<br />

<strong>im</strong> Internet genauso gut<br />

erledigen können. Als Folge<br />

soll der Absatz von Desktop-<br />

Rechnern, Netbooks und<br />

Notebooks zusammen um 10<br />

Prozent zurückgehen.<br />

Auch der Launch von Windows<br />

8 habe den Markt nicht<br />

neu belebt, meint Canalys<br />

Research Analyst Tom Evans.<br />

Die Nutzer würden stattdessen<br />

befürchten, ein neues<br />

Betriebssystem lernen zu<br />

müssen. Eine weitere Barriere<br />

seien die höheren Kosten,<br />

weil nun ein Touchscreen<br />

nötig sei. Im gegenwärtigen<br />

ökonomischen Kl<strong>im</strong>a würden<br />

sich die Käufer daher eher<br />

zurückhalten und auf einen<br />

Preisverfall warten.<br />

Die Marktforscher erwarten<br />

eine Verschiebung des Formfaktors:<br />

Getrieben von iPad<br />

und iPad mini, billigen, durch<br />

Content subventionierten Android-Devices<br />

und Windows-<br />

Geräten wie Microsofts Surface<br />

Pro soll der Pad-Markt bis<br />

2016 um 37 Prozent wachsen<br />

und einen Umsatz von 389<br />

Millionen Stück erreichen. n


Aktuell<br />

www.linux-magazin.de Zahlen & Trends 03/2013<br />

16<br />

Upgrade für USB 3.0: Super Speed<br />

Noch <strong>im</strong> ersten Halbjahr 2013<br />

soll eine neue Spezifikation<br />

für USB 3.0 vorliegen, die die<br />

Geschwindigkeit der Schnittstelle<br />

erhöht. Super Speed<br />

USB soll mit 10 GBit/​s doppelt<br />

so schnell wie sein Vorgänger<br />

sein, zu ihm hinsichtlich der<br />

Kabel, Stecker und Hubs aber<br />

kompatibel bleiben.<br />

Der Geschwindigkeitsvorteil<br />

wird deshalb aus einem<br />

verbesserten Encoding resultieren,<br />

was auch die Energie-<br />

Effizienz steigern dürfte. Das<br />

kündigte die USB 3.0 Promoter<br />

Group an, in der unter anderen<br />

HP, Intel, Microsoft und<br />

Texas Instruments vertreten<br />

sind. Schon Anfang Februar<br />

soll anlässlich einer „10 GBit/​s<br />

Super Speed USB Industry Review<br />

Conference“ eine erste<br />

Spezifikation des Standards<br />

vorliegen, auf die dann andere<br />

Firmen <strong>im</strong> Rahmen einer<br />

45-tägigen Review-Periode reagieren<br />

können.<br />

n<br />

Open Access Repository Management: Opus 4<br />

Wer umfangreiche Dokumentensammlungen<br />

zur Verfügung<br />

stellen will, liegt bei<br />

Opus 4 richtig. Getragen von<br />

der Deutschen Forschungsgemeinschaft<br />

(DFG) hat das Projekt<br />

Version 4.3 veröffentlicht.<br />

Institutionelle und fachliche<br />

Repositories zu betreiben ist<br />

das Ziel des Projekts [http://​<br />

​www.​kobv.​de/​opus4/].<br />

Die Entwickler wollen Anwendern<br />

die „Erschließung,<br />

Veröffentlichung, Administration,<br />

Recherche und Verbreitung<br />

von Dokumenten mit<br />

und ohne Volltext“ mit einfachen<br />

GUIs ermöglichen.<br />

Version 4.3 der GPL-Software<br />

bietet E-Mail-Benachrichtigungen<br />

und erweitertes Rechtemanagement.<br />

Uploads lassen<br />

sich bereits <strong>im</strong> Veröffentlichungsformular<br />

deaktivieren.<br />

Zudem bietet die Release Performancesteigerungen<br />

und diverse<br />

Bugfixes. Den Einstieg<br />

erleichtern wollen die Entwickler<br />

mit der Online-Demo<br />

und der vollständig neuen<br />

und „umfassend ergänzten“<br />

Dokumentation.<br />

n<br />

Obama verstärkt Open-Source-Engagement<br />

Das Weiße Haus, die DARPA,<br />

eine Forschungsbehörde be<strong>im</strong><br />

US-Verteidigungsministerium,<br />

und die Open-Government-<br />

Seite [http://​www.​data.​gov] haben<br />

zum Jahreswechsel auf<br />

2013 angekündigt, ihre Open-<br />

Source-Bemühungen zu verstärken.<br />

Die Entwickler von<br />

Obamas Website „We the<br />

people“ gehen einen Schritt<br />

weiter und wollen direkt mit<br />

den Drupal-Developern zusammenarbeiten.<br />

Unter dem Titel „Open<br />

Source und die Macht der<br />

Com munity“ meldet dies<br />

das Blog des Weißen Hauses.<br />

Seit August 2012 habe man<br />

sich auch bei Github engagiert<br />

sowie Apps für I-OS und<br />

Android freigegeben. Präsident<br />

Obama habe in seiner<br />

Digital Government Strategy<br />

die Verwaltungen angewiesen<br />

Open-Source-Strategien und<br />

‐Plattfomen anzuwenden, wo<br />

<strong>im</strong>mer möglich.<br />

Ebenfalls als Teil der Open-<br />

Government-Strategie hatte<br />

die Obama-Administration bereits<br />

2009 Data.gov ins Leben<br />

gerufen. Die Plattform möchte<br />

mit Open Data die Bürger und<br />

Unternehmen dazu anregen,<br />

eigene Apps zu bauen, um<br />

den enormen Datenbestand<br />

staatlicher Stellen nutzen. Das<br />

tut sie erfolgreich: 400 000 Datensätze<br />

werden mittlerweile<br />

von über 1200 Regierungs-<br />

Apps genutzt, dazu kämen<br />

über 200 Bürger- und über 100<br />

Mobile-Apps.<br />

Die Software hinter Data.gov<br />

solle demnächst als „Open<br />

Government Platform“ freigegeben<br />

werden. Daran arbeitet<br />

man offenbar schon seit Mai<br />

2012, jetzt geht das Ganze<br />

in die Community-Phase unter<br />

[http://​opengovplatform.​org].<br />

Open-Source-Pfade schlägt<br />

auch das US-Militär ein. Auf<br />

der Webseite mit dem Namen<br />

Military Open Source<br />

Software [http://​mil‐oss.​org]<br />

finden sich einige Projekte,<br />

die „zivile und militärische<br />

OSS-Entwickler“ zusammenbringen.<br />

Auf der vierten Konferenz<br />

von Mil-OSS hatte <strong>im</strong><br />

Oktober 2012 der Vier-Sterne-<br />

Ex-General James Cartwright<br />

die Bedeutung freier Software<br />

und die Unvermeidbarkeit<br />

dieses Entwicklungsmodells<br />

für die Zukunft aller Waffensysteme<br />

von Drohnen bis zum<br />

Biohacking beteuert. n<br />

Die Open Government Platform soll der Öffentlichkeit Daten und Software aus<br />

Regierungsprojekten bereitstellen.


GUTSCHEIN<br />

Dedicated Root-Server von HP<br />

Wir schenken jedem <strong>Linux</strong> <strong>Magazin</strong>-Leser 50€ bei<br />

Eingabe des Aktioncodes:<br />

LM-5E18E03s13-152<br />

Professional HP S Professional HP M Professional HP L<br />

CPU Intel XEON E3-1230 Intel XEON E3-1240 Intel XEON E3-1270<br />

Leistung<br />

Arbeitsspeicher<br />

Festplatten 7.200 rpm<br />

Anbindung<br />

KVM over IP per iLO<br />

IPv4 Adresse Inkl.<br />

IPv6 Subnetz (/64) Inkl.<br />

Betriebssysteme<br />

Extras<br />

Vertragslaufzeit<br />

Monatsgrundgebühr ALT<br />

Monatsgrundgebühr NEU<br />

Einrichtungsgebühr<br />

4 x 3,2 GHz Inkl. HT 4 x 3,3 GHz Inkl. HT 4 x 3,4 GHz Inkl. HT<br />

16 GB DDR3 ECC 24 GB DDR3 ECC 32 GB DDR3 ECC<br />

2 x 1 TB Enterprise-Edition 2 x 2 TB Enterprise-Edition 2 x 2 TB Enterprise-Edition<br />

1.000 MBit Flatrate 1.000 MBit Flatrate 1.000 MBit Flatrate<br />

Debian 6.0, CentOS 6, open SUSE 12.1, Ubuntu 12.04, Free BSD 9 und<br />

Windows 2012 (19,99€ Aufpreis <strong>im</strong> Monat)<br />

100 GB Backup-Speicher, Monitoring, Reset- und Rescue-System<br />

1 Monat 1 Monat 1 Monat<br />

69,99 € 89,99 € 109,99 €<br />

59,99 € 79,99 € 99,99 €<br />

0,00 € 0,00 € 0,00 €<br />

Neu!<br />

Kostenlos vorinstallierte Virtualisierungs-Lösung mit<br />

vSphere 5.1<br />

Jetzt informieren & bestellen Tel.: 0211 / 545 957 - 300 www.webtropia.com<br />

Windows Server 2012<br />

PLATINUM PARTNER<br />

powered by


Aktuell<br />

www.linux-magazin.de Zahlen & Trends 03/2013<br />

18<br />

Tizen-Smartphone kommt 2013<br />

Tizen [https://​www.​tizen.​org],<br />

der Nachfolger der Meego-,<br />

Moblin- und Maemo-Plattform<br />

für freie Mobilgeräte, steht offenbar<br />

vor einem wichtigen<br />

Schritt: Japanische Medien<br />

wie die „Daily Yomiuri“ berichten,<br />

mit dem Einstieg von<br />

NTT Docomo, Japans größtem<br />

Mobilfunkprovider, wolle<br />

das Konsortium noch 2013 ein<br />

erstes, vor allem <strong>im</strong> Business-<br />

Bereich konkurrenzfähiges<br />

Mobiltelefon auf den Markt<br />

bringen. Das solle weltweit<br />

gleichzeitig geschehen,<br />

Beteiligte wie Samsung wollten<br />

damit versuchen der<br />

Marktherrschaft von Google<br />

und Apple Einhalt zu gebieten,<br />

und zwar dort, wo diese<br />

die größten Schwächen hätten:<br />

be<strong>im</strong> Business-Einsatz.<br />

Docomo hatte zuletzt stark<br />

rückläufige Neukundenzahlen<br />

zu beklagen, was Analysten<br />

auf das Fehlen eines „iPhone“<br />

<strong>im</strong> Angebot zurückführten.<br />

Das soll jetzt offenbar Tizen<br />

richten.<br />

Tizen basiert vollständig auf<br />

<strong>Linux</strong> und bringt bereits – anders<br />

als Android – fast alle<br />

für das Open-Source-Betriebssystem<br />

typischen Funktionen<br />

mit: neben dem <strong>Linux</strong>-Kernel<br />

auch ein sicheres <strong>Paket</strong>system<br />

(RPM), Desktop-Bibliotheken<br />

wie Enlightenment und das<br />

Webkit Runt<strong>im</strong>e Environment.<br />

Für Anwendungsentwickler<br />

bietet Tizen Jquery,<br />

Jquery Mobile und HTML-5-<br />

Webtechnologien.<br />

n<br />

20 Prozent Wachstum bei Red Hat<br />

Krypto-Smartphone mit <strong>Linux</strong><br />

Auch <strong>im</strong> dritten Quartal des<br />

Geschäftsjahres 2013 legte<br />

Red Hat mächtig zu – zumindest<br />

be<strong>im</strong> Umsatz. Der<br />

Gewinn ging jedoch <strong>im</strong> Vergleich<br />

zum Vorjahresquartal<br />

ein wenig zurück.<br />

Ungefähr ein Fünftel mehr hat<br />

Red Hat <strong>im</strong> dritten Quartal<br />

2013 erwirtschaftet. Der nach<br />

dem amerikanischen Fiskaljahr<br />

abrechnende Distributor<br />

meldet 344 Millionen Dollar<br />

(plus 18 Prozent) Umsatz<br />

und ein Plus von 19 Prozent<br />

bei den Subskriptionen (294<br />

Millionen Dollar). Da konnte<br />

US-Bestseller Chromebook<br />

Nur die beiden Samsung-Tablets<br />

Galaxy Tab 2 in der 7-<br />

und 10-Zoll-Version verkauften<br />

sich Anfang 2013 besser<br />

auf Amazon.com als Googles<br />

Chromebook von Samsung.<br />

Das Gerät baut auf <strong>Linux</strong> auf<br />

und nutzt fast ausschließlich<br />

Cloud-Dienste.<br />

Das seit Oktober 2012 erhältliche<br />

Chromebook bietet für<br />

ungefähr 300 US-Dollar ein<br />

11,6-Zoll-Display (1366 mal<br />

der Nettogewinn nicht ganz<br />

mithalten, er ging von 38<br />

Millionen <strong>im</strong> selben Quartal<br />

2012 auf 34 Millionen zurück.<br />

Allerdings stieg er, betrachtet<br />

man den Gewinn pro Aktie,<br />

von 18 auf 19 US-Cent.<br />

Wohl auch deshalb begründen<br />

die Manager aus Raleigh<br />

den zurückgehenden Gewinn<br />

mit Korrekturen und Amortisierungsausgaben<br />

auf dem<br />

Börsenparkett. 52 Millionen<br />

Aktien habe man zurückgekauft,<br />

erklärt Charlie Peters,<br />

Executive Vice President und<br />

Chief Financial Officer. n<br />

768 Pixel), 1,7-GHz-Exynos-<br />

Soc, 2 GByte RAM und 16<br />

GByte SSD-Speicher, zwei<br />

USB-Ports sowie Wifi der<br />

802.11-N-Generation.<br />

Allerdings setzt das Cloud-<br />

Gerät voll auf Onlinestorage<br />

und ist offline kaum zu gebrauchen.<br />

In Deutschland ist<br />

das Chromebook noch nicht<br />

erhältlich, es soll aber künftig<br />

über Googles Play-Store vertrieben<br />

werden.<br />

n<br />

Der Gründer von Secusmart: Hans-<br />

Christoph Quelle.<br />

Die Firma Secusmart [http://​<br />

​www.​secusmart.​com], Spezialist<br />

für sichere Telefonie, will auf<br />

der Cebit 2013 die neueste<br />

Generation seiner Krypto-<br />

Telefone vorstellen. Eventuell<br />

kann der Hersteller bis dahin<br />

schon einen Erfolg verbuchen:<br />

Am 28. Februar fällt die<br />

Entscheidung, ob Secusmarts<br />

neues Produkt bei der Deutschen<br />

Bundesregierung zum<br />

Einsatz kommt.<br />

Im Januar hat der Geschäftsführer<br />

und Gründer Hans-<br />

Christoph Quelle erstmals den<br />

Rahmen der Neuheit erläutert:<br />

Die Secusuite wird <strong>im</strong> Erfolgsfalle<br />

den Sicherheitsstandard<br />

VS-NFD (Verschlusssache –<br />

Nur für den Dienstgebrauch)<br />

erfüllen. Sie ermöglicht abhörsichere<br />

Kommunikation<br />

nach dem SNS-Standard. Ein<br />

Gerät wird allerdings um 2500<br />

Euro kosten.<br />

Allzu viele technische Details<br />

konnte Quelle noch nicht<br />

nennen, doch klar ist: Eine<br />

spezielle Smartcard, die Secusmart<br />

Security Card, macht<br />

verschlüsselte Telefondienste<br />

via VoIP, SMS sowie Internetdienste<br />

möglich. Das angepasste<br />

Betriebssystem trennt<br />

zudem privaten und dienstlichen<br />

Bereich, sodass „beispielsweise<br />

Whatsapp nicht<br />

auf ihre Unternehmenskontakte<br />

zugreifen kann“, wie<br />

Quelle erläutert.<br />

Welche Smartphones oder<br />

Tablets das sein sollen und<br />

welches Betriebssystem laufen<br />

werde, offenbart Quelle<br />

nicht, aber er gibt <strong>im</strong>merhin<br />

Hinweise: Zum einen scheide<br />

Apple aus: „Die Closed-Shop-<br />

Mentalität beißt sich mit der<br />

erforderlichen Evaluierbarkeit.<br />

Apple und Sicherheit, das<br />

geht eben nicht zusammen.“<br />

Zudem sei ein SD-Card-Reader<br />

nötig, den auch nicht alle<br />

Geräte hätten – und wohl ein<br />

<strong>Linux</strong>-basiertes OS, wegen der<br />

Treiber und der Möglichkeit,<br />

ein angepasstes, opt<strong>im</strong>iertes<br />

und gehärtetes OS zu booten.<br />

(​jcb/​kki/​mfe/​mhu) n


Frühbucherrabatt<br />

bis 25.2.<br />

sichern!<br />

Secure <strong>Linux</strong> Administration<br />

Conference 2013<br />

6./7. Juni 2013<br />

Das Know-how-Update für Administratoren und IT-Leiter.<br />

Mit freundlicher Unterstützung von<br />

<strong>Linux</strong>-Spezialist Peer Heinlein lädt zur SLAC 2013 nach Berlin. Dort bieten 18<br />

ausführliche Vorträge in zwei Tracks Best Practice-Erfahrungen, frisches Wissen<br />

und gute Argumente für strategische Entscheidungen.<br />

MAGAZIN<br />

Die Highlights<br />

Server-Hacks<br />

Compliance Management<br />

Logfile-Monitoring<br />

Automatisierter Betrieb<br />

Backups mit Bacula<br />

Puppet<br />

Cyber-Cr<strong>im</strong>e<br />

SQL-Cluster<br />

www.heinlein-akademie.de/slac<br />

Mailserver<br />

Konferenz 2013<br />

<strong>Linux</strong> höchstpersönlich.


Aktuell<br />

www.linux-magazin.de Kernel-News 03/2013<br />

20<br />

Zacks Kernel-News<br />

Ein Feuerwerk der Kernelentwicklung<br />

Der IBM-Mitarbeiter Darrick<br />

J. Wong hat auf Youtube einen<br />

An<strong>im</strong>ationsfilm veröffentlicht,<br />

der die Historie der Kernelentwicklung<br />

visualisiert. Das<br />

Video [http://​www.​youtube.​com/​<br />

​watch?​v=pOSqctHH9vY] be ruht<br />

auf dem Quelltext-Repository<br />

des <strong>Linux</strong>-Kernels und ist mit<br />

dem freien Tool Gource [https://​<br />

​code.​google.​com/​p/​gource/] entstanden.<br />

Aus den Abzweigungen,<br />

Pulls und Pushes der<br />

Entwickler macht das Programm<br />

farbige Bewegungen<br />

und Explosionen, die an ein<br />

Feuerwerk erinnern.<br />

Die vergangenen 21 Jahre <strong>Linux</strong>-Entwicklung<br />

ergeben einen<br />

Film von fast drei Stunden<br />

Spieldauer. Gource ist großteils<br />

in C++ umgesetzt und<br />

unter GPLv3 lizenziert. Über<br />

eine bunte Spielerei hinaus<br />

ließe sich das Werkzeug theoretisch<br />

auch zum Erforschen<br />

der Kernelgeschichte einsetzen.<br />

Die Software erlaubt es<br />

<strong>im</strong>merhin, einen ausgewählten<br />

Git-Zweig in Vergrößerung<br />

und <strong>im</strong> gewünschten Tempo<br />

zu betrachten.<br />

n<br />

Das Tool Gource macht aus 21 Jahren Entwicklung drei Stunden Video.<br />

KVM-Betreuung<br />

Nach mehr als sechs Jahren<br />

hat sich Avi Kivity entschieden,<br />

die Betreuung der Kernel<br />

Virtual Machine (KVM) niederzulegen.<br />

Dazu löschte er<br />

seinen Namen aus der Maintainers-Datei,<br />

fügte ihn aber<br />

den »CREDITS« hinzu.<br />

Damit machte er Marcelo Tosatti,<br />

bekannt als Maintainer<br />

des Kernels 2.4, für kurze Zeit<br />

zum alleinigen KVM-Betreuer.<br />

Schon nach Kurzem lud Avi<br />

allerdings den Red-Hat-Mitarbeiter<br />

Gleb Natapov dazu ein,<br />

Co-Maintainer zu werden. Er<br />

betonte, der „talentierte und<br />

engagierte Hacker“ habe<br />

schon Hunderte von Patches<br />

für KVM geschrieben. n<br />

Wiederverwendbare Hashtable-Implementierung<br />

In großen Softwareprojekten<br />

kommt es vor, dass die Entwickler<br />

Low-Level-Features<br />

<strong>im</strong>mer wieder neu programmieren:<br />

In seiner kleinen Ecke<br />

des Projekts packt jeder Wiederverwendbares<br />

in ein Stück<br />

Code. Dabei merkt er nicht,<br />

dass seine Kollegen andernorts<br />

das Gleiche tun.<br />

Ein gutes Beispiel dafür, wie<br />

Entwickler das Rad <strong>im</strong>mer<br />

wieder neu erfinden, sind die<br />

vielen Hashtable-Implementierungen<br />

<strong>im</strong> <strong>Linux</strong>-Quelltext.<br />

Um Abhilfe zu schaffen, hat<br />

der israelische Entwickler<br />

Sasha Levin eine eigene kleine<br />

Umsetzung für »include/<br />

linux/hashtable.h« eingereicht,<br />

auf die andere zurückgreifen<br />

sollen.<br />

Hashtables dienen zum<br />

schnellen Nachschlagen von<br />

Zuordnungen: Der Entwickler<br />

gibt einen Schlüssel ein, und<br />

augenblicklich kommt der<br />

zugehörige Wert heraus. Die<br />

Geschwindigkeit ist besonders<br />

wichtig, wenn es sich um den<br />

Kernel eines Betriebssystems<br />

handelt. Hier finden so viele<br />

Hashtable-Aufrufe statt, dass<br />

eine langsame Implementierung<br />

System und Anwendungen<br />

bremsen kann. Neben<br />

anderen Opt<strong>im</strong>ierungen nutzt<br />

Sashas Code daher häufig Makros,<br />

um möglichst viel Arbeit<br />

bereits zur Compilezeit<br />

zu erledigen. Die Längen der<br />

Schlüssel beispielsweise lassen<br />

sich so berechnen.<br />

Ein Problem bei der Arbeit mit<br />

Makros besteht darin, dass der<br />

Programmierer Ausdrücke unausgewertet<br />

übergeben kann.<br />

So kann er etwa ein Makro<br />

mit der Expression »3+n/2«<br />

füttern, statt dieser einen Variablennamen<br />

wie »bits« zu<br />

geben. Führt das Makro eine<br />

weitere Berechnung mit dem<br />

Ausdruck durch, zum Beispiel<br />

»2/3+n/2«, kann es unter<br />

Umständen zu Problemen mit<br />

der Operator-Rangfolge kommen,<br />

wenn der Entwickler eigentlich<br />

»2/(3+n/2)« gemeint<br />

hatte. Sashas Code vermeidet<br />

solche Fälle, indem er die<br />

Programmierer dazu zwingt,<br />

Klammern um Variablennamen<br />

zu setzen.<br />

Diese sehen allerdings reichlich<br />

überflüssig aus, und so<br />

hatte auch Sasha sie an einer<br />

Stelle vergessen. Der Consultant<br />

Mathieu Desnoyers wies<br />

ihn darauf hin und lieferte<br />

noch weitere Ratschläge,<br />

ebenso Tejun Heo. Nach der<br />

Bereinigung solcher Details<br />

könnte Sashas Hashtable für<br />

besseren Code <strong>im</strong> <strong>Linux</strong>-Kernel<br />

sorgen. <br />

n


GPL-Verletzung oder nicht?<br />

Alles<br />

zum ThemA<br />

Android<br />

Diskussionen über GPL-Verletzungen<br />

in Software finden<br />

meist <strong>im</strong> kleinen Rahmen<br />

statt. Andy Grover von Red<br />

Hat suchte jedoch Ende 2012<br />

die Öffentlichkeit der Kernel-<br />

Mailingliste, nachdem persönliche<br />

Mails nicht geholfen<br />

hatten. Er kritisierte die Firma<br />

Rising Tide Systems [http://​<br />

​www.​risingtidesystems.​com] dafür,<br />

dass sie mit ihrem <strong>Linux</strong>basierten<br />

Betriebssystem RTS<br />

OS auch proprietären Code<br />

vertreibt.<br />

Der Maintainer des SCSI-Subsystems<br />

von <strong>Linux</strong>, Nicholas<br />

A. Bellinger, ist gleichzeitig<br />

CTO bei Rising Tide. Er<br />

antwortete auf der Liste und<br />

brachte folgende Erklärung<br />

vor: Das Unternehmen habe<br />

Code zum Kernel beigetragen<br />

und unter GPL lizenziert. Da<br />

die Firma alleiniger Rechte-<br />

Inhaber der Software sei, stehe<br />

es ihr frei, denselben Code<br />

auch unter anderer Lizenz zu<br />

veröffentlichen. Daher gebe<br />

es einen GPL-Zweig für den<br />

<strong>Linux</strong>-Kernel und einen proprietären<br />

für RTS OS.<br />

Andy erklärte in seiner Antwort,<br />

er sehe die Lizenzverletzung<br />

in einem anderen Punkt:<br />

Arbeite der Rising-Tide-Code<br />

mit dem <strong>Linux</strong>-Kern zusammen,<br />

entstehe daraus ein abgeleitetes<br />

Werk, daher müsse<br />

der Quelltext unter der GPL<br />

veröffentlicht werden. Alan<br />

Cox mischte sich ein und<br />

betonte: „Eure Arbeit ist entweder<br />

kein vom <strong>Linux</strong>-Kernel<br />

abgeleitetes Werk (was ich für<br />

nahezu unmöglich halte) oder<br />

Ihr habt ein Problem.“<br />

Als Nicholas noch einbrachte,<br />

dass ein Lizenzierungscheck<br />

durch Black Duck Software<br />

keine Verletzungen festgestellt<br />

hätte, schaltete sich der Jurist<br />

Bradley M. Kuhn, Direktor<br />

Berät freie Softwareprojekte: Der<br />

Jurist Bradley M. Kuhn von der Software<br />

Freedom Conservancy.<br />

der Software Freedom Conservancy<br />

[http://​sfconservancy.​<br />

​org], in die Diskussion ein. Er<br />

erklärte, ein solcher Quelltext-<br />

Scan könne zwar gegebenenfalls<br />

kopierten Code finden,<br />

das Gegenteil ließe sich damit<br />

aber nicht beweisen.<br />

Schließlich meldete sich der<br />

Anwalt Lawrence Rosen zu<br />

Wort, der Rising Tide Systems<br />

beraten hatte. Er erklärte, das<br />

Unternehmen vertreibe SCSI-<br />

Target-Code, der Funktionen<br />

und Features enthalte, die in<br />

<strong>Linux</strong> nicht zu finden seien.<br />

Daneben zeigte er sich nicht<br />

damit einverstanden, bereits<br />

die Nutzung von <strong>Linux</strong>-APIs<br />

und ‐Headern als Ableitung<br />

eines Werks zu interpretieren:<br />

„Das wurde in den USA<br />

<strong>im</strong> jüngsten Urteil zum Fall<br />

Oracle gegen Google und in<br />

Europa bei SAS gegen World<br />

Programming entkräftet.“<br />

An diesem Punkt entschloss<br />

sich Andy Grover, der die<br />

Diskussion ins Licht gebracht<br />

hatte, das Weitere doch lieber<br />

<strong>im</strong> kleinen Kreis zu besprechen.<br />

Der öffentliche Austausch<br />

auf der Mailingliste<br />

hat jedenfalls nicht geklärt, ob<br />

eine GPL-Verletzung vorliegt.<br />

(Zack Brown/​mhu) n<br />

Die Monatszeitschrift für Android-Fans,<br />

Smartphone- und Tablet-Nutzer<br />

DigisuB:<br />

nur 39,90 € <strong>im</strong> Jahr<br />

(12 PDFs)<br />

Jetzt bestellen unter:<br />

android–user.de/digisub<br />

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


Titelthema<br />

www.linux-magazin.de Maintenance 03/2013<br />

22<br />

Ob und wie Distributionen auf Lücken, Bugs und neue Funktionen reagieren<br />

<strong>Paket</strong>-<strong>Service</strong> <strong>im</strong> <strong>Test</strong><br />

Schalten Distributionen neue Releases frei, sorgt das gewöhnlich für ein großes Hallo in der <strong>Linux</strong>-Welt. Wenig<br />

Beachtung findet die stete Arbeit der <strong>Paket</strong>maintainer an vor Monaten oder Jahren erschienen Versionen. Dabei<br />

sorgt die Maintenance genannte Softwarepflege erst für Sicherheit und Stabilität. M. Feilner, M. Huber, J. Kleinert<br />

Inhalt<br />

28 Security-Report<br />

Der Weg, den Sicherheitspatches bei<br />

Suse und Red Hat nehmen.<br />

30 <strong>Linux</strong> auf lange Sicht<br />

Was tun, wenn auch der Long Term Support<br />

ausläuft?<br />

34 Wenn der Upstream stockt<br />

Klaus Knopper ist sauer über folgenlose<br />

Bugreports.<br />

36 Maintenance vor Ort<br />

Nicht ganz einfach: Datenträger für<br />

Offline-Updates brennen.<br />

Keine Frage: Neue Versionen von <strong>Linux</strong>-<br />

Distribution herauszubringen, macht viel<br />

Arbeit. Fedora, Open Suse, Debian oder<br />

Slackware sind <strong>Linux</strong>e, die unzählige Entwickler<br />

from Scratch zusammenbauen.<br />

Die haben zumindest Aussicht auf Dank<br />

für ihre Mühe, sobald die neue Version<br />

der Distribution herauskommt und Hunderttausende<br />

die Softwarezusammenstellung<br />

auf ihren Rechnern installieren.<br />

Dass die tausenden <strong>Paket</strong>e einer <strong>Linux</strong>-<br />

Version nach deren Erscheinen gepflegt<br />

werden müssen, würdigen dagegen die<br />

wenigsten Anwender – zumindest unter<br />

den privaten. Die Maintenance, also das<br />

stetige Einpflegen von Security patches<br />

und Bugfixes, bringt keinen Ruhm, ist für<br />

den produktiven Einsatz jedes Betriebssystem<br />

aber zwingend.<br />

Professionelle Anwender, insbesondere<br />

solche, die Server mit aus dem Internet<br />

direkt erreichbaren IP-Adressen betreiben,<br />

wissen fast alle um die Bedeutung der<br />

Soft warepflege und honorieren – ideell<br />

und vielfach auch materiell – die kontinuierliche,<br />

umfassende und zugleich<br />

schnelle Arbeit der organisierten Community<br />

und der Distributionshersteller.<br />

Lebensgrundlage mancher<br />

Nüchtern betrachtet, fußt das Geschäftsmodell<br />

der <strong>Linux</strong>-Subskriptionen, das<br />

Red Hat und Suse <strong>im</strong> großen Maßstab<br />

betreiben, hauptsächlich auf der Maintenance:<br />

Der Anwender einer kommerziell<br />

orientierten Distribution wie Red Hat<br />

Enterpise <strong>Linux</strong> (RHEL) oder Suse <strong>Linux</strong><br />

Enterprise Server (SLES) zahlt einen jährlichen<br />

Obulus in nennenswerter Höhe<br />

für das kontinuierliche Bereitstellen von<br />

Updates für die hauseigenen <strong>Paket</strong>e – die<br />

Software selbst ist zum Freigabezeitpunkt<br />

einer Release kostenlos.<br />

Dieser Artikel macht es sich zur Aufgabe,<br />

die Qualität der mühevollen Kärrnerarbeit<br />

der großen Distributionen anhand<br />

einiger Beispiele zu betrachten. Dazu haben<br />

die <strong>Test</strong>er analysiert, ob und wann<br />

die Maintainer der Anbieter auf Patches<br />

reagieren, welche die Programmierer der<br />

Projekte bereitstellen, von denen sich die<br />

einzelnen <strong>Paket</strong>e ableiten.<br />

Überraschend komplex<br />

Was sich in der Theorie einfach anhört,<br />

erweist sich in der Praxis als einigermaßen<br />

komplex: Egal, welchen Beobachtungszeitraum<br />

man auswählt, die in den bedeutsamen<br />

Distributionen jeweils verbauten<br />

Komponenten weisten unterschiedliche<br />

Versionsstände auf. Die Ursache dafür<br />

liegt weniger in den unterschiedlichen<br />

Releasedaten der betrachteten Distributionen,<br />

sondern in deren Philosophie bei<br />

der Auswahl: Sehr auf Stabilität bedachte<br />

<strong>Linux</strong>-Sammlungen wie Debian, SLES<br />

oder RHEL neigen deutlich dazu, ältere<br />

und damit besser getestete Softwarestände<br />

zu integrieren, während Ubuntu sowie<br />

Suses und Red Hats Community-Ausgaben<br />

tendenziell nach der jüngsten verfügbaren<br />

Software schauen.<br />

Welche der beiden Philosopien die richtige<br />

ist, vermag nur der <strong>Linux</strong>-Benutzer<br />

selbst in Kenntnis seiner Anforderungen


an sein Betriebssystem beantworten. Sicher<br />

dagegen ist, dass mit den unterschiedlichen<br />

Versionsständen auch die<br />

Notwenigkeit variieren kann, zu einem<br />

Zeitpunkt X ein <strong>Paket</strong> zu patchen oder<br />

auch nicht.<br />

Hinzu kommt, dass sich die konservative<br />

oder progressive Haltung zu Versionswechseln<br />

auch während der Maintenance<br />

fortsetzt: Während manche Distributionen<br />

fast jeden Versionswechsel von zum<br />

Beispiel Firefox oder dem <strong>Linux</strong>-Kernel<br />

mitmachen, halten andere über den<br />

ganzen Lebenszyklus einer Distribution<br />

an den einmal ausgewählten Versionsnummer<br />

eisern fest, um langzeitstabile<br />

Schnittstellen zu garantieren und be<strong>im</strong><br />

Anwender keinen extra Schulungsaufwand<br />

zu provozieren.<br />

Mehr über das Thema Enterprise-Support<br />

lässt sich aus dem Artikel ab Seite 30<br />

entnehmen, der zugleich der Frage nachgeht,<br />

was Benutzer tun können, die eine<br />

Distribution länger als fünf oder sieben<br />

Jahre stabil zu betreiben haben.<br />

<strong>Test</strong>feld und betrachtete<br />

Software<br />

Tabelle 1 zählt die <strong>im</strong> Rahmen dieses<br />

Beitrags beobachteten Distributionen auf.<br />

Als Informationsquellen diente neben<br />

umfangreichen Internetrecherchen auch<br />

ein Analysetool, das die Redaktion be<strong>im</strong><br />

langjährigen Perl-Snashot-Kolumnisten<br />

Michael Schilli in Auftrag gegeben hatte.<br />

Das mit Plugins erweiterte Tool rattert<br />

die Repositories der Community-Distributionen<br />

nach einem Suchstring ab und<br />

gibt die gefundenen <strong>Paket</strong>-Dateinamen<br />

zusammen mit dem Erscheinungsdatum<br />

auf dem Repositoryserver aus. Im Perl-<br />

Snapshot ab Seite 94 beschreibt Schilli,<br />

wie er dabei vorgeht.<br />

Abbildung 1: Eine der Recherchequellen zu diesem <strong>Test</strong> – der Novell Patch Finder zeigt zu einzelnen SLES-<br />

Versionen die erschienen Patches an.<br />

Für die kommerziell orientierten Distributionen<br />

funktioniert eine solche Toolunterstützung<br />

nicht, da die Anbieter die<br />

<strong>Paket</strong>updates vor der Allgemeinheit verbergen.<br />

Der Grund leuchtet schnell ein:<br />

Ihr Geschäftsmodell beruht darauf, Updates<br />

nur zahlenden Kunden bereitzustellen<br />

(Subskriptionen). Für Untersuchungen<br />

an SLES eignet sich der Novell<br />

Patch Finder ([1], Abbildung 1) ganz gut<br />

als zuverlässiger Einstiegspunkt. Red Hat<br />

betreibt etwas Ähnliches, die Oberfläche<br />

erreichen aber nur Kunden, die sich bei<br />

Red Hat Network angemeldet haben.<br />

Kernel, Äpfel und Birnen<br />

Be<strong>im</strong> <strong>Linux</strong>-Kernel sind die Kandidaten<br />

schwer zu vergleichen, denn sie gingen<br />

mit unterschiedlichen Kernelversionen<br />

Maintenance 03/2013<br />

Titelthema<br />

www.linux-magazin.de<br />

23<br />

Tabelle 1: Untersuchte<br />

Betriebssysteme<br />

Version<br />

Releasedatum<br />

Community-Distributionen<br />

Debian 6 Februar 2011<br />

Fedora 17 Juni 2012<br />

Open Suse 12.1 November 2011<br />

Ubuntu 12.04 April 2012<br />

Subskriptionen-Distributionen<br />

RHEL 6.3 Juni 2012<br />

SLES 11 SP2<br />

Februar2012<br />

Abbildung 2: Auf der Changelog-Seite für Debians Kernel 2.6 findet sich ein einziger Eintrag für den Beobachtungszeitraum,<br />

aber ein umfangreicher.


Titelthema<br />

www.linux-magazin.de Maintenance 03/2013<br />

24<br />

Kernel<br />

28.02.2012<br />

Sprung auf Kernel 3.0<br />

mit SP2<br />

f(x)<br />

03.06.2012 03.07.2012 06.07.2012 27.07.2012 14.08.2012 21.08.2012 22.08.2012 21.09.2012 23.09.2012<br />

3.4.0-1 3.1.10 3.2.0-27 3.2.0-29 Fix von 2.6.32 3.0.38 3.5.2-3 3.2.0-31 Fix von 2.6.32<br />

Mehr als zehn weitere Bugfixes <strong>im</strong> Zeitraum.<br />

Ursachen<br />

Security<br />

Bug<br />

f(x)<br />

Funktion<br />

f(x)<br />

Abbildung 3: Security- und Bugfixes sowie funktionserweiternde Updates bei den betrachteten Distributionen <strong>im</strong> zweiten Halbjahr 2012.<br />

an den Start: Ubuntu 12.04 mit Version<br />

3.2.0, der ursprüngliche Kernel 2.6.37 in<br />

SLES 11 erlebte zum SP2 ein Upgrade auf<br />

3.0, und lediglich Debian 6.0 (Squeeze)<br />

hat Kernel 2.6.32 mit RHEL 6.3 (und damit<br />

auch Centos) gemein.<br />

Hier zeigen sich deutliche Unterschiede:<br />

Während die Debianer ihren Stable-Kernel<br />

<strong>im</strong> Beobachtungszeitraum nur einmal aktualisierten<br />

([2], Abbildung 2), veröffentlichte<br />

Red Hat zwischen Juli und Dezember<br />

fünf Security- und Bugfix-Updates in<br />

unterschiedlichen Dringlichkeitsstufen.<br />

Bei Fedora hagelt es Kerne<br />

Am meisten bringt Fedora auf die Waage:<br />

Die Community-Distribution zieht mit<br />

ein paar Tagen oder wenigen Wochen<br />

Abstand mit der neuesten Kernelgeneration<br />

mit – allein Mitte bis Ende 2012 von<br />

3.4.0 bis 3.6.11. In Abbildung 3, die die<br />

wichtigen Ereignisse bei den beobachteten<br />

Distributionen auf einem Zeitstrahl<br />

visualisiert, fehlen die meisten Fedora-<br />

Kernel-Ereignisse; andernfalls wäre die<br />

Grafik von blauen F-Logos übersät.<br />

Ben Hutchings von Debians Kernel-Team<br />

wies die Redaktion auf Nachfrage darauf<br />

hin, dass manche Kernelbugs und CVEs<br />

nicht auf Squeeze zutreffen, da diese Debian-Release<br />

manche Features gar nicht<br />

unterstützt, etwa das Dateisystem Btr-FS.<br />

Das September-Update enthält zahlreiche<br />

Fixes für Sicherheitsprobleme und Bugs<br />

sowie einige Verbesserungen.<br />

Ubuntu bringt es in diesem Zeitraum<br />

auf sechs Security-relevante Updates,<br />

allerdings für seinen Kernel 3.2. Daneben<br />

verfolgen die Ubuntu-Entwickler die<br />

offizielle Kernelentwicklung und binden<br />

deren Bugfixes sowie die Unterstützung<br />

für neue Hardware ein.<br />

Mittendrin ein Major-Update<br />

Suses Umstieg auf eine neue Kernelversion<br />

innerhalb einer SLES-Release ist für<br />

Enterprise-Distributionen ungewöhnlich.<br />

Laut Olaf Kirch, Abteilungsleiter SLES-<br />

Engineering, ist das Upgrade dem „Spannungsfeld<br />

zwischen Konstanz und Aktualität“<br />

geschuldet. Die Kunden erwarten<br />

zum einen ein gleichbleibendes Userland-<br />

ABI als Basis ihrer Anwendungen. Zum<br />

anderen wünschen sie Unterstützung für<br />

neue Hardware und Performancesteigerungen.<br />

Zudem tauchen <strong>im</strong>mer wieder<br />

Sicherheitslücken auf, die der Distributor<br />

beheben muss. In der Regel erledigen<br />

die Entwickler das durch Backports, das<br />

heißt die Integration reparierten oder<br />

verbesserten Codes in die bestehende<br />

Softwarebasis.<br />

Im Lauf der Zeit entfernt sich der verwendete<br />

Kernel <strong>im</strong>mer weiter von der<br />

offiziellen Entwicklung. Das macht Backports<br />

wohl <strong>im</strong>mer schwieriger, umfangreicher<br />

– und riskanter. „Man fängt sich<br />

in Backports grundsätzlich Performance-<br />

Regressionen ein“, sagt Kirch. Mit der<br />

Vorbereitung auf SLES 11 SP2 begannen<br />

Firefox<br />

12.09.2012<br />

12.09.2012<br />

21.09.2012<br />

24.09.2012<br />

07.10.2012<br />

09.10.2012<br />

10.10.2012<br />

11.10.2012<br />

11.10.2012<br />

15.10.2012<br />

16.10.2012<br />

21.10.2012<br />

15.0.1<br />

10.0.7<br />

3.5.16-18<br />

15.0.1<br />

10.0.8-1<br />

15.0.1<br />

16.0-1<br />

16.0.1-1<br />

16.0<br />

16.0.1<br />

10.0.9<br />

3.5.16-19<br />

f(x)<br />

f(x)<br />

f(x)<br />

Ursachen<br />

Security<br />

Bug<br />

f(x) Funktion<br />

Abbildung 4: Bei Firefox war in den Repositories so viel los, dass hier nur das letzte Vierteljahr 2012 darstellbar ist.


25.09.2012 12.10.2012 15.10.2012 16.10.2012 31.10.2012 06.11.2012 20./28.11.2012 30.11.2012 18.12.2012 19.12.2012<br />

Fix von 2.6.32 3.2.0-32 3.0.42 Fix von 2.6.32 3.6.5-1 Fix von 2.6.32 3.6.7-4/3.6.8-2 3.2.0-34 Fix von 2.6.32<br />

3.0.51<br />

Maintenance 03/2013<br />

Titelthema<br />

3.2.0-35<br />

Distribution<br />

Debian Fedora<br />

Open Suse<br />

RHEL SLES<br />

Ubuntu<br />

www.linux-magazin.de<br />

25<br />

die Nachteile der Backports zu überwiegen,<br />

und sie machte die Vorteile eines<br />

Kernel-Upgrades deutlich: Der neue<br />

Kernel würde eine saubere Codebasis für<br />

die weitere Wartungsperiode bereiten.<br />

Der <strong>im</strong> Februar 2009 ausgerollte Kernel<br />

3.0 brachte als Dreingabe noch die Lightweight-Virtualisierung<br />

<strong>Linux</strong> Containers<br />

(LXC) mit. Zudem konnte Suse als erste<br />

Distribution kommerziellen Support für<br />

das neue Dateisystem Btr-FS anbieten.<br />

Für den Beobachtungszeitraum dieses<br />

Artikels gibt es zwei weitere Securityund<br />

Bugfix-Updates zu vermelden.<br />

Die Firefox-Politik, Debian<br />

mit Iceweasel<br />

Noch mehr los als be<strong>im</strong> Kernel war <strong>im</strong><br />

zweiten Halbjahr 2012 bei Firefox. Das<br />

Projekt hat mehrere Majorupdates veröffentlicht<br />

und auch Securityfixes. Die<br />

Abbildung 4 zeigt nur das letzte Vierteljahr<br />

– mehr gibt der Platz nicht her. Wie<br />

be<strong>im</strong> Kernel machen die Community-<br />

Distributionen mit leichter Verspätung<br />

jede Aktion von Mozilla mit. RHEL, SLES<br />

(beide Firefox 10.0) und Debian (Iceweasel<br />

3.5.16) verhalten sich gegensätzlich<br />

und spielen nur Securityfixes ein.<br />

Ermessensspielraum bei<br />

Infrastruktur-Software<br />

Die Entscheidungen – möglicherweise<br />

auch die Auslastung – der <strong>Paket</strong>maintainer<br />

sind ganz unterschiedlich. Das ist<br />

am Beispiel des IMAP-Servers Dovecot zu<br />

sehen. Im Beobachtungszeitraum für diesen<br />

Artikel traten keine Sicherheitsprobleme<br />

mit der Software auf. Die Betreuer<br />

standen also nicht unter Zugzwang. Bei<br />

Debian und Open Suse tat sich folgerichtig<br />

gar nichts be<strong>im</strong> Dovecot-<strong>Paket</strong>, in<br />

SLES ist es nicht enthalten. Ubuntu und<br />

Fedora aktualisierten das <strong>Paket</strong> nach ein<br />

paar Monaten, und Red Hat besserte eine<br />

ältere Version nach (Abbildung 5).<br />

Doch selbst wenn Sicherheitslücken vorliegen,<br />

kann die Reaktion der Distributionen<br />

unterschiedlich ausfallen. Eine Anfälligkeit<br />

von HTTPS-Verbindungen mit<br />

Apache 2 (CVE-2012-4929) war Anfang<br />

November 2012 nur Ubuntu einen Security-Fix<br />

für das <strong>Paket</strong> wert. Debian folgte<br />

am Ende des Monats. Red Hat vermeldete<br />

das Risiko zwar und schätzte es als „mäßig“<br />

ein, lieferte aber kein ausgebessertes<br />

<strong>Paket</strong>. Bei SLES, Open Suse und Fedora<br />

geschah gar nichts (Abbildung 6).<br />

Wie bei den eben besprochenen Infrastruktur-Komponenten<br />

verhält es sich<br />

be<strong>im</strong> Datenbankserver MySQL. Nicht<br />

nur, dass wenig passierte, die Distributionshersteller<br />

hatten auch be<strong>im</strong> Nachziehen<br />

die Ruhe weg (Abbildung 7).<br />

Ein Schlaglicht<br />

Dieser <strong>Test</strong> kann unmöglich ein vollständiges<br />

und damit gerechtes Bild zum<br />

Thema Maintenance zeichnen – moderne<br />

25.10.2012<br />

26.10.2012<br />

26.10.2012<br />

30.10.2012<br />

31.10.2012<br />

17.11.2012<br />

20.11.2012<br />

21.11.2012<br />

28.11.2012<br />

28.11.2012<br />

03.12.2012<br />

10.0.10-1<br />

16.0.2-1<br />

16.0.1<br />

16.0.2<br />

10.0.10<br />

10.0.11-1<br />

17.0-1<br />

16.0.2<br />

17.0-2<br />

10.0.11<br />

17.0<br />

f(x)<br />

f(x)<br />

f(x)<br />

Distribution<br />

Debian Fedora<br />

Open Suse<br />

RHEL SLES<br />

Ubuntu


Titelthema<br />

www.linux-magazin.de Maintenance 03/2013<br />

26<br />

Dovecot<br />

09.08.2012<br />

2.1.7-12<br />

f(x)<br />

Ursachen<br />

Security<br />

Distribution<br />

Ubuntu<br />

02.10.2012<br />

2.0.9-4<br />

Bug<br />

20.11.2012<br />

2.1.10-4<br />

f(x)<br />

f(x) Funktion<br />

RHEL<br />

Apache<br />

11.10.2012<br />

Apache<br />

warnt vor<br />

Mpd_proxy_ajp-<br />

Remote-DoS<br />

[3]<br />

Ursachen<br />

Security<br />

Distribution<br />

Ubuntu<br />

08.11.2012<br />

Fix 2.2<br />

Bug<br />

30.11.2012<br />

Fix 2.2<br />

f(x) Funktion<br />

Debian<br />

Delta-RPMs<br />

Wegen ein paar kleiner Änderungen ein großes<br />

<strong>Paket</strong> komplett neu herunterzuladen ist<br />

ärgerlich. Daher dachten die RPM-Entwickler<br />

schon 1998 darüber nach, nur die Unterschiede<br />

zu übermitteln. Novell/​Suse nahm die<br />

Idee 2005 in Suse <strong>Linux</strong> 9.2 auf und schuf das<br />

Delta-RPM [4]. Neben vollständigen Headern<br />

enthält es nur einen Binärdiff zwischen<br />

der alten und der neuen Version. Ein Tool des<br />

<strong>Paket</strong>managers baut aus den alten Dateien<br />

und dem Diff ein vollständiges <strong>Paket</strong>, das<br />

auch die gewünschte Prüfsumme aufweist<br />

und sich wie üblich installieren lässt. Suse<br />

bietet noch heute Deltas in seinen Update-<br />

Kanälen an. Der Admin kann in der Datei<br />

»/etc/zypp/zypp.conf« mit<br />

Fedora<br />

Debian<br />

RHEL<br />

SLES<br />

download.use_deltarpm = true<br />

Open Suse<br />

(In SLES nicht<br />

enthalten.)<br />

Abbildung 5: Ohne entdeckte Sicherheitslücken<br />

verlaufen Updates in gemächlichem Tempo.<br />

Distributionen bestehen aus viel zu viel<br />

Software, die in Breite und Tiefe selbst<br />

mit Unterstützung von Tools nicht untersuchbar<br />

ist, um wissenschaftlichen<br />

Kriterien zu genügen. Wohl aber vermag<br />

die untersuchte Stichprobe Tendenzen<br />

aufzuzeigen: Der Umfang der zu bewältigenden<br />

Aufgaben der <strong>Paket</strong>maintainer<br />

scheinen sehr unterschiedlich verteilt zu<br />

sein – von alle paar Monate ein paar<br />

Handgriffe bis zum Kampfeinsatz <strong>im</strong> Wochenrhythmus.<br />

Bei den Community-<strong>Linux</strong>en, die den<br />

Upstream von Firefox nachvollziehen,<br />

scheint Fedora zeitlich die Nase vorne<br />

zu haben, der Nächste ist Open Suse<br />

Open Suse<br />

Fedora<br />

Abbildung 6: Ein Apache-2-Loch stopften nur die<br />

Distributionen Ubuntu und Debian.<br />

und dann Ubuntu. Debian kocht hier mit<br />

Iceweasel ein eigenes Süppchen.<br />

Be<strong>im</strong> Kernel schlägt sich Ubuntu auf<br />

die Seite der Versionsstabilen, während<br />

Fedora am progressivsten vorgeht. Es<br />

mag an der Auswahl der untersuchten<br />

<strong>Paket</strong>e liegen, aber den vielleicht erwarteten<br />

Sachzusammenhang zwischen<br />

Debian-Updates und denen des Debian-<br />

Derivats Ubuntu vermag dieser <strong>Test</strong> nicht<br />

zu belegen. Jenseits der <strong>Paket</strong>e, bei denen<br />

es hoch hergeht, läuft die Arbeit<br />

der <strong>Paket</strong>pfleger in ruhigen Bahnen, in<br />

so ruhigen, dass mancher Securityfix<br />

schleppend oder nie den Weg in manche<br />

Distribution findet.<br />

n<br />

ihre Verwendung aktivieren. Sind sind allerdings<br />

nicht mehr so beliebt wie früher: Ein<br />

großes <strong>Paket</strong> ist heute schneller übertragen,<br />

doch das binäre Patchen n<strong>im</strong>mt <strong>im</strong>mer noch<br />

viel Rechenzeit in Anspruch. „Bei Systemen<br />

mit entsprechenden SLAs ist das störend,<br />

wenn der Admin um jede Minute Wartungsfenster<br />

kämpfen muss“, erklärte Torsten<br />

Hallman, Lead Systems Engineering bei Suse,<br />

gegenüber dem <strong>Linux</strong>-<strong>Magazin</strong>.<br />

Infos<br />

[1] Novell Patch Finder:<br />

[http:// download. novell. com/ patch/ finder/]<br />

[2] Debian-Changelog für »linux‐2.6«: [http://​<br />

packages. debian. org/ changelogs/ pool/​<br />

main/ l/ linux‐2. 6/ current/ changelog]<br />

[3] Mod_proxy_ajp-Remote-DoS:<br />

[http:// httpd. apache. org/ security/​<br />

vulnerabilities_22. html# 2. 2. 22]<br />

[4] Marcel Hilzinger, „Außen RPM, innen<br />

Delta“: <strong>Linux</strong>-<strong>Magazin</strong> 09/​05, S. 64<br />

MySQL<br />

13.08.2012<br />

22.08.2012<br />

13.08.2012<br />

13.08.2012<br />

13.08.2012<br />

30.09.2012<br />

14.11.2012<br />

05.12.2012<br />

5.0.96-0.4.1<br />

5.5.25a<br />

5.1.66-2<br />

5.5.28<br />

5.5.28<br />

5.5.28-1<br />

5.1.66-1<br />

5.5.28-2<br />

f(x)<br />

f(x)<br />

Ursachen<br />

Distribution<br />

f(x)<br />

Security<br />

Bug<br />

Funktion<br />

Fedora<br />

Open Suse<br />

RHEL<br />

SLES<br />

Ubuntu<br />

Debian<br />

Abbildung 7: Be<strong>im</strong> Datenbankserver MySQL behoben die Distributionen vordringlich Security-Probleme.


Born to<br />

be ROOT!<br />

HOSTED<br />

IN GERMANY<br />

Root Server <strong>Linux</strong> Level 1<br />

29 ,00<br />

€/<br />

€/Mon.*<br />

CPU<br />

Intel Sandy Bridge G530<br />

Leistung<br />

2 x 2,4 GHz<br />

RAM<br />

4 GB<br />

HD<br />

1.000 GB<br />

Traffic<br />

Unl<strong>im</strong>ited*<br />

EFFIZIENTER SPRINTER ZUM MINIPREIS<br />

Beschleunigen eun n Sie<br />

Ihre Projekte mit einem em<br />

dedidi-<br />

zierten Root ot Server<br />

von STRATO. TO.<br />

Mit<br />

eigener Hard-<br />

ware steht Ihnen n<br />

<strong>im</strong>mer m<br />

die volle Leistung von<br />

RAM, CPU, Festplatte e und<br />

Traffic zur Verfügung.<br />

STRATO TO<br />

setzt auf Qualität und arbeitet et ausschließlich h mit führen-<br />

deni<br />

internationalen na alen<br />

Hardware-Herstellern re<br />

er ellern zusammen. men. Jedes Bau-<br />

teil ist opt<strong>im</strong>al für den Einsatz <strong>im</strong> dedizierten Server abgest<strong>im</strong>mt.<br />

mt.<br />

Das<br />

sorgt für<br />

höchste Zuverlässigkeit und Ausfall sicherheit.<br />

eit<br />

Zusammen<br />

me<br />

mit dem Minipreis is sind STRATO Root Server r unschlagbar.<br />

* Traffic-Unl<strong>im</strong>ited: Keine zusätzlichen Kosten durch Traffic (bei Traffic-Verbrauch über 1.000 GB/ Monat<br />

und danach je weitere 300 GB erfolgt eine Umstellung der Anbindung auf max. 10 MBit/s. Erneute<br />

Freischaltung der vollen Bandbreite jeweils kostenlos über den Kundenservicebereich). Preis inkl. MwSt.<br />

Info: 030 – 300 146 111 | strato-pro.de


Titelthema<br />

www.linux-magazin.de Security-Updates 03/2013<br />

28<br />

Wie Suse und Red Hat sicherheitsrelevante Patches in die Repositories bringen<br />

Verletzlich<br />

Verwundbarkeiten, Patches, Bugfixes, Zertifizierungen: Bei Red Hat und Suse arbeiten spezialisierte Security-<br />

Teams daran, Fehlern, Bugs und Schwachstellen rechtzeitig beizukommen. Markus Feilner<br />

© V. J. Matthew, 123RF.com<br />

Die rechte Ferse war es bei Achilles [1],<br />

bei Siegfried aus der Nibelungensaga<br />

eine Stelle am Rücken. Beide, sonst unverwundbar,<br />

besaßen eine bedrohliche<br />

Schwachstelle. Eine kleine nur, be<strong>im</strong> einen<br />

der Abdruck der mütterlichen Hand,<br />

als Thetis ihn <strong>im</strong> Fluss Styx stählte, be<strong>im</strong><br />

anderen ein Lindenblatt, das vom Helden<br />

unbemerkt be<strong>im</strong> Bad <strong>im</strong> Drachenblut auf<br />

seinem Rücken lag. Tödlich wurden die<br />

Löcher in der magischen Rüstung erst,<br />

als die Feinde davon erfuhren. Den einen<br />

traf ein Pfeil in die Ferse, den anderen<br />

Hagens Speer.<br />

Kleine Ursache, letale Wirkung – genau<br />

das will der sicherheitsbewusste <strong>Linux</strong>-<br />

Admin vermeiden und stählt, härtet,<br />

patcht und testet sein System. Weil aber<br />

jedwede Software – ob frei oder nicht –<br />

<strong>im</strong>mer Fehler hat, ist der Anwender hier<br />

auf die Power der Community angewiesen,<br />

aber auch auf die Arbeit der Distributoren<br />

und Sicherheitsexperten.<br />

Daher<br />

betreiben Suse und<br />

Red Hat hochqualifizierte<br />

Security Response<br />

Teams (SRT,<br />

[2], [3]), die verschiedene<br />

Informationsquellen<br />

überwachen<br />

und nach bekannt<br />

werdenden Sicherheitslücken<br />

durchforsten.<br />

Informationsquellen<br />

Mailinglisten, Datenbanken,<br />

Announcements<br />

von (anderen)<br />

Distributoren, Projekten,<br />

Entwicklern, aus<br />

Wikis und diversen Foren – auch denen,<br />

derer sich Hacker bedienen –, aber auch<br />

eigene Audits an Sourcecode, Binaries<br />

und proprietärer Software dienen ihnen<br />

als Informationsquelle.<br />

Marcus Meißner, Security-Chef bei Suse:<br />

„Wir nutzen die CVE-Datenbanken<br />

(Common Vulnerabilities and Exposures,<br />

Allgemein bekannte Verwundbarkeiten<br />

und offene Schwachstellen, [4], d. Red.)<br />

von Mitre ([5], Abbildung 1) und NVD<br />

[6], die Open-Source-Security-Mailingliste<br />

[7] und dort auch die geschlossene<br />

Liste für <strong>Linux</strong>-Distributoren. Außerdem<br />

überwachen wir Adobe Flash und Reader,<br />

Mozilla- und Oracle(Java)-Feeds, führen<br />

eigene Sourcecode-Audits durch und<br />

scannen Changelogs nach verdächtigen<br />

Einträgen wie »buffer overflow fix« oder<br />

»XSS fixed«. Und es kommt vor, dass uns<br />

Entwickler selbst berichten. Heutzutage<br />

tauchen die CVEs meist zuerst auf der<br />

OSS-Security-Mailingliste auf, erst später<br />

in der Mitre-Datenbank.“<br />

Standardtool Bugzilla<br />

Spätestens dann ticken die beiden großen<br />

Distributoren gleich: Sowohl Suse als<br />

auch Red Hat übernehmen die Meldung<br />

aus der CVE-Datenbank in die eigene<br />

DB, bei Red Hat unter [8] zu finden. Ein<br />

Verantwortlicher legt einen Bug in Bugzilla<br />

an: [9] und [10] zeigen beide als<br />

Beispiel das Mozilla-CVE 2012-1975, dem<br />

in Bugzilla (gemeinsam mit zahlreichen<br />

anderen CVEs) die ID 851910 zugewiesen<br />

ist. Jetzt prüfen die Entwickler, ob die<br />

Produkte, für die sie verantwortlich sind,<br />

betroffen sind und geben Ressourcen für<br />

die Lösung frei.<br />

Normalerweise enthält der Bugreport<br />

bereits alle nötigen Informationen, die<br />

der Packager oder Maintainer benötigt,<br />

und in der Regel laufen jetzt auch schon<br />

automatische Methoden der Qualitätssicherung,<br />

Ressourcenplanung, Erfolgskontrolle<br />

und zur Messung der Reaktionszeit<br />

an.<br />

Bei Suse übern<strong>im</strong>mt der jeweils zugewiesene<br />

Packager das Beheben des Problems,<br />

das SRT überwacht die Antwortzeit und<br />

hilft bei Schwierigkeiten. Anschließend<br />

gelangt das <strong>Paket</strong> ins Buildsystem (den<br />

IBS – Internal Build <strong>Service</strong>, ein Pendant<br />

des OBS), wo es nach einer initialen Abnahme<br />

eingecheckt wird. „War der Build<br />

erfolgreich, kommt die QA an die Reihe:<br />

Installiert es? Passen die Dependencies?<br />

Gelingt das Update? Außerdem kommen<br />

da auch generische Regressionstests zum<br />

Einsatz“, erläutert Marcus Meißner. „Erst<br />

danach, also wenn das QA-Team das finale<br />

Okay gegeben hat, gelangt das neue<br />

<strong>Paket</strong> auf die Update-Server, die Benachrichtigungen<br />

gehen per Mail raus.“


Abbildung 1: Eine typische CVE-Meldung mit Nummer, hier als Beispiel für einen<br />

Bug in Mozilla Firefox und Thunderbird.<br />

Red Hat greift dafür auf die Red Hat<br />

Security Advisories (RHSA) zurück, die<br />

die Firma nach Abschluss eines Fix publiziert<br />

– ebenfalls per Mail und Web.<br />

Abbildung 2 zeigt das gebaute <strong>Paket</strong> und<br />

die relevanten CVEs. Im oben angesprochenen<br />

Beispiel hat sich der Mozilla-Bug<br />

als kritisch in Firefox und Thunderbird<br />

erwiesen, deshalb gibt es zwei entsprechende<br />

RHSAs dazu: [11] und [12], siehe<br />

Abbildung 3. Wer sich für die Details<br />

interessiert, kann bei Red Hat auch online<br />

gezielt nach Schwachstellen und Fixes in<br />

der <strong>Paket</strong>datenbank suchen [13].<br />

Zertifikate<br />

Haben die Mitarbeiter der Distributoren<br />

gut und vor allem nachweisbar gut gearbeitet,<br />

dann winkt als Beweis der Qualität<br />

eine Zertifizierung durch offizielle Regierungsstellen,<br />

beispielsweise dem Bundesamt<br />

für Sicherheit in der Informationstechnik<br />

BSI oder seinem amerikanischen<br />

Pendant NIAP (National Information Assurance<br />

Partnership).<br />

Beide Enterprise-<br />

Distributionen erreichen<br />

die vierte<br />

Stufe der Common-<br />

Criteria-Zertifizierung<br />

EAL (Enterprise<br />

Evaluation<br />

Assurance Level,<br />

[14]) und dürfen<br />

sich mit dem Titel<br />

„Methodisch entwickelt,<br />

getestet<br />

und durchgesehen<br />

gemäß EAL 4+“<br />

schmücken. Red<br />

Hat liegt eine Nasenlänge<br />

vorne: Seit Oktober 2012 trägt<br />

auch RHEL 6 dieses Label.<br />

Diese für Open-Source-Betriebssysteme<br />

ohne Modifikationen höchste mögliche<br />

Auszeichnung will Suse natürlich auch<br />

für seinen aktuellen Enterprise-Server erhalten.<br />

Für SLES 9 und 10 liegt EAL 4+<br />

vor, bei SLES 11 warten die Nürnberger<br />

aber seit Monaten auf die Bestätigung.<br />

„Wir rechnen aber damit, dass das bald<br />

kommt“, hofft Meißner. Die EAL-Zertifikate<br />

interessieren überwiegend Behörden,<br />

aber auch Firmen <strong>im</strong> militärischen<br />

Bereich oder börsennotierte Konzerne<br />

mit Nachweispflicht.<br />

Ein weiterer wichtiger Standard, für den<br />

regelmäßige, schnelle und koordinierte<br />

Updates, Patches und Bugfixes eine Rolle<br />

spielen, ist FIPS 140 (Federal Information<br />

Processing Standards, [15]). Er konzentriert<br />

sich eher auf Krypto-Software, und<br />

da kann Red Hat seit April 2011 auf sechs<br />

FIPS-140-2-Zertifikate verweisen, unter<br />

anderem für Kernel-Crypto, Open Swan,<br />

Open SSH und Open SSL. Suse strebt die<br />

Zertifizierung für Open SSL an.<br />

Wer in Sachen nachweisbarer Sicherheit<br />

also höhere Ansprüche hat, scheint bei<br />

Red Hat richtig. Seit Anfang 2012 haben<br />

die roten Hüte es sogar geschafft,<br />

die Kombination aus RHEL, dem KVM-<br />

Hypervisor und IBM-Servern mit EAL4+-<br />

Zertifikaten versehen zu lassen. Viel mehr<br />

geht mit Open-Source-Mitteln nicht, zu<br />

streng sind die Vorgaben der höheren<br />

EAL-Level.<br />

n<br />

Infos<br />

[1] Achilles’ Ferse: [http:// de. wikipedia. org/​<br />

wiki/ Achillesferse]<br />

[2] Suse Security Team: [http:// en. opensuse.​<br />

org/ openSUSE:Security_team]<br />

[3] Red Hat Security: [https:// access. redhat.​<br />

com/ security/ team/]<br />

[4] CVE: [http:// en. wikipedia. org/ wiki/​<br />

Common_Vulnerabilities_and_Exposures]<br />

[5] Mitre: [http:// cve. mitre. org]<br />

[6] NVD: [http:// nvd. nist. gov]<br />

[7] OSS-Security:<br />

[http:// oss‐security. openwall. org/ wiki/]<br />

[8] Red Hats CVE-Datenbank:<br />

[https:// access. redhat. com/ security/ cve/]<br />

[9] CVE‐2012‐1975: [https:// access. redhat.​<br />

com/ security/ cve/ CVE‐2012‐1975]<br />

[10] Red Hats Bugzilla: [https:// bugzilla.​<br />

redhat. com/ show_bug. cgi? id=851910]<br />

[11] Ein RHSA für Thunderbird: [https:// rhn.​<br />

redhat. com/ errata/ RHSA‐2012‐1211. html]<br />

[12] Das RHSA für Firefox: [https:// rhn. redhat.​<br />

com/ errata/ RHSA‐2012‐1210. html]<br />

[13] Red-Hat-<strong>Paket</strong>suche: [https:// rhn. redhat.​<br />

com/ rhn/ channels/ software/ Search. do]<br />

[14] Evaluation Assurance Level:<br />

[http:// en. wikipedia. org/ wiki/ Evaluation_<br />

Assurance_Level]<br />

[15] FIPS 140:<br />

[http:// en. wikipedia. org/ wiki/ FIPS_140]<br />

Security-Updates 03/2013<br />

Titelthema<br />

www.linux-magazin.de<br />

29<br />

Abbildung 2: Red Hat hat aus mehreren Fixes, die durch CVEs veranlasst waren,<br />

ein Update-<strong>Paket</strong> gebaut …<br />

Abbildung 3: … und daraus wiederum zwei Advisories erstellt, weil der Bug<br />

sowohl Thunderbird als auch Firefox betraf.


Titelthema<br />

www.linux-magazin.de Long-Term 03/2013<br />

30<br />

Extended Support: Wenn fünf bis sieben Jahre Standardsupport nicht reichen<br />

Und läuft und läuft ...<br />

Es soll sie noch geben, die Maschinen, die einfach so Jahrzehnte lang brav ihren Dienst verrichten. Auch in der<br />

kurzlebigen IT kommt es vor, dass ein Gerät länger mit der gleichen Distribution und Version laufen muss, als<br />

ursprünglich vom Hersteller gedacht. Spätestens nach sieben Jahren wird das aber richtig teuer. Markus Feilner<br />

© Klaus Rainer Krieder, Fotolia<br />

Das Tsunami-Warnsystem <strong>im</strong> Indischen<br />

Ozean (German Indonesian Tsunami<br />

Early Warning System, GITEWS, [1])<br />

hatte ein Problem: Wissenschaftler erzählen,<br />

schon die Entwicklung diverser<br />

Software [2] habe fünf Jahre verschlungen.<br />

Das aber sei zu lange, denn mit<br />

dem finalen Rollout 2010/​11 von GITEWS<br />

erreichte das zugrunde liegende, bereits<br />

2004 veröffentlichte Suse-Enterprise-<br />

Betriebssystem SLES 9 bereits das Ende<br />

seiner Laufzeit.<br />

Daher haben sowohl Suse als auch Red<br />

Hat Angebote <strong>im</strong> Portfolio, die Kunden<br />

weiterhelfen, bei denen Projekte eben<br />

etwas länger dauern: Der General Support<br />

der Nürnberger verspricht zwar nur<br />

für vier Jahre Verbesserungen auf Kundenwunsch<br />

(Enhancement Requests), bis<br />

zum fünften Jahr gibt es mit Einschränkungen<br />

das so genannte Hardware Enablement.<br />

Doch ab dem sechsten Jahr kann<br />

der Kunde solche Features nur in individuellen<br />

Absprachen teuer kaufen.<br />

Red Hat macht das prinzipiell genauso,<br />

nur heißt das Produkt anders. Was bei<br />

Suse Extended Support oder Long Term<br />

<strong>Service</strong> Pack Support (LTSS, [3], [4])<br />

heißt, nennt Red Hat Extended Life Cylcle<br />

Support (ELS, [5], [6]). Updates und<br />

Patches gibt’s als teures Add-on bei beiden<br />

für jeweils zehn Jahre (für Red Hat<br />

Enterprise <strong>Linux</strong> 4 also bis 2015, für SLES<br />

9 bis 2014). Für die etwas neueren RHEL<br />

5 (ab 2007) und 6 (ab 2010) bieten die<br />

Rothüte auch eine Extended Life Phase<br />

an, die die Jahre 11, 12 und 13 absichern<br />

soll (Abbildungen 1 und 2). Bis 2023 (Red<br />

Hat) oder 2019 (SLES 11) besteht also derzeit<br />

Planungssicherheit – den passenden<br />

Geldbeutel und das Vertrauen ins Überleben<br />

der Hersteller vorausgesetzt.<br />

Suse: 4 mal 1,5 = 10 Jahre ?<br />

Jede SLES-Major-Version bekommt in ihrem<br />

Leben vier <strong>Service</strong> Packs, eines etwa<br />

alle 18 Monate – daraus ergibt sich die<br />

garantierte Laufzeit von über fünf Jahren<br />

und der General Support für sieben Jahre.<br />

Als Lifecycle von SLES definiert Suse<br />

zehn Jahre, was laut Herstellerangaben<br />

die sieben Jahre normalen Support plus<br />

drei Jahre Extended Support umfasst.<br />

Dieser LTSS erlaubt es Kunden, Projekte<br />

mit ein und derselben SLES-Release auf<br />

ein Jahrzehnt zu planen und dabei <strong>im</strong>mer<br />

aktuelle Patches und Bugfixes für die<br />

installierten <strong>Paket</strong>e zu erhalten.<br />

Wer be<strong>im</strong> Einspielen von <strong>Service</strong> Packs<br />

Probleme bekommt, kann innerhalb von<br />

sechs Monaten nach Erscheinen des SP<br />

über den Overlap Support oder innerhalb<br />

von drei Jahren über den Long Term<br />

<strong>Service</strong> Pack Support Hilfe erhalten. Laut<br />

Suse können Kunden so auf einem speziellen<br />

<strong>Service</strong>-Pack-Level <strong>im</strong>merhin fünf<br />

Jahre verweilen.<br />

Trotzdem ist zu beachten: „Es muss den<br />

Kunden klar sein, dass sie alle fünf Jahre<br />

mindestens eine <strong>Service</strong>-Pack- und alle<br />

zehn Jahre eine Betriebssystem-Migration<br />

einplanen müssen“, erklärt S<strong>im</strong>ona<br />

Arsena, SLES-Produktmanagerin bei<br />

Suse. „In der Tat fragen uns <strong>im</strong>mer wieder<br />

Kunden nach Zehn-Jahres-Verträgen<br />

für Rundum-Support. Das sind dann fast<br />

<strong>im</strong>mer individuell maßgeschneiderte Vereinbarungen.“<br />

Zu der notwendigen SLES-Subkription<br />

komme das LTSS-Add-on, das mit knapp<br />

60 000 Euro pro Jahr anfängt (für bis<br />

zu 100 Server) und etwas weniger als<br />

120 000 Euro für eine unbegrenzte Anzahl<br />

Maschinen kostet. Auf System Z läppert<br />

sich der LTSS auf 100 000 Euro für<br />

fünf IFLs (Integrated Facility for <strong>Linux</strong>)<br />

oder das Doppelte für eine unbegrenzte<br />

Anzahl. Allerdings sollten Kunden in spe<br />

beachten: Diese Preise gelten pro <strong>Service</strong><br />

Pack und beinhalten die <strong>Service</strong>-


Tel. 0 64 32 / 91 39-749<br />

Fax 0 64 32 / 91 39-711<br />

vertrieb@ico.de<br />

www.ico.de/linux<br />

SEIT 1982<br />

Innovative Computer • Zuckmayerstr. 15 • 65582 Diez<br />

GmbH<br />

General Support<br />

Extended Support<br />

1. Jahr 2. Jahr 3. Jahr 4. Jahr 5. Jahr 6. Jahr 7. Jahr 8. Jahr 9. Jahr 10. Jahr<br />

GA<br />

SP1 Long Term <strong>Service</strong> Pack Support<br />

Neueste Intel ®<br />

Xeon ® Prozessoren.<br />

Jetzt mit<br />

bis zu 8 Kernen/16<br />

Threads pro CPU<br />

und bis zu 80%<br />

mehr Leistung!<br />

SP2<br />

Long Term <strong>Service</strong> Pack Support<br />

BALIOS R15B 1HE SERVER<br />

SP3<br />

Long Term <strong>Service</strong> Pack Support<br />

leistungen, die [3] auflistet. Angesichts<br />

der Verdienstmöglichkeiten verwundert<br />

es nicht, dass Suse das Produkt aktiv<br />

bewirbt und gerne Kunden in die LTSS-<br />

Palette aufn<strong>im</strong>mt.<br />

Red Hat nur fürs Image?<br />

Red Hat scheint das ein wenig anders zu<br />

sehen, zumindest gibt man sich bedeckt,<br />

was die Preise angeht und verweist auf<br />

Anfragen auf die reichhaltigen Informationen<br />

auf den Webseiten. Details zum Lebenszyklus<br />

der Produkte und der damit<br />

verbundenen Dienstleistungen nennt [7].<br />

Red Hat rät dazu, alte, nicht upgradebare<br />

Systeme zu virtualisieren und lockt mit<br />

Support dafür.<br />

RHEL 3 bekommt beispielsweise seit<br />

2007, RHEL 4 seit 2011, RHEL 5 ab 2014<br />

und Version 6 ab 2017 keine Hardware-<br />

Unterstützung mehr – außer die für den<br />

Betrieb in virtualisierten Umgebungen<br />

nötige. Auch Kunden, die eine Minor-<br />

Release wie 6.1 länger verwenden wollen,<br />

können dies mit Support von Red<br />

Hat tun, wenn sie das Add-on Extended<br />

Update Support (EUS) ihrer bestehenden<br />

Subskription hinzufügen.<br />

Eine Presseanfrage des <strong>Linux</strong>-<strong>Magazin</strong>s<br />

beantwortet der Hersteller zaghaft: Das<br />

Kerngeschäft sei das Subskriptionsmodell,<br />

mit der engen Bindung zwischen<br />

Kunde und Red Hat, aus „dem sich in<br />

der Regel automatisch auch Unterstützung<br />

und Hilfe für längere Zeiträume<br />

ergeben“. Die Subskriptionen seien auch<br />

nicht an eine Version, Architektur oder<br />

SP4<br />

Long Term <strong>Service</strong> Pack Support<br />

Abbildung 1: Gut fünf Jahre Regellaufzeit inklusive Verbesserungen und Hardware-Support, danach nur noch<br />

Updates und Patches: Suses Langzeit-Supportmodell.<br />

ein Produkt gebunden, sondern machen<br />

jederzeit Updates und Upgrades möglich.<br />

Aktive Werbung für das Produkt Langzeit-Support<br />

schaut anders aus. Offenbar<br />

bietet der Marktführer das eher widerwillig<br />

an, auch Preise oder Referenzkunden<br />

sind nicht in Erfahrung zu bringen.<br />

Suse und Dienstleister<br />

Billiger und flexibler, aber zumeist mit<br />

weniger Ressourcen gesegnet sind dann<br />

kleinere Dienstleister, die sich aber<br />

normalerweise auch nicht auf einzelne<br />

Distributionen beschränken. Red Hat<br />

verlangt ja vom Kunden, alle Systeme,<br />

die irgendwie mit dem Problem zu tun<br />

haben, müssten von der roten Infrastruktur<br />

gemanagt sein. Suse ist da flexibler<br />

und bietet sogar Support für beispielsweise<br />

Libre Office auf Windows, wenn<br />

der Kunde nur den Preis zu bezahlen<br />

bereit ist.<br />

Ganz ähnlich machen das diverse Dienstleister:<br />

Ralph Dehner von dem Ingolstädter<br />

<strong>Linux</strong>-Experten B1 Systems [8] beschreibt<br />

als Beispiel: „Wir kalkulieren <strong>im</strong>mer<br />

individuell, deshalb kann der Kunde<br />

bei uns auch Support für einzelne Softwarepakete<br />

buchen. Wir haben beispielsweise<br />

Geschäftspartner, die Pacemaker<br />

auf Red Hat betreiben, da übernehmen<br />

wir den Add-on-Support für die <strong>Paket</strong>e<br />

auch langfristig.“<br />

Das Gleiche kommt häufig vor, wenn<br />

Anwender für einzelne Projekte <strong>Paket</strong>e<br />

mit anderen Parametern übersetzt haben<br />

wollen. „Da sorgen wir dann für<br />

• Intel ® Xeon ® E3-1220 V2 3,1GHz S1155<br />

• 2x 4GB DDR3 RAM<br />

• 2x 1TB 24x7 SATA-2 HDD<br />

• 2x Gigabit-LAN<br />

inkl. MwSt.<br />

exkl. MwSt.<br />

1010, 31 849,-<br />

Art.Nr. Bto-2990642<br />

XANTHOS R25C 2HE SERVER<br />

• 2x Intel ® Xeon ® E5-2420 1,9GHz 7,2GT 15MB 6C<br />

• 6x 8GB DDR3 RAM<br />

• 4x 1TB 24x7 SATA-2 HDD<br />

• 2x Gigabit-LAN<br />

inkl. MwSt.<br />

exkl. MwSt.<br />

2723, 91 2289,-<br />

Art.Nr. Bto-2990643<br />

BALIOS R45B 4HE STORAGE SERVER<br />

• Intel ® Xeon ® E3-1220 V2 3,1GHz S1155<br />

• 2x 4GB DDR3 RAM<br />

• 8x 1TB 24x7 SATA-2 HDD<br />

• Adaptec 71605 + NAND BBU<br />

• 2x Gigabit-LAN<br />

inkl. MwSt.<br />

exkl. MwSt.<br />

3092, 81 2599,-<br />

wir liefern auch nach Österreich<br />

und in die Schweiz<br />

Art.Nr. Bto-2990644<br />

Intel ® , Intel ® Logo, Intel ® Inside, Intel ® Inside Logo,<br />

Atom, Atom Inside, Xeon und Xeon Inside sind Marken<br />

der Intel Corporation in den USA und anderen<br />

Ländern. Alle Preise in Euro


Titelthema<br />

www.linux-magazin.de Long-Term 03/2013<br />

32<br />

Der Lebenszyklus von Red Hat Enterprise <strong>Linux</strong> 5 und 6:<br />

Production 2<br />

Production (5 1/2 Jahre) Production 3 (3 1/2 Jahre) Extended Life Phase (3 Jahre)<br />

(1 Jahr)<br />

1. Jahr 2. Jahr 3. Jahr 4. Jahr 5. Jahr 6 Jahr 7. Jahr 8. Jahr 9. Jahr 10. Jahr 11. Jahr 12. Jahr 13. Jahr<br />

Der Lebenszyklus von Red Hat Enterprise <strong>Linux</strong> 3 und 4:<br />

Production (4 Jahre)<br />

Production 2<br />

(1 Jahr)<br />

Production 3<br />

(2 Jahre)<br />

Extended Life Cycle Support<br />

(ELS) Add-on<br />

Extended Life Phase<br />

(3 Jahre)<br />

1. Jahr 2. Jahr 3. Jahr 4. Jahr 5. Jahr 6 Jahr 7. Jahr 8. Jahr 9. Jahr 10. Jahr<br />

Abbildung 2: Der Lebensyzklus von Red Hat Enterprise <strong>Linux</strong> 3 und 4 sieht vier Jahre normale Betriebsdauer vor. Danach müssen sich die Kunden langsam um Updates<br />

kümmern, auch wenn der Hersteller bei RHEL 5 und 6 insgesamt sogar 13 Jahre supportet.<br />

den kompletten Stack und pflegen ihn“,<br />

erklärt Dehner. „Gelegentlich helfen wir<br />

auch in Fällen, wo der Distributor gar<br />

nicht mehr mitspielt, zum Beispiel bei<br />

alten <strong>Linux</strong>-Versionen oder auf ungewöhnlichen<br />

Architekturen wie Power<br />

oder System Z.“<br />

Ubuntu und Univention<br />

An den kleineren Firmen kommt ohnehin<br />

niemand vorbei, der Debian oder Ubuntu<br />

einsetzt. Auf Letzteres hat sich Teuto Net<br />

[9] spezialisiert. Die Firma macht auch<br />

<strong>im</strong> Ubuntu-Advantage-Programm [10]<br />

mit und verspricht deutschen Kunden offizielle<br />

Unterstützung mit Canonicals Segen.<br />

Doch existiert „kein generelles Angebot<br />

von Canonical für die Zeit nach dem<br />

offiziellen Support. Individuelle Vereinbarungen<br />

über Aktualisierung und den <strong>Service</strong><br />

für einen best<strong>im</strong>mten Satz von <strong>Paket</strong>en<br />

sind aber möglich. Das rechnet sich<br />

vermutlich jedoch nur bei großen Projek-<br />

Abbildung 3: Peter Ganten, Gründer und Geschäftsführer<br />

der Bremer <strong>Linux</strong>-Schmiede Univention.<br />

ten“, weiß Oliver Dirker, bei Teuto Net für<br />

Vertrieb und Consulting zuständig.<br />

Debian mit fünf Jahren Support gibt es<br />

auch in Bremen. So lange garantiert der<br />

wohl letzte verbliebene deutsche Enterprise-<strong>Linux</strong>-Distributor<br />

Univention für<br />

seinen Univention Corporate Server [11]<br />

Maintenance und Support, erwartet dann<br />

aber von seinen Kunden das Upgrade auf<br />

die neuen Versionen.<br />

„In typischen UCS-Szenarien ist das auch<br />

nicht so schwierig, bietet aber meist viel<br />

Mehrwert. Wer will schon mit einer<br />

Samba-, Cups-, KVM- oder Open-LDAP-<br />

Release von vor fünf Jahren arbeiten, die<br />

nur Sicherheitsupdates bekommen hat?“,<br />

fragt Gründer und Geschäftsführer Peter<br />

Ganten. „Was wir allerdings machen,<br />

ist, dass wir manchmal Major-Versionen<br />

von Upstream-Software auch über UCS-<br />

Major-Releases hinweg maintainen, zum<br />

Beispiel bleibt Samba 3 als Alternative<br />

noch lange dabei. Das vereinfacht Upgrades<br />

älterer Systeme.“<br />

Wer trotzdem eine alte UCS-Version gepflegt<br />

haben will, bekommt das „zu individuellen<br />

Preisen, die sich nach den<br />

gewünschten Funktionen oder <strong>Paket</strong>en<br />

richten“, erklärt Ganten. Und es gäbe<br />

auch Kunden, die unbedingt eine ältere<br />

Softwareversion einsetzten, den ganzen<br />

Rest des Betriebssystems aber aktuell haben<br />

wollen.<br />

Eine Frage des Geldes<br />

Wer in die missliche Lage kommt, Herstellersupport<br />

außerhalb der normalen<br />

Pfade zu benötigen, braucht meist einen<br />

gut gefüllten Geldbeutel. In großen Firmen<br />

oder umfangreichen Projekten kann<br />

es sich zwar durchaus lohnen, die Long-<br />

Term-Angebote von Distributoren oder<br />

Dienstleistern in Anspruch zu nehmen.<br />

In den meisten Fällen jedoch – wie Red<br />

Hats Ansatz mit der Virtualisierung alter<br />

RHEL-Systeme zeigt – gibt es kostengünstigere<br />

und flexiblere Alternativen. n<br />

Infos<br />

[1] Deutsch-Indonesisches Tsunami-Warnsystem<br />

GITEWS: [http:// www. gitews. de]<br />

[2] Seiscomp: [http:// www. seiscomp3. org]<br />

[3] Novell Suse Long Term <strong>Service</strong> Pack<br />

Support Specs: [https:// www. suse. com<br />

/ support/ programs/ long‐term‐servicepack‐support.<br />

html]<br />

[4] Novell Suse Long Term <strong>Service</strong> Pack<br />

Support: [http:// www. novell. com/ docrep/​<br />

2011/ 03/ long_term_service_pack_support_<br />

en. pdf] und<br />

[http:// support. novell. com/ lifecycle/]<br />

[5] Red Hat Extended Lifecycle Support als<br />

Add-on: [http:// de. redhat. com/​<br />

products/ enterprise‐linux‐add‐ons/​<br />

extended‐lifecycle‐support/]<br />

[6] Extended Lifecycle Support Exclusions:<br />

[http:// www. redhat. com/ resourcelibrary/​<br />

articles/ extennded‐lifecycle‐supportexclusions]<br />

[7] Lebenszyklus Red Hat Enterprise <strong>Linux</strong>:<br />

[https:// access. redhat. com/​support/​<br />

policy/ updates/ errata/]<br />

[8] B1 Systems: [http:// www. b1‐systems. de]<br />

[9] Teuto Net: [http:// www. teuto. net]<br />

[10] Ubuntu-Advantage-Programm:<br />

[http:// www. canonical. com/ enterprise<br />

‐services/ ubuntu‐advantage]<br />

[11] Univention: [http:// www. univention. de]


JETZT<br />

MIT DVD!<br />

MAGAZIN<br />

Sonderaktion<br />

<strong>Test</strong>en Sie jetzt<br />

3 Ausgaben<br />

für 3 Euro!<br />

Jetzt schnell bestellen:<br />

• Telefon 07131 / 2707 274<br />

• Fax 07131 / 2707 78 601<br />

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

• Web: www.linux-magazin.de/probeabo<br />

Mit großem Gewinnspiel unter:<br />

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

Gewinnen Sie...<br />

eines von zwei tollen Gadgets (das Los entscheidet)<br />

Einsendeschluss ist der 15.03.2013


Titelthema<br />

www.linux-magazin.de Bugs 03/2013<br />

34<br />

Unbeachtete Bugreports<br />

Frust-<strong>Paket</strong>e<br />

Unklare Zuständigkeiten für Softwarepakete, unbearbeitete Bugreports: Der Knoppix-Erfinder Klaus Knopper<br />

schreibt sich von der Seele, was ihn an der Open-Source-Gemeinde ärgert. Klaus Knopper<br />

© xalanx, 123RF.com<br />

Open Source gilt als eine bessere Welt, in<br />

der alle einander helfen. Manchmal habe<br />

ich aber ganz anderes Verhalten erlebt.<br />

Deshalb möchte ich der Idealvorstellung<br />

ein paar Erfahrungen aus der Realität entgegenhalten,<br />

die anderen helfen sollen,<br />

Enttäuschungen zu vermeiden.<br />

Auf der Suche<br />

Wer hilft bei Fragen oder Problemen mit<br />

freier Software? Der sicherste Weg, um<br />

jemanden zu erwischen, der zuständig<br />

ist, weil er das Programm mitgeschrieben<br />

hat oder sich als Maintainer für das<br />

entsprechende Softwarepaket betätigt, ist<br />

das Bugtracking-System der verwendeten<br />

Distribution oder die jeweilige Developer-<br />

Mailingliste.<br />

Das verdienstvolle Debian-Projekt, auf<br />

dem mein Live-<strong>Linux</strong> Knoppix [1] beruht,<br />

empfiehlt explizit, nicht den Autor des<br />

Programms selbst anzuschreiben, sondern<br />

<strong>im</strong>mer den Debian-<strong>Paket</strong>maintainer<br />

[2]. Das soll es dem <strong>Paket</strong>pfleger ermöglichen,<br />

die Fehler zu sammeln, richtig<br />

zu kategorisieren, möglicherweise selbst<br />

Patches zu entwickeln und an Upstream<br />

zu schicken, also den Originalautor der<br />

Software. Dieses Vorgehen soll den Fehler<br />

auch für alle anderen Distributionen<br />

beheben.<br />

Prinzipiell ist dieses Verfahren sicherlich<br />

sinnvoll. Wenn ich mir allerdings die<br />

langen Listen der ausstehenden Bugfixes<br />

für manche Programmen ansehe, frage<br />

ich mich, welcher Anwender so viel Zeit<br />

hat, um auf die Behebung aller Fehler <strong>im</strong><br />

Upstream zu warten.<br />

Reportbug<br />

Um die Fehlermeldungen zu kanalisieren,<br />

bringt Debian sogar ein eigenes Softwarepaket<br />

namens »reportbug« mit (siehe den<br />

Kasten „Bugreporting in Debian“). In<br />

der Praxis sieht dessen Anwendung leider<br />

so aus: Zunächst muss der hoch motivierte<br />

Anwender, der etwa einen Bug<br />

in Mkisofs melden möchte, sich durch<br />

stolze 102 „noch ausstehende Fehlerbehebungen“<br />

kämpfen, um festzustellen,<br />

ob der Fehler überhaupt neu ist. Danach<br />

ist er angehalten, einen Bugreport in<br />

bestem Englisch zu formulieren und mit<br />

einem Texteditor wie Emacs oder Vi einzugeben.<br />

Für Anfänger empfehlenswert:<br />

»export EDITOR=nano«.<br />

Am Ende dieser Mühen wird er aber unter<br />

Umständen feststellen, dass Reportbug<br />

die Meldung gar nicht abschicken<br />

konnte, da es sie direkt per SMTP-Protokoll<br />

an den Mailserver des Debian-Projekts<br />

zustellen will. Das erlauben aber<br />

viele Netzwerke nicht und vereiteln den<br />

Versuch per Firewall, da auch Trojaner<br />

gerne direkte Verbindungen zu einem<br />

SMTP-Port aufmachen, um sich zu verbreiten.<br />

Nun liegt eine Textdatei mit dem<br />

sorgfältig generierten Bugreport in einem<br />

Temporärverzeichnis und lässt sich nicht<br />

versenden.<br />

Wenn der Anwender jetzt noch nicht genug<br />

hat und etwas Zeit mit Recherche<br />

verbringt, findet er vielleicht einen Web-<br />

Bugreporting in Debian<br />

Der offiziell empfohlene Weg zum Bugreporting<br />

in Debian [2]:<br />

1. Mit »dpkg ‐S `type ‐p Kommando`« herausfinden,<br />

zu welchem <strong>Paket</strong> das fehlerhafte<br />

Programm gehört.<br />

2. Fehlerliste des <strong>Paket</strong>s per Web oder Reportbug<br />

durchforsten.<br />

3a. Falls der Fehler bekannt ist, an [Fehlernummer@bugs.<br />

debian. org] eine Ergänzung<br />

schicken, wenn möglich via Reportbug.<br />

3b. Falls der Fehler neu ist, an [submit@bugs.​<br />

debian. org] melden, allerdings ist ein spezielles<br />

Format einzuhalten.<br />

4. Auf Antwort des <strong>Paket</strong>-Maintainers warten.


Gateway zu Debians Bugtracking-System.<br />

Das Webformular erlaubt oft nur, Bugreports<br />

zu bearbeiten oder zu ergänzen,<br />

für neue müsste der Anwender Informationen<br />

von seinem Rechner sammeln, die<br />

nur Reportbug zusammenstellt.<br />

Als Workaround schickt der mittlerweile<br />

recht strapazierte Anwender die Textdatei<br />

mit dem zuvor generierten Report per<br />

Mail an die Adresse, die in einer der<br />

vielen Statusmeldungen stand. Wenn das<br />

klappt, bekommt der <strong>Paket</strong>maintainer<br />

eine Nachricht und der Anwender selbst<br />

Feedback, sobald sich etwas bezüglich<br />

seines gemeldeten Fehlers tut.<br />

Der falsche Weg zum<br />

Erfolg?<br />

Wer ähnliche Erfahrungen gemacht hat,<br />

wundert sich nicht, dass ich mich bei<br />

meinen nicht kommerziellen Projekten<br />

wie Knoppix nicht <strong>im</strong>mer an die Vorgaben<br />

von Debian oder den neuesten Stand<br />

des Software Engineering halte. Ich bin<br />

bekannt dafür, Probleme auf einem unorthodoxen<br />

Weg zu lösen.<br />

Ich bin ungeduldig, denn schließlich<br />

möchte ich etwa mit meiner neuen Release<br />

nicht so lange warten, bis der zuständige<br />

Debian-Package-Maintainer mir<br />

eine Mail schreibt. Darin erklärt er dann<br />

<strong>im</strong> Detail, warum er das Problem mit<br />

meiner vorgeschlagenen Lösung nicht<br />

beheben kann oder will – und auf jeden<br />

Fall nicht wird.<br />

Daneben belehrt er mich, warum ich<br />

trotz meines funktionierenden Patch auf<br />

Upstream warten soll und warum ich<br />

wegen diverser Dinge, die in Knoppix<br />

technisch bedingt nun mal anders laufen,<br />

sowieso kein offizielles Derivat – einen so<br />

genannten Debian Pure Blend [3] – entwickle,<br />

womit ich möglicherweise be<strong>im</strong><br />

Debian-Projektteam von vornherein unten<br />

durch bin.<br />

Weil ich viele Dinge selbst repariere,<br />

ohne jemanden um Erlaubnis zu bitten,<br />

tut mir diese Reaktion aber nicht sonderlich<br />

weh. Mein persönlicher Workaround<br />

sieht so aus:<br />

n Ich identifiziere den Fehler und behebe<br />

ihn möglichst bereits lokal in Knoppix.<br />

Dazu forke ich das Softwarepaket mit<br />

funktionierender Lösung. Nach Open-<br />

Source-Manier biete ich die veränderten<br />

Quellen unter [4] an.<br />

n Ich verfasse eine genaue Fehlerbeschreibung<br />

und schicke sie per Reportbug<br />

oder Mail samt Lösungsvorschlag<br />

an den zuständigen Debian- oder<br />

Kernel-Maintainer.<br />

n Falls der Fehler tatsächlich irgendwann<br />

<strong>im</strong> Upstream behoben ist, ersetze ich<br />

mein geforktes <strong>Paket</strong> wieder durch das<br />

Original.<br />

Die ärgerlichste Antwort, die ich auf<br />

meine Fehlermeldungen bekommen<br />

habe, lautet: „Das Problem hat, wenn<br />

überhaupt, lediglich in der Praxis Relevanz.“<br />

Ich habe sie tatsächlich mehrfach<br />

erhalten, in verschiedenen Sprachen, auf<br />

die Frage, ob man einen meiner Meinung<br />

nach dringenden Bugfix für ein Stabilitätsproblem<br />

akzeptieren würde.<br />

In den Diskussionen ergibt sich oft eine<br />

grundsätzlich unterschiedliche Weltanschauung<br />

darüber, ob der Fokus bei Software<br />

<strong>im</strong> Allgemeinen oder be<strong>im</strong> Kernel<br />

<strong>im</strong> Speziellen eher auf dem herausragenden<br />

Beispiel für sauberes Software-Engineering<br />

oder aber in praxisrelevanten<br />

Lösungen liegen sollte. Dabei sind die<br />

beiden Positionen keineswegs unvereinbar<br />

– es dauert offenbar nur recht lange,<br />

sie unter einen Hut zu bekommen.<br />

Die leidige Praxis<br />

Die Diskussion zwischen Theoretikern<br />

und Praktikern könnte erklären, warum<br />

es zwischen den einzelnen <strong>Linux</strong>-Distributionen<br />

etliche funktionale Unterschiede<br />

gibt. Die einen sehen eine Erweiterung<br />

als für ihre Distribution wichtiges Feature<br />

an, den anderen ist der gleiche Code<br />

hingegen nicht rein genug, um offiziell in<br />

die Standard-Codebasis aufgenommen zu<br />

werden, die zwischen fast allen Distributionen<br />

identisch ist.<br />

Kritisch wird es, wenn für schon länger<br />

bekannte Fehler, die die Systemstabilität<br />

oder die Sicherheit gefährden, niemand<br />

einen Fix in die Basissoftware integriert,<br />

weil sich die Betreuer und Hauptentwickler<br />

des Softwarepakets uneinig sind, an<br />

welcher Stelle und wann das Problem<br />

korrekt zu lösen sei, obwohl bereits funktionierende<br />

Lösungen existieren.<br />

In Knoppix 7.0.5 sah ich mich erstmals genötigt,<br />

den offiziellen Kernel zu patchen,<br />

weil ansonsten die RAM- und Swap-Kompression<br />

(ein sehr nützliches Feature für<br />

Rechner mit wenig RAM) entweder zum<br />

Einfrieren des Systems geführt hätte oder<br />

ich das Feature zumindest vorläufig hätte<br />

entfernen müssen. Das einfache Patch,<br />

das das Problem behebt, war bereits <strong>im</strong><br />

November 2012 bekannt und öffentlich<br />

verfügbar. Leider ist es bis zum Redaktionsschluss<br />

dieses <strong>Linux</strong>-<strong>Magazin</strong>s <strong>im</strong>mer<br />

noch nicht <strong>im</strong> offiziellen Kernel angekommen<br />

[5].<br />

Offenbar hatte bisher niemand Zeit<br />

oder sah nicht die Dringlichkeit, sich<br />

des Problems anzunehmen, das vor allem<br />

viele Live-Distributionen betrifft,<br />

obwohl es viel Mailverkehr bis hin zu<br />

Linus Torvalds deswegen gegeben hat.<br />

Manchmal funktionieren die Eskalation<br />

und die Behebung von Fehlern bei freien<br />

Softwareprojekten offenbar nicht besser<br />

– wenn auch nicht schlechter – als bei<br />

proprietärer Software.<br />

Mein Dauerprojekt Knoppix möchte ich<br />

dabei gar nicht von der Kritik ausnehmen.<br />

Ich kann bei Weitem nicht rasch<br />

genug – oder überhaupt – auf jede E-<br />

Mail antworten, die ich dazu bekomme.<br />

Ich kenne also auch die Perspektive der<br />

meist mit Anfragen überhäuften Entwickler.<br />

Mein Live-<strong>Linux</strong> war aber von Anfang<br />

an als ein persönliches, wenn auch veröffentlichtes<br />

Lern- und Produktivitätsprojekt<br />

angelegt, an dem nur wenige Personen<br />

direkt mitentwickeln. Und dabei ist<br />

es geblieben. (mhu) n<br />

Infos<br />

[1] Knoppix: [http:// knopper. net/ knoppix/]<br />

[2] Bug-Reporting bei Debian:<br />

[http:// www. debian. org/ Bugs/ Reporting]<br />

[3] Debian Pure Blends:<br />

[http:// blends. alioth. debian. org]<br />

[4] Quelltexte zu Anpassungen in Knoppix:<br />

[http:// debian‐knoppix. alioth. debian. org]<br />

[5] „Bug 50081 – zram cause unable to handle<br />

kernel page request“: [https:// bugzilla.​<br />

kernel. org/ show_bug. cgi? id=50081]<br />

Der Autor<br />

Der Knoppix-Erfinder Klaus<br />

Knopper [knoppix@knopper.net],<br />

Jahrgang 1968<br />

und Dipl.-Ing. der Elektrotechnik,<br />

arbeitet als selbstständiger<br />

IT-Berater und<br />

Entwickler sowie als Dozent an der FH Kaiserslautern<br />

(Softwaretechnik und Software-Engineering)<br />

und gibt Kurse zu freier Software.<br />

Bugs 03/2013<br />

Titelthema<br />

www.linux-magazin.de<br />

35


Titelthema<br />

www.linux-magazin.de Update-DVD 03/2013<br />

36<br />

Eigene Update-Datenträger bauen<br />

Inseln versorgen<br />

Ob auf dem Land, <strong>im</strong> hochsicheren Serverraum oder einfach in der Urlaubswohnung – manche Rechner sehen<br />

nie, selten oder nur sehr, sehr langsam die Weiten des Internets. Um solche Maschinen auf den aktuellen Stand<br />

zu bringen oder zu halten, braucht der Admin Update-Datenträger. Markus Feilner<br />

© Robert McIntyre, 123RF.com<br />

01 [rhel‐offline‐updates]<br />

Einsame Rechner haben vielleicht aus<br />

Sicherheitsgründen wie eine Insel gar<br />

keine Internetverbindung oder nur<br />

schwachbrüstige ISDN- oder GSM-Links,<br />

über die das schnell Hunderte von MByte<br />

umfassende Update einer Distribution<br />

überhaupt keinen Spaß macht.<br />

Als Ausweg bietet es sich an, eine CD,<br />

DVD oder einen USB-Stick zu erstellen<br />

und damit die Zivilisation der Insel zu<br />

bewahren. Das Update gelingt mit allen<br />

Distributionen, doch der Aufwand dafür<br />

ist unterschiedlich und reicht vom<br />

einfachen Copy- oder Wget-Befehl bei<br />

den freien Community-Distributionen bis<br />

zum Aufsetzen und fortwährenden Pflegen<br />

eines identischen Systems oder gar<br />

eines teuren Update-Servers für Red Hats<br />

Enterprise <strong>Linux</strong>.<br />

Debian: Aptoncd bringt GUI<br />

Als die einzigen Distributionen <strong>im</strong> Vergleich<br />

können Debian-basierte Systeme<br />

auf ein maßgeschneidertes Tool zurückgreifen:<br />

Aptoncd [1]. Es eignet sich<br />

nicht nur dazu, Update-Datenträger zu<br />

erstellen, sondern erlaubt es dem Admin<br />

sogar, Backups der installierten <strong>Paket</strong>e<br />

eines Systems zu erstellen. Die DVD enthält<br />

dann alle Deb-Dateien, die auf dem<br />

lokalen System installiert sind, was auch<br />

das Klonen oder Neuinstallieren stark<br />

vereinfacht. Der (idealerweise identi-<br />

02 name=Red Hat Enterprise <strong>Linux</strong> $releasever ‐ $basearch ‐ Offline Updates Repository<br />

03 baseurl=file:///tmp/rpm_updates<br />

04 enabled=1<br />

05 EOF<br />

Listing 1: »/etc/yum.repos.d/rhel‐offline‐updates.repo«<br />

sche) Quellrechner braucht auf jeden<br />

Fall Internetanschluss. Er holt – wie auf<br />

Debian-Systemen üblich – via »aptitude<br />

update« und »upgrade« seine <strong>Paket</strong>e und<br />

hält sie unter »/var/cache/apt/archives«<br />

vor – zumindest so lange, wie sie<br />

der Admin dort nicht löscht, etwa mit<br />

»apt‐get clean«.<br />

Das Installieren zieht auf einem Ubuntu<br />

Quantal Quetzal knapp 20 MByte an <strong>Paket</strong>en<br />

nach sich, die der Admin des nicht<br />

mit dem Netz verbundenen Systems von<br />

Hand herunterladen, kopieren und mit<br />

Dpkg installieren muss:<br />

aptitude install aptoncd<br />

[...]<br />

aptdaemon‐data{a} aptoncd gir1.2‐atk‐1.0{a}U<br />

gir1.2‐freedesktop{a} gir1.2‐gdkpixbuf‐2.0U<br />

{a} gir1.2‐gtk‐3.0{a} gir1.2‐pango‐1.0{a} U<br />

gir1.2‐vte‐2.90{a}gnome‐user‐guide{a} U<br />

libcairo‐perl{a} libgail‐3‐0{a} libglib‐U<br />

perl{a} libgtk2‐perl{a} libjavascriptcoreU<br />

gtk‐3.0‐0{a} libpango‐perl{a} librarian0U<br />

{a} libvte‐2.90‐9{a} libvte‐2.90‐common{a} U<br />

libwebkitgtk‐3.0‐0{a} libwebkitgtk‐3.0‐U<br />

common{a} libyelp0{a} python‐central{a} U<br />

python3‐aptdaemon.gtk3widgets{a} rarian‐U<br />

compat{a} software‐properties‐gtk{a} U<br />

synaptic{a} yelp{a} yelp‐xsl{a}<br />

Nach dem Start von Aptoncd hat der Anwender<br />

die Wahl zwischen Erstellen und<br />

Wiederherstellen, Abbildung 1 zeigt das<br />

Auswahlmenü der Updates, die das Tool<br />

in »/var« gefunden hat. »Brennen« erstellt<br />

die CD, DVD oder das ISO-File (was der<br />

folgende Dialog genauer definiert).<br />

Die fertige DVD legt der Admin dann auf<br />

dem Inselsystem ein, startet Aptoncd und<br />

wählt den Eintrag »Wiederherstellen«.<br />

Übers Menü lässt sich hier der Datenträger<br />

auch gleich als Repository eintragen,<br />

so sind auch nur einzelne <strong>Paket</strong>e über die<br />

gängigen Tools installierbar – allerdings


Abbildung 1: Aptoncd baut eine CD aus den Updates des lokalen Systems.<br />

entstehen dabei schnell unübersichtlich<br />

viele Einträge in »sources.list«, nämlich<br />

einer pro Update-DVD.<br />

Prinzipiell ginge es natürlich auch ohne<br />

Aptoncd, also einfach alle <strong>Paket</strong>e aus dem<br />

»/var«-Unterverzeichnis des identischen<br />

Systems auf einen USB-Stick kopieren<br />

oder in eine DVD brennen, doch die Integration<br />

des Tools macht vieles einfacher,<br />

etwa die Auswahl der zu aktualisierenden<br />

oder zu installierenden <strong>Paket</strong>e.<br />

Suse: Repository spiegeln<br />

Auf einen zweiten, identischen Rechner<br />

kann der Suse-Anwender getrost verzichten,<br />

wenn er bereit ist eine größere Datenmenge<br />

zu transportieren: Wer seine<br />

Offline-Maschine <strong>im</strong> Outback mit aktuellen<br />

<strong>Paket</strong>en versorgen will, braucht nur<br />

das betreffende Verzeichnis auf einem<br />

FTP- oder HTTP-Server von Suse [2] zu<br />

spiegeln, am besten mit Tools wie Wget<br />

und dessen Rekursivoption »‐r«. Für Suse<br />

12.2 heißt das:<br />

wget ‐r http://download.opensuse.org/U<br />

update/12.2/Architektur<br />

Den so erhaltenen, sehr umfangreichen<br />

Dateibaum kann er entrümpeln und einfach<br />

auf eine DVD brennen – eine CD<br />

dürfte hier nicht mehr reichen – oder<br />

auf einen größeren USB-Stick kopieren<br />

und dem Offline-System mit Zypper (»‐ar<br />

Pfad_zur_DVD«) oder Yast als Repository<br />

zur Verfügung stellen. Be<strong>im</strong> nächsten Update<br />

gelangen so alle Aktualisierungen<br />

auf das Inselsystem.<br />

Alternativ ließen sich<br />

auch hier alle auf einem<br />

identischen System<br />

gecachten Updates<br />

aus »/var/lib/rpm«<br />

auf einen Datenträger<br />

kopieren und später<br />

mit Rpm oder Zypper<br />

installieren. Ähnliches<br />

gilt für Fedora oder<br />

Cent OS.<br />

Red Hat<br />

Bei Red Hat sorgt der<br />

Network Satellite Server<br />

für Aktualisierungen,<br />

doch auch ohne<br />

ihn gelingen Offline-<br />

Updates. Allerdings braucht der Admin<br />

Zugriff auf einen Satelliten, denn sonst<br />

gibt es keine <strong>Paket</strong>e – die Updates machen<br />

schließlich einen wesentlichen Bestandteil<br />

von Red Hats Geschäftsmodell<br />

aus – und eine RHEL-Installation mit der<br />

gleichen Versionsnummer.<br />

Dann helfen Tools wie der Yumdownloader:<br />

»yum install yum‐downloadonly<br />

createrepo« installiert das Werkzeug, ein<br />

anschließendes »yum clean all« räumt die<br />

lokale <strong>Paket</strong>landschaft auf. Die Anleitung<br />

aus dem Knowledge-Center [3] erläutert<br />

alle Details, die wesentliche Arbeit erledigen<br />

drei Befehle:<br />

yumdownloader ‐‐resolve `rpm ‐qa` ‐‐destdirU<br />

/tmp/rpm_updates<br />

yum update ‐‐downloadonly ‐‐downloaddirU<br />

/tmp/rpm_updates<br />

createrepo /tmp/rpm_updates<br />

Sie erzeugen das lokale Repository mit<br />

den Updates, die sich dann unter »/tmp/<br />

rpm_updates« finden und von dort per<br />

Stick, DVD oder lokales Netz auf die Offline-Maschine<br />

übertragen lassen.<br />

Jetzt noch die Dateien für die Repositories<br />

anpassen (Listing 1) – und schon steht einem<br />

»yum upgrade« auf dem Inselsystem<br />

nichts mehr <strong>im</strong> Wege. <br />

n<br />

Infos<br />

[1] Aptoncd: [http:// aptoncd. sourceforge. net]<br />

[2] Suse Update Repos: [http:// download.​<br />

opensuse. org/ update/]<br />

[3] Mit Red Hat eine Update-DVD bauen:<br />

[https:// access. redhat. com/ knowledge/​<br />

solutions/ 45956]<br />

JETZT<br />

ANMELDEN:<br />

www.heinlein-akademie.de<br />

AHA-EFFEKT<br />

GESUCHT?<br />

Schulungen für <strong>Linux</strong>-Admins,<br />

die durchblicken wollen.<br />

Fachlich und didaktisch kompetente<br />

Dozenten, spannende Schulungsthemen,<br />

eine lockere Atmosphäre <strong>im</strong> Kurs<br />

und angenehme Unterrichtsräume – all<br />

das erwartet Sie bei uns in Berlin an der<br />

Heinlein Akademie.<br />

Die nächsten Kurse:<br />

ab 11.03.<br />

HA-Virtualisierungscluster mit KVM<br />

ab 13.03.<br />

SpamAssassin und AMaViS<br />

ab 18.03.<br />

<strong>Linux</strong> Admin Grundlagen<br />

ab 18.03.<br />

MySQL für Profis<br />

ab 18.03.<br />

Sicherheit für <strong>Linux</strong> Server<br />

Besuchen Sie uns!<br />

Open Source Park, Halle 6<br />

5. – 9. März 2013<br />

Update-DVD 03/2013<br />

Titelthema<br />

www.linux-magazin.de<br />

37<br />

<strong>Linux</strong> höchstpersönlich.


DAS GRÖSSTE HOSTING- UND CLOUD-EVENT DER WELT – JETZT ANMELDEN!<br />

19. – 21. MÄRZ 2013, EUROPA-PARK RUST<br />

INFO & ANMELDUNG: WWW.WORLDHOSTINGDAYS.COM<br />

KOSTENLOSE ANMELDUNG<br />

EXKLUSIV FÜR<br />

LINUX MAGAZIN LESER!<br />

CODE: M6S4JF47<br />

main.FORUM Sprecher<br />

OnApp<br />

Ditlev Bredahl<br />

CEO<br />

Parallels<br />

Birger Steen<br />

CEO<br />

CA Technologies<br />

Nicholas Ellis<br />

Sr. VP Global <strong>Service</strong><br />

Providers<br />

Samsung<br />

Peyman Blumstengel<br />

Sr. Manager of<br />

Business Development<br />

Trendmicro<br />

Ra<strong>im</strong>und Genes<br />

CTO


In eigener Sache: DELUG-DVD<br />

Samba, Kolab, 29C3, Mini-Server<br />

Einführung 03/2013 12/2010<br />

Software<br />

Auch diesen Monat bekommen DELUG-Käufer wieder eine randvolle DVD mit exklusiven Inhalten: Sie bootet<br />

den brandneuen Samba-4-Server von Sernet, dazu gibt es eine virtuelle Maschine mit der Kolab-Groupware 3,<br />

jede Menge CCC-Videos und als E-Book kostenlos „High Performance MySQL“ von O’Reilly. Markus Feilner<br />

www.linux-magazin.de<br />

39<br />

Inhalt<br />

40 Bitparade<br />

Welche Tools wirklich zum Erstellen von<br />

USB-Bootmedien taugen.<br />

48 Kolab 3<br />

Runderneuert präsentiert sich die freie<br />

Groupware: Roundcube als Mailer, Syncroton<br />

fürs Smartphone und ein gefälliges<br />

Admin-GUI.<br />

56 Tooltipps<br />

Boxes 1.1.1, Ht 2.0, Likwid 3.0, Linkchecker<br />

8.3, Mkproject 0.4.6 und V<strong>im</strong>pal<br />

1.2 <strong>im</strong> Kurztest.<br />

Neben dem normalen <strong>Linux</strong>-<strong>Magazin</strong><br />

ohne Datenträger gibt es die DELUG-<br />

Ausgabe mit Monats-DVD, bei der die<br />

Redaktion den Datenträger nach einem<br />

speziellen Konzept zusammenstellt: In<br />

einer Art modularem System enthält<br />

er Programme und Tools, die in der jeweiligen<br />

<strong>Magazin</strong>-Ausgabe getestet und<br />

besprochen werden. Zudem führt eine<br />

HTML-Oberfläche durch von der Redak-<br />

Abbildung 2: Kostenlos als E-Book für DELUG-Leser:<br />

„High Performance MySQL“ von O’Reilly.<br />

tion besonders empfohlene Software wie<br />

etwa Samba 4 und Kolab 3.<br />

Samba 4<br />

Es hat Jahre gedauert, doch kurz vor Redaktionsschluss<br />

hat das Samba-Team die<br />

vierte Version des SMB-Servers Samba<br />

freigegeben. Die Spezialisten von Sernet<br />

haben für die DELUG-DVD eine Samba-4-<br />

Appliance erstellt, die direkt vom Silberling<br />

bootet und auf einem 32-Bit-Debian<br />

Squeeze basiert. Ein Installer unterstützt<br />

den Anwender be<strong>im</strong> Einrichten der Software<br />

als Domänen-Controller (DC) einer<br />

Active-Directory-Domain.<br />

Windows-Clients lassen sich mit Hilfe<br />

der Group Policies und der Windows-<br />

Remote-Server-Administrationstools verwalten.<br />

Als Groupware bietet sich Zarafa<br />

an, durch deren Installation samt passender<br />

AD-Schema-Extensions die Software<br />

führt. Die Appliance liegt auch als ISO<br />

auf der DVD<br />

Chaos-Videos, SQL-E-Book<br />

Wer mit dem Browser auf die DVD zugreift,<br />

findet <strong>im</strong> HTML-Menü diverse<br />

exklusive Inhalte, zum Beispiel mehrere<br />

Stunden Videomaterial aus den besten<br />

Vorträgen vom Chaos Communication<br />

Congress 2012 des Chaos Computer<br />

Clubs, dem 29C3 (Abbildung 1). Die<br />

Hacker-Philosophie, Netzpolitik, Medien<br />

und unsere Wahrnehmung, Cyberspace<br />

und Cyberwar, der Bundestrojaner, aber<br />

auch Open Source und Kryptographie<br />

standen auf der Tagesordnung.<br />

O’Reillys „High Performance MySQL“<br />

(Abbildung 2) vom Autorenteam<br />

Schwartz, Zaitsev, Tkachenko, Zawodny,<br />

Lentz und Balling ist das wohl beste<br />

Handbuch, um schnelle und verlässli-<br />

Abbildung 1: Auf der DVD: Die besten Vorträge vom<br />

Chaos Communication Congress als Video.<br />

che MySQL-Systeme aufzusetzen. Die<br />

Autoren sind anerkannte Experten mit<br />

langjähriger Erfahrung auf großen Systemen<br />

und kennen alle Stellschrauben,<br />

an denen Admins drehen können, um<br />

Sicherheit, Performance, Datenintegrität<br />

und Robustheit zu erhöhen. Das Buch<br />

kostet sonst 40 Euro, DELUG-Leser bekommen<br />

es als E-Book einfach so.<br />

Kolab 3 und viel Software<br />

Als virtuelle Appliance auf der DVD überzeugt<br />

die Groupware-Suite Kolab in Version<br />

3. Passend zum Artikel in diesem<br />

<strong>Linux</strong>-<strong>Magazin</strong> können Admins mit der<br />

VM ohne Installation die neuen Features<br />

wie den Webmailer Roundcube, den<br />

Active-Sync-Server Syncroton oder das<br />

Administrationsinterface testen.<br />

Damit nicht genug, auf der DVD findet<br />

sich noch jede Menge Software: Von den<br />

Tooltipps über die Bitparade mit den USB-<br />

Creator-Tools reicht die Palette bis zu<br />

Charlys Sendmail Analyzer, Open Attic,<br />

Owncloud, Kajona, S<strong>im</strong>on und – nicht<br />

zuletzt – einem kompletten <strong>Linux</strong>-Server<br />

mit FTP, HTTP, SFTP, SSH, Telnet, einem<br />

Tor-Proxy, Firewall und Clam AV in 30<br />

MByte: The Smallest Server Suite. n


Software<br />

www.linux-magazin.de Bitparade 03/2013<br />

40<br />

Fünf Tools für bootfähige USB-Sticks<br />

Windige Starthilfe<br />

Zahlreiche Spezialwerkzeuge verfrachten <strong>Linux</strong>-Distributionen auf USB-Installationsmedien. Einige davon verwalten<br />

sogar mehrere Systeme und persistente Images als Datenspeicher auf dem Medium. Diese Bitparade<br />

stellt fünf Tools vor – richtig gut ist nur eines. T<strong>im</strong> Schürmann<br />

Die meisten bevorzugen FAT32 oder eine<br />

Ext-Variante; NTFS funktioniert in keinem<br />

Fall. Entscheidet sich der Anwender<br />

für FAT32, sollte er die 4-GByte-Grenze<br />

selbst <strong>im</strong> Auge behalten, denn außer dem<br />

Startmedienersteller von Ubuntu weist<br />

keine Anwendung darauf hin.<br />

Die Bitparade schaut ebenfalls nach dem<br />

Benutzerinterface, dem eingesetzten<br />

Bootmanager und <strong>Test</strong>möglichkeiten für<br />

fertige Sticks. Dazu gehört die Überprüfung<br />

der Checksumme eines Image genauso<br />

wie eine Funktion <strong>im</strong> Programm,<br />

die ein USB-Medium unkompliziert in<br />

einer virtuellen Maschine bootet. Tabelle<br />

1 fasst alle Ergebnisse noch einmal übersichtlich<br />

zusammen.<br />

© Benicce, Fotolia<br />

DVD- und CD-Laufwerke gehören zu<br />

einer langsam aussterbenden Spezies.<br />

Insbesondere mobile Geräte füttern Anwender<br />

meist nur noch über USB-Buchsen.<br />

Um <strong>Linux</strong> auf solche Computer zu<br />

bringen, muss folglich ein passend präparierter<br />

USB-Stick her. Der hat auch noch<br />

den Vorteil, dass er als Livesystem bootet,<br />

so ist <strong>im</strong> Notfall ein Rettungsmedium<br />

stets griffbereit. Den Transfer auf den<br />

Stick übernehmen darauf spezialisierte<br />

Werkzeuge, die sich hinsichtlich Funktionsumfang<br />

und Bedienung deutlich voneinander<br />

unterscheiden.<br />

Im <strong>Test</strong> treten der Fedora Live USB Creator<br />

[1], Multisystem [2], der Ubuntu<br />

Startmedienersteller [3], Unetbootin [4]<br />

und USB Image Writer [5] zum Vergleich<br />

an. Alle Tools kopieren eine CD, DVD<br />

oder ein ISO-Image auf den USB-Stick<br />

und machen diesen bootfähig. Einige löschen<br />

den Stick dazu komplett, andere<br />

nutzen auch vorhandene Partitionen.<br />

Als einziger Kandidat versammelt Multisystem<br />

mehrere Distributionen auf dem<br />

USB-Medium und produziert Multiboot-<br />

Sticks – ein Feature, das theoretisch auch<br />

das Programm Multiboot USB bereitstellt<br />

(siehe Kasten „Getestet und für schlecht<br />

befunden“).<br />

Da ein vom Stick gestartetes Livesystem<br />

vollständig <strong>im</strong> Hauptspeicher läuft,<br />

gehen be<strong>im</strong> Beenden zwangsläufig alle<br />

nachinstallierten Programme, persönliche<br />

Einstellungen und Dokumente verloren.<br />

Bis auf den USB Image Writer verwalten<br />

daher alle getesteten Programme einen<br />

persistenten Bereich, der solche Daten<br />

aufn<strong>im</strong>mt. Die Größe darf der Benutzer<br />

selbst best<strong>im</strong>men, muss aber darauf<br />

achten, dass der Stick ein Dateisystem<br />

enthält, das zum jeweiligen Tool passt.<br />

E Fedora Live USB Creator<br />

Fedora enthält ein auf die Distribution<br />

zugeschnittenes Tool namens Live USB<br />

Creator, das reine Fedora-Varianten inklusive<br />

der Lernumgebung Sugar on a Stick<br />

[6] auf das USB-Medium bringt. Eine<br />

Windows-Version ist auf der Projektseite<br />

<strong>im</strong> Angebot [1]. Unter <strong>Linux</strong> installieren<br />

Anwender das <strong>Paket</strong> »liveusb‐creator«<br />

aus den Repositories. Das Programm erfordert<br />

Rootrechte, die es be<strong>im</strong> Start über<br />

das Menü selbstständig anfordert.<br />

Wer keine grafische Arbeitsumgebung<br />

zur Verfügung hat, der setzt den Live<br />

USB Creator auf der Shell zusammen<br />

mit »sudo« ein. Hinter der Option »‐c«<br />

Bootfähige USB-Sticks<br />

Auf der Delug-DVD dieses <strong>Magazin</strong>s<br />

befinden sich die in diesem Artikel<br />

DELUG-DVD<br />

getesteten Programme Fedora Live USB<br />

Creator, Multisystem, der Ubuntu Startmedienersteller,<br />

Unetbootin sowie USB Image<br />

Writer.


Abbildung 1: Der übersichtliche Fedora Live USB<br />

Creator kommt nur mit Fedora-Images zurecht.<br />

geben Anwender alle Einstellungen als<br />

Aufrufparameter an; Näheres verrät<br />

»liveusb‐creator ‐‐help«.<br />

Das GUI ist nahezu selbsterklärend (siehe<br />

Abbildung 1): Unter »Target Device« wählen<br />

Benutzer die Gerätedatei des USB-<br />

Mediums aus, entscheiden sich dann für<br />

eine Fedora-Variante zum Download oder<br />

über »Browse« für ein vorhandenes ISO<br />

auf der Festplatte (etwas unglücklich betitelt<br />

mit »Use existing Live CD«). Mehrere<br />

Systeme nebeneinander sind nicht<br />

möglich. Als Bootmanager kommt Syslinux/​Isolinux<br />

zum Einsatz.<br />

Über einen Schieberegler definieren<br />

Anwender die Größe einer persistenten<br />

Datei, die persönliche Einstellungen<br />

und Daten der Benutzer aufn<strong>im</strong>mt. Der<br />

Stick muss dazu ein FAT32-, Ext-2/​3/​<br />

4-Dateisystem enthalten. Auf die Größenbeschränkung<br />

von 4 GByte bei FAT32<br />

achten Anwender allerdings am besten<br />

selbst; das Werkzeug bietet hierfür keinerlei<br />

Unterstützung und bricht be<strong>im</strong><br />

Überschreiten der Grenze später mit einer<br />

Fehlermeldung ab.<br />

Es ist nicht möglich, Images nachzubearbeiten.<br />

Dafür behandelt der Live USB<br />

Creator angestöpselte Medien mit Vorsicht<br />

und erlaubt die Installation, ohne<br />

den Stick vorher zu formatieren. Das<br />

Fedora-Werkzeug überprüft heruntergeladene<br />

oder lokale ISO-Images mit einem<br />

Checksummen-Vergleich auf Fehler hin.<br />

Einen fertigen Stick testen Anwender in<br />

Qemu, bevor sie ihn auf echte Hardware<br />

loslassen oder den Rechner neu starten.<br />

Eine Schaltfläche in der Anwendung gibt<br />

es dafür nicht; Benutzer rufen Qemu<br />

dazu von Hand auf.<br />

E Multisystem<br />

Wer den zweiten <strong>Test</strong>kandidaten herunterladen<br />

möchte, der muss sich zunächst<br />

durch rein französischsprachige Internetseiten<br />

klicken. Multisystem [2] selbst<br />

spricht später glücklicherweise Deutsch.<br />

Fertige <strong>Paket</strong>e stehen nur für Ubuntu und<br />

Debian bereit. Eine französische Installationsanleitung<br />

finden Anwender unter<br />

[7]. Der Quellcode lagert auf Sourceforge<br />

[8]. Dort erhalten Nutzer auch ein Livesystem,<br />

das zwar direkt Multisystem startet,<br />

aber noch auf der veralteten Ubuntu-<br />

Version 11.04 basiert.<br />

Nach dem Programmstart wählen Anwender<br />

zunächst die Sprache, eine Farbe<br />

für die Benutzeroberfläche (»Theme«)<br />

und den zu befüllenden USB-Stick aus<br />

(siehe Abbildung 2). Anschließend fordert<br />

Multisystem das Rootpasswort an.<br />

Benutzer definieren nun optional einen<br />

Namen für den USB-Stick und installieren<br />

dort den Bootmanager Grub 2. Multisystem<br />

bringt auf Wunsch mehrere Distributionen<br />

unter. Die in [9] veröffentlichte<br />

Liste ist erfreulich umfangreich.<br />

Multisystem arbeitet ausschließlich mit<br />

ISO-Images zusammen. Diese wählen<br />

Anwender per Klick auf den großen grünen<br />

Knopf aus oder fügen sie per Drag<br />

& Drop zum Hauptfenster hinzu (siehe<br />

Abbildung 3). Die Auswahl per Maus ist<br />

fummelig: Im Datei-Auswahldialog dürfen<br />

Nutzer nicht einfach die Datei markieren<br />

und auf »Erstelle« klicken. Stattdessen<br />

doppelklicken sie das ISO und<br />

fügen es so einer Liste am linken Rand<br />

hinzu. Erst danach schiebt Multisystem<br />

über »Erstelle« ein Image nach dem anderen<br />

auf das USB-Medium.<br />

Im Hauptfenster legen Anwender bis zu<br />

zwei persistente Dateien an, eine für das<br />

komplette System und eine weitere, in der<br />

nur die persönlichen Daten landen, also<br />

das Homeverzeichnis. Dies verschlüsselt<br />

Multisystem sogar auf Wunsch – das<br />

gefällt gut. Weniger gut gelöst ist, dass<br />

Statusmeldungen in einem eigenen Textfenster<br />

erscheinen, dessen Meldungen<br />

man allzu leicht übersieht. Dort stellt das<br />

Abbildung 2: Be<strong>im</strong> ersten Start richten Anwender<br />

Multisystem ein. Die bunten Kugeln definieren die<br />

Farbgebung der Benutzeroberfläche.<br />

Bitparade 03/2013<br />

Software<br />

www.linux-magazin.de<br />

41<br />

Getestet und für schlecht befunden<br />

Die <strong>Test</strong>er schauten sich für den Artikel auch<br />

die beiden Programme Multiboot USB [10] und<br />

den Suse Studio Imagewriter [11] an. Ersteres<br />

verspricht, gleich mehrere Distributionen auf<br />

einem Stick zu versammeln und die fertige Installation<br />

per Knopfdruck in Qemu zu testen. Die<br />

Homepage bietet <strong>Paket</strong>e für Archlinux, Fedora,<br />

Mandriva, Mageia, Open Suse, Debian, Ubuntu,<br />

Slackware und Windows-Systeme an. Wer die<br />

Anwendung selbst bauen möchte, der sollte<br />

auch den Gambas-Interpreter [12] in Version<br />

3 installieren, denn Multiboot USB ist ungewöhnlicherweise<br />

in Basic programmiert.<br />

Auf dem Suse-Rechner (Open Suse 12.2) fanden<br />

die <strong>Test</strong>er keine Gambas-<strong>Paket</strong>e <strong>im</strong> Repository.<br />

Zwar ist es möglich, Gambas 3 selbst zu kompilieren,<br />

dem Programm Multiboot USB hilft dies<br />

jedoch nicht. Es verweigerte mit der Meldung<br />

»gbr3: no project file in './multibootusb.gambas'«<br />

den Start. Der gleiche Fehler tauchte unter<br />

Fedora 18 auf. Dort fordert das Multiboot-USB-<br />

<strong>Paket</strong> zusätzlich ein <strong>Paket</strong> namens »mount«<br />

als Abhängigkeit, das aber nicht existiert. Ein<br />

letzter Versuch unter Ubuntu scheiterte ebenfalls.<br />

Ein Blick in die Foren und Mailinglisten<br />

zeigt, dass offenbar viele Benutzer derartige<br />

Probleme mit der Software haben, weshalb der<br />

Einsatz nicht zu empfehlen ist.<br />

Auch der Suse Studio Imagewriter scheiterte<br />

und stürzte auf den <strong>Test</strong>rechnern <strong>im</strong>mer wieder<br />

mit einem Speicherzugriffsfehler ab. Zu finden<br />

ist das Tool <strong>im</strong> <strong>Paket</strong> »usb‐<strong>im</strong>agewriter«. Laut<br />

Dokumentation kann es eine einzige ISO-Datei<br />

auf einen Stick schieben. Bei dieser muss es<br />

sich zudem um ein Hybrid-Image handeln. Nach<br />

dem Kopiervorgang zeigt das USB-Medium zwar<br />

eine Partition, in die exakt die Inhalte des ISO-<br />

Image passen; der restliche Platz bleibt jedoch<br />

unpartitioniert.


Software<br />

www.linux-magazin.de Bitparade 03/2013<br />

42<br />

Abbildung 3: Multisystem-Anwender dürfen ISO-<br />

Images per Drag & Drop ins Hauptfenster ziehen.<br />

Werkzeug auch Rückfragen, zum Beispiel<br />

die nach dem Rootpasswort.<br />

Multifunktional<br />

Es ist zwar nicht möglich, die Images<br />

nachträglich zu bearbeiten, dafür bietet<br />

Multisystem aber viele andere Konfigurationsmöglichkeiten.<br />

Nachdem die ISO-<br />

Images für den Stick ausgesucht sind<br />

(die <strong>Test</strong>er mussten an dieser Stelle das<br />

Programm beenden, das USB-Medium<br />

ab- und wieder anstecken und Multisystem<br />

neu starten), dürfen Anwender die<br />

Systeme umsortieren. Diese Änderungen<br />

spiegeln sich später auch <strong>im</strong> Bootmenü<br />

des Sticks wider.<br />

Außerdem können Nutzer an (fast) allen<br />

Einstellungen von Grub 2 schrauben.<br />

Ein eigenes Hintergrundbild ist ebenso<br />

schnell eingerichtet wie eine neue Farbgebung<br />

oder besondere Bootoptionen –<br />

vorausgesetzt man versteht die Bedeutung<br />

der Schaltflächen.<br />

Multisystem hält noch viele weitere nützliche<br />

Features bereit. So dürfen Benutzer<br />

nachträglich eine persistente Datei<br />

hinzufügen, bei vorhandenen die Größe<br />

ändern, Distributionen wieder vom Stick<br />

werfen oder diesen kurzerhand komplett<br />

formatieren. Auf Wunsch lädt Multisystem<br />

die ISO-Images aus dem Internet herunter;<br />

eine Überprüfung mittels Checksumme<br />

findet aber nicht statt.<br />

Über die beiden Knöpfe am linken Rand<br />

testen Anwender direkt in einer virtuellen<br />

Maschine. Zur Auswahl stehen<br />

Virtualbox und Qemu. Das Bootmenü des<br />

fertigen Sticks bietet neben dem Start der<br />

Distributionen weitere nützliche Funk-<br />

tionen an. Hier überprüft »memtest86«<br />

den Hauptspeicher, und »lspci« listet die<br />

Erweiterungskarten auf.<br />

Bonuspunkte gibt’s dafür, dass Multisystem<br />

vom kompletten USB-Medium<br />

ein Backup erstellen und dieses später<br />

wiederherstellen kann. Auf diese Weise<br />

produziert das Tool gegebenenfalls auch<br />

schnell mehrere identische USB-Sticks.<br />

E Ubuntu Startmedienersteller<br />

Der von Canonical eigens für Ubuntu<br />

entwickelte Startmedienersteller [3] steht<br />

genau wie der erste Kandidat nur für die<br />

eigene Distribution bereit. Das Werkzeug<br />

ist von Haus aus dabei und verlangte <strong>im</strong><br />

<strong>Test</strong> keine Rootrechte, auch wenn die Dokumentation<br />

anderes behauptet. Es bringt<br />

sowohl CDs/​DVDs als auch ISO-Images<br />

auf den Stick. In der grafischen Oberfläche<br />

wählen Anwender in der oberen Liste<br />

eines der gefundenen optischen Medien<br />

aus oder binden – verwirrenderweise über<br />

einen Klick auf »Weitere« – eine ISO-Datei<br />

ein. In der unteren Fensterhälfte listet das<br />

Tool alle eingestöpselten USB-Sticks auf<br />

(siehe Abbildung 4).<br />

Andere Distributionen als Ubuntu und<br />

dessen Derivate schreibt der Startmedienersteller<br />

nicht auf die USB-Medien. Mehr<br />

als eine ist darüber hinaus ebenfalls nicht<br />

drin, sodass keine Multi boot-Sticks möglich<br />

sind. Als Bootloader kommt Syslinux<br />

zum Einsatz.<br />

Das Programm erzeugt ebenso wie die<br />

ersten beiden <strong>Test</strong>kandidaten eine persistente<br />

Datei, hier reservierter Extrabereich<br />

genannt. Die Größe legen Nutzer über<br />

den Schieberegler fest. Da der Startmedienersteller<br />

ausschließlich USB-Sticks<br />

mit einem FAT32-Dateisystem bespielt,<br />

bietet der Regler von sich aus nicht mehr<br />

als 4 GByte an. Enthält das Medium ein<br />

anderes Dateisystem, kann das Ubuntu-<br />

Tool es per Knopfdruck entsprechend<br />

formatieren.<br />

Damit ist der Funktionsumfang des Startmedienerstellers<br />

allerdings auch schon<br />

erschöpft. Er bearbeitet Images nicht<br />

nachträglich, verifiziert sie nicht über<br />

eine Checksumme und hält auch keine<br />

Schaltflächen für Vorabtests in virtuellen<br />

Umgebungen bereit. Im <strong>Test</strong> unter Ubuntu<br />

12.10 stürzte das Werkzeug <strong>im</strong>mer mal<br />

wieder während des Schreibvorgangs aus<br />

unbekannten Gründen ab, lieferte jedoch<br />

auch brauchbare Ergebnisse.<br />

E Unetbootin<br />

Abbildung 4: Der Ubuntu Startmedienersteller ist, wie nicht anders zu<br />

erwarten, auf Ubuntu-Distributionen spezialisiert.<br />

In den Repositories einiger großer Distributionen<br />

lagert Unetbootin [4]. Fertige<br />

<strong>Paket</strong>e sowie Windows- und OS-X-Versionen<br />

gibt es ebenfalls auf der Webseite.<br />

Das Tool zeigt einen ähnlichen Leistungsumfang<br />

wie Ubuntus Startmedienersteller,<br />

unterstützt aber einige weitere<br />

Distributionen, wie die Liste auf der Projekthomepage<br />

verrät.<br />

Bereits gebrannte Medien ignoriert es,<br />

dafür übern<strong>im</strong>mt es auf Wunsch den<br />

Download der ISO-Images. Im Angebot<br />

sind allerdings kaum neue Versionen:<br />

<strong>Linux</strong> Mint gibt es beispielsweise nur bis<br />

Version 10, während zum Redaktionsschluss<br />

Version 14 aktuell war. Auch<br />

Ubuntu unterstützte<br />

die getestete Unetbootin-Version<br />

(575 unter<br />

12.10) nur bis 12.04.<br />

Die neuere Version<br />

583 von der Homepage<br />

kam auch nur bis<br />

<strong>Linux</strong> Mint 10.<br />

Das grafische Programm<br />

erfordert Rootrechte<br />

und schreibt<br />

nur Medien mit einer<br />

einzigen Distribution.<br />

Syslinux kommt als<br />

Bootloader zum Einsatz.<br />

Das erzeugte<br />

Bootmenü bietet zusätzliche<br />

Hilfswerk-


zeuge, etwa einen Hauptspeichertest.<br />

Den zu beschreibenden Stick sollten<br />

Anwender mit FAT32 formatieren und<br />

ihn vor dem Programmstart anstöpseln.<br />

Das Hauptfenster gibt sich aufgeräumt<br />

und übersichtlich (siehe Abbildung 5).<br />

Anwender wählen zunächst die Distribution<br />

aus, dann die Gerätedatei des<br />

Abbildung 5: Unetbootin bietet einen ähnlichen Funktionsumfang wie Ubuntus<br />

Startmedienersteller und zeigt sich ebenso aufgeräumt.<br />

USB-Mediums und definieren optional<br />

die Größe für eine persistente Datei. Wer<br />

dieser mehr als 4 GByte zuweist, erhält<br />

<strong>im</strong> Vorfeld keine Warnung, sondern erst<br />

während des Schreibvorgangs eine Fehlermeldung.<br />

Auch dieser Kandidat hält keine Möglichkeit<br />

bereit, Images nachträglich zu bearbeiten.<br />

Auf den Checksummen-<strong>Test</strong><br />

der ISO-<br />

Dateien müssen die<br />

Anwender bei ihm<br />

ebenso verzichten wie<br />

auf Schaltflächen, die<br />

einen Stick in einer<br />

virtuellen Umgebung<br />

booten.<br />

E USB Image<br />

Writer<br />

Das über Launchpad<br />

verfügbare Tool USB<br />

Image Writer [5]<br />

verrichtet seinen Dienst unter Ubuntu<br />

und <strong>Linux</strong> Mint. Während letztgenannte<br />

Distribution es von Haus aus mitbringt,<br />

rüsten Ubuntu-Anwender es über den<br />

<strong>Paket</strong>manager nach. Unter <strong>Linux</strong> Mint<br />

heißt das Python-Skript »mintstick«, unter<br />

Ubuntu hingegen »<strong>im</strong>agewriter«. Das<br />

grafische Programm benötigt Rootrechte.<br />

Es schreibt lediglich eine einzige Distribution<br />

auf den Stick, kann auch nicht<br />

mit CDs und DVDs umgehen, sondern<br />

verlangt eine Imagedatei.<br />

Im Hintergrund kopiert der USB Image<br />

Writer einfach byteweise das Abbild auf<br />

das gewählte USB-Medium (siehe Abbildung<br />

6). Das gewählte Image muss<br />

folglich entweder ein hybrides oder ein<br />

extra für USB-Sticks vorbereitetes Abbild<br />

(meist mit der Endung ».<strong>im</strong>g«) sein. Außerdem<br />

muss das Gerät schon vor dem<br />

Start an einem USB-Port stecken.<br />

Das Programm n<strong>im</strong>mt den gesamten<br />

Stick in Beschlag. Der hat nach der Behandlung<br />

nur noch eine Partition, die<br />

Bitparade 03/2013<br />

Software<br />

www.linux-magazin.de<br />

43<br />

8,90€ *<br />

124 Seiten <strong>Linux</strong><br />

+ DVD<br />

Die aktuelle Ausgabe von<br />

<strong>Linux</strong>User Spezial dringt in die<br />

Tiefen des <strong>Linux</strong>-Systems ein und<br />

zeigt, wie Sie Ihren Rechner auf<br />

der Kommandozeile administrieren.<br />

Jetzt bestellen<br />

unter: www.linuxuser.de/spezial<br />

Tel.: 089-9934110, Fax: 089-99341199, E-Mail: order@linuxuser.de


Software<br />

www.linux-magazin.de Bitparade 03/2013<br />

44<br />

Abbildung 6: Der USB Image Writer ist eigentlich nichts weiter als eine<br />

grafische Benutzeroberfläche für »dd«.<br />

exakt so groß ist wie das geschriebene<br />

Image. Platz für eine persistente Datei<br />

zweigt es nicht ab. Eine Überprüfung per<br />

Checksumme und eine <strong>Test</strong>funktion für<br />

virtuelle Maschinen fehlen ebenfalls.<br />

Antriebsschwierigkeiten?<br />

Zwar erstellen die meisten Tools mit<br />

wenigen Klicks einen bootfähigen USB-<br />

Stick, ihr Funktionsumfang ist insgesamt<br />

allerdings erschreckend dürftig. Nicht<br />

ohne Grund raten einige Distributoren<br />

sogar dazu, auf entsprechende Windows-<br />

Werkzeuge auszuweichen, die oft viel<br />

mehr können.<br />

Bis auf den Live USB Creator von Fedora<br />

prüft keines der hier vorgestellten <strong>Linux</strong>-<br />

Tools die Imagedateien mit Checksum-<br />

men auf Unversehrtheit,<br />

kein einziges<br />

Werkzeug kann die<br />

ISO-Dateien auf irgendeine<br />

Weise nachträglich<br />

verändern.<br />

Der USB Image Writer<br />

schiebt einfach nur<br />

ein Hybrid-ISO-Image<br />

auf den Stick. Da »dd«<br />

das Gleiche leistet, ist<br />

das grafische Benutzerinterface<br />

eigentlich<br />

überflüssig. Als Gesamtnote<br />

vergeben die <strong>Test</strong>er daher nur<br />

„mangelhaft“ (Tabelle 1).<br />

Unetbootin, Fedora Live USB Creator und<br />

Ubuntu Startmedienersteller verarbeiten<br />

zwar nur best<strong>im</strong>mte Distributionen, legen<br />

dafür auf Wunsch aber eine persistente<br />

Datei an. Die Werkzeuge empfehlen sich<br />

folglich für alle, die ihre Dokumente mitnehmen<br />

und unterwegs bearbeiten müssen.<br />

Den Startmedienersteller und den<br />

Live USB Creator benoten die <strong>Test</strong>er mit<br />

„ausreichend“, weil sie nur die eigenen<br />

Distributionen berücksichtigen. Unet bootin<br />

erhält die Note „befriedigend“, weil es<br />

mehrere Systeme unterbringt.<br />

Den größten Funktionsumfang bietet Multisystem,<br />

das mit der Gesamtnote „gut“<br />

abschließt. Es ist der einzige Kandidat,<br />

der Multiboot-Sticks anfertigt, mehrere<br />

Distributionen auf dem Medium unterbringt<br />

und Knöpfe für den <strong>Test</strong> in virtuellen<br />

Umgebungen mitbringt. Abzüge<br />

gibt es lediglich in der B-Note wegen der<br />

überladenen und teilweise unübersichtlichen<br />

Benutzeroberfläche. (hej) n<br />

Infos<br />

[1] Fedora Live USB Creator: [https://​<br />

fedorahosted. org/ liveusb‐creator]<br />

[2] Multisystem: [http:// liveusb. info/ dotclear]<br />

[3] Ubuntu Startmedienersteller:<br />

[https:// help. ubuntu. com/ community/​<br />

Installation/ FromUSBStick]<br />

[4] Unetbootin:<br />

[http:// unetbootin. sourceforge. net]<br />

[5] USB Image Writer:<br />

[https:// launchpad. net/ usb‐<strong>im</strong>agewriter]<br />

[6] Sugar on a Stick: [http:// wiki. sugarlabs.​<br />

org/ go/ Sugar_on_a_Stick]<br />

[7] Multisystem-Installation: [http:// liveusb.​<br />

info/ dotclear/ index. php? pages/ install]<br />

[8] Multisystem-Quellen: [http:// sourceforge.​<br />

net/ projects/ multisystem]<br />

[9] Distributionsliste für Multisystem: [http://​<br />

liveusb. info/ dotclear/ index. php? pages/ os]<br />

[10] Multiboot USB:<br />

[http:// multibootusb. sourceforge. net]<br />

[11] Suse Studio Imagewriter: [http:// en.​<br />

opensuse. org/ SDB:Live_USB_stick]<br />

[12] Gambas-Interpreter:<br />

[http:// gambas. sourceforge. net]<br />

Tabelle 1: Tools und Funktionen <strong>im</strong> Überblick<br />

Name<br />

Fedora Live USB<br />

Creator<br />

Multisystem Ubuntu Startmedienersteller<br />

Unetbootin USB Image<br />

Writer<br />

Multiboot USB Suse Studio<br />

Imagewriter<br />

Getestete<br />

3.11.7-2.fc18 2012-05-02 usb.creator-gtk- 575 und 583 1.0.3 (Mint), 6.0 1.9-7.5.1<br />

Version<br />

0.2.40ubuntu1<br />

0.1.3 (Ubuntu)<br />

Distributionen Fedora viele<br />

Ubuntu und viele verschiedene<br />

beliebige viele<br />

beliebige<br />

verschiedene Derivate<br />

verschiedene<br />

Rootrechte nötig ja ja nein ja ja ja ja<br />

GUI/​Kommandozeile ja/​ja ja/​nein ja/​nein ja/​nein ja/​nein ja/​nein ja/​ja<br />

Mehrere Systeme nein ja nein nein nein ja nein<br />

(Multiboot)<br />

Kopiert CDs/​DVDs nein nein ja nein nein nein nein<br />

Kopiert ISO-Dateien ja ja ja ja ja ja ja<br />

Bootmanager Syslinux/​Isolinux Grub 2 Syslinux Syslinux keiner Grub 2 keiner<br />

Persistente Datei ja ja ja ja nein nein nein<br />

Images nachbearbeiten nein nein nein nein nein nein nein<br />

Löscht automatisch nein nein nein nein ja nein ja<br />

kompletten Stick<br />

Vorabtest auf defekte ja (ja) nein (nein) nein (nein) nein (nein) nein (nein) nein (nein) nein (nein)<br />

Images (Checksummen-<br />

Vergleich)<br />

Stick aus Anwendung nein<br />

ja (Qemu und nein nein nein ja (Qemu) nein<br />

heraus in VM testen<br />

Virtualbox)<br />

Gesamtnote ausreichend gut ausreichend befriedigend mangelhaft ungenügend ungenügend


Software<br />

www.linux-magazin.de Kolab 3 03/2013<br />

48<br />

Die freie Groupware Kolab erneuert Webmailer und Synchronisation<br />

Willkommene Nummer<br />

Kurz vor Redaktionsschluss brachten die Entwickler des Open-Source-Groupware-Servers Kolab die lange erwartete<br />

dritte Version auf den Markt. In der finden sich große Neuerungen: Installation und Web-GUI sind deutlich<br />

verbessert, der Webmailer Roundcube ersetzt Horde, und Syncroton versorgt Smartphones. Markus Feilner<br />

dere Groupwares Datenbanken einsetzen,<br />

kommt Kolab mit einem Cyrus-IMAP-<br />

Store und einem LDAP-Verzeichnisdienst<br />

einfacher über die Runden. Bis zuletzt<br />

erledigte Open LDAP diese Dienste, ab<br />

Version 3 hat sie der 389 Directory Server<br />

[2] übernommen.<br />

Neu in Version 3<br />

© Sean Pavone, 123RF.com<br />

01 uname ‐a<br />

Wenn das Bundesamt für Sicherheit in<br />

der Informationstechnik seine Finger<br />

<strong>im</strong> Spiel hat, kommt eher selten etwas<br />

Schlechtes dabei heraus. Und auch der<br />

2002 von der Sicherheitsbehörde mitinitiierte<br />

Groupware-Server Kolab [1] erfreute<br />

sich lange Zeit großer Beliebtheit unter<br />

Open-Source-Fans. Von den Outlook-<br />

Konnektoren abgesehen nutzt er ausschließlich<br />

freie Standardkomponenten<br />

02 yum install yum‐plugin‐priorities<br />

03 wget http://mirror.kiewel‐online.ch/epel/6/i386/epel‐release‐6‐8.noarch.rpm<br />

04 yum install wget<br />

Listing 1: Kolab auf Cent OS installieren<br />

05 wget http://mirror.kiewel‐online.ch/epel/6/i386/epel‐release‐6‐8.noarch.rpm<br />

06 yum localinstall epel‐release‐6‐8.noarch.rpm<br />

wie Cyrus, Open LDAP, Postfix, Apache<br />

und viele andere etablierte Projekte, um<br />

sie zu einem Bündel zu schnüren, das<br />

dreierlei Clients bedienen will: Browser,<br />

Outlook und KDE-Kunden, also das Web,<br />

Windows und <strong>Linux</strong>.<br />

Unter der Haube werkelt eine Engine,<br />

die fast alle Daten in Klartext-E-Mails<br />

hinterlegt, vom Kalendereintrag über den<br />

Kontakt bis zur s<strong>im</strong>plen E-Mail. Wo an-<br />

07 yum install http://mirror.kolabsys.com/pub/redhat/kolab‐3.0/el6/development/i386/<br />

kolab‐3.0‐community‐release‐6‐2.el6.kolab_3.0.noarch.rpm http://mirror.kolabsys.com/pub/redhat/<br />

kolab‐3.0/el6/development/i386/kolab‐3.0‐community‐release‐development‐6‐2.el6.kolab_3.0.noarch.rpm<br />

08 yum install kolab<br />

Ebenfalls neu in der dritten Ausgabe ist<br />

der Webmailer Roundcube [3], der das<br />

in der Vergangenheit <strong>im</strong>mer wieder für<br />

Ärger sorgende Horde-Framework ablöst.<br />

Und Kolab 3 bringt dank Syncroton<br />

[4] standardmäßig auch die Anbindung<br />

für mobile Geräte via Microsofts Active-<br />

Sync-Protokoll.<br />

Für die Daten nutzt Kolab 3 ein neues<br />

Format: Kolab V3 XML [5]. Server-Side-<br />

Akonadi [6], die angekündigte, technisch<br />

reizvolle, aber anspruchsvolle Implementierung<br />

des Such- und Indizierungsdienstes<br />

des KDE-Projekts, hat es nicht in Version<br />

3 geschafft, soll aber in kommenden<br />

Ausgaben den Datenbestand automatisch<br />

scannen und indizieren und so schon vor<br />

dem Start des Mailclients alle Indizes für<br />

schnelle Suchanfragen parat halten.<br />

Professionellen Support und Kolab-Knowhow<br />

bietet seit 2010 die Firma Kolab Systems<br />

[7]. Weil sie zahlreiche Kolab-Developer<br />

als Angestellte beschäftigt, bietet<br />

sie auch individuelle Implementierungen<br />

oder Erweiterungen der Groupware-Suite<br />

an. Wenig überraschend, aber nicht minder<br />

lobenswert, stammt dann auch der<br />

Kolab 3<br />

Auf der Delug-DVD finden Sie<br />

DELUG-DVD<br />

eine virtuelle Maschine mit Kolab 3, die die<br />

Entwickler eigens fürs <strong>Linux</strong>-<strong>Magazin</strong> angepasst<br />

haben.


Kolab 3 03/2013<br />

Software<br />

www.linux-magazin.de<br />

49<br />

Abbildung 1: Setup-Kolab bringt eine textbasierte Installation und verlangt vom<br />

Admin außer etwas Durchhaltewillen be<strong>im</strong> Eingeben von Passwörtern nicht viel.<br />

Abbildung 2: Nach erfolgreicher Installation gelingt das Login als Administrator<br />

am Web-GUI. Hier gilt es, zuerst einen Benutzer anzulegen.<br />

Löwenanteil der mittlerweile sehr umfangreichen<br />

Dokumentation [8] von Mitarbeitern<br />

von Kolab Systems.<br />

Die Anleitungen decken den kompletten<br />

Installations- und Konfigurationsprozess<br />

des Servers ab, nur be<strong>im</strong> Anbinden der<br />

externen Desktop-Clients muss sich der<br />

Anwender noch selbst auf die Suche machen<br />

und wird meist <strong>im</strong> Wiki auf der<br />

Kolab-Webseite fündig. Auch zwei Artikel<br />

in <strong>Linux</strong>-<strong>Magazin</strong>en der vergangenen<br />

Jahre beschäftigen sich mit den technischen<br />

Details [9] und einem Vergleich<br />

mit den Alternativen auf dem Markt für<br />

<strong>Linux</strong>-Groupware [10].<br />

Die Installation –<br />

überraschend einfach<br />

Wer die Delug-DVD zur Hand hat, kann<br />

den nächsten Abschnitt getrost überspringen<br />

und einfach die dort enthaltene<br />

Kolab-VM via KVM starten. Die Entwickler<br />

empfehlen auf Nachfrage für <strong>Test</strong>s<br />

und produktive Installationen Cent OS<br />

als Basis, obwohl das Team jetzt auch<br />

Debian-<strong>Paket</strong>e bereitstellt. Gut, dass<br />

die Open-PKG-Zeiten vorbei sind, denn<br />

das unbeliebte, mittlerweile ohnehin<br />

proprietäre Format sorgte für viel Ärger<br />

und verhinderte früher jede Distributionsintegration<br />

von Kolab.<br />

Heute installiert der interessierte Admin<br />

einige Repositories auf seinem Cent OS<br />

(Listing 1 zeigt die dafür nötige Befehlssequenz)<br />

und zieht dann mit einem beherzten<br />

»yum install kolab« 274 <strong>Paket</strong>e<br />

in gut 200 MByte nach. Alle Beispiele in<br />

diesem Artikel entstanden mit der letzten<br />

Beta von Kolab 3 auf Cent OS 6.3.<br />

Bevor er die Setup-Routine von Kolab<br />

startet, muss er sich noch um die Security-Funktionen<br />

von Cent OS kümmern:<br />

Das Red-Hat-Pendant aktiviert standardmäßig<br />

SE <strong>Linux</strong> und eine Firewall – beides<br />

muss der Admin entweder für <strong>Test</strong>zwecke<br />

deaktivieren oder analog zur Installationsanleitung<br />

[7] konfigurieren.<br />

Das Gleiche gilt für die Namensauflösung:<br />

Reverse DNS muss funktionieren,<br />

sonst bereiten viele Funktionen Probleme.<br />

Ist das alles erledigt,<br />

startet »setup‐kolab«<br />

den länglichen<br />

Dialog, mit dem die<br />

Kolab-Entwickler den<br />

Server und seine zahlreichen<br />

Komponenten<br />

einrichten (siehe Abbildung<br />

1).<br />

Aber der Schwierigkeitsgrad<br />

hält sich in<br />

Grenzen, in der Regel<br />

muss der Admin lediglich<br />

seinen Benutzernamen,<br />

die Domäne<br />

und die Passwörter<br />

Listing 2: »kolab‐cleanup.sh«<br />

01 #!/bin/bash<br />

02 # Source: http://git.kolab.org/kolab‐scripts/<br />

tree/cleanup‐and‐start‐over.sh<br />

03 yum ‐y remove 389\* cyrus‐<strong>im</strong>apd\* postfix\*<br />

mysql‐server\* roundcube\* pykolab\*<br />

04 <br />

05 rm ‐rvf \<br />

06 /etc/dirsrv \<br />

07 /etc/kolab/kolab.conf \<br />

08 /etc/postfix \<br />

09 /usr/lib64/dirsrv \<br />

eingeben – fertig. Dass dabei nach wenigen<br />

Minuten ein funktionierender Groupware-Server<br />

mit Webmailer und Active-<br />

Sync entsteht, der schon out of the Box<br />

mit fast allen Browsern und Smartphones<br />

funktioniert, überrascht angesichts der<br />

Geschichte von Kolab sehr.<br />

Erwies sich die Installation bisher oft als<br />

ein mittleres Problem, so ließe sich in<br />

Version 3 nur das monotone und fehlerträchtige<br />

Eintippen der Admin-Passwörter<br />

Abbildung 3: Fortgeschrittene Admins haben schon übers Web-GUI direkten<br />

Zugriff auf diverse LDAP-Attribute.<br />

10 /usr/share/dirsrv \<br />

11 /var/cache/dirsrv \<br />

12 /var/lib/dirsrv \<br />

13 /var/lib/<strong>im</strong>ap \<br />

14 /var/lib/kolab \<br />

15 /var/lib/mysql \<br />

16 /var/spool/<strong>im</strong>ap \<br />

17 /var/spool/postfix<br />

18 <br />

19 yum clean metadata<br />

20 yum ‐y install kolab


Software<br />

www.linux-magazin.de Kolab 3 03/2013<br />

50<br />

ginnen kann – eines von diversen be<strong>im</strong><br />

<strong>Test</strong>en sehr hilfreichen Tools aus dem<br />

Kolab-Wiki.<br />

Direkt nach der Installation kann sich der<br />

Administrator unter »http://FQDN_des_<br />

Kolabservers/kolab‐webadmin/« anmelden.<br />

Als sein Login dient »cn=Directory<br />

Manager«, das Passwort hat er be<strong>im</strong><br />

Durchlauf von Setup-Kolab vorgegeben.<br />

Nach dem erfolgreichen Anmelden geht’s<br />

ans Anlegen eines oder mehrerer Benutzer,<br />

wobei Kolab bereits viele Felder<br />

wie etwa die Mailadressen automatisch<br />

ausfüllt (Abbildung 2). Fortgeschrittene<br />

Admins geben sich wohl kaum mit der<br />

durchaus ausreichenden Gruppen-, Rollen-<br />

oder Domänenverwaltung zufrieden,<br />

sondern wollen individuelle LDAP-Einträge<br />

<strong>im</strong> Menü »Einstellungen« vornehmen<br />

(Abbildung 3). Wer sich hier nicht<br />

sicher ist, lässt jedoch besser die Finger<br />

von diesen Einstellungen.<br />

Als »Ressourcen« auf dem gleichnamigen<br />

Tab versteht Kolab seit jeher Geräte<br />

und Räume, aber auch Fahrzeuge oder<br />

schlicht alles, was für Termine relevant<br />

sein kann. Als einzige Groupware auf<br />

dem Markt bietet Kolab neuerdings so<br />

genannte Ressource Collections an: Wer<br />

einen Beamer und einen Raum für sein<br />

Meeting braucht, lädt zu einem Termin<br />

ein – um Details kümmert sich Kolab.<br />

Abschied von Horde<br />

Abbildung 4: Komplett überarbeitet und um viele nützliche Groupware-Funktionen erweitert haben die Kolab-<br />

Entwickler den Webmailer Roundcube.<br />

(Kolab selbst, IMAP, LDAP, SQL-Datenbank<br />

für Roundcube und so weiter) bemängeln.<br />

Ein zentrales Passwort könnte<br />

helfen, brächte aber auch Risiken.<br />

Skripte und Web-Admin<br />

Klappt die Installation nicht wie geplant,<br />

beispielsweise weil eine vom Admin abgebrochene<br />

Setup-Routine widersprüchliche,<br />

nicht automatisch korrigierbare<br />

Einträge <strong>im</strong> LDAP-Verzeichnis hinterlassen<br />

hat, helfen Community-Skripte<br />

wie das aus Listing 2 [11]. Es räumt<br />

die komplette Installation auf, sodass der<br />

verspielte Admin komplett von vorne be-<br />

Pr<strong>im</strong>ärer Client für Kolab – daher gleich<br />

mitgeliefert – ist der Webmailer Roundcube.<br />

Doch dessen Funktionsumfang<br />

haben die Entwickler gewaltig erweitert,<br />

einige sprechen daher von „Roundcube++“.<br />

Neben Mail (Abbildung 4),<br />

Kalender (Abbildung 5) und einem<br />

Adressbuch beherrscht Roundcube jetzt<br />

fast alles, was ein moderner Groupware-<br />

Client können muss, inklusive Berechtigungen,<br />

Delegieren, Terminplanung,<br />

Server-seitigen Filterskripten mit Sieve-<br />

Syntax oder dem Freigeben eines Ordners<br />

für Kollegen (Stellvertreterfunktion oder<br />

Team-Ordner, Abbildung 6).<br />

Wer noch den auf Horde basierenden<br />

Vorgänger kennt, wird sich freuen, denn<br />

Roundcube gehört sicherlich zu den<br />

Highlights der neuen Kolab-Version.<br />

Der Webclient läuft fließend, lässt sich<br />

angenehm bedienen und bringt ein ansprechendes<br />

Design sowie umfangreiche<br />

Funktionen. Sicherlich existieren nicht<br />

so viele Erweiterungen und Add-ons für<br />

Roundcube, wie es das Horde-Framework<br />

bieten kann, dafür funktioniert der Mailer<br />

ohne jede zusätzliche Konfiguration<br />

und überraschend flott.<br />

Smartphones und Tablets<br />

Abbildung 5: Der schlanke Ajax-Mailer erhielt von den Kolab-Entwicklern einen Kalender, der viele Enterprise-Funktionen<br />

beherrscht und die Terminplanung zeitgemäß per Drag & Drop erlaubt.<br />

Nach dem Admin-Frontend und dem<br />

Webclient hat Kolab 3 noch ein Schmankerl<br />

zu bieten, das einfach so funktioniert,<br />

gleich nach der Installation und<br />

ohne jede Konfiguration: Unter dem<br />

Namen Syncrotron [4] haben die Entwickler<br />

zusammen mit denen von Tine


OSDC.de<br />

OPEN SOURCE DATA<br />

CENTER CONFERENCE<br />

17. - 18. APRIL 2013 | NUREMBERG<br />

Kolab 3 03/2013<br />

Software<br />

www.linux-magazin.de<br />

51<br />

Abbildung 6: Unter Kolab ist (fast) alles eine E-Mail, wer also seinen Kalender-Ordner mit den Terminen darin<br />

freigibt, erlaubt einem Kollegen die eigenen Meetings zu sehen oder zu ändern.<br />

2.0 (der PHP-basierten, ebenfalls freien<br />

Groupware-Suite, [12]) einen eigenen Active-Sync-Dienst<br />

in PHP <strong>im</strong>plementiert,<br />

der laut Wiki diverse Androiden, I-OS,<br />

Windows Mobile und sogar Nokia Mail<br />

for Exchange unterstützen soll, einen<br />

Nachfolger von Z-Push.<br />

Im <strong>Test</strong> (Abbildung 7) gelang das Aktivieren<br />

von User-Accounts auf Android<br />

und iPhone problemlos, doch unterscheidet<br />

sich der Funktionsumfang der Clients<br />

enorm. Die Suche <strong>im</strong> Adressbuch klappte<br />

aber überall, auch die automatische Vervollständigung<br />

sowie die Terminverwaltung<br />

samt Einladungen – sogar Cross-<br />

Device von Android zu Apple.<br />

Allerdings hinken die mobilen Geräte<br />

noch etwas hinter den Webfrontends oder<br />

auch dem Funktionsumfang des ehemaligen<br />

mobilen Enterprise-Platzhirschs<br />

Blackberry hinterher. So konnten <strong>im</strong> <strong>Test</strong><br />

die meisten Clients beispielsweise nicht<br />

vollständig mit mehreren Kalendern umgehen,<br />

von der Konfiguration von Freigaben<br />

oder erweiterten Terminen, zum<br />

Beispiel bei komplexeren Wiederholungen,<br />

ganz zu schweigen.<br />

Gestern: Microsoft Outlook<br />

So weit die schönen Seiten. Nach der Installation<br />

funktioniert in Kolab 3 auf den<br />

ersten Blick alles, was der Server selbst<br />

mitbringt. Doch ganz anders sieht es bei<br />

den Desktop-Clients aus. Sowohl KDEs<br />

Kontact als auch Microsofts Outlook<br />

waren als Kolab-Clients unter Admins<br />

bisweilen berüchtigt, obwohl sie neben<br />

dem Web-GUI als typische Clients galten.<br />

Zwar gab es mehrere kommerzielle<br />

Konnektoren, die Redmonder Clients an<br />

den Kolab-Server anflanschten, doch die<br />

Hilferufe, Fehlermeldungen und Problemberichte<br />

rissen nie ab.<br />

Bei Kolab 3 müssen die Hersteller der<br />

Konnektoren ohnehin erst nacharbeiten:<br />

wwww.netways.de/osdc<br />

presented by<br />

NETWAYS ®<br />

wwww.netways.de/osdc<br />

Abbildung 7: Ein Kolab-Account auf einem Androiden tarnt sich als Exchange-Server. Mail, Kalender und<br />

Kontakt funktionieren problemlos, doch Enterprise-Funktionen fehlen.<br />

presented by<br />

wwww.netways.de/osdc<br />

presented by<br />

NETWAYS ®<br />

NETWAYS ®


Software<br />

www.linux-magazin.de Kolab 3 03/2013<br />

52<br />

Abbildung 8: »kolabwizard« hilft bei der Einrichtung,<br />

hier auf Cent OS 6.3.<br />

Unter anderem auch wegen des neuen<br />

Storage-Formats <strong>im</strong> Backend steht Outlook<br />

bisher noch nicht für Kolab 3 zur<br />

Verfügung. Gut möglich, dass hier die geplante<br />

Mapi-Integration mit Open Change<br />

viele Probleme löst, die Kolab bisher nie<br />

vollständig meistern konnte.<br />

Problemfall KDE<br />

Ob es ein besserer Weg wäre, die KDE-<br />

Oberfläche auf Windows zu installieren,<br />

wie das ein eigenständiges Projekt nahelegt,<br />

bleibt dahingestellt. Ohne tiefschürfendes<br />

KDE-Wissen ist es derzeit<br />

wohl nicht möglich, Kontact mit Kolab 3<br />

vollständig zum Laufen zu bekommen.<br />

Für diesen Artikel hat der Autor neue Installationen<br />

von Debian, Cent OS, Mint,<br />

Ubuntu und Fedora getestet, die Fehler<br />

waren nicht <strong>im</strong>mer gleich, dafür aber<br />

zahlreich.<br />

Zwar bringen viele Distributionen den<br />

Groupware-Wizard für KDE mit, der die<br />

Anbindung von Kontact an den Kolab-<br />

Server übern<strong>im</strong>mt (Abbildung 8). Er<br />

macht einen guten Eindruck, stolpert<br />

aber in allen getesten Fällen über Details.<br />

Mal muss der Anwender Kontact noch<br />

mitteilen [13], dass Kolab jetzt das Format<br />

der Version 3 einsetzt, mal fehlen die<br />

Frei-/​Belegt-Informationen der Kollegen,<br />

ein anderes Mal offenbar der korrekte<br />

LDAP-Link fürs Benutzerverzeichnis oder<br />

die nötigen Credentials.<br />

Mit älteren Versionen als KDE SC 4.9.4<br />

sollte ohnehin niemand anfangen, außer<br />

er möchte die Fehlermeldungen aus Abbildung<br />

9 sehen. Bis dahin hatte sich die<br />

komplexe Landschaft aus Akonadi und<br />

seinen Datenbanken, Suchmaschinen,<br />

Indizierungsdiensten und Storage-Backends<br />

regelrecht verzettelt – <strong>im</strong> Prinzip<br />

seit KDE 4. Die vielen Probleme mit Akonadi,<br />

Nepomuk, Soprano, Virtuoso, Strigi<br />

und mehr belegen zahlreiche Mailthreads<br />

Abbildung 9: Geht gar nicht – ein altes KDE. Neuer als die recht aktuelle 4.9.4 sollte es schon sein, sonst<br />

hagelt es die aus den letzten Jahren leidvoll bekannten Fehlermeldungen, wie hier auf <strong>Linux</strong> Mint.<br />

in den Archiven der KDE-Mailinglisten.<br />

Eigentlich unfassbar: Erst seit wenigen<br />

Wochen gibt es wieder – <strong>im</strong>merhin nach<br />

gut zwei Jahren Vakanz – eine KDE-<br />

Desktop-Oberfläche mit funktionierenden<br />

Groupware-Ressourcen.<br />

Das eigentlich störende an der Geschichte<br />

ist jedoch, dass in vielen Fällen der Kolab-Wizard<br />

sauber durchzulaufen scheint<br />

und keine Fehlermeldung produziert. Abbildung<br />

10 zeigt: Dem Cent-OS-Kontact<br />

fehlen alle Termine und Kontakte. Dass<br />

der Anwender hier noch das Datenformat<br />

auf Kolab 3 umstellen muss, erfährt er<br />

mit Glück übers Kolab-Wiki.<br />

Schl<strong>im</strong>mer noch ergeht es dem Anwender<br />

unter Mint. Abbildung 9 zeigt, was<br />

dem Benutzer mit einer veralteten KDE-<br />

Version droht, aber KDE-Anwendern aus<br />

den letzten beiden Jahren sicher bekannt<br />

vorkommen dürfte: Abstürze und Fehlermeldungen<br />

der Akonadi-Dienste. Am<br />

besten schneidet <strong>im</strong> direkten Vergleich<br />

noch Fedora ab. Die neueste Beta von FC<br />

18 hatte ein aktuelles KDE an Bord, diverse<br />

Kolab-Entwickler arbeiten mit und<br />

für Fedora, also wundert es nicht, dass<br />

die Kombination Cent OS auf dem Server<br />

und Fedora auf dem (KDE-)Client die<br />

empfohlene Variante ist.<br />

Abbildung 10: Der Kolab-Wizard hat Kolab eingerichtet, aber die Termine fehlen noch.


Bei ihr hielten sich die Fehler in Grenzen,<br />

doch selbst diese dürften Anwender<br />

überfordern – und dem Admin einiges<br />

Kopfzerbrechen bereiten. Am einfachsten<br />

zu verschmerzen ist noch, dass diverse<br />

Ressourcen wie Kalender oder Adressbücher<br />

nicht aktiviert waren. Schwerer<br />

wiegt, dass die frisch installierte Fedora<br />

unerklärlicherweise und <strong>im</strong> Gegensatz<br />

zu den anderen Kandidaten keine LDAP-<br />

Verbindung zum Kolab-Server aufbauen<br />

konnte (Abbildung 11).<br />

Damit fiel der <strong>Test</strong> der Terminplanung<br />

aus. Es bleibt zu hoffen, dass mit funktionierender<br />

LDAP-Anbindung und damit<br />

be<strong>im</strong> Client auch wirklich ankommender<br />

Kolab-Benutzerliste auch die Frei-/​<br />

Belegt-Informationen bereitstehen.<br />

Thunderbird<br />

Nach eigener Aussage verwenden einige<br />

der Kolab-Entwickler Thunderbird als<br />

Groupware-Client. Möglich macht das<br />

in erster Linie Sync-Kolab (Abbildung<br />

12, [14]), das das Gespann Thunderbird<br />

(Mail), Lightning (Kalender) und Kolab<br />

zur Kooperation überredet. Doch auch<br />

das gelingt nicht ohne Nacharbeit. Ein<br />

aktueller Thunderbird soll es schon sein,<br />

der mit Cent OS mitgelieferte 10.0 reicht<br />

jedenfalls bei Weitem<br />

nicht aus – verständlicherweise.<br />

Doch auch wer die<br />

Add-ons Lightning<br />

und Sync-Kolab mit<br />

der bei Redaktionsschluss<br />

aktuellen Version<br />

17 von Thunderbird<br />

testet, merkt bald,<br />

dass es mit der Angabe<br />

von Server, Username<br />

und Passwort<br />

noch lange nicht getan<br />

ist (Abbildung 13).<br />

Der Anwender muss<br />

sich seine Groupware-<br />

Ressourcen gemäß Anleitung von [14]<br />

erst noch zusammenklicken.<br />

Da merkt der Beobachter recht schnell,<br />

dass der Donnervogel eben nie als Groupware-Client<br />

designt wurde und die Entwickler<br />

auch nie den Anspruch hatten,<br />

einen Enterprise-Mailer zu bauen. Trau-<br />

Abbildung 11: Die LDAP-Anmeldung scheitert auf Fedora. Eigentlich sollte<br />

auch das der Wizard erledigen, doch irgendetwas lief schief.<br />

Kolab 3 03/2013<br />

Software<br />

www.linux-magazin.de<br />

53


Software<br />

www.linux-magazin.de Kolab 3 03/2013<br />

54<br />

Abbildung 12: Trotz allem noch nachvollziehbar: Der Thunderbird 10, den Cent OS standardmäßig mitliefert,<br />

ist deutlich zu alt, auch wenn das Sync-Kolab-Plugin keine Fehlermeldung ausgibt.<br />

rig, aber wahr: Das Thunderbird-Projekt<br />

baut einen überzeugenden, plattformübergreifenden<br />

und performanten Mailer,<br />

der heute jedoch nur mit großen Umständen<br />

zum vollständigen Groupware-Client<br />

erweiterbar ist, wenn überhaupt.<br />

Toller Server,<br />

mäßige Clients<br />

Trotz der Schwierigkeiten mit KDE,<br />

Thunderbird und Outlook weiß die dritte<br />

Ausgabe von Kolab zu überzeugen. Die<br />

Probleme liegen <strong>im</strong> Wesentlichen in<br />

Clients, die das Projekt nicht selbst unterstützt<br />

oder zumindest nicht in Eigenregie<br />

weiterentwickelt. Out of the Box funktioniert<br />

die Administration, und Kolab<br />

versorgt mit Roundcube und Syncroton<br />

zwei Client-Typen, die zusammen den<br />

Großteil des Marktes abdecken.<br />

Zwar beteuern die Entwickler, Kontact<br />

sei der pr<strong>im</strong>äre Client für Kolab und<br />

man werde sich jetzt nach dem Server<br />

verstärkt der Verbesserung der Desktop-<br />

Clients widmen. Aber ist das überhaupt<br />

noch notwendig? Immer mehr Anwendungen<br />

wandern ins Web [15] oder auf<br />

Abbildung 13: Unter Mint und mit der 17. Ausgabe des Donnervogels installiert sich das Plugin zwar problemlos,<br />

doch ohne Nacharbeit durch den Benutzer bleibt der Kalender leer.<br />

mobile Geräte [16] ab. Wie groß wird<br />

auf Dauer der Marktanteil der Desktop-<br />

Client-Anwender sein? Schade um Kontact<br />

wäre es schon, denn bereits sein<br />

Funktionsumfang verleiht dem KDE-Tool<br />

diverse Alleinstellungsmerkmale, nicht<br />

nur auf <strong>Linux</strong>. Und die Fans, die in den<br />

letzten beiden Jahre weiter zu Kontact<br />

gehalten haben, können eine funktionierende<br />

Kolab-Anbindung wahrscheinlich<br />

kaum mehr erwarten.<br />

Wenn das ganze Gespann dann auch<br />

noch in größeren Szenarien so flott,<br />

zuverlässig und skalierbar arbeitet wie<br />

die Konkurrenz von Zarafa oder Open<br />

Xchange, dann bekäme Kolab mit seiner<br />

dritten Version gute Chancen, sich<br />

gerade in der Cloud zu etablieren. Die<br />

Konnektivität mit den Webdiensten von<br />

Google, Facebook und all den anderen<br />

stellte dann ja Kontact her. n<br />

Infos<br />

[1] Kolab: [http:// www. kolab. org]<br />

[2] 389 Directory Server: [http:// directory.​<br />

fedoraproject. org/ wiki/ Main_Page]<br />

[3] Roundcube: [http:// roundcube. net]<br />

[4] Syncroton: [http:// www. syncroton. org/​<br />

wiki/ Main_Page]<br />

[5] Kolab-3.0-Datenformat: [https:// wiki.​<br />

kolab. org/ Kolab_3. 0_Storage_Format]<br />

[6] Server-Side-Akonadi kommt: [http:// www.​<br />

linux‐magazin. de/ NEWS/ Server‐Side<br />

‐Akonadi‐Kolab‐3‐kommt‐<strong>im</strong>‐Herbst]<br />

[7] Kolabsys: [http:// www. kolabsys. org]<br />

[8] Dokumentation und Installation:<br />

[http:// docs. kolab. org/ en‐US/ Kolab_<br />

Groupware/ 3. 0/ html/]<br />

[9] Markus Feilner, Thomas Drilling: „Gruppenbaustelle“:<br />

<strong>Linux</strong>-<strong>Magazin</strong> 11/​10, S. 60<br />

[10] Dirk Ahrnke, „Gut geplant“: <strong>Linux</strong>-<br />

<strong>Magazin</strong> 09/​11, S. 68<br />

[11] Kolab-Installation aufräumen:<br />

[http:// git. kolab. org/ kolab‐scripts/ tree/​<br />

cleanup‐and‐start‐over. sh]<br />

[12] Tine 2.0: [http:// www. tine20. org]<br />

[13] Kontact with Kolab 3: [http:// wiki. kolab.​<br />

org/ Using_Kontact_with_Kolab3]<br />

[14] Thunderbird-Anleitung:<br />

[http:// kolab. org/ howto/ use‐synckolab<br />

‐thunderbird‐and‐lightning]<br />

[15] Horde: [http://www.kolab.org/Com mu -<br />

n ity_Installation_Guide/ chap‐Community_<br />

Installation_Guide‐Horde. html]<br />

[16] Z-Push-Clients:<br />

[http:// wiki. kolab. org/ Z_push# Clients]


Alle Artikel des Jahres<br />

2012 auf einer DVD!<br />

Jahres-dvd<br />

2012<br />

Ubuntu<br />

12.10<br />

Bootmenü mit 8<br />

Ubuntu-Varianten<br />

32+64 Bit<br />

• Zwölf Ausgaben<br />

komplett als HTML<br />

und PDF<br />

• Durchdachte<br />

Navigation, die<br />

mit jedem Brow ser<br />

funktioniert<br />

• Blitzschnelle<br />

Volltextsuche<br />

• Alle Listings<br />

Jetzt gleich bestellen!<br />

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


Software<br />

www.linux-magazin.de Tooltipps 03/2013<br />

56<br />

Werkzeuge <strong>im</strong> Kurztest<br />

Tooltipps<br />

Mkproject 0.4.6<br />

Grundgerüste für Softwareprojekte<br />

Quelle: [http:// code. google. com/ p/​<br />

makeproject]<br />

Lizenz: GPLv3<br />

Alternativen: Mmk-configure<br />

HT Editor 2.0.21<br />

Betrachter für Binärdateien<br />

Quelle: [http:// hte. sourceforge. net]<br />

Lizenz: GPLv2<br />

Alternativen: Le Editor, Dhex<br />

Boxes 1.1.1<br />

Textdateien einrahmen<br />

Quelle: [http:// boxes. thomasjensen. com]<br />

Lizenz: GPLv2<br />

Alternativen: keine<br />

Make Project, kurz Mkproject, hilft Software-Entwicklern<br />

be<strong>im</strong> Anlegen eines<br />

Skeletts für Quellcodeverzeichnisse. Das<br />

Kommandozeilentool legt nicht nur den<br />

Projektordner samt »src«-Verzeichnis an,<br />

sondern auch Vorlagen für die Dateien<br />

»AUTHORS«, »Changelog«, »COPYING«,<br />

»NEWS« und »README«. Templates für<br />

»configure« und das Makefile sind ebenfalls<br />

dabei.<br />

Über Parameter gibt der Anwender be<strong>im</strong><br />

Aufruf die Eckdaten an, etwa den Namen<br />

des Autors, die Projektwebseite, Adressen<br />

für Bugreports oder Abhängigkeiten<br />

zu anderen Programmen, außerdem eine<br />

Kurzbeschreibung. Die Datei »README«<br />

füllt Mkproject mit Standardwerten und<br />

fügt dort die GPLv3 ein.<br />

Abhängig von der gewählten Programmiersprache<br />

erstellt das Werkzeug <strong>im</strong> Unterordner<br />

»src« unterschiedliche Dateien.<br />

Es bastelt Grundgerüste für Bash-Skripte,<br />

C-Programme und ‐Bibliotheken, Pythonund<br />

Perl-Programme, C++-Anwendungen<br />

und ‐Bibliotheken. Um diese Liste zu<br />

erweitern, können Benutzer die Dateien<br />

aus » /usr/local/share/mkproject/skeletons«<br />

als Vorlage verwenden.<br />

★★★★★ Mkproject erzeugt für kleine<br />

Projekte ein einfaches Grundgerüst mit<br />

den benötigten Vorlagen und füllt die<br />

Dateien mit Standardwerten. n<br />

Wer mehr über das Innenleben eines<br />

ausführbaren Programms erfahren<br />

möchte, der benötigt entweder den Quellcode<br />

oder einen Editor wie HT. Das Tool<br />

betrachtet Binärdateien, hilft bei der<br />

Analyse und be<strong>im</strong> Debuggen und bietet<br />

einfache Bearbeitungsfunktionen.<br />

In der Voreinstellung zeigt der Editor den<br />

Hexcode an. Über die Funktionstaste [F6]<br />

schaltet der Nutzer auf einen anderen<br />

Ansichtsmodus um. Zur Auswahl stehen<br />

Text, X86-Assembler und mehrere ELF-<br />

Darstellungen. Je nach Modus ist es möglich,<br />

<strong>im</strong> Code zu suchen oder direkt zu<br />

best<strong>im</strong>mten Stellen zu springen.<br />

HT unterstützt unter anderem die Formate<br />

ELF, LE, MZ, NE, PE32, Class, XBE,<br />

Coff, Xcoff, FLT und PEF. Damit erkennt<br />

der Editor ausführbare DOS- und <strong>Linux</strong>-<br />

Programme ebenso wie Software, die für<br />

die Xbox oder einen Power PC kompiliert<br />

wurde. Abhängig vom Typ präsentiert<br />

der Editor unterschiedliche Informationen.<br />

Die Dateiheader und Code-Abbilder<br />

stehen bei den meisten Formaten zur<br />

Verfügung. Bei NE erhält der Nutzer außerdem<br />

Zugriff auf die Entry Points oder<br />

Segmente.<br />

★★★★★ HT Editor erlaubt Nutzern<br />

einen Blick auf die Routinen und den<br />

Assemblercode eines Programms. Das<br />

Werkzeug unterstützt viele Formate und<br />

bietet mehrere Ansichtsmodi. n<br />

Boxes peppt Textdateien auf. Das Kommandozeilentool<br />

zeichnet Rahmen um<br />

diese und hat außer schlichten Umrandungen<br />

auch komplexe Designs <strong>im</strong> Angebot,<br />

die in Richtung Ascii-Art gehen.<br />

Um einen Text zu umschließen, ruft der<br />

Anwender das Tool mit »‐d Design« und<br />

der Textdatei auf. Gibt er keine Formatierungswünsche<br />

an, wählt Boxes automatisch<br />

den ersten verfügbaren Look.<br />

Welche Gestaltungsmöglichkeiten <strong>im</strong><br />

Angebot sind, verrät »boxes ‐l«. In der<br />

Voreinstellung landet der umschlossene<br />

Text auf der Standardausgabe.<br />

Das Werkzeug kennt über 50 unterschiedliche<br />

Designs, darunter auch welche für<br />

Programmierer. So zeichnen »html« oder<br />

»c‐cmt« etwa HTML- und C-Kommentare.<br />

Über weitere Aufrufoptionen ist es<br />

möglich, den Text anders anzuordnen,<br />

einzurücken, Leerzeichen zu entfernen<br />

und hinzuzufügen. Der Parameter »‐r«<br />

entfernt die Umrandungen wieder.<br />

Die Dokumentation auf der Webseite<br />

enthält Anwendungsbeispiele, Beispieldesigns<br />

und Anleitungen, um eigene Vorlagen<br />

zu basteln. Außerdem finden Anwender<br />

hier Hinweise, wie sie Boxes mit<br />

gängigen Texteditoren wie V<strong>im</strong>, Emacs<br />

und Jed zusammenbringen.<br />

★★★★★ Boxes zeichnet schicke Rahmen<br />

um Texte. Das Tool bietet zahlreiche<br />

fertige Designs und ermöglicht es, eigene<br />

Vorlagen zu gestalten.<br />

n


www.linux-magazin.de<br />

Tooltipps 03/2013<br />

Software<br />

57


Software<br />

www.linux-magazin.de Tooltipps 03/2013<br />

58<br />

Likwid 3.0<br />

Toolsuite für Multithread-Programmierung<br />

Quelle: [http:// code. google. com/ p/ likwid]<br />

Lizenz: GPLv3<br />

Alternativen: Gperftools<br />

Linkchecker 8.2<br />

Verknüpfungen in HTML-Dateien prüfen<br />

Quelle: [http:// linkchecker. sourceforge. net]<br />

Lizenz: GPLv2<br />

Alternativen: Linkit, Site Checker<br />

V<strong>im</strong>pal 1.1.0<br />

Date<strong>im</strong>anager für Gv<strong>im</strong><br />

Quelle: [http:// v<strong>im</strong>pal. sourceforge. net]<br />

Lizenz: GPLv3<br />

Alternativen: V<strong>im</strong> Explorer, Nerd Tree<br />

Die Toolsammlung Likwid (Like I knew<br />

what I am doing) unterstützt Entwickler<br />

von performanten Multithread-Anwendungen.<br />

Die neun Werkzeuge gewähren<br />

einen Blick auf den Funktionsumfang des<br />

Prozessors und die Cache-Topologie, ermitteln<br />

aktuelle CPU-Performancewerte<br />

und weisen Prozesse best<strong>im</strong>mten CPU-<br />

Kernen zu. Likwid kommt mit Intel- und<br />

AMD-Prozessoren zurecht. Unterstützung<br />

für weitere Modelle ist laut Aussage der<br />

Entwickler geplant. Es ist nicht erforderlich,<br />

den Kernel zu patchen, um Likwid<br />

einsetzen zu können.<br />

Das Werkzeug »likwid‐features« wirft einen<br />

Blick auf den Funktionsumfang der<br />

CPU. Ohne Parameter aufgerufen zeigt<br />

es alle unterstützten Funktionen an.<br />

Über die Optionen »‐s« und »‐u« deaktiviert<br />

oder aktiviert sie der Anwender.<br />

»likwid‐topology« ermittelt den internen<br />

Aufbau der CPU, die Anzahl der Kerne<br />

und Caches. Praktisch: Der Parameter<br />

»‐g« schreibt die Informationen übersichtlich<br />

in eine Ascii-Tabelle.<br />

Außerdem enthält die Sammlung Tools,<br />

um Programme explizit auf einem vorgegebenen<br />

Kern auszuführen, ohne dass<br />

der Anwender sie neu kompilieren muss.<br />

Dazu ruft er die Anwendung mit »likwid‐pin«<br />

auf und definiert über »‐c« die<br />

Kerne, auf denen sie aktiv sein soll. Eine<br />

ähnliche Funktionalität für MPI-Applikationen<br />

liefert »likwid‐mpirun«.<br />

★★★★★ Die Likwid-Tools verraten viele<br />

Details zum Funktionsumfang und Aufbau<br />

der Prozessor- und Cache-Topologie<br />

eines Systems. Sie eignen sich damit zum<br />

Erfassen von Leistungsdaten sowie zum<br />

Verteilen von Programmen und Threads<br />

auf mehrere Kerne.<br />

n<br />

Verknüpfungen <strong>im</strong> WWW haben eine<br />

kurze Halbwertszeit. Wer sichergehen<br />

will, dass die Linksammlung <strong>im</strong> eigenen<br />

Internetauftritt keine Karteileichen<br />

enthält, der braucht ein Tool wie Linkchecker.<br />

Das Python-Programm prüft die<br />

Links auf Gültigkeit und bekannte Fehler.<br />

Neben HTTP- und HTTPS-Links berücksichtigt<br />

das Werkzeug auch FTP-, Mail-,<br />

News- und lokale Links.<br />

Linkchecker arbeitet rekursiv die angegebene<br />

Seite durch und hebt in seiner<br />

Ausgabe gefundene Fehler so hervor,<br />

dass diese sofort ins Auge fallen. Neben<br />

einer GUI-Variante, die sich besonders für<br />

den interaktiven Einsatz eignet, sind eine<br />

Konsolenversion und ein Nagios-Check<br />

auf Linkchecker-Basis <strong>im</strong> Archiv enthalten.<br />

Letzterer bietet jedoch keinerlei Konfigurationsmöglichkeiten<br />

über Parameter<br />

und n<strong>im</strong>mt lediglich die URL be<strong>im</strong> Aufruf<br />

entgegen. Das Ergebnis schlägt sich <strong>im</strong><br />

Returncode nieder.<br />

Die konsolenbasierte Variante fasst die<br />

Ergebnisse in einem Report zusammen,<br />

der alle geprüften Links samt Resultat<br />

und einer kurzen Fehlerbeschreibung <strong>im</strong><br />

Problemfall enthält. Linkchecker schreibt<br />

wahlweise Berichte <strong>im</strong> HTML-, XML-,<br />

CSV- oder SQL-Format. Optional ignoriert<br />

das Tool best<strong>im</strong>mte URLs und sucht mit<br />

regulären Ausdrücken nach Mustern auf<br />

einer Webseite. Ein Blick in die Manpage<br />

offenbart die zahlreichen Einstellungsmöglichkeiten.<br />

★★★★★ Linkchecker prüft Webseiten-<br />

Verknüpfungen wahlweise interaktiv <strong>im</strong><br />

GUI und auf der Konsole oder automatisch<br />

in Zusammenarbeit mit Nagios. n<br />

V<strong>im</strong>pal erweitert den Editor Gv<strong>im</strong> um<br />

einen rud<strong>im</strong>entären Date<strong>im</strong>anager. In<br />

einer Qt-4-Oberfläche stellt das Tool einen<br />

Verzeichnisbaum bereit. Ein Doppelklick<br />

auf eine Datei öffnet diese in<br />

einem neuen Gv<strong>im</strong>-Tab und verschiebt<br />

den Fokus dorthin. Das Kontextmenü der<br />

rechten Maustaste bietet Funktionen zum<br />

Löschen oder Umbenennen von Dateien.<br />

Auch das Anlegen neuer Dateien und Verzeichnisse<br />

ist über dieses Menü möglich;<br />

Kopier- oder Verschiebeaktionen unterstützt<br />

die Erweiterung aber nicht.<br />

Die Konfigurationsmöglichkeiten sind<br />

begrenzt. V<strong>im</strong>pal zeigt auf Wunsch versteckte<br />

Dateien an, unterstützt das Öffnen<br />

per einfachem Mausklick und erlaubt<br />

es, einen alternativen Gv<strong>im</strong>-Befehl zum<br />

Öffnen zu definieren. Für unterschiedliche<br />

Verzeichnishierarchien lassen sich so<br />

genannte Profile anlegen. V<strong>im</strong>pal merkt<br />

sich be<strong>im</strong> Beenden die aktuellen Verzeichnisse<br />

aller Profile, sodass Benutzer<br />

be<strong>im</strong> nächsten Start an derselben Stelle<br />

fortfahren und schnell zwischen Ordnern<br />

hin und her wechseln können.<br />

Sämtliche Einstellungen speichert V<strong>im</strong>pal<br />

in der Konfigurationsdatei »~/.config/Aurelijus\<br />

Bruzas/v<strong>im</strong>pal.conf«. Da<br />

es sich hierbei um eine einfache Textdatei<br />

handelt, greift der Anwender bei<br />

Bedarf von Hand ein und korrigiert Einstellungen.<br />

★★★★★ V<strong>im</strong>pal ergänzt den Editor<br />

Gv<strong>im</strong> um eine nützliche Date<strong>im</strong>anager-<br />

Funktion. Die Bedienung ist intuitiv und<br />

die Oberfläche übersichtlich. Wer zeitgleich<br />

an mehreren Baustellen arbeitet,<br />

der dürfte sich über die Profilfunktion<br />

freuen. (U. Vollbracht/​hej)<br />

n


Aus dem Alltag eines Sysadmin: Sendmail Analyzer<br />

Auf Truppenbesuch<br />

Einführung 03/2013<br />

Sysadmin<br />

Während der anhaltenden Schlacht gegen Spam sollte der Admin ab und zu die Gefechtslinien seiner Truppen<br />

inspizieren. Wer nicht jedes Essgeschirr zählen mag, greift auf die Dienste eines Logfile-Inspekteurs<br />

wie Sendmail Analyzer zu, der überraschenderweise auch mit Postfix & Co. klarkommt. Charly Kühnast<br />

www.linux-magazin.de<br />

59<br />

Inhalt<br />

60 Splunk<br />

Splunk hilft bei der Analyse umfangreicher<br />

Logdaten, bei Monitoring und<br />

IDS. Dank schneller Indizierung und<br />

intelligenter Suchfunktionen sind auch<br />

umfangreiche Logfile-Sammlungen keine<br />

Hürden.<br />

66 Open Attic<br />

Das Open-Source-Projekt Open Attic<br />

verspricht Unified Storage auch für heterogene<br />

Speichermedien. Das passende<br />

protokollübergreifende Management<br />

liefert es gleich mit.<br />

Auf dem ersten Mailserver, den ich für<br />

einen großen Nutzerkreis betrieben<br />

habe, lief Sendmail 8.7, und es war Hass<br />

auf den ersten Blick. Ich hielt den Rosenkrieg<br />

bis 8.9.0 durch und wechselte<br />

dann zu Postfix. In der Folgezeit geriet<br />

mir zusammen mit dem Server auch<br />

der Sendmail Analyzer [1] aus dem Radar.<br />

Erst eine kleine Nachricht in den<br />

<strong>Linux</strong>-<strong>Magazin</strong>-News [2] machte mich<br />

darauf aufmerksam, dass der Analyzer<br />

auch Postfix-Logs sowie Meldungen von<br />

Amavisd-new, Clam AV, Spamassassin,<br />

Postgrey und weiteren MTA-Anhängseln<br />

auszuwerten versteht. Höchste Zeit, das<br />

Tool auszuprobieren.<br />

Alles dabei für die Schlacht<br />

Der Analyzer kommt als Tar.gz-Päckchen<br />

daher und besteht auf der Gegenwart von<br />

Perl und der GD-Bibliotheken. Nach der<br />

Installation soll ich einen Cronjob anlegen,<br />

der sich um das Caching der Daten<br />

kümmert. Der Analyzer selbst lässt sich<br />

<strong>im</strong> Vordergrund oder als Systemdienst<br />

starten, die Start-Stopp-Skripte haben die<br />

Entwickler freundlicherweise beigelegt.<br />

Die Konfiguration nehme ich in der Datei<br />

»sendmailanalyzer.conf« vor, Kommandozeilenparameter<br />

sind ebenfalls möglich.<br />

Die wichtigste Einstellung steht in<br />

der Konfigurationsdatei ganz oben:<br />

LOG_FILE<br />

/var/log/mail.log<br />

Nur wenig tiefer wartet der Schalter für<br />

den Debug-Modus. Während der <strong>Test</strong>phase<br />

aktiviere ich ihn:<br />

DEBUG 1<br />

Aber wirklich nur dann, denn er redet<br />

wie ein Maschinengewehr. Wer wie ich<br />

ausschließlich Postfix benutzt, beschneidet<br />

am besten den »MTA_NAME«-Parameter<br />

der Aufgabenstellung entsprechend:<br />

MTA_NAME<br />

postfix<br />

Sendmail Analyzer benutzt diesen Parameter<br />

als Suchbegriff be<strong>im</strong> Durchforsten<br />

der Logdateien, und ich will ihm<br />

seine Aufgabe nicht schwerer machen<br />

als nötig – an guten Spamtagen landet<br />

in meinen Spamfilter-Logs eine siebenbis<br />

achtstellige Anzahl von Einträgen.<br />

Aus dem gleichen Grund kürze ich die<br />

»SPAM_TOOLS«-Zeile auf die Antispam-<br />

Tools, die ich tatsächlich einsetze:<br />

SPAM_TOOLS<br />

dnsbl,amavis,spamd<br />

Der Analyzer präsentiert seine Ergebnisse<br />

in HTML und benötigt dafür einen Webserver.<br />

Ein Konfigurationsmuster für den<br />

Apache liefert Sendmail Analyzer mit, ich<br />

muss es in der Regel leicht anpassen.<br />

Tabellen und Diagramme<br />

Abbildung 1: Drei Tage reichen Sendmail Analyzer für<br />

ein Zwischenergebnis bei der Spambekämpfung.<br />

Auf meinem <strong>Test</strong>-Spamfilter, der mit zirka<br />

50 Spam-Mails pro Minute recht gering<br />

belastet ist, sah die Präsentation der Ergebnisse<br />

aus wie in Abbildung 1. Der Analyzer<br />

stellt die Ergebnisse tabellarisch<br />

und als Balkengrafiken dar. Die Wirksamkeit<br />

einzelner Antispam-Maßnahmen lässt<br />

sich schnell erkennen, obendrauf gibt’s<br />

noch diverse Top-25-Listen (häufige<br />

Spamziele, häufige Quellen und so weiter).<br />

Neben den Resultaten ist das Wichtigste<br />

für mich, dass Sendmail Analyzer<br />

seine Arbeit macht, ohne das System dabei<br />

merklich zu belasten – die Spamfilter<br />

selbst haben genug zu tun. (jk) n<br />

Infos<br />

[1] Sendmail Analyzer:<br />

[http:// sareport. darold. net]<br />

[2] M. Feilner, „Sendmail Analyzer 8.6 verbessert<br />

Postfix- und Dovecot-Support“:<br />

[http:// www. linux‐magazin. de/ NEWS/​<br />

Sendmail‐Analyzer‐8. 6‐verbessert‐Postfixund‐Dovecot‐Support]<br />

Der Autor<br />

Charly Kühnast administriert<br />

Unix-Syste me <strong>im</strong> Rechenzentrum<br />

Niederrhein. Zu seinen<br />

Aufgaben gehören Sicherheit<br />

und Verfügbarkeit der<br />

Firewalls und der DMZ.


Sysadmin<br />

www.linux-magazin.de Splunk 03/2013<br />

60<br />

Splunk hilft bei der Analyse umfangreicher Logdaten<br />

Nicht suchen, finden!<br />

Logserver, Logfile-Überwachung, IDS und Monitoring — Splunk ist von allem ein bisschen. Und mehr: Dank<br />

schneller Indizierung und intelligenter Suchfunktionen durchforstet es selbst umfangreiche Logfile-Sammlungen<br />

schnell, wenn nötig auch automatisch. Konstantin Agouros<br />

© inhabitant, 123RF.com<br />

Wenn Systemprotokolle die Giga- oder<br />

gar Terabyte-Grenzen sprengen, läuft sich<br />

jeder Grep-Befehl die Hacken ab. Professionelle,<br />

unter Umständen auch kommerzielle<br />

Loganalyzer wie Splunk [1] müssen<br />

her. Die Idee ist einfach: Hinten will der<br />

Admin viele und vor allem umfangreiche<br />

Textdaten reinwerfen und vorne soll ein<br />

Webinterface schnelle und komfortable<br />

Suchfunktionen ermöglichen.<br />

Big Data und Map-Reduce<br />

Angesichts derart großer Datenmengen<br />

kommen schnell Suchmaschinen wie<br />

Google oder Schlagworte wie Big Data in<br />

den Sinn. Tatsächlich verwendet Splunk<br />

als Basis seiner Indizierung einen Map-<br />

Reduce-Algorithmus, den auch Google<br />

als Basis zur Bewältigung seiner riesigen<br />

Datenmengen verwendet (siehe Kasten<br />

„Map-Reduce“). Der Performancegewinn<br />

entsteht dabei vor allem<br />

durch die Indizes,<br />

die eine Volltextsuche<br />

deutlich effizienter gestalten.<br />

Neben der Full Search<br />

erlaubt Splunk es aber<br />

auch, Felder separat<br />

aus den Protokollen zu<br />

extrahieren. Dies kann<br />

etwa die Quell-IP-Adresse<br />

eines Firewall-<br />

Logeintrags sein, ein<br />

Hostname oder auch<br />

die Temperatur der<br />

CPU. Die so extrahierten<br />

Felder lassen sich<br />

dann in Formeln, Vergleichen<br />

und Zusammenfassungen<br />

verwenden.<br />

Splunks Datenmodell mit Indizes und<br />

Extraktionen erlaubt es, beliebige Textdaten<br />

zu <strong>im</strong>portieren, ohne dass sich der<br />

Anwender vorher über das Format <strong>im</strong><br />

Klaren sein muss. Ein Datenbankmodell<br />

mit einer festen Struktur ist auch nicht<br />

notwendig. Bedienen wird der Admin<br />

Splunk über ein eigenes Web-GUI, wobei<br />

er aber auch jederzeit an der Shell individuelle<br />

Suchanfragen absetzen kann.<br />

Mehrköpfige Splunk-<br />

Architektur<br />

Eine Splunk-Installation besteht aus mehreren<br />

Komponenten: dem Splunk-Server<br />

und der wiederum aus dem Indexer und<br />

dem Search Head. Der Indexer sammelt<br />

die eingehenden Daten und legt sie in<br />

der Splunk-Filestruktur ab. Zum Teil erledigt<br />

er auch das Extrahieren der Felder.<br />

Der Search Head führt die Suche auf den<br />

indizierten Daten aus. Alle Auswertungen,<br />

Alarme und Reports in Splunk sind<br />

Suchvorgänge.<br />

Weil ein Search Head auch in mehreren<br />

Indexern suchen kann, ist das Verteilen<br />

auf mehrere Hosts und damit auch Redundanz<br />

möglich. Je nach Installation<br />

kann der Admin Daten auch erst bei der<br />

Suche extrahieren lassen.<br />

Ein Forwarder kümmert sich darum, die<br />

Daten ins System laufen zu lassen. Er<br />

n<strong>im</strong>mt die Daten in verschiedenen Formen<br />

auf und<br />

n stellt Dateien und Verzeichnisse zur<br />

Verfügung,<br />

n streamt Logdaten per UDP oder TCP<br />

auf einen Socket und<br />

n führt Skripte aus, um Daten zu erheben<br />

(zum Beispiel ein regelmäßiges<br />

»ps auxwww« für eine Prozessliste).<br />

Vom Forwarder gibt es zwei Versionen:<br />

Der Universal Forwarder ist eine abgespeckte<br />

Version mit relativ geringem<br />

Ressourcenbedarf, der auf den Servern<br />

mitläuft, ohne den Betrieb zu stören.<br />

Diese Version leitet alle Logfeeds an den<br />

Indexer weiter. Filtermöglichkeiten gibt<br />

Map-Reduce<br />

Die Idee bei Map-Reduce ist es, das Divideet-conquere-Prinzip<br />

(teile und herrsche) auf<br />

große Datenmengen anzuwenden. Dazu teilt<br />

ein Algorithmus die Daten in Schlüssel-Wert-<br />

Paare auf (eine Map), die sich dann wieder<br />

zusammenfassen lassen (Reduce).<br />

Als einfache Analogie kann das Zählen der<br />

Wörter in einem Text herhalten. Die Software<br />

verteilt den Text auf Rechenknoten, von denen<br />

jeder die Map mit den Schlüsseln »Wort«<br />

und »Anzahl« erhält. In der anschließenden<br />

Reduktion lassen sich dann die Ergebnisse<br />

der Knoten addieren, der Admin erhält die<br />

vollständige Schlüssel-Wert-Liste.


es in dieser Kombination erst auf dem Indexer.<br />

Der Universal Forwarder lässt sich<br />

als eigenes <strong>Paket</strong> herunterladen [2].<br />

Heavy Forwarder und<br />

Deployment<br />

Splunk 03/2013<br />

Sysadmin<br />

Alternativ dazu gibt es den Heavy Forwarder,<br />

das ist eine Splunk-Vollversion,<br />

die sich per Lizenzkey auf die Aufgabe<br />

als Forwarder herunterstufen lässt und<br />

beispielsweise Filter zu setzen erlaubt,<br />

um etwa gleich nur best<strong>im</strong>mte Events<br />

weiterzuleiten. Der Deployment-Server,<br />

ebenfalls eine eigene Splunk-Komponente,<br />

hilft dabei, Konfigurationen und<br />

Erweiterungen der angeschlossenen Forwarder<br />

zentral zu verwalten.<br />

Damit nicht genug: Splunk ist auch noch<br />

erweiterbar. Dem allgemeinen Trend<br />

folgend heißen die Erweiterungen Apps<br />

beziehungsweise Technology Add-ons,<br />

wenn sie keine Komponenten <strong>im</strong> GUI<br />

enthalten. Ein solches Add-on besteht<br />

aus Vorgaben für best<strong>im</strong>mte Datentypen,<br />

zum Beispiel die Logfiles der Firewalls<br />

IPtables oder IPfw.<br />

Zusätzlich dürfen Admins vordefinierte<br />

Suchen hinterlegen, die <strong>im</strong> Kontext der<br />

eingebundenen Logs Sinn ergeben, zum<br />

Beispiel die Top-Firewall-Ziele der letzten<br />

24 Stunden als Balkengrafik <strong>im</strong> Web-GUI.<br />

Eine Sammlung dieser Links ergibt ein<br />

so genanntes Dashboard, das dem Anwender<br />

auf einer Webseite innerhalb der<br />

Splunk-Oberfläche einen Überblick zu<br />

einem definierten Thema bieten soll.<br />

Installation<br />

Das Installieren erweist sich als denkbar<br />

einfach. Splunk steht auf der Webseite<br />

des Herstellers [1] zum Download bereit,<br />

außer für <strong>Linux</strong> in 32 und 64 Bit gibt es<br />

auch <strong>Paket</strong>e für Windows, Solaris, AIX,<br />

HPUX, Free BSD und OS X. Für <strong>Linux</strong><br />

steht das <strong>Paket</strong> als RPM, Deb und Tarball<br />

bereit. Für eine <strong>Test</strong>installation reicht es,<br />

nach dem Auspacken in das Splunk-Verzeichnis<br />

zu wechseln und »bin/splunk<br />

start« aufzurufen – schon steht das Web-<br />

GUI zum Einloggen bereit. <strong>Paket</strong>manager<br />

installieren die Software meist unter<br />

»/opt/splunk«. Im <strong>Test</strong> des <strong>Linux</strong>-<strong>Magazin</strong>s<br />

funktionierte sogar ein Major-Release-Upgrade<br />

von Version 4 auf 5 ohne<br />

Probleme – selbst mit dem Tarball.<br />

Abbildung 1: Der Splunk-Startbildschirm des Web-GUI nach dem ersten Einloggen.<br />

Für produktive Installationen sollte der<br />

Admin allerdings die Speicherorte der<br />

Logdaten auf dem Indexer (»$SPLUNK-<br />

DIR/var/lib/splunk«) so definieren, dass<br />

genug und angemessen schneller Festplattenplatz<br />

bereitsteht. Splunk erlaubt<br />

es einzustellen, wo es welche Daten speichert,<br />

und kann sogar eine Differenzierung<br />

nach Daten vornehmen (Firewalldaten<br />

in Verzeichnis 1, Logindaten in<br />

Verzeichnis 2, …). Dazu bedarf es jedoch<br />

eigener Indizes und pro Index eines definierten<br />

Speicherorts.<br />

Auf der gedachten Zeitlinie unterscheidet<br />

Splunk die Vorfälle oder Einträge dann<br />

noch nach »hot«, »warm« und »cold«.<br />

Heiße und warme Ereignisse befinden<br />

sich in einem gemeinsamen Verzeichnis<br />

(pro Index), sie sind die jüngsten Daten<br />

und sollten auf den schnellsten Platten<br />

gelagert sein.<br />

Für den Universal Forwarder gelten die<br />

gleichen Bedingungen. Er lässt sich unter<br />

[2] herunterladen und genau so installieren<br />

wie die Vollversion. Nach der Installation<br />

existiert ein Benutzer »admin« mit<br />

dem Password »changeme«. Nach der obligatorischen<br />

Passwortänderung sieht der<br />

Administrator die Ansicht aus Abbildung<br />

1. Ein normaler Anwender sieht dagegen<br />

einen etwas anderen Startbildschirm, der<br />

Admin kann konfigurieren, wer was angezeigt<br />

bekommt.<br />

Doch bevor er mit dem Auswerten beginnt,<br />

muss der Administrator erst einmal<br />

die gewünschten Datenquellen anbinden.<br />

Als Erstes bieten sich die Syslogdateien<br />

des lokalen Systems an. Also folgt der<br />

Administrator dem Link »Add data« aus<br />

Abbildung 1, wählt »consume any file<br />

or directory on this server« und die entsprechende<br />

Logdatei aus, die Splunk<br />

<strong>im</strong>portieren soll. Es ist auch möglich,<br />

ein ganzes Verzeichnis (etwa »/var/log«)<br />

einzubinden, dann <strong>im</strong>portiert Splunk alle<br />

darin befindlichen Dateien – es kommt<br />

dabei mit kompr<strong>im</strong>ierten Daten zurecht<br />

und versteht auch Logfile-Rotation.<br />

Wer einzelne Protokolldateien oder ‐daten<br />

ausklammern will, definiert einen<br />

Filter in der Datei »inputs.conf« in einem<br />

der Splunk-Konfigurationsverzeichnisse<br />

(siehe Kasten „Splunks Konfigurationshierarchie“)<br />

entweder per Web-GUI oder<br />

direkt mit einem Editor.<br />

Suchen<br />

Laufen die ersten Daten in die Splunk-<br />

Installation, ist es an der Zeit, die Search-<br />

App zu öffnen. Abbildung 2 zeigt deren<br />

Übersichtsseite. Auf ihr sieht der<br />

Admin schnell, wie viele Logdaten welcher<br />

Quelle und welches Typs gerade in<br />

Splunk Einzug halten.<br />

Splunk bietet eine recht mächtige Sprache,<br />

um in den gesammelten Daten zu<br />

suchen, die Kommandoreferenz findet<br />

sich unter [3]. Alternativ zum Web-<br />

GUI kann der Admin aber auch auf der<br />

Kommandozeile mit »/opt/splunk/bin/<br />

splunk search Suchstring« suchen. Dazu<br />

meldet er sich auf der Kommandozeile<br />

be<strong>im</strong> Splunk -Server an. Im Erfolgsfall<br />

speichert dieser <strong>im</strong> Homedirectory ein<br />

Cookie, das die Anmeldung eine Zeit lang<br />

gültig hält.<br />

Die einfachste Form der Suche ist eine<br />

Volltextsuche, in der der Administrator<br />

einfach den Suchstring in das Feld eingibt.<br />

Dies entspricht in Unix einem »grep<br />

‐i« über alle gespeicherten Daten. Rechts<br />

www.linux-magazin.de<br />

61


Sysadmin<br />

www.linux-magazin.de Splunk 03/2013<br />

62<br />

Teilen best<strong>im</strong>mter Logdaten Namen, die<br />

er anschließend in seinen Suchanfragen<br />

verwenden kann.<br />

Bei der in jeder Splunk-Installation integrierten<br />

Auswertung von Webserver-Logs<br />

gibt es etwa die Felder »clientip«, »method«<br />

oder »uri«. Kennt der Admin die<br />

Felder nicht, hilft eine Suche wie »sourcetype="access_combined"|table<br />

*«, die<br />

alle Felder in einer Tabelle darstellt. Die<br />

Suche nach den Top-URLs sieht folgendermaßen<br />

aus: »sourcetype="access_<br />

combined"|top uri«, ein exemplarisches<br />

Ergebnis zeigt Abbildung 3.<br />

Per Klick <strong>im</strong> Ergebnis lässt sich aus dem<br />

Suchergebnis auch eine Grafik erzeugen.<br />

Mit dem Button »Create« rechts über dem<br />

Ergebnis kann der Administrator aus<br />

der Suche gleich ein Dashboard, einen<br />

Alarm, einen Report oder eine regelmäßig<br />

ablaufende Suche erzeugen. Bei Alarmen<br />

wendet Splunk die Suche in Echtzeit oder<br />

in regelmäßigen Intervallen auf die einlaufenden<br />

Daten an. Überschreiten die<br />

Ergebnisse definierte Grenzwerte (wie<br />

etwa be<strong>im</strong> Klassiker von fünf fehlgeschlagenen<br />

Login-Versuchen am gleichen<br />

Rechner in wenigen Minuten), dann löst<br />

Splunk einen Alarm aus, den es als E-<br />

Mail versendet, der ein Skript auslöst<br />

oder der einfach nur lokal <strong>im</strong> GUI des<br />

Administrators erscheint.<br />

Ein »Save«-Button in der Weboberfläche<br />

speichert die aktuell konfigurierte Suche.<br />

Gerade nach längerem Tüfteln, das erfolgreich<br />

etwas Best<strong>im</strong>mtes aus dem Datenberg<br />

herausfiltern half, kann die Option,<br />

eine identische Suche später noch einmal<br />

durchzuführen, sehr wertvoll sein<br />

Einen Angreifer erkennen<br />

Abbildung 2: Die Übersichtsseite der Splunk-Suche, neudeutsch Search-App genannt.<br />

neben dem Suchfeld darf er den Zeitraum<br />

einschränken, über den die Suche laufen<br />

soll. Neben vordefinierten Werten stehen<br />

ihm hier auch die Möglichkeit einer<br />

genauen Zeitangabe sowie Echtzeitanzeigen<br />

(analog zum »tail ‐f Alle_Logdaten |<br />

grep ‐i Suchstring«) zur Verfügung.<br />

Schönheit <strong>im</strong> Detail<br />

Bis hierhin leistet Splunk – abgesehen<br />

von einer netten Weboberfläche und<br />

der Benutzerverwaltung – nichts, was<br />

nicht auch ein Syslog-Server und ein<br />

paar Skripte könnten, abgesehen vom<br />

deutlich höheren Tempo, mit dem die<br />

Ergebnisse kommen. Spannend wird es<br />

jedoch, wenn der Admin etwas tiefer in<br />

die Suchsprache einsteigt. Will er zum<br />

Beispiel nur die Webserver-Logs durchsuchen,<br />

dann erreicht er das mit einer<br />

Suche wie »sourcetype="access_combined"<br />

Suchstring«. Zum Einschränken<br />

auf die Webserver-Logs gibt es noch weitere<br />

Möglichkeiten.<br />

Um Auswertungen zu fahren, die logisch<br />

komplexer sind, zum Beispiel: „Welcher<br />

Pfad auf dem Webserver wurde wie oft<br />

abgerufen?“, benötigt Splunk so genannte<br />

Field Extractions. Diese sind bei<br />

den Apps oder Technology Add-ons enthalten,<br />

der Administrator kann sie aber<br />

auch selbst entweder sehr bequem über<br />

das Web-GUI oder direkt in einer Regular<br />

Expression in der Konfigurationsdatei<br />

»transforms.conf« angeben. Hier gibt er<br />

Splunks Konfigurationshierarchie<br />

Splunk regelt die meisten Konfigurationen über<br />

Klartextdateien. Diese haben in der Regel ein<br />

Stanza-Format wie etwa ».ini«-Dateien:<br />

[sektion]<br />

Schlüssel=Wert<br />

Noch_ein_Schlüssel=Noch_ein_Wert<br />

In einigen Fällen ist es aber notwendig, dass<br />

allgemein »Einstellung 1« gilt, aber in best<strong>im</strong>mten<br />

Fällen »Einstellung 2«. Für diese Fälle gelten<br />

<strong>im</strong> Dateibaum von Splunk Vorfahrtsregeln:<br />

Eine kompliziertere Suche könnte etwa<br />

so aussehen:<br />

sourcetype=*|rename SRC as clientip|U<br />

transaction fields=clientip<br />

maxspan=50s|search sourcetype="syslog"U<br />

sourcetype="access_combined"<br />

Übersetzt in für Menschen leichter verständliche<br />

Sätze also etwa:<br />

n N<strong>im</strong>m alle Logeinträge.<br />

n Wenn es Einträge gibt, die ein Feld<br />

»SRC« haben, dann benenne das Feld<br />

für diese Suche in »clientip« um. Das<br />

Feld kommt aus der Unix-App für<br />

Splunk , die <strong>Linux</strong>-IPtables-Syslog-Einträge<br />

parst, und beinhaltet die Quell-IP<br />

eines Firewall-Logeintrags.<br />

n Sortiere die Logeinträge entsprechend<br />

»client ip«. In Clientip stehen jetzt sowohl<br />

IPtables- als auch die Webserver-Einträge,<br />

und zwar für Ereignisse<br />

innerhalb von 50 Sekunden.<br />

n Suche alle Einträge, die sowohl Syslog-<br />

(IPtables) als auch Webserver-Zugriffe<br />

haben.<br />

n Zuerst gelten die Einstellungen der Dateien<br />

in »$SPLUNK_HOME/etc/system/local«.<br />

n Steht dort nichts, gilt »$SPLUNK_HOME/etc/<br />

apps/Name_der_Applikation/local«,<br />

n danach »$SPLUNK_HOME/etc/apps/Name_<br />

der_Applikation/default«,<br />

n schließlich »$SPLUNK_HOME/etc/system/<br />

default«.<br />

Also hat »/etc/system/local« höchste Priorität,<br />

hier sollten Admins Änderungen vornehmen, da<br />

diese auch Systemupdates überdauern.


Rechnung. Nach einer Registrierung kann<br />

der Admin eine Vollversion der Software<br />

herunterladen, die aber auf 500 MByte<br />

pro Tag und 60 Tage Laufzeit l<strong>im</strong>itiert ist.<br />

Forwarder kosten keine Lizenzen.<br />

Splunk 03/2013<br />

Sysadmin<br />

Abbildung 3: Einfache Frage, übersichtliche Antwort: „Zeige mir die Top-URLs an, die von den meisten Leuten<br />

hier <strong>im</strong> LAN angesurft wurden.“ Aufbereitet von Splunk, extrahiert aus den Firewall- oder Proxylogs.<br />

Im zusammenhängenden Satz: Suche<br />

alle Logs und fasse jene zusammen, bei<br />

denen innerhalb von 50 Sekunden von<br />

der gleichen Quell-IP sowohl Firewall-<br />

Logeinträge vorliegen als auch Webserver-Zugriffe<br />

erfolgt sind. Dies würde zum<br />

Beispiel einen Portscan finden, der an<br />

die Firewall hämmert und bei offenen<br />

Webservern ausprobiert, was er mit dem<br />

HTTP-Server so anfangen kann, etwa<br />

durch »nmap ‐‐script=http*«.<br />

Die Suchsprache enthält jede Menge Routinen<br />

zur Textmanipulation, statistischen<br />

Auswertung und Formatierung der Ergebnisse.<br />

Auch die abzusuchenden Zeiträume<br />

können Admins direkt <strong>im</strong> Suchkommando<br />

mitgeben. Splunk hat auf der<br />

Webseite sogar eine eigene Dokumentationsseite<br />

„Splunk für SQL-Anwender“<br />

[4], die zeigt, wie in der Splunk-Sprache<br />

oder ‐Logik Joins zwischen verschiedenen<br />

Logquellen funktionieren.<br />

Besser einsortieren<br />

Die Stecknadel <strong>im</strong> Heuhaufen, bei deren<br />

Suche Splunk den Administrator unterstützen<br />

will, findet häufig erst, wer<br />

technisch ganz unterschiedliche, aber<br />

semantisch ähnliche Logdaten miteinander<br />

vergleicht. Zum Beispiel sind „alle<br />

fehlgeschlagenen Logins“ in einem heterogenen<br />

Netz nicht nur Unix-PAM- und<br />

SSH-Einträge, sondern auch Windows-<br />

Eventlogs und vielleicht sogar Samba-<br />

Logdaten. Diese kann man zwar mit verschiedenen<br />

Splunk-Erweiterungen auch<br />

parsen und die Software erkennt auch die<br />

Felder für den Benutzernamen und die<br />

Quelle, von der aus der Versuch unternommen<br />

wurde. Aber weil die Entwickler<br />

der Erweiterungen sich meist nicht an<br />

Standards halten, heißt es dort mal »username«,<br />

mal »user_name« und ein anderes<br />

Mal einfach »user«.<br />

Damit der Admin trotzdem mit einfachen<br />

Suchen alle fehlgeschlagenen<br />

Logins sieht, gibt es das Tagging. Hier<br />

kann er einmal für jeden Typ (Windows,<br />

Samba, Unix) definieren, was ein »failed_<br />

log in« ausmacht. Danach kann er nach<br />

»tag="failed_login"« suchen und alle<br />

Events in einem einheitlichen Ergebnis<br />

begutachten.<br />

Lizenzen und Preise<br />

Splunk ist proprietär, eine Open-Source-<br />

Variante fehlt. Neben der kostenpflichtigen<br />

Enterprise-Lizenz gibt es aber<br />

auch eine kostenlose und zeitlich unbeschränkte<br />

Lizenz. Sie gilt aber nur für<br />

500 MByte pro Tag und gestattet keine<br />

automatische Alarmierung, die zentrale<br />

Verwaltung anderer Splunk-Systeme und<br />

eine verteilte Installation sind auch nicht<br />

möglich. Die gute Online-Community<br />

hilft jedoch meist auch bei komplizierteren<br />

Fragen schnell weiter.<br />

Wer mehr braucht, muss zur Enterprise-<br />

Version greifen. Die lizenziert sich ausschließlich<br />

nach einlaufendem Datenvolumen:<br />

Mehr GByte an Logs bedeuten<br />

hier automatisch mehr Euro auf der<br />

Zusammenfassung<br />

Splunk bietet eine durchaus mächtige<br />

Plattform, um aus riesigen Logfiles mit<br />

einem Werkzeug die wirklich relevanten<br />

Informationen herauszuziehen. Der<br />

Einsatz beschränkt sich nicht nur auf sicherheitsrelevante<br />

Logs, Admins können<br />

vielmehr beliebige Textdaten einfüttern<br />

und auswerten.<br />

Das hat zwar seinen Preis, denn Splunk<br />

ist keinesfalls Software der Sorte „Installieren<br />

und fertig“, es verlangt von<br />

seinen Anwendern einen klaren Plan,<br />

Anpassungen und Erweiterungen sind<br />

fast <strong>im</strong>mer notwendig. Aber genau das<br />

erledigt Splunk <strong>im</strong> Verhältnis zu anderen<br />

Produkten sehr einfach, ohne dabei an<br />

Mächtigkeit einzubüßen. Viele Admins<br />

lassen selbst gestrickte Skripte laufen,<br />

um auf best<strong>im</strong>mte Logeinträge automatisch<br />

zu reagieren. Jetzt verleitet Splunk<br />

dazu, diese aufzugeben – zu einem stolzen<br />

Preis, der sich nach den verarbeiteten<br />

Datenmengen richtet.<br />

Die kleinste Lizenz fängt laut Webseite<br />

bei 5000 US-Dollar an, Euro-Preise gibt es<br />

individuell auf Anfrage bei den Splunk-<br />

Partnern. Die Preise pro GByte werden<br />

allerdings deutlich günstiger, je größer<br />

das gekaufte Volumen ist. (mfe) n<br />

Infos<br />

[1] Homepage von Splunk:<br />

[http:// www. splunk. com]<br />

[2] Splunk Universal Forwarder: [http:// de.​<br />

splunk. com/ download/ universalforwarder]<br />

[3] Splunk Search Reference: [http:// docs.​<br />

splunk. com/ Documentation/ Splunk/ latest/​<br />

SearchReference/ SearchCheatsheet]<br />

[4] Splunk für SQL-Anwender: [http:// docs.​<br />

splunk. com/ Documentation/ Splunk/ 5. 0. 1/​<br />

SearchReference/ SQLtoSplunk]<br />

Der Autor<br />

Konstantin Agouros arbeitet bei der N.runs AG<br />

als Berater für Netzwerksicherheit. Dabei liegt<br />

sein Schwerpunkt <strong>im</strong> Bereich von Telekommunikationsanbietern.<br />

Sein Buch „DNS/​DHCP“ ist bei<br />

Open Source Press erschienen.<br />

www.linux-magazin.de<br />

63


Sysadmin<br />

www.linux-magazin.de Open Attic 03/2013<br />

66<br />

Der Unified-Storage-Manager Open Attic bringt Ordnung ins LAN<br />

Wildwuchs aufräumen<br />

Open Attic verspricht Unified Storage auf Basis von Open Source und heterogenen Speichermedien. Das passende,<br />

protokollübergreifende Management liefert es gleich dazu. Aber taugt die Umgebung auch für Admins,<br />

die von Storage-Inseln und Ersatzkonstruktionen genug haben? Martin Loschwitz<br />

© Bouvier Sandrine, 123RF.com<br />

ting-Abteilungen einschlägiger Firmen<br />

einen englischen Begriff für das Thema<br />

geprägt haben: Unified Storage verspricht<br />

Abhilfe. Doch wie be<strong>im</strong> Cloud Computing<br />

gilt auch hier: Wer fünf Menschen nach<br />

einer Definition von Unified Storage fragt,<br />

erhält in der Regel sieben Antworten, die<br />

sich widersprechen.<br />

Immer mehr Anbieter fertiger Speicherlösungen<br />

machen sich das zunutze und<br />

preisen ihre (gelegentlich unveränderten)<br />

Produkte ebenfalls als Unified Storage<br />

an – oft treibt der Begriff aber nur den<br />

Preis von Speicherlösungen nach oben.<br />

Da kommt Open Attic (Abbildung 1, [2])<br />

wie gerufen: Das Projekt verspricht ein<br />

wirklich einheitliches, Protokoll- und<br />

Hardware-übergreifendes Storage-System<br />

auf Basis von Open-Source-Komponenten<br />

und ist kostenlos.<br />

Der zentrale Speicher <strong>im</strong> Unternehmen<br />

zeichnet sich nicht selten durch eine gehörige<br />

Portion Hornbach-IT aus („Es gibt<br />

<strong>im</strong>mer was tun“), vor allem wenn die<br />

Storage-Landschaft reich ist an meist historisch<br />

notwendiger, gewachsener Bastelarbeit.<br />

Neben dem zentralen Storage<br />

in Form eines SAN oder entsprechender<br />

Ersatzkonstruktionen – mit DRBD zur<br />

Kooperation in Sachen HA gezwungen –<br />

laufen diverse Rechner auch mit lokalem<br />

Datenspeicher und exportieren Daten per<br />

NFS, FTP oder Samba an andere Maschinen.<br />

Als Krönung treibt der Wildwuchs Blüten,<br />

etwa die verschiedenen Datenaustauschprotokolle,<br />

die mit schöner Regelmäßigkeit<br />

ihren Weg ins Unternehmen<br />

gefunden haben: SANs liefern ihre Daten<br />

mal per I-SCSI, mal per NFS aus, <strong>Linux</strong>-<br />

Server bieten für Windows-kompatible<br />

Systeme Samba, gelegentlich finden sich<br />

Sonderfälle wie ATA-over-Ethernet oder<br />

gar die verführerisch schnell aufgesetzten<br />

diversen Fuse-Lösungen mit SSH-FS oder<br />

Curl-FTP-FS [1].<br />

Von Uniformität kann da keine Rede mehr<br />

sein: Obwohl gerade klassische Speicherlösungen<br />

(SANs oder NAS) eigentlich<br />

auch für eine einheitliche Storage-Architektur<br />

stehen sollten, sorgen die alltäglichen,<br />

unvermeidbaren Anforderungen<br />

des administrativen Alltags regelmäßig<br />

für Hintertüren und hinzugebastelte Lösungen.<br />

Hier das Jäten<br />

anfangen ist aber<br />

meist nicht ratsam.<br />

Unified Storage<br />

Die Reichweite des<br />

Problems zeigt sich<br />

nicht zuletzt daran,<br />

dass sogar die Marke-<br />

Framework fürs Open Source<br />

Storage Management<br />

Die Firma IT Novum [3], die treibende<br />

Kraft hinter Open Attic, von der auch die<br />

Initiative für das Projekt ausging, preist<br />

das Produkt als Open Source Storage<br />

Management Framework. Wo andernorts<br />

Wildwuchs herrscht, will Open Attic<br />

als Admin-Werkzeug die Verwaltung nahezu<br />

aller Storage-Arten generalisieren<br />

und unter einer einheitlichen und leicht<br />

Abbildung 1: NFS-Volumes, FTP-Accounts und Samba-Shares lassen sich<br />

direkt aus Open Attic heraus per Mausklick anlegen.


zu bedienenden Oberfläche bündeln –<br />

als Single Point of Administration. Alle<br />

<strong>im</strong> Netz verfügbaren Datenspeicher, ganz<br />

gleich welcher Dienst nötig ist, um Daten<br />

an Applikationen auszuliefern, sollen mit<br />

der Lösung verwaltbar sein.<br />

Entsprechend bildet das mitgelieferte<br />

Webinterface eine der wichtigsten Komponenten<br />

von Open Attic. Damit verwalten<br />

Admins Storages, legen Freigaben<br />

für verschiedene Dienste an und löschen<br />

sie wieder. Auch alle anderen Tasks, die<br />

in Verbindung mit Speicherplatz anfallen,<br />

beispielsweise die Einrichtung der<br />

Netzwerkschnittstellen (Abbildung 2),<br />

soll der Admin hier erledigen. Externe<br />

Applikationen erhalten zudem über ein<br />

eigenes Open-Attic-API die Möglichkeit,<br />

über eine einheitliche Schnittstelle Storage<br />

selbst zu verwalten.<br />

Bevor diese Arbeit gelingt, ist jedoch eine<br />

Installation von Open Attic die Grundvoraussetzung<br />

– und genau hier brauen sich<br />

dunkle Wolken über dem offenen Dachboden<br />

zusammen (Attic heißt <strong>im</strong> Englischen<br />

der Dachboden, auch der Speicher<br />

unter einem Dach).<br />

Holprige Installation und<br />

nur für Debian<br />

Denn schnell wird deutlich: Open Attic<br />

ist noch kein fertiges Produkt für den<br />

generischen Einsatz auf <strong>Linux</strong>-Systemen.<br />

Wer die Seite mit der Installationsanleitung<br />

unter [4] öffnet, erfährt zunächst,<br />

dass die Entwickler Open Attic <strong>im</strong> Augenblick<br />

auf Debian <strong>Test</strong>ing programmieren.<br />

Damit das Produkt kompatibel zu Debian<br />

GNU/​<strong>Linux</strong> 6.0 (Squeeze) wird, stellen<br />

sie ein Skript namens »Backport.sh« zur<br />

Verfügung, das einige <strong>Paket</strong>e aus der<br />

Abbildung 2: Auch die Netzwerk-Konfiguration eines Systems verändern Admins mit dem Webinterface.<br />

Open Attic 03/2013<br />

Sysadmin<br />

www.linux-magazin.de<br />

67<br />

Abo abschließen und gewinnen!<br />

Sparen Sie 15% be<strong>im</strong><br />

Print- oder Digital-Abo<br />

und gewinnen Sie eines von zwei<br />

Archos 101 XS Gen 10 <strong>im</strong> Wert<br />

von circa 380 E!<br />

Die Verlosung erfolgt am 28.02.13 um 12 Uhr<br />

unter allen Abonnenten (außer Miniabos)<br />

Die Monatszeitschrift für Android-Fans, Smartphone- und Tablet-Nutzer<br />

Jetzt bestellen unter:<br />

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

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


Sysadmin<br />

www.linux-magazin.de Open Attic 03/2013<br />

68<br />

Abbildung 3: Eine vollständige Dienstüberwachung ist in Open Attic integriert.<br />

Zusätzlich kommt das System mit einer eigenen Nagios-3-Instanz.<br />

<strong>Test</strong>ing-Distribution des Debian-Projekts<br />

für Squeeze zurückportiert.<br />

Das Vorgehen weckt Bedenken: Fraglich<br />

bleibt beispielsweise, wieso statt<br />

des kruden Shellskripts die Open-Attic-<br />

Entwickler nicht vorkompilierte <strong>Paket</strong>e<br />

für die benötigten Tools in Form eines<br />

APT-Repository bereithalten. So könnten<br />

Squeeze-Admins die Tools unmittelbar<br />

installieren, statt erst GCC & Co. auszupacken.<br />

Alternativ lässt sich die Umgebung<br />

freilich auch direkt auf Debian <strong>Test</strong>ing<br />

installieren, doch dürfte diese Option<br />

für die meisten professionellen Admins<br />

ausscheiden, weil der Betrieb der stabilen<br />

Version einer Distribution gewünscht<br />

oder gar vorgeschrieben ist.<br />

Wer sich die Arbeit des Zurückportierens<br />

antut oder gleich Debian Wheezy installiert,<br />

wird <strong>im</strong>merhin mit fertigen <strong>Paket</strong>en<br />

für Open Attic belohnt. Die funktionieren<br />

allerdings nicht ganz so, wie man es von<br />

Debian-typischen <strong>Paket</strong>en kennt: Nach<br />

der Installation des <strong>Paket</strong>s »openattic«<br />

erscheint eine Debconf-Nachricht und informiert<br />

darüber, dass <strong>im</strong> Anschluss an<br />

die Installation das Shellskript »oaconfig<br />

install« auszuführen ist.<br />

Nichts für schwache Nerven<br />

Open-Attic-Webinterface<br />

zeigte sich.<br />

Doch Pech hat, wer<br />

nicht auf Debian, sondern<br />

auf eine andere<br />

Distribution setzen<br />

will oder muss: Andere<br />

Installationsanleitungen<br />

als die<br />

bereits erwähnte gibt<br />

es offenbar nicht.<br />

Open Attic auf einer<br />

anderen Distribution<br />

als Debian einsetzen<br />

– das erfordert wahrscheinlich<br />

Mut und<br />

gute Nerven.<br />

Denn auch entsprechende<br />

<strong>Paket</strong>e für RHEL, SLES oder<br />

Ubuntu stehen zumindest von Projektseite<br />

(noch?) nicht zur Verfügung. Ohnehin<br />

dürfte Open Attic derzeit für typische<br />

Enterprise-Kunden wenig interessant sein<br />

– wer Geld für eine unterstützte Enterprise-Distribution<br />

zahlt, will vermutlich<br />

ein perfekt integriertes System und hätte<br />

spätestens bei »Backport.sh« Reißaus genommen.<br />

Doch das mag sich ja in der<br />

weiteren Entwicklung noch ändern.<br />

Installation pfui!,<br />

Funktionsumfang hui!<br />

Gänzlich anders als bei der Installation<br />

schaut es bei der Funktionalität und Benutzbarkeit<br />

von Open Attic aus. Nach<br />

dem Login <strong>im</strong> Webinterface präsentiert<br />

sich dem Admin ein wahres Füllhorn<br />

verschiedener Funktionen. Die Aufteilung<br />

des GUI ist klassisch: Links steht<br />

eine Übersicht über die verschiedenen<br />

Module, rechts der Inhalt eines Moduls,<br />

der nach dem Anklicken links erscheint.<br />

Open Attic steht insofern in der guten<br />

Tradition vieler Webinterfaces und sorgt<br />

so dafür, dass Benutzer sich schnell zurechtfinden,<br />

auch wenn vor allem am Anfang<br />

viele weiße Listen erst noch bestückt<br />

werden wollen.<br />

Jeder einzelnen Aufgabenart ist ein eigenes<br />

Menü <strong>im</strong> Dashboard zugewiesen:<br />

Weit oben rangieren die Seiten, die einen<br />

Überblick über den Zustand des Open-Attic-Systems<br />

geben. Neben Logmeldungen<br />

vom Hostsystem und einer mittels Diagrammen<br />

aufbereiteten Übersicht über<br />

den benutzten und verfügbaren Speicher<br />

stößt der Admin auf viele Kleinode,<br />

die Open Attic anbietet. Beispielsweise<br />

kommt die Umgebung mit einem vollständigen<br />

Nagios 3 (Abbildung 3), das<br />

die Vitalwerte des Clusters überwacht<br />

und Alarm schlägt.<br />

Die Konfiguration dieses Monitoring erfolgt<br />

vollautomatisch, der Admin muss<br />

sich nicht mit den komplexen Nagios-<br />

Interna auseinandersetzen. Open Attic<br />

garniert die Darstellung mit Diagrammen<br />

und Graphen, die die historische<br />

Entwicklung eines Wertes schnell und<br />

übersichtlich anzeigen. Hilfreich ist das<br />

besonders für strategisches Monitoring,<br />

denn künftige Engpässe sind auf diese<br />

Weise schnell zu erkennen.<br />

Storage-Hardware<br />

Auch <strong>im</strong> Hinblick auf Storage-Volumes<br />

gibt sich Open Attic keine Blöße und wird<br />

seinem Versprechen gerecht, ein univer-<br />

Auch muss der Admin vorhandene Logical<br />

Volumes, die zum System gehören<br />

und die Open Attic deshalb in Ruhe lassen<br />

soll, händisch als tabu markieren.<br />

Immerhin: Im Anschluss an den Aufruf<br />

von »oaconfig« war bei Versuchen ein<br />

Login auf der IP-Adresse des <strong>Test</strong>rechners<br />

per HTTP problemlos möglich und das<br />

Abbildung 4: Einmal angelegte Volumes lassen sich über das Webfrontend auch <strong>im</strong> Nachhinein noch verändern.<br />

Im Bild das Vergrößern eines Logical Volume.


selles Werkzeug für die Verwaltung des<br />

physikalischen Storage zu sein. Die Verwaltung<br />

physikalischer Speicherdevices<br />

findet der Admin unter den Statistik- und<br />

Übersichtfunktionen.<br />

Open Attic kennt viele Arten physikalischer<br />

Storage-Devices und erlaubt die<br />

übersichtliche Administration per Webinterface.<br />

Unter dem Punkt »Disks« findet<br />

sich eine Liste der Platten, die lokal<br />

auf der Maschine vorhanden sind. Dazu<br />

zählt Open Attic auch Volume Groups,<br />

die in LVM hinterlegt sind. Alternativ lassen<br />

sich unter diesem Menüpunkt auch<br />

Storage-Devices von SANs verwalten, die<br />

beispielsweise per I-SCSI auf dem Host<br />

angebunden sind.<br />

Volumes verwalten und<br />

Snapshots anlegen<br />

Die Volume-Verwaltung ist <strong>im</strong> gleichnamigen<br />

Menü eingerichtet (Abbildung 4):<br />

Soll die Open-Attic-Maschine ein Volume<br />

für einen spezifischen Zweck verwenden,<br />

beispielsweise als NFS-Export oder für einen<br />

Samba-Share, dann muss der Admin<br />

das Volume erst anlegen. Im selben Menü<br />

findet sich auch die Snapshot-Funktion,<br />

mit der Schnappschüsse von Storage-Devices<br />

und Volumes <strong>im</strong> Handumdrehen<br />

angelegt sind. Ein besonderes Schmankerl:<br />

Open Attic unterstützt auch ZFS,<br />

auch bereits vorhandene Volumes. Wer<br />

in seinem Netzwerk auf I-SCSI setzt, hat<br />

obendrein die Möglichkeit, <strong>im</strong> Webinterface<br />

I-SCSI-LUNs anzulegen, die er dann<br />

auf den Zielservern wiederum als lokale<br />

Platten einbinden kann.<br />

Doch nur selten können Admins bei der<br />

Tabula rasa anfangen. Und erfahrungsgemäß<br />

ist es in einem gewachsenen IT-Set up<br />

eher so, dass Zugriff auf Storage nicht<br />

nur auf Blocklevel-Ebene gewünscht ist.<br />

Vielmehr ist auch über die verschiedenen<br />

Fileprotokolle wie NFS oder Samba für<br />

den einen oder anderen Dienst Zugriff<br />

erwünscht, wozu meist die Integration<br />

in vorhandene Infrastrukturen nötig ist.<br />

Oft genug sind die Dienste dieser Art auf<br />

diverse Server <strong>im</strong> Netz verteilt und nicht<br />

zentral administrierbar.<br />

Leider nur teilweise<br />

integriert<br />

Wenn jetzt Open Attic mit dem Versprechen<br />

antritt, diesem Chaos ein Ende zu<br />

bereiten, dann gelingt das nur zum Teil:<br />

Tatsächlich installiert die Umgebung<br />

bereits be<strong>im</strong> eigenen Setup alle nötigen<br />

Komponenten wie NFS-, FTP- und<br />

Samba-Server, die sich auch alle wunderbar<br />

per Webinterface <strong>im</strong> Menü »Freigaben«<br />

verwalten lassen. Ein zuvor angelegtes<br />

Volume, das beispielsweise am<br />

Storage selbst lokal als Platte vorhanden<br />

ist, lässt sich so tatsächlich schnell als<br />

NFS-Exporteur nutzen.<br />

Gleiches gilt entsprechend für Samba-<br />

Shares. Hat der Admin <strong>im</strong> Webinterface<br />

die entsprechenden Schritte durchge-<br />

Open Attic 03/2013<br />

Sysadmin<br />

www.linux-magazin.de<br />

69<br />

Digitales aBO<br />

linuxUser: Das Monatsmagazin für die Praxis<br />

DigisUB *<br />

nur 56,10 €<br />

<strong>im</strong> Jahr (12 PDFs)<br />

* Digitales Abo, jederzeit kündbar<br />

Jetzt Bestellen Unter:<br />

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

Telefon: 07131 /2707 274<br />

Fax: 07131 / 2707 78 601<br />

E-Mail: abo@linux-user.de


Sysadmin<br />

www.linux-magazin.de Open Attic 03/2013<br />

70<br />

Abbildung 5: Verfügbare System-Updates tauchen <strong>im</strong> Webfrontend auf, über die Installation entscheidet<br />

jedoch letztlich der Admin. Mit Debian <strong>Test</strong>ing klappt das recht gut.<br />

führt, steht schnell beispielsweise einem<br />

Windows-Client eine Freigabe per Samba<br />

zur Verfügung.<br />

Im Hinblick auf diese Funktionen beeindruckt<br />

die Qualität von Open Attic<br />

durchaus, denn <strong>im</strong> <strong>Test</strong> ließen sich tatsächlich<br />

alle Volumes wie versprochen<br />

anlegen und nutzen. Defizite ergeben<br />

sich aber für Setups, in denen aufwändige<br />

Zusatzkonfigurationen notwendig<br />

sind: Soll beispielsweise das Samba <strong>im</strong><br />

Hintergrund mit LDAP reden, so bietet<br />

das Webinterface (noch) keine Möglichkeit,<br />

dies einzurichten.<br />

Systemverwaltung und HA<br />

Dass sich Open Attic nicht auf die Speicherverwaltung<br />

beschränken will, machen<br />

die <strong>im</strong> Webinterface vorhandenen<br />

Zusatzfunktionen deutlich. Im Grunde<br />

handelt es sich fast schon um ein umfassendes<br />

Werkzeug zur Systemadministration.<br />

So ist es per Webinterface machbar,<br />

die Netzwerkkarten des System zu bearbeiten<br />

(Abbildung 2). Unter »Online‐Update«<br />

(Abbildung 5) steht dem System<br />

ein grafischer Aktualisierungsmanager<br />

zur Verfügung, der <strong>im</strong> Hintergrund auf<br />

»aptitude« zugreift. Welche <strong>Paket</strong>e aktualisierbar<br />

sind, findet Open Attic regelmäßig<br />

selbst heraus, den Startschuss dafür<br />

gibt aber der Admin.<br />

Auch an eine weitere essenzielle Anforderung<br />

an Storage-Systeme haben die<br />

Entwickler gedacht: High Availability<br />

[5]. In Open Attic lässt sie sich über die<br />

Gegenstellen-Funktion umsetzen: Für ein<br />

ausgewachsenes HA-Setup bauen Admins<br />

zunächst zwei Open-Attic-Systeme, die<br />

jeweils einen eigenen API-Key enthalten.<br />

Im Webinterface, unter »Gegenstellen«,<br />

lassen sich die beiden Instanzen miteinander<br />

verbinden. Ist das <strong>Paket</strong> »openattic‐module‐drbd«<br />

installiert, kann sich<br />

der Admin danach an die Einrichtung der<br />

Replikation machen.<br />

Im Erfolgsfalle sorgt Open Attic mit<br />

DRBD dafür, dass die einzelnen Open-<br />

Attic-Maschinen ihren Datensatz stets<br />

synchron halten. Unschön ist, dass sich<br />

dabei das HA-Pflichtprogramm mit Pacemaker<br />

und Corosync in Open Attic nicht<br />

übers Webinterface konfigurieren lässt,<br />

sondern den Einsatz von Zusatzsoftware<br />

wie der <strong>Linux</strong> Cluster Management Console<br />

(LCMC, [6]) voraussetzt.<br />

Angesichts der Tatsache, dass die Implementierung<br />

eines umfassenden GUI für<br />

<strong>Linux</strong>-HA überaus umständlich ist, sei<br />

es Open Attic verziehen, diese Funktion<br />

noch nicht anzubieten. Wünschenswert<br />

wäre jedenfalls, dass Open Attic DRBD-<br />

Ressourcen automatisch in einen bereits<br />

vorhandenen Clustermanager integriert.<br />

Die händische Erstkonfiguration von<br />

Pacemaker und Corosync wäre Admins<br />

in diesem Falle durchaus zumutbar.<br />

Lizenzmodell<br />

Open Attic ist eine verhältnismäßig junge<br />

Lösung, doch hat IT Novum als treibende<br />

Kraft hinter dem Projekt durchaus konkrete<br />

Vorstellungen davon, wie sie Open<br />

Attic vermarkten möchte. Der Kern ist die<br />

Community-Variante, die das Gros der<br />

Funktionen enthält und unter einer freien<br />

Lizenz verfügbar ist – <strong>im</strong> Wesentlichen<br />

die in diesem Artikel vorgestellte Version.<br />

Die Enterprise-Edition, die IT Novum<br />

ebenfalls anbietet, umfasst zusätzlich<br />

Support in verschiedenen Abstufungen<br />

bis hin zu 24/​7, aber auch zu einem entsprechenden<br />

Preis: Der Standard-Support<br />

beginnt bei knapp 3000 Euro pro Jahr,<br />

das <strong>Paket</strong> „XX-Large“ erreicht schnell<br />

50 000 Euro und mehr.<br />

Neben dem Support bietet die kommerzielle<br />

Variante Features wie die Snap-Apps,<br />

die konsistente Snapshots von virtuellen<br />

Systemen und Datenbanken anfertigen<br />

(die Snapshots in der Community-Edition<br />

erlauben nur Abbilder auf Volume- oder<br />

ZFS-Grundlage). Per SMI-S will Open Attic<br />

Enterprise in Zukunft auch ein herstellerunabhängiges<br />

Interface für Managementaufgaben<br />

anbieten, doch ist diese<br />

Funktion laut IT Novum zurzeit noch<br />

in Entwicklung. Interessant ist sicherlich<br />

das Angebot, sich bei der Open-Attic-<br />

Installation <strong>im</strong> Rahmen des Supports der<br />

Enterprise-Variante von IT Novum unter<br />

die Arme greifen zu lassen.<br />

Ein Wechselbad<br />

Open Attic ist vielversprechend, sorgt<br />

be<strong>im</strong> aktuellen Stand aber noch für ein<br />

Wechselbad der Gefühle. Dem Anspruch,<br />

als Management-Frontend für verschiedene<br />

Speichertechnologien dem Storage-<br />

Wirrwarr <strong>im</strong> Rechenzentrum ein Ende<br />

zu setzen, wird die Software gerecht.<br />

Nach der Installation ist die Umgebung<br />

eine vollständige Managementsuite für<br />

Storage-Typen aller Art, die den Administratoren<br />

auch die lästige Arbeit mit<br />

den vielen unterschiedlichen Protokollen<br />

abn<strong>im</strong>mt.<br />

Dass sich mehrere Open-Attic-Instanzen<br />

sogar über das zentrale freie API miteinander<br />

verbinden lassen und in diese<br />

Funktion auch Hochverfügbarkeit als<br />

Konzept mit eingeflossen ist, beeindruckt.<br />

Die Integration eines Clustermanagers<br />

in dieses Konzept ist eine Pflicht,<br />

der sich die Open-Attic-Community unter<br />

Führung von IT Novum wohl in nächster<br />

Zeit annehmen wird.<br />

Allerdings – und hier müssen die Projektoberen<br />

nachbessern – ist es ein eher<br />

steiniger Weg, bis Open Attic tatsächlich<br />

diese Aufgabe wahrnehmen kann. Denn<br />

die Installation ist mühsam, ein obskures<br />

Shellskript erweckt kein Vertrauen, und<br />

dass Open Attic <strong>im</strong> Augenblick nur auf


Debian Wheezy zuverlässig funktioniert,<br />

macht die Sache noch schl<strong>im</strong>mer.<br />

Keine Enterprise-<strong>Paket</strong>e?<br />

Man darf vermuten, dass die Distributionswahl<br />

vorrangig auf die persönliche<br />

Präferenz der Entwickler von Open<br />

Attic zurückzuführen ist, laut Aussage<br />

von Steffen Rieger, der die Open-Attic-<br />

Entwicklung bei IT Novum betreut, ist<br />

Wheezy auch tatsächlich die empfohlene<br />

Distribution. Doch genau hier liegt das<br />

Problem – augenblicklich positioniert<br />

sich die Open-Attic-Lösung kaum sinnvoll<br />

am Markt. Suse und Red Hat bieten<br />

jeweils ihre eigenen Storage-Appliances,<br />

die in das gleiche Füllhorn stoßen wie<br />

Open Attic.<br />

Wenn das Projekt zu diesen Lösungen in<br />

Konkurrenz treten will, ist es unverzeihlich,<br />

dass vorbereitete <strong>Paket</strong>e nicht für<br />

alle Enterprise-Distributionen zur Verfügung<br />

stehen. Soll Open Attic hingegen<br />

eine eigene Storage-Appliance werden,<br />

die sich von CD installieren lässt, so stellt<br />

sich die Frage, wieso das Projekt keine<br />

solchen Images bereitstellt. Auf diese<br />

Weise ließe sich der Umstand kaschieren,<br />

dass Open Attic <strong>im</strong> Augenblick nur<br />

auf Wheezy gut funktioniert. Außerdem<br />

könnte das Projekt seinen Benutzern die<br />

Bastelei mit eigenen <strong>Paket</strong>en und Shellskripten<br />

abnehmen.<br />

Noch viel Potenzial<br />

Freilich wäre eine solche eigene Appliance<br />

mit einem Mehraufwand verbunden,<br />

Vorteile böte sie aber allemal. Hier<br />

sollte Open Attic eine Entscheidung<br />

fällen und entsprechend handeln. Die<br />

Storage-Lösung ist toll und bietet viel.<br />

Doch wenn es sich selbst keinen Enterprise-Anstrich<br />

verpasst, wird das Projekt<br />

vielen Entscheidern verborgen bleiben,<br />

deren Hauptaugenmerk auf Enterprise-<br />

Readiness liegt. (mfe)<br />

n<br />

Infos<br />

[1] Fuse-Dateisysteme mit SSH und FTP:<br />

[http:// en. gentoo‐wiki. com/ wiki/ Mounting_<br />

SFTP_and_FTP_shares]<br />

[2] Open Attic: [http:// www. openattic. org]<br />

[3] IT Novum: [http:// www.it-novum.de]<br />

[4] Installationsanleitung: [http:// docs.​<br />

open‐attic. org/ de/ install/ index. html]<br />

[5] Martin Loschwitz, „An Katastrophen denken“:<br />

<strong>Linux</strong>-<strong>Magazin</strong> 02/13, S. 36<br />

[6] Homepage der <strong>Linux</strong> Cluster Management<br />

Console: [http:// lcmc. sourceforge. net/]<br />

[7] Storage-Techniken waren Titelthema in den<br />

<strong>Linux</strong>-<strong>Magazin</strong>en 10/04, 11/05 und 02/13<br />

Der Autor<br />

Martin Gerhard Loschwitz<br />

arbeitet zurzeit als Principal<br />

Consultant bei Hastexo. Er<br />

beschäftigt sich dort ganz<br />

Cloud-affin mit Hochverfügbarkeitslösungen,<br />

mit Open<br />

Stack sowie mit verteilten Dateisystemen.<br />

Open Attic 03/2013<br />

Sysadmin<br />

www.linux-magazin.de<br />

71<br />

Einfach auf LinuX umstEigEn!<br />

DigiSub-Mini * : 2 digitale Ausgaben Easy<strong>Linux</strong>!<br />

5€<br />

FÜR 2 AUSGABEN<br />

ihRE VoRtEiLE<br />

❱ EasyLinuX ist idEaL<br />

füR WindoWs-umstEigER<br />

❱ mit schRitt-füR-schRittanLEitungEn<br />

Zum ERfoLg<br />

❱<br />

❱<br />

2X tEstEn ohnE Risiko,<br />

das digisuB-mini ist<br />

JEdERZEit kündBaR!<br />

nutZBaR auf notEBook und Pc,<br />

taBLEt odER smaRtPhonE!<br />

JEtZt gLEich BEstELLEn!<br />

n tel.: 07131 / 2707 274 n fax: 07131 / 2707 78 601 n uRL: www.easylinux.de/abo n E-mail: abo@easylinux.de<br />

*geht ohne Kündigung in ein digitales Jahresabo mit 4 Ausgaben pro Jahr über und ist jederzeit kündbar!


Forum<br />

www.linux-magazin.de Winterrätsel 03/2013<br />

72<br />

Auflösung des Winterrätsels<br />

Spiele für Ausgebuffte<br />

Nur wer sich in der <strong>Linux</strong>- und Computerspiele-Historie auskennt, hatte eine Chance bei den Fragen des Winterrätsels<br />

aus Ausgabe 01/13. Diesmal gibt’s neben den kniffligen Fragen auch die Antworten – und den Namen<br />

des Rätselkönigs 2013, der neben dem Ruhm auch ein Android-Smartphone einstreicht. Nils Magnus<br />

© tiero, 123RF.com<br />

Wer den Commodore PET oder den Atari<br />

ST sowieso nicht kennt und nie unter<br />

<strong>Linux</strong> einen Spieleklassiker emuliert gestartet<br />

hat, tut sich vermutlich schwer<br />

mit dem Lösen der 20 Aufgaben des Winterrätsels<br />

<strong>im</strong> <strong>Linux</strong>-<strong>Magazin</strong> 01/2013. In<br />

dieser Ausgabe folgt nun die Auflösung<br />

– wie gewohnt ausführlich.<br />

1. Manche Computerpioniere zweckentfremden<br />

gerne alte Hardware, um darauf mit Hilfe eines<br />

Spielchens in die Tiefen des Sonnensystems abzutauchen.<br />

Die wenigsten allerdings schreiben<br />

dazu gleich ein komplettes Betriebssystem. Wie<br />

nannte der hier gesuchte Autor seine Software?<br />

Der inzwischen verstorbene Dennis Ritchie<br />

gab in einem Paper [1] an, dass sich<br />

sein Kollege und Unix-Hauptentwickler<br />

Ken Thompson in erster Linie deshalb mit<br />

einer damals schon in die Jahre gekommenen<br />

PDP-7 befasste, um Space Travel<br />

zu <strong>im</strong>plementieren. In dem Game bewegte<br />

sich der Spieler <strong>im</strong> Sonnensystem<br />

und navigierte unter Berücksichtigung<br />

der Gravitation und anderer physikalischer<br />

Größen. Als Unterbau für das Spiel<br />

schrieb Thompson eine frühe Fassung<br />

von Unics, dem späteren Unix. Insofern<br />

sind zwei Antwortbuchstaben zulässig:<br />

„S“ und „U“.<br />

2. Wer den Vi liebt, verehrt auch den ähnlich zu<br />

bedienenden Spieleklassiker. Bei der Suche nach<br />

einem mächtigen Amulett passieren Coredumps.<br />

Womit hat sich der Spieler vorher gestärkt?<br />

Das Erkundungsspiel Nethack [2] wirkt<br />

auf flüchtige Beobachter wie eine spielerische<br />

Einführung in den Vi, denn der<br />

Spieler-Avatar, symbolisiert durch einen<br />

Klammeraffen, lässt sich durch die Tasten<br />

[H], [J], [K] und [L] steuern. Die Labyrinthe,<br />

die sich angeblich über Dutzende<br />

Ebenen erstrecken,<br />

und alle Gegenstände<br />

stellt das Spiel durch<br />

Ascii-Zeichen dar (Abbildung<br />

1). Das Prozentzeichen<br />

symbolisiert<br />

einen Apfel. Isst<br />

ihn ein Spieler, meldet<br />

Nethack: „Apple eaten.<br />

Core dumped.“<br />

3. Virtualisierung findet auch in Computerspielen<br />

statt: Wer mal gegen grüne und violette Außerirdische<br />

antrat, fand auf einem alten Rechner<br />

den Vorgänger des Abenteuers. Dort ging es so<br />

robust zu, dass besorgte Eltern und Tierschützer<br />

eine Zensur erwirkten. Wo durfte der Hamster<br />

des Hauses fortan nicht mehr hin?<br />

Im Grafikadventure „Day of the Tentacle“<br />

lässt sich in einem Regal eine Diskette<br />

mit dem Vorgängerspiel „Maniac Mansion“<br />

finden. Um komplexe Kausalitätsverknotungen<br />

mit Zeitreisen auszulösen,<br />

war ursprünglich vorgesehen, einen possierlichen<br />

Hamster in eine Mikrowelle<br />

zu setzen (Abbildung 2, [3]).<br />

4. <strong>Linux</strong> eignete sich bislang wenig als Trainingsplattform<br />

für den Häuserkampf oder die Abwehr<br />

schwer bewaffneter Aliens. Welcher CEO einer<br />

Spieleplattform fand vernichtende Worte über die<br />

aktuelle Release eines proprietären Betriebssystems<br />

und startete kürzlich den Betatest seiner<br />

Software für <strong>Linux</strong>?<br />

Die Plattform Steam war bislang die Domäne<br />

von Windows-Spielern mit Hang<br />

zum First Person Shooter. Die jüngste,<br />

kachelnde Ausgabe des Betriebssystems<br />

nennt Steam-Chef Gabe Newell eine<br />

„Katastrophe“, insbesondere durch den<br />

integrierten Shop sieht er seine Einnahmequellen<br />

in Gefahr. Auf der Konsumentenschau<br />

CES kündigt sein Unternehmen<br />

nun eine Konsole mit <strong>Linux</strong> namens<br />

Steam Box [4] an.<br />

Abbildung 1: Nethack stellt seine Grafiken mit Hilfe von Ascii-Zeichen dar.<br />

© NetHack team, Nethack GPL


© Thomas Hog<br />

Abbildung 2: Der Hamster zwecks Zeitreise in der Mikrowelle – „Maniac<br />

Mansion“ ist nichts für Tierschützer.<br />

5. Obwohl der Hersteller einer S<strong>im</strong>ulation seine<br />

Portierung eines erfolgreichen Spiels nicht unter<br />

einer freien Lizenz anbot, gewährte er den Teilnehmern<br />

eines Wettbewerbs Einblick in dessen<br />

Code, um ihn zu erweitern. Nach welcher Gottheit<br />

benannte sich das freigiebige Unternehmen?<br />

Ende des vorigen Millenniums erwarb das<br />

amerikanische Unternehmen Loki eine<br />

Lizenz zur Portierung für „Civilization:<br />

Call to Power“ und<br />

brachte damit eins der<br />

ersten nativen <strong>Linux</strong>-<br />

Spiele unter pro prietärer<br />

Lizenz heraus<br />

[5]. Im Rahmen des<br />

Atlanta <strong>Linux</strong> Showcase<br />

bekamen 30 Entwickler<br />

zwei Tage lang<br />

Einblick in den Code<br />

und konnten Erweiterungen<br />

für die S<strong>im</strong>ulation<br />

schreiben [6].<br />

6. Noch bevor er begann<br />

zum <strong>Linux</strong>-Kernel für Embedded-Plattformen<br />

und zu Codegeneratoren der<br />

GCC beizutragen, nahm sich der Entwickler einer<br />

virtuellen Maschine für verteilte Rollenspiele an<br />

und gab ihr den Namen seiner Spielfigur. Wie<br />

heißt der ursprüngliche Architekt der objektorientierten<br />

Spielmaschine?<br />

Den Compilerspezialisten Jörn Rennecke<br />

kennen viele unter seinem Spielernamen<br />

Amylaar [7]. Den gleichen Namen trug<br />

auch sein objektorientierter Gamedriver,<br />

der in die Fußstapfen der LP Mud Maschine<br />

trat. Diese Umgebung für verteilte<br />

Internet-Rollenspiele [8] trägt die Initialen<br />

von Lars Pensjö. Heute arbeitet er an<br />

der Grafikumgebung Ephenation [9].<br />

7. Eine Softwareschmiede, die zufällig ein grundlegendes<br />

Unix-Kommando <strong>im</strong> Namen trägt,<br />

prägte lange das Genre der First Person Shooter.<br />

Welcher Technikchef der Firma hat große Teile<br />

der Game-Engines unter die GPL gestellt? Dank<br />

der freien Lizenz tut die Engine noch heute in<br />

manch modernem Spiel Dienst.<br />

Id-Software kreierte Wolfenstein 3D,<br />

Doom und Quake. John D. Carmack,<br />

Mitbegründer und einer der Köpfe hinter<br />

dem Unternehmen, stellte den Code der<br />

Spieleplattformen unter die GPL [10].<br />

Per Frotz durch die Galaxis<br />

8. Lisp und KI nutzte ein mittlerweile aufgekauftes<br />

Unternehmen für seinen Textparser<br />

und setzte in den 1970ern erste Standards für<br />

Winterrätsel 03/2013<br />

Forum<br />

www.linux-magazin.de<br />

73<br />

MAGAZIN<br />

ONLINE<br />

<strong>Linux</strong>-<strong>Magazin</strong> newsLetter<br />

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

<strong>im</strong> Newsletter des <strong>Linux</strong>-<strong>Magazin</strong>s.<br />

Newsletter<br />

informativ<br />

kompakt<br />

tagesaktuell<br />

www.linux-magazin.de/newsletter


Forum<br />

www.linux-magazin.de Winterrätsel 03/2013<br />

74<br />

Abenteuerspiele. Mit freien Interpretern laufen<br />

die noch heute. Welcher Buchstabe dominiert<br />

die erfolgreichste Produktreihe genauso wie den<br />

Namen der Beschreibungssprache?<br />

Die Textparser von Infocom verstanden<br />

bereits in den 1980ern vollständige englische<br />

Sätze [11]. Sie waren damit das<br />

Frontend für Abenteuerspiele wie die<br />

Zork-Reihe, aber auch für eine Adaption<br />

von „Per Anhalter durch die Galaxis“.<br />

Heute gelingt es durch den Parser Frotz<br />

[12], der eine Z-Machine <strong>im</strong>plementiert,<br />

unter <strong>Linux</strong> diese Klassiker zu spielen.<br />

9. Automatenspiele wie Pac Man und Donkey Kong<br />

durften in keiner Spielhalle der frühen 1980er<br />

Jahre fehlen. Im Gegensatz zu den TTL-gesteuerten<br />

Pong oder Breakout besaßen die neuen<br />

einen richtigen Mikroprozessor. Welches Projekt<br />

kümmert sich seit 1996 darum, Emulatoren für<br />

diese Geräte anzubieten?<br />

Mit dem Emulator Mame [13] laufen ältere<br />

Spiele auch auf modernen PCs.<br />

10. Plan- und Eroberungsspiele gab es 1991 bereits<br />

einige. Neu war bei einem aber der Mehrspieler-Modus,<br />

der sich eine Funktion von X11<br />

pfiffig zunutze machte. Spieler, die wenig Wert<br />

auf Sicherheit legten, gaben vor dem Spielstart<br />

»xhost +« ein. Welches Kommando wäre besser?<br />

Bei Xbattle lenken die Teilnehmer Ressourcen<br />

über das Spielfeld, um Geländebereiche<br />

abzusichern [14]. Strategen<br />

spielen gemeinsam einen Spielprozess,<br />

der Ausgabefenster auf gleich mehreren<br />

X-Displays ansteuert. Um das X11-Protokoll<br />

zum jeweiligen Bildschirm zu leiten,<br />

müssen etwa ein MIT-Cookie und das<br />

Kommando »xauth add« den Server entsprechend<br />

autorisieren. Alternativ tunnelt<br />

»ssh ‐X« die jeweilige X11-Verbindung.<br />

Dicke Luftnummer<br />

11. Eine der aufwändigsten S<strong>im</strong>ulationen, die nativ<br />

als freie Software entwickelt wurde, greift auf<br />

Wunsch sowohl auf reale Wirtschafts- und Transportdaten<br />

als auch auf Wetterinformationen, Jahreszeiten<br />

und Sonnenstände zu. Welche Skriptsprache<br />

verwendet das Projekt intern vorrangig?<br />

Ein Jahrzehnt arbeiten die Entwickler<br />

bereits am Flugs<strong>im</strong>ulator Flightgear [15]<br />

und haben Beeindruckendes geleistet:<br />

Nicht nur eine ganze Reihe sehr unterschiedlicher<br />

Fluggeräte vom Jumbo bis<br />

zur Propellermaschine zaubert die Software<br />

auf den Bildschirm, sie setzt sie<br />

auch in realistische Umgebungen, zeigt<br />

Wetterphänomene und bevölkert den<br />

H<strong>im</strong>mel mit anderen Flugzeugen. Dazu<br />

bedient sich das Programm der funktionalen<br />

Skriptsprache Nasal [16].<br />

12. Wer sich über <strong>Linux</strong>-Spiele auf dem Laufenden<br />

halten will, kommt kaum um eine best<strong>im</strong>mte<br />

deutschsprachige Community-Plattform herum.<br />

Seit 2000 bringt sie Nachrichten und Reviews zu<br />

Spielen und Emulatoren und gibt Installationsund<br />

Konfigurationstipps. Wie lautet ihr Name?<br />

Eine beeindruckende Leistung zeigt das<br />

Team von Holarse [17], indem es seit<br />

mehr als zehn Jahren Neuigkeiten über<br />

<strong>Linux</strong>-Spiele auf seiner Community-Website<br />

zusammenträgt.<br />

Die Welt von Vice<br />

13. Ein Projekt unter der GPL s<strong>im</strong>uliert einen<br />

der erfolgreichsten Spiele-Homecomputer und<br />

große Teile seiner Familienmitglieder, die auf der<br />

gleichen CPU-Familie aufbauen. Wie lautete die<br />

Serienbezeichnung der ältesten Geräte, die ihr<br />

Hersteller vorrangig fürs Büro konzipiert hatte?<br />

Die Software des Vice-Projekts [18]<br />

s<strong>im</strong>uliert Computer, die auf der MOS-<br />

6502-Prozessorfamilie [19] aufbauen,<br />

darunter den C-64 und den VC-20. Technisch<br />

vergleichbar, aber mit Tastatur und<br />

Bildschirm in einem Gehäuse, ähnelt die<br />

PET-Serie von Hersteller Commodore optisch<br />

viel mehr den heutigen PCs als die<br />

darauf folgenden Homecomputer.<br />

14. Die Wurzeln eines aufwändigen Weltraumspiels,<br />

das sich lose <strong>im</strong> Orbit des Star-Trek-Universums<br />

verorten lässt, gehen bis in die jungen<br />

Unix-Jahre zurück. Wie hieß die in den frühen<br />

1990er Jahren populäre Fassung, bei der Raumfahrtfans<br />

über das Internet mitspielen durften?<br />

Ein früher Vertreter solcher Spiele war<br />

Netrek, das sich über das Internet spielen<br />

ließ und dessen erste Fassungen in<br />

den frühen 1970er Jahre datieren [20].<br />

Netrek-Spieler steuerten Raumschiffe in<br />

Echtzeit und verwickelten die Vereinigte<br />

Föderation der Planeten, Romulaner und<br />

Klingonen in Raumgefechte.<br />

15. Native 3-D-Spiele für die Xlib sind rar. 1994<br />

veröffentlichten jedoch zwei Studenten wegen<br />

einer Studienarbeit ein Projekt für Solaris und<br />

<strong>Linux</strong>, das Szenekenner als freundliche Vorwegnahme<br />

von Castle Wolfenstein & Co. ansehen. In<br />

welchem Gebirge liegt die Hochschule beider?<br />

Clausthal liegt so abgelegen <strong>im</strong> Harz, dass<br />

seine Technische Universität die einzige<br />

in Deutschland ohne Bahnanschluss ist.<br />

Da wundert es nicht, dass 1994 die Studenten<br />

Jörg Czeranski und Hans-Ulrich<br />

Kiel genug Zeit fanden, mit I-Maze [21]<br />

eine Urform der First Person Shooter als<br />

Teil einer Studienarbeit zu entwickeln.<br />

16. Der Vater einer bekannten <strong>Linux</strong>-CD-Distribution<br />

schlägt sich auch auf dem Brett recht wacker.<br />

Bei welcher Organisation hostete er einen der<br />

ersten deutschen Schach-Server?<br />

Die 1992 gegründete Unix-AG der Universität<br />

Kaiserslautern war nicht nur<br />

Wiege für Knoppix und den <strong>Linux</strong>tag,<br />

sondern betreibt unter [telnet:// chess.​<br />

unix‐ag. uni‐kl. de:5000] bis heute den<br />

GICS Schachserver [22].<br />

17. Die Vielfalt des königlichen Spiels bereitet<br />

Computern bis heute Probleme. Für in Bedrängnis<br />

geratene Gruppen eines anderen Spiels gibt es<br />

einen Fachbegriff, mit dem sich ein Konsolen- und<br />

Computerhersteller schmückte. Wie lautet der<br />

erste Buchstabe der Typenbezeichnung bei dessen<br />

Computer-Flaggschiff?<br />

Be<strong>im</strong> Brettspiel Go setzen Spieler weiße<br />

und schwarze Steine auf Kreuzungspunkte<br />

eines Gitters. Leere Felder neben zusammenhängenden<br />

Gruppen nennt das<br />

Spiel Freiheiten. Schränkt ein Spieler die<br />

Freiheiten bis auf eine ein, heißt die Situation<br />

Atari, was <strong>im</strong> Japanischen für Treffer<br />

steht [23]. Genauso nannte sich ein<br />

Hersteller, der in den frühen 1980ern mit<br />

der Konsole VCS 2600 [24] große Erfolge<br />

feierte. Später an den Commodore-Gründer<br />

Jack Tramiel verkauft wandte sie sich<br />

jedoch zunächst erfolgreich hochwertigen<br />

He<strong>im</strong>computern zu. Das erfolgreichste<br />

Modell war der Atari ST 1040.<br />

18. Ein Spieledesigner, der sich auch für den<br />

Rasp berry Pi stark gemacht hat, setzt bei der<br />

letzten Fortsetzung eines in der Homecomputer-<br />

Ära einflussreichen Weltraumspiels auf Crowdfunding.<br />

Von welchem Planeten stammten die<br />

fiesen Aggressoren, die <strong>im</strong> Hyperraum Weltraumhändlern<br />

auflauerten?<br />

Mit seinem damaligen Partner Ian Bell<br />

entwickelte David Braben 1984 den Weltraumklassiker<br />

„Elite“ (Abbildung 3), bei<br />

Abbildung 3: Der Weltraumklassiker „Elite“ hat<br />

weder ein definiertes Ziel noch ein definiertes Ende.<br />

© C64-Wiki, GFDL


1 S<br />

5 L<br />

9 M<br />

13 P<br />

17 S<br />

Space Travel<br />

Loki<br />

Mame<br />

PET<br />

Atari ST<br />

Abbildung 5: Hier nochmals die Antworten auf die 20 Winterrätselfragen der Ausgabe 01/13. Einzuschicken war nur die fünf mal vier Buchstaben umfassende Matrix.<br />

dem Thargoiden <strong>im</strong> Hyperraum lauerten.<br />

Nach mehreren Nachfolgern sammelt der<br />

Entwickler jetzt Geld für sein neuestes<br />

Projekt „Elite Dangerous“ [25]. Daneben<br />

ist er Mitbegründer der Raspberry Pi<br />

Foundation [26].<br />

Nibbles statt Blockade<br />

2 A<br />

6 P<br />

10 X<br />

14 N<br />

18 T<br />

19. Neu <strong>im</strong>plementierte Konsolenklassiker haben<br />

Konjunktur. Be<strong>im</strong> Remake für einen populären<br />

<strong>Linux</strong>-Desktop steuert der Spieler eine gefräßige<br />

Schlange und darf nicht an den Gartenmauern anecken.<br />

Wie lautet der Name des Spiels, der auch<br />

Bezüge zu einer 4-Bit-Ansammlung aufweist?<br />

Ein Hexadez<strong>im</strong>albuchstabe reicht, um<br />

ein halbes Byte (4 Bit) zu definieren –<br />

manche nennen das „Nibble“. Ganz ähnlich,<br />

nämlich Nibbles, heißt ein Remake<br />

der Gnome-Spielesammlung [27], das<br />

die Entwickler dem Proto-Konsolenspiel<br />

„Blockade“ von 1977 nachempfanden.<br />

20. Eine Prozessart, deren Startsequenzen meist<br />

in »/etc/init.d« lagern, taucht auch in einem<br />

zweiteiligen Roman auf. Bei dem bleibt offen,<br />

ob es sich um eine Dystopie oder eine Utopie<br />

handelt. In der Handlung dient ein Onlinespiel als<br />

Kommunikationsplattform. Welchen Rang bekleidet<br />

dort eine Spielfigur, die als Nazi-Antagonist<br />

die Plattform verlässt?<br />

Lösungswort und Gewinner<br />

Apfel<br />

Lars Pensjö<br />

Xauth<br />

Netrek<br />

Thargoiden<br />

Viele Rätsel sind leicht lösbar, weil das Beantworten einer Teilmenge der<br />

Lösungsbuchstaben ausreicht, um das Gesamtergebnis zu erraten. Das<br />

Winterrätsel dagegen verzichtet auf ein in sich sinnvolles Lösungswort<br />

und verlangt von den Teilnehmern die Anfangsbuchstaben aller 20 Antworten<br />

(siehe Abbildung 5).<br />

Als Preis für das nicht gerade einfache Rätsel vergibt die Redaktion<br />

ein Android-Smartphone mit Ice Cream Sandwich. Die Touchscreen-TFT-<br />

Diagonale des Geräts misst 8,9 Zent<strong>im</strong>eter. Auf dessen Rückseite sitzt<br />

eine 5-Megapixel-Kamera mit „Sony Exmore R“-Sensor, Bildstabilisator<br />

und Geotagging, die auch 720p-Videos aufzeichnet.<br />

Das Sony Xperia U erhält der <strong>Linux</strong>-<strong>Magazin</strong>-Leser Peter Conrad, der 18<br />

Fragen richtig, eine etwas ungenau und eine falsch beantwortet hat.<br />

Herzlichen Glückwunsch!<br />

3 M<br />

7 C<br />

11 N<br />

15 H<br />

19 N<br />

Mikrowelle<br />

John Carmack<br />

Nasal<br />

Harz<br />

Nibbles<br />

Prozesse <strong>im</strong> Hintergrund bezeichnen<br />

Unixer als Daemons. Auch durch zwei<br />

Romane von David Suarez [28] geistert<br />

ein Daemon – anfangs nur in einem First<br />

Person Shooter, der zur Romanhandlung<br />

gehört. An einer Stelle allerdings verlässt<br />

eine Instanz des Daemon die virtuelle<br />

Spielewelt – in Person von Oberstleutnant<br />

Boerner. (jk) <br />

n<br />

Infos<br />

[1] Dennis Ritchie, „Space Travel: Exploring<br />

the solar system and the PDP-7“:<br />

[http:// www. cs. bell‐labs. com/ who/ dmr/​<br />

spacetravel. html]<br />

[2] Nethack: [http:// www. nethack. org]<br />

[3] Thomas Hog, „Der Hamster-Grill in Mani ac<br />

Mansion“: [http:// www. tentakelvilla. de/​<br />

specials/ hamstergrill/ hamstergrill. html]<br />

[4] Gabe Newell, „Windows 8 is a Catastrophe“:<br />

[http:// www. theverge. com/ 2013/ 1/​<br />

8/ 3852144/ gabe‐newell‐interview‐steambox‐future‐of‐gaming]<br />

[5] Loki and Activision Sponsor Loki Hack<br />

1999: [http:// static. usenix. org/​<br />

publications/ library/ proceedings/ als99/​<br />

pr5. html]<br />

[6] Civilization – Call to Power: [http:// www.​<br />

lokigames. com/ products/ civctp/]<br />

4 N<br />

8 Z<br />

12 H<br />

16 U<br />

20 O<br />

Gabe Newell<br />

Z-Machine<br />

Holarse<br />

Unix-AG<br />

Oberstleutnant Boerner<br />

[7] Amylaar Gamedriver:<br />

[http:// www. mudbytes. net/ index. php?​<br />

a=files& cid=230]<br />

[8] Richard Bartle, „MUD History“:<br />

[http:// www. livinginternet. com/ d/<br />

di_major. htm]<br />

[9] Ephanation:<br />

[http:// ephenationopengl. blogspot. de]<br />

[10] Doom unter der GPL:<br />

[https:// github. com/ TT<strong>im</strong>o/ doom3. gpl]<br />

[11] Hector Briceño et al., „Down From the Top<br />

of Its Game – The Story of Infocom, Inc.“:<br />

[http:// mit. edu/ 6. 933/ www/ Fall2000/​<br />

infocom/]<br />

[12] Frotz: [http:// frotz. sourceforge. net/]<br />

[13] Mame: [http:// mamedev. org]<br />

[14] Xbattle: [http:// www. lysator. liu. se/​<br />

~mbrx/ XBattleAI/]<br />

[15] Flightgear: [http:// www. flightgear. org]<br />

[16] Nasal: [http:// plausible. org/ nasal/]<br />

[17] Holarse:<br />

[http:// www. holarse‐linuxgaming. de]<br />

[18] Vice: [http:// viceteam. org]<br />

[19] MOS-6502-CPU: [http:// 6502. org]<br />

[20] Andy McFadden, „History of Netrek“:<br />

[http:// www. netrek. org/ about/ history_<br />

overall. php]<br />

[21] I-Maze: [http:// home. tu‐clausthal. de/​<br />

student/ iMaze/]<br />

[22] Schachserver der Unix-AG:<br />

[http:// www. unix‐ag. uni‐kl. de/ ~chess]<br />

[23] Go-Regeln: [http:// de. wikibooks. org/ wiki/​<br />

Go:_Einführung_in_die_Regeln]<br />

[24] Atari VCS 2600: [http:// nocash. emubase.​<br />

de/ 2k6specs. htm]<br />

[25] Interview mit David Braben:<br />

[http:// www. incgamers. com/ 2012/ 11/<br />

credits‐cobras‐and‐crowd‐funding‐davidbraben‐tells‐us‐about‐elite‐dangerous/]<br />

[26] Raspberry Pi Foundation:<br />

[http:// raspberrypi. org]<br />

[27] Nibbles: [https:// live. gnome. org/ Nibbles]<br />

[28] Daniel Suarez, „Daemon“, Rowohlt, 2010:<br />

[http:// www. rowohlt. de/ buch/ Daniel_<br />

Suarez_ Daemon. 2742037.html]<br />

Winterrätsel 03/2013<br />

Forum<br />

www.linux-magazin.de<br />

75


Forum<br />

www.linux-magazin.de Rechts-Rat 03/2013<br />

76<br />

Leser fragen, der <strong>Linux</strong>-<strong>Magazin</strong>-Ratgeber antwortet<br />

Recht einfach<br />

Urheberrecht, Verträge, Lizenzen und so weiter: In der Serie „Rechts-Rat“ erhalten <strong>Linux</strong>-<strong>Magazin</strong>-Leser verständliche<br />

Auskünfte zu Rechtsproblemen des <strong>Linux</strong>-Alltags. Fred Andresen<br />

© designpics, 123RF.com<br />

Abbildung 1: Wann gilt welches Recht? Ist das <strong>im</strong>mer eine Frage des Standortes? Was internationale<br />

Software projekte wegen der Impressumspflicht auf ihren Webseiten beachten müssen.<br />

In dieser Ausgabe geht’s um die rechtliche<br />

Zuständigkeit und das geltende Recht<br />

für Internetauftritte von Softwareprojekten,<br />

um die Frage nach einer automatisierten<br />

Legalitäts-Überprüfung für die<br />

Homepage und darum, ob Online kunden<br />

nach der Ausübung eines Widerrufs empfangene<br />

Daten zurücksenden müssen<br />

oder können.<br />

Rechtswahl für Soft-<br />

iwareprojekt-Seiten?<br />

Was muss ich bei einer Webseite für ein international<br />

präsentes Open-Source Projekt in englischer<br />

Sprache beachten? Gilt deutsches Recht<br />

und beispielsweise deutsche Impressumspflicht<br />

nur, wenn der Hoster in Deutschland steht oder<br />

der Maintainer Deutscher ist? Gibt es für solche<br />

Fragen eine Anlaufstelle?<br />

Martin R.<br />

Für die meisten vertraglichen Beziehungen,<br />

gerade unter Geschäftsleuten, ist eine<br />

Rechtswahl möglich und in der Regel bei<br />

grenzüberschrei tenden Geschäften sogar<br />

üblich. Dergleichen ist aber <strong>im</strong> so genannten<br />

deliktischen Bereich (wenn ein<br />

konkretes Delikt vorliegt) ausgeschlossen.<br />

Überlässt man Vertragspartnern mit<br />

relativ laxem Spielraum, welche Rechtsordnung<br />

für die beiderseitigen Verpflichtungen<br />

gelten soll, dann dürfen jene, die<br />

fremde Rechte verletzen, keinesfalls eine<br />

<strong>im</strong> Zweifel für sie günstigere Rechtslage<br />

ausnützen.<br />

Der deliktische Bereich betrifft nicht nur<br />

die Straf- und Ordnungswidrigkeitsvorschriften<br />

der Länder, sondern weitgehend<br />

auch die dort geltenden Zivilrechtsnormen,<br />

die dem Schutz der Rechte der jeweiligen<br />

Staatsbürger (und denen geichgestellter<br />

Personen) dienen.<br />

Als Beispiel können hier die Schutzvorschriften<br />

des deutschen Urheberrechts<br />

gelten: Einige der Vorschriften gelten<br />

nach vorherrschender Rechtsprechung<br />

und Lehre als zwingend beziehungsweise<br />

unabdingbar (etwa die Regelungen über<br />

das Urheberpersönlichkeitsrecht), für<br />

andere sieht das sogar der Gesetzestext<br />

selbst vor (etwa die Best<strong>im</strong>mungen über<br />

angemessene Vergütung nach den Paragrafen<br />

32 und 32b UrhG, [1]). Besteht<br />

also keine Möglichkeit für eine Rechtswahl,<br />

müssen allgemeine gesetzliche<br />

Vorschriften best<strong>im</strong>men, welche Rechtsordnung<br />

<strong>im</strong> Zweifel gelten soll.<br />

Beispiele für solche kollisionsrechtlichen<br />

Regelungen finden sich unter anderem <strong>im</strong><br />

Ursprungslandprinzip, <strong>im</strong> Tatortprinzip<br />

oder <strong>im</strong> Schutzlandprinzip. Bei Einsatz<br />

dieser Prinzipien erfolgt auch eine Abwägung<br />

der unterschiedlichen Interessen,<br />

die dabei berührt sind.<br />

Für Urheberrechtsverletzungen <strong>im</strong> Internet<br />

gilt das Schutzlandsprinzip, also<br />

das Recht des Staates, für dessen Gebiet<br />

Schutz beansprucht wird – einerseits weil<br />

darüber keine zwischenstaatliche Einigung<br />

getroffen wurde, andererseits weil<br />

die Interessen der jeweils betroffenen<br />

Urheber wohl nur durch Anwendung der<br />

jeweils lokal geltenden Rechtsordnung<br />

am besten berücksichtigt sind.<br />

Entsprechend erklären sich auch die jeweils<br />

nationalen Gerichte für zuständig.<br />

In Deutschland ist es beispielsweise üb-<br />

Mailen Sie uns Ihre Fragen!<br />

Im monatlichen Wechsel mit aktuellen Fachbeiträgen<br />

lässt das <strong>Linux</strong>-<strong>Magazin</strong> in der Serie<br />

„Rechts-Rat“ Leserfragen durch einen<br />

Rechtsanwalt kompetent beantworten. Was<br />

<strong>im</strong>mer Sie beschäftigt oder ärgert oder was<br />

Sie einfach nur wissen möchten: Schreiben<br />

Sie eine entsprechende E-Mail an die Adresse<br />

[rechtsrat@linux-magazin. de].<br />

Die Themen dürfen von Software lizenzen bis<br />

zum Hardwarekauf reichen. Die Redaktion<br />

behält es sich vor, abgedruckte Zuschriften<br />

zu kürzen und eventuell enthaltene persönliche<br />

Daten zu ändern.


© z<strong>im</strong>mytws, 123RF.com<br />

Abbildung 2: Das Tatortprinzip hat nichts mit dem TV-Kr<strong>im</strong>i zu tun, sondern<br />

best<strong>im</strong>mt gelegentlich, welches Recht gilt.<br />

lich, deutsches Urheberrecht nicht nur<br />

dann anzuwenden, wenn der Server in<br />

Deutschland steht und/​oder eine hier ansässige<br />

natürliche oder juristische Person<br />

ihn betreibt, sondern auch dann, wenn<br />

eine urheberrechtlich relevante Handlung<br />

auf Internetseiten auftaucht, deren Inhalt<br />

sich an deutsche Anwender richtet. Als<br />

Kriterium dafür gilt unter anderem Text<br />

in deutscher Sprache.<br />

Andere Gerichte in anderen Ländern urteilen<br />

vergleichbar oder sogar noch extensiver:<br />

US-amerikanische Gerichte zum<br />

Beispiel erklären sich auch gerne einmal<br />

für zuständig (und die US-Rechtsnormen<br />

für maßgeblich), wenn nur irgendwie die<br />

Interessen von he<strong>im</strong>ischen Unternehmen<br />

berührt sein könnten.<br />

Die Folge ist das für Dienstebetreiber oder<br />

Rechteverwerter unwägbare Risiko, durch<br />

urheberrechtlich relevante Handlungen<br />

unwissentlich fremde Rechtsordnungen<br />

zu verletzen und <strong>im</strong> jeweiligen Staat –<br />

auch in Abwesenheit – zur Verantwortung<br />

gezogen zu werden. Die damit verbundenen<br />

Kostenrisiken sind unüberschaubar,<br />

und bis heute besteht keine Chance auf<br />

Rechtssicherheit durch zwischenstaatliche<br />

Übereinkünfte.<br />

Selbst die EU-Mitgliedsstaaten, die deutlich<br />

mehr Wert darauf legen sollten, die<br />

ansässigen Diensteanbieter und Rechteverwerter<br />

mit einem Mantel verlässlicher<br />

Rechtsvorschriften auszustatten, konnten<br />

sich bislang nicht auf kollisionsrechtliche<br />

Normen oder Richtlinien be<strong>im</strong> Urheberrecht<br />

einigen.Was haben wir dann von all<br />

den anderen Nationen zu erwarten, die<br />

übers Internet erreichbar sind? Theoretisch<br />

müssten Anbieter jede auf der Welt<br />

geltende Rechtsordnung berücksichtigen,<br />

um auf der sicheren<br />

Seite zu sein.<br />

Weil ein Open-Source-<br />

Projekt ja auch dem<br />

Vertrieb eines Produkts<br />

(der Software) dient,<br />

könnten neben dem<br />

Urheberrecht noch andere<br />

Rechte betroffen<br />

sein. Dem Wesen der<br />

Sache nach kommen<br />

dabei Werbe-, Wettbewerbs-<br />

und – sofern<br />

statuiert – allgemeines<br />

Internetrecht in<br />

Betracht.<br />

Für Werbung und Vertrieb etwa stellen<br />

die nationalen Rechtsordnungen vorrangig<br />

darauf ab, in welchem Staat sich der<br />

Adressatenkreis hauptsächlich befindet,<br />

der als Kunde angesprochen wird. Bei<br />

einem Open-Source-Projekt dürfte das in<br />

den meisten Fällen keine regionale Einschränkung<br />

bedeuten – zumindest dann,<br />

wenn es nicht um länderspezifische Software<br />

geht.<br />

Auch dieses „Tatortprinzip“, <strong>im</strong> Wettbewerbsrecht<br />

„Marktortprinzip“ genannt,<br />

führt dazu, dass jede denkbare Rechtsordnung<br />

berücksichtigt werden muss.<br />

Für die Mitgliedsstaaten der Europäischen<br />

Union gilt aber die Sonderregelung<br />

der E-Commerce-Richtlinie [2]: Die dort<br />

genannten Dienste sind „an der Quelle<br />

zu beaufsichtigen“. Die gesetzlichen Anforderungen<br />

sind erfüllt, wenn sie den<br />

nationalen Best<strong>im</strong>mungen des Herkunftslandes<br />

(des Standorts oder Wohnorts) der<br />

handelnden Person entsprechen.<br />

Dieses Herkunftslandprinzip gilt für alle<br />

Bereiche, die durch die E-Commerce-<br />

Richtlinie und die nationalen<br />

Gesetze, die<br />

diese umsetzen, geregelt<br />

werden. Natürlich<br />

besteht diese Regelung<br />

und damit auch die daraus<br />

folgende Rechtssicherheit<br />

lediglich innerhalb<br />

der derzeit 27<br />

Mitgliedsstaaten der<br />

Europäischen Union<br />

und nicht in allen anderen<br />

Ländern dieser<br />

Welt.<br />

Eine Projekthomepage<br />

in englischer Sprache,<br />

© Veerachai Viteeman, 123RF.com<br />

auf der freie Software angeboten wird,<br />

richtet sich an jedermann. Einschränkungen<br />

sind weder die verwendete Sprache<br />

(Englisch ist der internationale Standard)<br />

noch best<strong>im</strong>mte Zahlungsmittel. Weil die<br />

Projektsoftware regelmäßig durch freien<br />

Download zu beziehen ist, kann auch<br />

keine allein akzeptierte nationale Währung<br />

als Indikator für eine räumliche<br />

Begrenzung des Adressatenkreises herangezogen<br />

werden.<br />

Sie müssen demnach schlichtweg alles<br />

beachten, auch das Recht jedes Landes,<br />

in dessen Bereich Ihre Seite aufgerufen<br />

werden kann. Weil das faktisch nicht<br />

umsetzbar ist, sollte jeder, der eine entsprechende<br />

Seite betreibt, vordringlich<br />

zumindest die Rechtsordnungen des<br />

eigenen Wohn- oder Standorts und des<br />

Standorts des Servers beachten.<br />

i Automatisierter<br />

Compliance-Checker?<br />

Gibt es eine Seite, auf der sich die Rechtmäßigkeit<br />

eines Internetauftritts prüfen lässt? Also<br />

mit einem Feld, in das man eine best<strong>im</strong>mte URL<br />

eingibt, die dann geladen und überprüft wird?<br />

F.<br />

Eine womöglich automatisierte Prüfung<br />

auf Rechtskonformität eines Internetauftritts<br />

ist wegen der Komplexität der Fragen<br />

ausgeschlossen. Bei einer Art Validitäts-<br />

Checker wie dem des W3C für Fragen<br />

des HTML-Standards könnte allenfalls<br />

die Einhaltung weniger präziser Normen<br />

für jeweils einen Einzelfall überprüft werden.<br />

Rechtsnormen, die regelmäßig einen<br />

Interpretationsspielraum lassen (müssen),<br />

können nach derzeitigem Stand<br />

Abbildung 3: Sicherlich wären sie hilfreich, doch leider kann es keine einfachen<br />

Legalitäts-Checklisten für Internetauftritte geben.<br />

Rechts-Rat 03/2013<br />

Forum<br />

www.linux-magazin.de<br />

77


Forum<br />

www.linux-magazin.de Rechts-Rat 03/2013<br />

78<br />

der Wissenschaft – und wohl auch auf<br />

längere Sicht – in keinem Fall automatisiert<br />

geprüft werden. Dies gilt bereits für<br />

<strong>im</strong> Vergleich zu anderen Rechtsnormen<br />

so überschaubare Regelungen wie etwa<br />

die Impressumspflicht.<br />

Eine Onlineprüfung könnte zum Beispiel<br />

lediglich abfragen, ob best<strong>im</strong>mte Schlüsselwörter<br />

auf einer Seite vorhanden sind,<br />

nicht aber, ob diese lesbar sind (Transparenz,<br />

Vorder- und Hintergrundfarbe),<br />

Sinn ergeben (Grammatik, Reihenfolge),<br />

ob sie in der richtigen Sprache vorliegen<br />

oder ob für den Betreiber der Seite<br />

überhaupt eine Impressumspflicht (oder<br />

eine andere Verpflichtung für best<strong>im</strong>mte<br />

Inhalte) besteht.<br />

Eine automatisierte Ad-hoc-Prüfung ist<br />

daher nicht möglich. Würde man eine<br />

solche Prüfung durch Fachleute anbieten<br />

und die Ergebnisse in einer Liste vorhalten,<br />

besteht die Gefahr, dass die Inhalte<br />

der entsprechenden URLs bis zum<br />

Zeitpunkt der Abfrage geändert werden<br />

und das Ergebnis dann nicht mehr den<br />

Tatsachen entspricht. Abgesehen von der<br />

fehlenden Aktualität verhindern auch der<br />

nötige Aufwand und damit die Kosten für<br />

eine solche Überprüfung jedes Angebot<br />

wie das von Ihnen angedachte.<br />

Rückabwicklung be<strong>im</strong><br />

iOnlinevertrieb ?<br />

Wir vertreiben Medien auf Datenträgern und<br />

online. Die dafür nötigen Bestellungen können<br />

unsere Kunden auf verschiedenen Wegen, unter<br />

anderem auch über unsere Homepage, abgeben.<br />

Um Probleme mit unseren Kunden zu vermeiden,<br />

die be<strong>im</strong> Widerruf von solchen Onlinegeschäften<br />

regelmäßig auftreten, möchten wir wissen, wie<br />

wir Kaufpreiserstattung und Rücksendung der<br />

digitalen Medien in unseren Verträgen oder in<br />

den AGB regeln können.<br />

V-GmbH<br />

Ich gehe davon aus, dass sich Ihr Angebot<br />

in erster Line an Verbraucher <strong>im</strong><br />

Sinne des Paragrafen 13 BGB [3] richtet,<br />

also nicht an Personen, die Ihre Produkte<br />

für ihre gewerbliche oder selbstständige<br />

berufliche Tätigkeit beziehen. Wenn Sie<br />

vom Widerruf der Onlinegeschäfte sprechen,<br />

gehe ich weiter davon aus, dass es<br />

hier um das Widerrufsrecht bei Fernabsatzgeschäften<br />

nach Paragraf 312d BGB<br />

geht. Das Widerrufsrecht steht nur Ver-<br />

brauchern zu, nicht<br />

aber den Gewerbetreibenden<br />

oder Selbstständigen<br />

und Freiberuflern.<br />

Be<strong>im</strong> Vertrieb Ihrer<br />

in digitaler Form vorliegenden<br />

Medien besteht<br />

die Möglichkeit,<br />

dass sich Kunden<br />

nach Erhalt eine Kopie<br />

anfertigen, dann vom<br />

Kauf unter Ausübung<br />

eines Widerrufsrechts<br />

ohne Begründung zurücktreten<br />

und der Abbildung 4: Widerruf nach einem Onlinegeschäft: Wie müssen die AGB des<br />

Kaufpreis erstattet Händlers gestaltet sein?<br />

werden muss. Die<br />

eventuell zurückzusendenden digitalen<br />

Daten wären allerdings wertlos, der Bedarf<br />

der Kunden wäre befriedigt, der Unternehmer<br />

müsste nicht nur entgangenen<br />

Gewinn verzeichnen, sondern auch noch<br />

zusätzliche Kosten tragen.<br />

Das gesetzliche Widerrufsrecht der Verbraucher<br />

besteht grundsätzlich bei jeder<br />

Art von Fernabsatzverträgen, also gemäß<br />

Paragraf 312b BGB bei Verträgen über die<br />

Lieferung von Waren oder die Erbringung<br />

von Dienstleistungen, die zwischen einem<br />

ten Sachwert) kommt hier eine analoge<br />

Anwendung nicht in Betracht. Ihre in<br />

digitaler Form vertriebenen Produkte<br />

sind auch keine Zeitungen, Zeitschriften<br />

oder Illustrierten, bei denen liegt der<br />

geschützte Sachwert nicht nur in der abnutzbaren<br />

Papierform, sondern auch in<br />

der Aktualität des Inhalts, die bei Rückabwicklungen<br />

nach erfolgtem Widerruf<br />

leicht verloren wäre.<br />

Ausgehend davon, dass das Widerrufsrecht<br />

bei den von Ihnen angebotenen<br />

Unternehmer und einem Verbrau-<br />

Online-Medienlieferungen zumindest<br />

cher unter ausschließlicher Anwendung<br />

von Fernkommunikationsmitteln geschlossen<br />

werden.<br />

Unter Umständen fallen die von Ihnen<br />

angesprochenen „Medien“ unter einen<br />

der gesetzlich katalogisierten Ausschlusstatbestände:<br />

Nach Paragraf 312d Absatz<br />

4 gilt das Widerrufsrecht nicht für Audio-<br />

oder Video-Aufzeichnungen oder<br />

Software, sofern gelieferte Datenträger<br />

vom Verbraucher entsiegelt wurden. Der<br />

Teil Ihrer Produkte, den Sie auf Datenträgern<br />

liefern, könnte damit unter den<br />

Ausschlusstatbestand fallen und das Widerrufsrecht<br />

Ihrer Kunden gar nicht erst<br />

entstehen lassen.<br />

Be<strong>im</strong> Onlinevertrieb gibt es hingegen<br />

keine Datenträger, die entsiegelt werden<br />

könnten. Der Gesetzgeber hatte mit dem<br />

entsprechenden Ausschluss offenkundig<br />

in erster Linie den Wertverlust des entsiegelten<br />

Datenträgers <strong>im</strong> Auge, vor dem<br />

er den Unternehmer schützen will. Weil<br />

be<strong>im</strong> reinen Onlinevertrieb kein solcher<br />

Wertverlust entsteht (die bloß digitale<br />

Kopie verkörpert ja keinen nennenswer-<br />

entstanden ist, kann es nach Paragraf<br />

312d Absatz 3 dann erlöschen, wenn der<br />

Vertrag von beiden Seiten auf ausdrücklichen<br />

Wunsch des Verbrauchers erfüllt<br />

ist. Das würde bedeuten, dass das Widerrufsrecht<br />

erloschen wäre, sofern Sie<br />

die elektronische Lieferung der Medien<br />

bereits unmittelbar nach Bestellung sowie<br />

zwingend mit einer entsprechenden<br />

Erklärung/​Zusatzbestellung der Kunden<br />

durchführen. Voraussetzung: Die „Medienlieferung“<br />

ist als Dienstleistung anzusehen,<br />

nicht als Warenlieferung. Guten<br />

Gewissens lässt sich der Wortlaut aber<br />

nicht so weit verbiegen.<br />

Das Problem war dem Gesetzgeber bereits<br />

kurz nach Inkrafttreten des Fernabsatzgesetzes<br />

bekannt, die Bundesregierung<br />

hatte aber einen entsprechenden<br />

Änderungsvorschlag abgelehnt und<br />

derartige Probleme für Unternehmer in<br />

Kauf genommen. Die Praxis behilft sich<br />

damit, dass man entweder eine digitale<br />

Lieferung, wie oben beschrieben, als<br />

„Dienstleistung“ <strong>im</strong> Sinne des Paragrafen<br />

312d Absatz 3 behandelt oder – fast noch<br />

© stocksolutions, 123RF.com


© Peter Bernik, 123RF.com<br />

Abbildung 5: Bei Medien wie Video- und Audio-<br />

Material haben Kunden kein Rückgaberecht.<br />

Paragraf 312d Absatz 4 Nr. 1 ein Widerrufsrecht<br />

aus. Sofern Ihre Medien hauptsächlich<br />

aus Video- und Audio-Material<br />

bestehen, haben Ihre Kunden nach Paragraf<br />

312d Absatz 4 Nr. 2 kein Widerrufsrecht.<br />

Für den Fall, dass die Medien<br />

etwa überwiegend durch Bilddaten und<br />

Text best<strong>im</strong>mt sind, also herkömmlichen<br />

E-Books ähneln, gibt Ihnen das Gesetz<br />

keine Rechtssicherheit.<br />

Die Widerrufsrechte der Verbraucher können<br />

Sie durch AGB nicht ausschließen. In<br />

der Praxis hat sich aber eine Rechtsprechung<br />

entwickelt, die die Versäumnisse<br />

des Gesetzgebers wie beschrieben mehr<br />

oder weniger geschickt umschifft und in<br />

der Regel auch in diesen Fällen ein Widerrufsrecht<br />

ausschließt.<br />

Achten Sie aber darauf, dennoch alle Belehrungs-<br />

und Informationspflichten, die<br />

Ihnen das Gesetz für Fernabsatzgeschäfte<br />

auferlegt, zu beachten. Wenn <strong>im</strong> Einzelfall<br />

bei einem Rechtsstreit dann doch<br />

einmal einer Ihrer Kunden ein Widerrufsschl<strong>im</strong>mer<br />

– die digitale Kopie als „nicht<br />

rücksendefähig“ ansieht, weil be<strong>im</strong> Rücksenden<br />

ja nur eine weitere Kopie entsteht,<br />

die erste Kopie aber verbleibt.<br />

Für aufgrund ihrer Beschaffenheit nicht<br />

rücksendefähige Waren schließt nämlich<br />

recht zugesprochen erhält, bestünde dies<br />

zumindest nicht <strong>im</strong>merwährend fort –<br />

obwohl nach den künftigen Änderungen<br />

auch das bislang ewige Widerrufsrecht<br />

(etwa bei unterbliebenen Belehrungen)<br />

nach einem Jahr und vierzehn Tagen enden<br />

soll. (mfe)<br />

n<br />

Infos<br />

[1] Urheberrechtsgesetz:<br />

[http:// www. gesetze‐<strong>im</strong>‐internet. de/ urhg/]<br />

[2] Richtlinie über den elektronischen Geschäftsverkehr:<br />

[http:// ec. europa. eu/ internal_market/​<br />

e‐commerce/ directive/ index_de. htm]<br />

[3] Bürgerliches Gesetzbuch:<br />

[http:// www. gesetze‐<strong>im</strong>‐internet. de/ bgb/]<br />

Der Autor<br />

RA Fred Andresen ist Mitglied der Rechtsanwaltskammer<br />

München und der Arbeitsgemeinschaft<br />

Informationstechnologie <strong>im</strong> Deutschen Anwaltverein<br />

(DAVIT).<br />

Rechts-Rat 03/2013<br />

Forum<br />

www.linux-magazin.de<br />

79<br />

IT-Onlinetrainings<br />

Mit Experten lernen.<br />

powered by<br />

MEDIALINX<br />

IT-ACADEMY<br />

Sparen Sie Zeit und Kosten mit unseren<br />

praxisorientierten Onlinetrainings.<br />

Best<strong>im</strong>men Sie Ihr eigenes Lerntempo<br />

und nutzen Sie die flexible Zeiteinteilung.<br />

Effiziente BASH-Skripte<br />

mit Klaus Knopper,<br />

KNOPPER.NET<br />

199 €<br />

Konzentriertes BASH-Wissen<br />

vom Gründer der Knoppix-Live-<br />

Distribution.<br />

Lösen Sie komplexe Aufgaben mit<br />

schnellen Ad-hoc-Lösungen auf der<br />

Kommandozeile. Automatisieren<br />

Sie Ihre System administration mit<br />

Hilfe von Skripten.<br />

www.medialinx-academy.de


Forum<br />

www.linux-magazin.de Bücher 03/2013<br />

80<br />

Bücher über die LPI-Level-2-Zertifizierung<br />

Tux liest<br />

Nach der Einstiegsstufe LPIC-1 fragen die LPI-Prüfungen auf Level 2 jene Kenntnisse ab, die <strong>Linux</strong>-Admins<br />

für ihre tägliche Arbeit benötigen. Zwei Bücher fassen das gefragte Wissen zusammen. Hans-Georg Eßer<br />

Administratoren, die <strong>im</strong> Unternehmen<br />

mit LDAP arbeiten, interessieren sich<br />

für die LPI-Zertifizierung bis zur letzten<br />

Stufe 3. Alle anderen hören meist<br />

bei Level 2 auf. Um diese Mehrheit der<br />

fortgeschrittenen <strong>Linux</strong>-Admins konkurrieren<br />

zwei Bücher mit je 550 Seiten und<br />

identischem Preis (40 Euro), die beide die<br />

aktuellen LPIC-2-Lernziele in Version 3.5<br />

vom August 2012 behandeln und damit<br />

auf die Prüfungen vorbereiten.<br />

Beide Werke orientieren sich strikt an der<br />

Gliederung der Lernziele und haben darum<br />

exakt den gleichen Aufbau. Ebenfalls<br />

identisch ist die Kapitelnummerierung,<br />

da sie den LPIC-Topics folgt – es geht<br />

also jeweils mit Kapitel 201.1 los. Die<br />

gemeinsamen Themen der Bücher sind<br />

<strong>Linux</strong>-Kernel, Systemstart, Dateisystem<br />

und Geräte (inklusive Raid), Netzwerk,<br />

DNS, Apache, Samba, NFS, DHCP, PAM,<br />

LDAP-Grundlagen, Mailserver, Sicherheit<br />

und Systemprobleme.<br />

Das Maaßen-Buch<br />

Harald Maaßen hat bei Galileo Computing<br />

das Buch „LPIC-2 – Sicher zur erfolgreichen<br />

<strong>Linux</strong>-Zertifizierung“ veröffentlicht.<br />

Der Autor weist schon <strong>im</strong> Vorspann darauf<br />

hin, dass das Buch kein Nachschlagewerk<br />

ist, sondern dass Administratoren<br />

sich damit auch in bisher unbekannte<br />

Themen einarbeiten können.<br />

Info<br />

Harald Maaßen:<br />

LPIC-2 – Sicher zur<br />

erfolgreichen <strong>Linux</strong>-<br />

Zertifizierung<br />

Galileo Computing, 2012<br />

550 Seiten<br />

40 Euro<br />

ISBN: 978-3836217811<br />

So wie die LPI-Prüfung herstellerneutral<br />

ist, führt der Autor auch in seinem<br />

Buch distributionsunabhängig in die<br />

Themen ein, gibt aber konkrete Beispiele<br />

für Debian und Fedora, wenn diese zum<br />

Beispiel spezielle Tools verwenden. 132<br />

der 550 Seiten des Buches enthalten prüfungsähnliche<br />

Fragen und Antworten mit<br />

ausführlichen Erklärungen – dort erfährt<br />

der Leser auch, warum einige Antworten<br />

falsch sind.<br />

Das Buch benutzt für Listings und Ein-/​<br />

Ausgaben einen sehr gut lesbaren Font,<br />

der deutlich zwischen Punkt und Komma,<br />

Forward- und Backtick sowie Tilde und<br />

Bindestrich unterscheidet.<br />

Dem Buch liegt eine DVD mit einem Prüfungss<strong>im</strong>ulator<br />

und einigen Open Books<br />

bei. Dazu gesellt sich noch ein Schlüssel,<br />

mit dem Leser auf der Verlagswebseite<br />

Zusatzmaterial herunterladen können –<br />

bisher findet sich dort aber nichts. Die<br />

E-Book-Version gibt es für 35 Euro, Buch<br />

und PDF zusammen kosten 50 Euro.<br />

Börnig & Co.<br />

„LPIC-2 – Vorbereitung auf die Prüfung<br />

des LPI“ ist schon die vierte Auflage des<br />

Open-Source-Press-Buches, das anfangs<br />

von Anke Börnig allein stammte, zur dritten<br />

Auflage mit Thomas Korber und Mario<br />

van der Linde aber zwei Co-Autoren<br />

erhalten hat.<br />

Die Verfasser führen souverän und gut<br />

verständlich durch die Themen, Beispiele<br />

stammen in der Regel von Suse- und<br />

Red-Hat-Installationen. Bei der Anzeige<br />

von Shellkommandos und ihren Ausgaben<br />

sind die Benutzereingaben durchgehend<br />

durch Fettung hervorgehoben. Der<br />

gewählte Font (Courier) ist dafür jedoch<br />

etwas schlechter geeignet als der <strong>im</strong><br />

Maaßen-Buch, so sind beispielsweise die<br />

Tilde und das Minuszeichen nur durch<br />

genaues Hinsehen unterscheidbar.<br />

Nach jedem Hauptkapitel gibt es eine<br />

Übungsaufgabe, am Ende des Buches<br />

finden sich nochmals alle Aufgaben und<br />

Musterlösungen dazu. Diese passen auf<br />

knapp 15 Seiten und bieten damit deutlich<br />

weniger <strong>Test</strong>material als das Maaßen-<br />

Buch. Dies lässt Platz für ausführlichere<br />

Themenbehandlung, etwa bei den Mailservern<br />

Postfix, Ex<strong>im</strong> und Sendmail. Zugaben<br />

wie eine DVD oder Online-Inhalte<br />

gibt es nicht.<br />

Welches ist besser?<br />

Beide Bücher sind nicht nur Zusammenfassungen<br />

der Level-2-Themen, sondern<br />

führen Administratoren mit Level-1-Vorkenntnissen<br />

gut in neue Themen ein.<br />

Zur Prüfungsvorbereitung reicht die reine<br />

Lektüre nicht aus, darum raten die Autoren<br />

beider Werke mit Recht zu umfassenden<br />

praktischen Übungen.<br />

Eine Empfehlung sind beide Titel wert.<br />

Leser, die mehr Wert auf eine große Aufgabensammlung<br />

zum Üben legen, sind<br />

mit dem Maaßen-Titel besser bedient,<br />

dafür behandelt das Buch von Börnig &<br />

Co. einige Themen ausführlicher. LPIC-<br />

2-Prüfungskandidaten, die genug Zeit<br />

haben und 80 Euro investieren würden,<br />

wären darum mit dem Doppelpack am<br />

besten beraten. (mhu) <br />

n<br />

Info<br />

Anke Börnig, Thomas<br />

Korber, Mario v. d. Linde:<br />

LPIC-2<br />

Open Source Press,<br />

4. Auflage, 2012<br />

550 Seiten<br />

40 Euro<br />

ISBN: 978-3941841819


OPEN-IT SUMMIT<br />

Business | Public Sector | Industry<br />

22. + 23. Mai 2013<br />

Messegelände Berlin<br />

VON EXPERTEN FÜR EXPERTEN<br />

Es ist so weit. Das eigene Business-Format der OSB Alliance<br />

geht am 22. und 23. Mai 2013 in Berlin an den Start.<br />

OPEN FOR BUSINESS – FOR YOUR BUSINESS<br />

Der OPEN-IT SUMMIT ist Marktplatz für Innovationen, für neue Konzepte und<br />

Geschäftsmodelle der künftigen Software. Anbieter, Anwender und Entwickler unter<br />

einem Dach – direkt <strong>im</strong> Herzen der europäischen Internet-Kreativmetropole Berlin.<br />

Gleich anmelden unter www.open-it-summit.de<br />

Eine Veranstaltung<br />

<strong>im</strong> Rahmen des Veranstaltet von Medienpartner<br />

Partner<br />

MAGAZIN


Forum<br />

www.linux-magazin.de Leserbriefe 03/2013<br />

82<br />

Auf den Punkt gebracht<br />

Leserbriefe<br />

Haben Sie Anregungen, Statements oder Kommentare? Dann schreiben Sie an [redaktion@linux-­magazin.­de].<br />

Die Redaktion behält es sich vor, die Zuschriften und Leserbriefe zu kürzen. Sie veröffentlicht alle Beiträge mit<br />

Namen, sofern der Autor nicht ausdrücklich Anonymität wünscht.<br />

Browser-Vielfalt<br />

07/​12, S. 68: Aus welchem fernen Jahr<br />

stammt denn dieser Artikel, in dem es<br />

keinen <strong>Linux</strong>-Browser Opera mehr gibt,<br />

aber Microsofts Internet Explorer sich unter<br />

die modernen (und <strong>im</strong> <strong>Linux</strong> <strong>Magazin</strong><br />

ja wohl für <strong>Linux</strong> angebotenen) Browser<br />

reiht? Damals, als es Opera noch gab,<br />

war er <strong>im</strong>mer wieder der modernste, der<br />

den anderen als Vorbild für Reiter, Mausgesten<br />

und hochgradig konfigurierbare<br />

Oberfläche diente.<br />

Daniel Pfeiffer, per E-Mail<br />

Der Artikel wendet sich an Menschen,<br />

die <strong>Linux</strong> nutzen, um T<strong>im</strong>elines zu erstellen.<br />

Wer aber eine Zeitleiste <strong>im</strong> Web<br />

publiziert, muss damit rechnen, dass sein<br />

Publikum zu einem nicht geringen Prozentsatz<br />

den Internet Explorer verwendet.<br />

(Mela Eckenfels)<br />

Switch-Update<br />

10/​12, S. 22: Der Artikel „Aufgedeckt:<br />

Unsicheres Konfigurationsprotokoll für<br />

einen Switch“ hat mich dazu veranlasst,<br />

ein Ticket be<strong>im</strong> Hersteller Netgear zu<br />

eröffnen. Nun habe ich die Nachricht<br />

bekommen, das Problem sei behoben.<br />

Leider kann ich das selbst nicht testen,<br />

da ich den Switch nicht mehr habe. Die<br />

Firmware steht unter [http://​­support.​<br />

­netgear.​­com/​­product/​­GS108Ev2] be-<br />

Erratum<br />

01/​13, S. 51: In Charlys „Di gehört dazu“<br />

befindet sich ein Fehler in der abgedruckten<br />

URL. Die richtige Bezugsquelle für das<br />

Programm ist [http:// freecode. com/ projects/​<br />

diskinfo], daneben besitzt es eine Homepage<br />

unter [http:// www. gentoo. com/ di/].<br />

reit, setzt aber zum Herunterladen eine<br />

Registrierung voraus.<br />

Christian Haase, per E-Mail<br />

Lizenz zum Tracen<br />

01/​13, S. 40: Ich habe noch zwei Fragen<br />

zu der gelungenen Übersicht über die<br />

Ablaufverfolgungswerkzeuge. Vor etwa<br />

zwei Jahren habe ich mir Systemtap mal<br />

als Pendant zum bereits auf Solaris verwendeten<br />

Dtrace angesehen. Ein Manko,<br />

das es vom Einsatz als normales Werkzeug<br />

für Software-Entwickler ausschloss,<br />

war ein unzureichendes Rechtekonzept:<br />

In dem Moment, wenn ich Systemtap<br />

überhaupt benutzen durfte, hatte ich dadurch<br />

bereits so viele Rechte, dass es<br />

mir beispielsweise relativ problemlos<br />

möglich war, alle ansonsten verdeckten<br />

Passworteingaben auf einer Maschine <strong>im</strong><br />

Klartext mitzuschneiden.<br />

Bei Dtrace auf Solaris ist dies erst möglich,<br />

wenn man das kritische Kernel-Privileg<br />

bekommt. Mit den beiden anderen<br />

Privilegien kann man aber bereits sehr<br />

viel Nützliches analysieren – aber eben<br />

nicht an fremden Prozessen.<br />

Hat Dtrace auf <strong>Linux</strong> ein vergleichbares<br />

Rechtekonzept und zeichnet sich bei Systemtap<br />

eine Verbesserung ab?<br />

Thomas Dorner, per E-Mail<br />

Die kurze Antwort lautet: Im Prinzip ist<br />

die Lage noch so, wie Sie beschreiben.<br />

Detaillierte Informationen zur Rechtevergabe<br />

für Systemtap finden sich in der Dokumentation<br />

unter [http://​­sourceware.​<br />

­org/​­systemtap/​­SystemTap_Beginners_<br />

Guide/​­using‐usage.​­html]. Dtrace dagegen<br />

versteckt die entsprechenden Informationen<br />

in der Datei »doc/security.txt« <strong>im</strong><br />

Quellcode-Archiv. (T<strong>im</strong> Schürmann)<br />

Df kann es auch<br />

01/​13, S. 51: Zum Beitrag „Di gehört<br />

dazu“ möchte ich zur Ehrenrettung des<br />

Coreutils-Projekts hinzufügen, dass der<br />

Klassiker »df« fast die gleiche Flexibilität<br />

besitzt – genauer gesagt in der nächsten<br />

Release bekommt.<br />

Der Artikel nennt die Varianten »di ‐I<br />

ext4« und »df ‐x proc,tmpfs« zum Einund<br />

Ausschließen von Dateisystemen des<br />

genannten Typs. Dazu bietet das GNU-<br />

Tool seit Langem die Optionen »‐t Typ«<br />

und »‐x Typ«.<br />

Interessanter war das Beispiel zum Ausgeben<br />

der prozentualen Belegung eines<br />

Dateisystems:<br />

$ di ‐dH ‐I ext4 ‐n ‐f p<br />

Dabei dürfte »‐dH« wegen der Prozentangabe<br />

unwirksam sein.<br />

Ab der kommenden Release Coreutils<br />

8.21 wird auch GNU Df eine beliebige<br />

Liste von Spalten ausgeben können. Seit<br />

Herbst 2012 enthält das Git-Repository<br />

der Entwickler dazu die neue Option<br />

»‐‐output«. Das GNU-Äquivalent zu obigem<br />

Di-Aufruf wäre also einfach (gleich<br />

mit abgekürzter Option):<br />

$ df ‐‐o=pcent ‐t ext4<br />

Use%<br />

66%<br />

Gibt der Anwender keine »FIELD_LIST«<br />

an, zeigt Df alle bekannten Felder an,<br />

produziert also eine gemischte Übersicht<br />

von Block- und Inode-Informationen.<br />

Zum Unterdrücken der Headerzeile<br />

empfehlen die Coreutils-Maintainer, sie<br />

in einer Pipeline durch ein zweites Tool<br />

wie Sed auzufiltern, etwa mittels »df ‐‐o<br />

| sed 1d«.<br />

Bernhard Voelker, per Mail n


Admin-MAGAZIN digital<br />

Profi-Know-how <strong>im</strong>mer zur Hand<br />

vorteile<br />

• Ideal für Rechercheure<br />

• bereits vor dem Kiosk-<br />

Termin als PDF lesen<br />

• kompaktes, papierloses<br />

Archiv<br />

• Sparen Sie <strong>im</strong> Abo über<br />

20% <strong>im</strong> Vergleich zum<br />

PDF-Einzelkauf!<br />

Jetzt bestellen unter:<br />

www.admin–magazin.de/digisub<br />

Telefon 07131 / 2707 274 • Fax 07131 / 2707 78 601 • E-Mail: abo@admin-magazin.de<br />

* Preise gelten für Deutschland.<br />

nur 44,90 E* pro Jahr<br />

(6 Ausgaben)


Know-how<br />

www.linux-magazin.de Insecurity Bulletin 03/2013<br />

86<br />

Insecurity-Bulletin: Root-Exploit in Android-Smartphones<br />

Telefon mit Loch<br />

Steckt <strong>im</strong> Telefon ein Computer, ist es durch Softwarefehler gefährdet. Schreibrechte auf dem Speicherdevice<br />

haben vor Kurzem eine Sicherheitslücke in einige Samsung-Smartphones gerissen. Mark Vogelsberger<br />

© Elnur Amikishiyev, 123RF.com<br />

Sicherheitslücken in Googles Mobilbetriebssystem<br />

Android betreffen schnell<br />

Millionen von Geräten. Zudem haben<br />

Smartphone-Benutzer meist sensible<br />

persönliche Informationen dort abgelegt,<br />

wodurch auftretende Schwachstellen<br />

weitreichende Konsequenzen haben.<br />

01 #ifdef CONFIG_EXYNOS_MEM<br />

Listing 1: »linux/drivers/char/<br />

mem.c«<br />

02 [14] = {"exynos‐mem", S_IRUSR | S_IWUSR | S_IRGRP<br />

| S_IWGRP | S_IROTH<br />

03 | S_IWOTH, &exynos_mem_fops},<br />

04 #endif<br />

Listing 2: »linux/drivers/char/<br />

exynos‐mem.c«<br />

01 /* TODO: currently lowmem is only avaiable */<br />

02 if ((phys_to_virt(start) < (void *)PAGE_OFFSET) ||<br />

03 (phys_to_virt(start) >= high_memory)) {<br />

04 pr_err("[%s] invalid paddr(0x%08x)\n", __func__,<br />

start);<br />

05 return ‐EINVAL;<br />

06 }<br />

Mitte Dezember 2012 beschrieb ein Mitglied<br />

des Entwicklerforums XDA Developers<br />

eine neue Sicherheitslücke in<br />

Samsung-Smartphones mit den ARM-<br />

Prozessoren Exynos 4210 und 4412. Sie<br />

erlaubt es einem Angreifer, mit Hilfe geschickt<br />

präparierter Software Rootrechte<br />

auf dem Gerät zu erlangen. Ursache ist<br />

ein Fehler in den Zugriffsrechten für die<br />

Gerätedatei »/dev/exynos‐mem«.<br />

Memory-Mappen erlaubt<br />

Das Problem besteht darin, dass diese mit<br />

Lese- und Schreibrechten für jeden Benutzer<br />

installiert ist. Die auf »/dev/exynos«<br />

erlaubten Datei-Operationen sind in der<br />

Kerneldatei »linux/drivers/char/mem.c«<br />

spezifiziert (Listing 1). Sie ermöglichen<br />

es unter anderem, »mmap()« auf die Gerätedatei<br />

anzuwenden, um Speicherbereiche<br />

zu mappen.<br />

Mit Ioctl-Anfragen auf das Gerät darf ein<br />

Programmierer den Reset oder Flush der<br />

L1- und L2-Caches auslösen. Daneben<br />

kann er damit auch physikalische Adressen<br />

für die »mmap()«-Aufrufe setzen.<br />

Das kann ein Angreifer für die eigentliche<br />

Attacke ausnützen. Die Funktionalität<br />

<strong>im</strong>plementiert der Kernel in »linux/drivers/char/exynos‐mem.c«.<br />

Wie Listing<br />

2 zeigt, findet sich dort allerdings eine<br />

If-Abfrage, die nur den Zugriff auf Lowmem-Bereiche<br />

erlaubt.<br />

Dank der Zugriffsmöglichkeiten per<br />

»mmap()« kann ein Angreifer einen Exploit<br />

schreiben, der Kernelspeicher in<br />

Besitz n<strong>im</strong>mt, um damit höhere Rechte<br />

auf dem Smartphone zu erlangen. Das<br />

könnte allein schon durch das Installieren<br />

einer präparierten App aus Google<br />

Play geschehen.<br />

Ein Exploit zum Erzeugen einer Root-<br />

Shell ist ebenfalls <strong>im</strong> XDA-Entwicklerfo-<br />

rum zu finden [1]. Dessen Code versucht<br />

»/system/bin/sh« als Root auszuführen.<br />

Hierzu greift er auf den Kernel via<br />

»/dev/exynos‐mem« zu, um den Systemcall<br />

»sys_setresuid()« aufzurufen und<br />

Rootrechte zu setzen.<br />

Mittlerweile ist auch eine erste App namens<br />

Exynos Abuse APK v1.10 <strong>im</strong> Verkehr,<br />

die diese Sicherheitslücke konkret<br />

ausnutzt und das Tool Super SU 0.99<br />

auf dem Smartphone installiert, womit<br />

der Angreifer das Smartphone dann mit<br />

Rootrechten manipulieren darf.<br />

Eine Lösung für das Sicherheitsproblem<br />

könnte sein, die Gerätedatei für den Speicher<br />

mit restriktiveren Berechtigungen<br />

auszustatten. Es gibt jedoch Hinweise<br />

darauf, dass manche Software, etwa die<br />

für die Smartphone-Kamera, dann nicht<br />

mehr funktioniert.<br />

Betroffen von dieser Sicherheitslücke sind<br />

folgende Smartphones: Samsung Galaxy<br />

S2 GT-I9100, Galaxy S3 GT-I9300, Galaxy<br />

S3 LTE GT-I9305, Galaxy Note GT-N7000,<br />

Galaxy Note 2 GT-N7100, Verizon Galaxy<br />

Note 2 SCH-I605, Samsung Galaxy Note<br />

10.1 GT-N8000 und Galaxy Note 10.1 GT-<br />

N8010. (mhu) n<br />

Infos<br />

[1] „Root exploit on Exynos“:<br />

[http:// forum. xda‐developers. com/​<br />

showthread. php? p=35469999]<br />

Der Autor<br />

Mark Vogelsberger ist derzeit wissenschaftlicher<br />

Mitarbeiter am Institute for Theory and Computation<br />

der Harvard University, wo er sich mit<br />

S<strong>im</strong>ulationen zur Strukturbildung <strong>im</strong> Universum<br />

beschäftigt. Er war von 1999 bis 2010 Autor<br />

der „Insecurity News“ des <strong>Linux</strong>-<strong>Magazin</strong>s und<br />

schreibt nun auf [http:// www. linux‐magazin. de]<br />

die Online-Ausgabe des „Insecurity Bulletin“.


R<br />

CeBIT Open Source<br />

5.–9.3.2013<br />

Werfen Sie einen Blick hinter die Kulissen<br />

von <strong>Linux</strong> und Open Source!<br />

Das tägliche Vortragsprogramm liefert Ihnen<br />

Hintergrundinformationen aus erster Hand!<br />

Jetzt in Halle 6!<br />

Stand F02<br />

Auf der Bühne: Hochkarätige Vertreter der Open-Source-Szene, u.a.<br />

Klaus Knopper,<br />

KNOPPER.NET<br />

Jon „maddog“ Hall,<br />

<strong>Linux</strong> International<br />

Peer Heinlein,<br />

Heinlein Support GmbH<br />

Powered by<br />

Presented by<br />

Sponsored by<br />

<strong>Linux</strong><br />

Professional<br />

Institute


Programmieren<br />

www.linux-magazin.de Lucene 03/2013<br />

88<br />

Texte indizieren und durchsuchen mit Lucene<br />

Schlau gefunden<br />

Um die stets wachsenden Datenbestände zu verarbeiten, brauchen auch moderne Rechner clevere Methoden.<br />

Das Open-Source-Framework Lucene <strong>im</strong>plementiert die neuesten Such-Algorithmen und macht damit große<br />

Textsammlungen zugänglich. Carsten Schnober<br />

gabe 3.6 stattfindet. Die Index-Dateistrukturen<br />

sind abwärtskompatibel, sodass ein<br />

Umstieg von 3.6 auf 4.0 keine Probleme<br />

verursacht. Inzwischen gilt Lucene als<br />

eine der am weitesten verbreiteten Lösungen<br />

für die Indizierung und Suche<br />

von Texten.<br />

Karteikarten und Index<br />

© agencyby, 123RF.com<br />

Schon eine handelsübliche Festplatte<br />

speichert heutzutage mehr Text als ganze<br />

Büchereien. In der digitalen Welt genügen<br />

althergebrachte Mittel wie Karteikartensysteme<br />

und ein belesener Bibliothekar<br />

daher nicht mehr, um das richtige Regal<br />

zu finden. Auch deren Software-Pendants<br />

von »find« bis »zgrep« sind nicht <strong>im</strong>mer<br />

in der Lage, ein best<strong>im</strong>mtes Textstück in<br />

Giga- oder Terabytes von Daten in akzeptabler<br />

Zeit aufzuspüren.<br />

Suchen mit Methode<br />

Die Wissenschaft, die sich mit der Lösung<br />

solcher Suchprobleme befasst, heißt<br />

Information Retrieval. Sie hat ausgefeilte<br />

Methoden entwickelt, mit denen sie Dateien<br />

aufspürt, von denen der Benutzer<br />

nicht einmal wusste, dass sie existieren.<br />

Die freie Java-Bibliothek Lucene [1] <strong>im</strong>plementiert<br />

einige davon. Im Jahr 1999<br />

veröffentlichte Doug Cutting eine erste<br />

Version von Lucene. Zwei Jahre später<br />

landete das Projekt, das den zweiten Vornamen<br />

von Cuttings Ehefrau trägt, <strong>im</strong><br />

Rahmen des Jakarta-Programms unter<br />

der Schirmherrschaft der Apache Foundation.<br />

Diese erhob es 2005 in den Status<br />

eines Top-Level-Projekts.<br />

Seit Oktober 2012 steht Lucene in Version<br />

4.0 zur Verfügung, deren Entwicklung<br />

derzeit noch parallel zur Vorgängeraus-<br />

Zipf’sches Gesetz<br />

Auch wenn andere Sprachforscher diese Gesetzmäßigkeit<br />

früher entdeckt haben, schreibt<br />

man sie dem Linguisten George Zipf zu: Sie<br />

beschreibt eine in allen natürlichen Sprachen<br />

zu beobachtende statistische Verteilung von<br />

Worthäufigkeiten: Die Wahrscheinlichkeit eines<br />

Wortvorkommens verhält sich umgekehrt proportional<br />

zu seinem Rang in einer nach Häufigkeit<br />

sortierten Liste. Demnach kommen einige<br />

wenige Wörter extrem oft vor, während äußerst<br />

viele Wörter nur selten Verwendung finden.<br />

Die grundlegende Technik von Lucene<br />

wie auch anderer Information-Retrieval-<br />

Software gleicht den in Büchereien früher<br />

gängigen Karteikartensystemen. Unter<br />

den Unix-Tools ist das Verfahren durch<br />

»(s)locate« ebenfalls bekannt: Lucene<br />

erzeugt zunächst einen so genannten<br />

inversen Index über die in einer Sammlung<br />

vorhandenen Dokumente. In diesem<br />

sucht es bei einer Benutzeranfrage nach<br />

passenden Inhalten, statt alle Texte zu<br />

durchstöbern.<br />

Ein solcher Index besteht aus einer alphabetisch<br />

sortierten Liste aller in der<br />

Textsammlung vorkommenden Wörter.<br />

Jeder Eintrag in dieser Liste enthält Zeiger<br />

auf alle Dokumente, die das besagte<br />

Wort enthalten (Abbildung 1). Sucht ein<br />

Benutzer das Wort „<strong>Linux</strong>“, springt der<br />

Algorithmus zur entsprechenden Stelle<br />

Dem Gesetz der großen Zahlen folgend, nähert<br />

sich die tatsächliche Wortverteilung in einem<br />

Text oder einer Textsammlung mit wachsender<br />

Größe der <strong>im</strong> Zipf’schen Gesetz beschriebenen<br />

Verteilung <strong>im</strong>mer weiter an. Als Beispiel<br />

gilt das in englischen Texten häufigste Wort<br />

„the“. Es stellt in der englischen Sprache<br />

etwa jedes vierzehnte Wort dar, während das<br />

zweithäufigste Wort, „of“, nur noch halb so<br />

oft vorkommt. Die Frequenz der nachfolgenden<br />

Kandidaten fällt äußerst steil ab.


Wortliste<br />

• AAA<br />

• ...<br />

• <strong>Linux</strong><br />

• ...<br />

• <strong>Linux</strong>-<strong>Magazin</strong><br />

• ...<br />

• <strong>Magazin</strong><br />

<strong>im</strong> Index und liefert die dort referenzierten<br />

Dokumente zurück, in Abbildung 1<br />

zum Beispiel »Text 78«. Kommt „<strong>Linux</strong>“<br />

in keinem indizierten Text vor, existiert<br />

auch kein solcher Eintrag.<br />

Skalierbarkeit<br />

Dass dieser Trick aus der natürlichen Ordnung<br />

der Wörter in Schriftstücken auch<br />

bei sehr großen Datenmengen schnell<br />

durchsuchbare Indizes produziert, sieht,<br />

wer den Aufwand der nötigen Rechenoperationen<br />

analysiert: Angenommen<br />

eine Textsammlung enthält 1000 Dokumente<br />

mit durchschnittlich 200 Wörtern,<br />

also insgesamt 200 000 Wörter. Würde<br />

bei einer Suche nach einem Wort die<br />

Sammlung in ihrer natürlichen Ordnung<br />

durchsucht, müsste der Algorithmus<br />

200 000 Wortvergleiche anstellen.<br />

Der inverse Index hält hingegen für gleiche<br />

Wörter nur einen einzigen Eintrag<br />

vor. Die Zahl der Einträge hängt von der<br />

Textbeschaffenheit ab, liegt aber bei natürlichsprachlichen<br />

Texten <strong>im</strong>mer weit<br />

unter der Gesamtanzahl. Bei einer Textsammlung<br />

mit einer Gesamtlänge von<br />

200 000 Wörtern wäre beispielsweise<br />

eine Anzahl von 10 000 unterschiedlichen<br />

Wörtern realistisch.<br />

Der inverse Index skaliert gut, denn die<br />

Zahl der unterschiedlichen Wörter, das<br />

Vokabular, wächst auf Grund linguistischer<br />

Gesetzmäßigkeiten deutlich langsamer<br />

als die Gesamtlänge einer Textsammlung<br />

(siehe Kasten „Zipf’sches Gesetz“).<br />

Zur Sammlung hinzugefügte Dokumente<br />

erzeugen irgendwann nur noch sehr wenige<br />

oder gar keine neuen Einträge mehr<br />

<strong>im</strong> Index, es werden lediglich an bereits<br />

existierende Einträge weitere Zeiger auf<br />

Dokumente angehängt.<br />

Wer die Möglichkeiten von Lucene ausprobieren<br />

möchte, ohne eine eigene Anwendung<br />

zu programmieren, greift auf<br />

• Text 5, Text 1<br />

• ...<br />

• Text 78<br />

• ...<br />

• Text 1, Text 13, Text 58, Text 691<br />

• ...<br />

• Text 1, Text 15, Text 58<br />

Abbildung 1: In einem inversen Index enthält jedes Wort einer Dokumentsammlung<br />

Zeiger auf die Dokumente, in denen es vorkommt.<br />

Lucene in allen Facetten<br />

das Such-Servlet<br />

Dokumente<br />

Solr [2] zurück<br />

(siehe den Kasten<br />

„Lucene in<br />

allen Facetten“).<br />

Seine Entwicklung<br />

findet parallel zur<br />

Lucene-Bibliothek<br />

statt, daher steht<br />

es wie Lucene in<br />

den Versionen 3.6<br />

und 4.0 zur Verfügung. Version 4.0 bietet<br />

teilweise einfacher nutzbare Schnittstellen,<br />

einige optionale exper<strong>im</strong>entelle Features<br />

und verwendet leicht veränderte,<br />

aber abwärtskompatible Index-Strukturen.<br />

Nach Erfahrung des Autors hat sie<br />

ihre offizielle Einordnung als stabile Version<br />

in der Tat verdient.<br />

Nach dem Entpacken des Archivs findet<br />

der angehende Textforscher das Java-<br />

Archiv »start.jar« <strong>im</strong> Unterverzeichnis<br />

»examples«. Es enthält einen Jetty-Webserver,<br />

der den Zugriff auf den Solr-Index<br />

per HTTP ermöglicht. Nach dem Start mit<br />

»java ‐jar start.jar« horcht dieser Server<br />

auf dem TCP-Port 8983. Einen leeren Beispielindex<br />

namens »collection1« legt die<br />

Software automatisch an und verwendet<br />

ihn für die weiteren Operationen. Unter<br />

»http://localhost:8983/solr/« stellt das<br />

Webinterface einem Browser Informationen<br />

über System, Java-Umgebung und<br />

Index bereit (Abbildung 2).<br />

Die auf dem Webserver laufende Solr-<br />

Installation steuert man über die HTTP-<br />

Komandos »POST« und »GET«. Um Dokumente<br />

in den Index einzuspeisen, hält<br />

Solr <strong>im</strong> Verzeichnis »examples/examplesdocs«<br />

neben einigen Beispieldokumenten<br />

das Programm »post.jar« bereit. Es<br />

erwartet als Parameter eine oder mehrere<br />

Dateien, die es per »POST« an den Server<br />

unter der Adresse »http://localhost:8983«<br />

weiterreicht.<br />

Die XML-Beispieldateien, die <strong>im</strong> Verzeichnis<br />

»examples/examplesdocs« liegen,<br />

folgen einer von Solr festgelegten<br />

Konvention: Das »«-Element<br />

bildet ihre Wurzel und befiehlt Solr, <strong>im</strong><br />

Weiteren beschriebene Dokumente dem<br />

Index hinzuzufügen. Es folgen eine oder<br />

mehrere Dokumentdeklarationen mit<br />

»«. Darin befinden sich die einzelnen<br />

Felder des Dokuments, die mit<br />

»« definiert<br />

sind. Nun folgt der Inhalt des Feldes, das<br />

XML-gemäß mit »« abschließt.<br />

Ein Dokument, viele Felder<br />

An dieser Stelle führt Solr ein wichtiges<br />

Konzept von Lucene ein: Felder, von<br />

denen jedes Dokument <strong>im</strong> Index eines<br />

oder mehrere vorhält. Diese folgen keinem<br />

allgemein definierten Schema, jedes<br />

Dokument darf auch innerhalb eines Index<br />

Felder unterschiedlicher Namen und<br />

Inhalte enthalten. In der Praxis dienen<br />

die Felder dazu, Inhalte zu kategorisieren<br />

und separat durchsuchbar zu machen.<br />

Die Dokumente einer indizierten Büchersammlung<br />

enthalten zum Beispiel ein<br />

Feld namens »Text« mit dem eigentlichen<br />

Inhalt, während vom Text unabhängige<br />

Meta-Informationen in den Feldern »Autor«<br />

und »Jahr« vorliegen.<br />

Das Schema, das der Solr-Beispielserver<br />

verwendet, definiert das Feld namens »id«<br />

als eindeutigen Schlüssel, sodass <strong>im</strong>mer<br />

Lucene entstand ursprünglich als Java-Bibliothek,<br />

doch inzwischen gehört auch ein Python-<br />

Port namens Py Lucene zum offiziellen Projektumfang.<br />

Zudem gibt es Implementationen in C<br />

(Lucy), Dotnet (Lucene.Net), C++, PHP, Perl,<br />

Delphi, Ruby und Lisp.<br />

Einen wichtigen Teil des Lucene-Projekts bildet<br />

außerdem Solr [2], das als Referenz<strong>im</strong>plementation<br />

für das Framework fungiert und zugleich<br />

eine fertige Anwendung zum Indizieren<br />

und Durchsuchen von Dokumenten darstellt.<br />

Daneben soll das Unterprojekt Open Relevance<br />

die Lucene-Entwicklung systematisieren und<br />

vorantreiben, indem es Dokumentsammlungen<br />

sowie Beispiel-Suchanfragen und korrekte Ergebnisse<br />

dafür zusammenstellt, um das <strong>Test</strong>en<br />

und Evaluieren von Lucene-Anwendungen und<br />

‐Erweiterungen zu erleichtern.<br />

Einige weitere Apache-Projekte gelten ebenfalls<br />

als Teil des Lucene-Universums. Obwohl<br />

sie unabhängig und auch in anderen Kontexten<br />

beliebt sind, geht der Einsatz von Lucene in der<br />

Praxis oft mit diesen einher. Darunter fallen<br />

Hadoop [3], Mahout ([4], ein Framework für<br />

maschinelles Lernen), eine weitere Lucenebasierte<br />

Suchanwendung namens Nutch [5]<br />

und Tika [6], das Dokumente unterschiedlicher<br />

Formate wie PDF einliest und häufig zum<br />

Einspeisen von Texten in einen Lucene-Index<br />

zum Einsatz kommt.<br />

Lucene 03/2013<br />

Programmieren<br />

www.linux-magazin.de<br />

89


Programmieren<br />

www.linux-magazin.de Lucene 03/2013<br />

90<br />

kommt analog zum »+« das »‐«-Zeichen<br />

zum Einsatz, um Dokumente, die best<strong>im</strong>mte<br />

Ausdrücke enthalten, von der<br />

Trefferliste zu streichen.<br />

Solr liefert das Ergebnis in dem Format<br />

zurück, das der Benutzer <strong>im</strong> Browser<br />

in der Auswahlliste »wt« festlegt, bevor<br />

er die Suche startet. In Frage kommen<br />

wie bei der Indizierung XML, CSV und<br />

Json. Alternativ generiert die Anwendung<br />

direkt PHP-, Ruby- oder Python-Code;<br />

letzterer unterscheidet sich allerdings nur<br />

<strong>im</strong> Detail von Json.<br />

Abbildung 2: Das Solr-Webinterface gibt Auskunft über den Status des Systems und die vorhandenen Indizes.<br />

nur genau ein Dokument mit dem dort<br />

angegebenen Wert <strong>im</strong> Index existiert. Ein<br />

neues Dokument mit einem bereits existierenden<br />

»id«-Wert überschreibt das bestehende.<br />

Über die Datei »conf/schema.<br />

xml« <strong>im</strong> Solr-Verzeichnis, für die sich<br />

unter »example/solr/collection1/conf/<br />

schema.xml« ein ausführliches Beispiel<br />

befindet, lassen sich die XML-Elemente<br />

nach Belieben umdefinieren. Die Datei<br />

enthält auch die sinnvolle Empfehlung,<br />

das XML-Schema nicht nur korrekt, sondern<br />

auch kurz, prägnant und umstandslos<br />

nutzbar zu gestalten.<br />

Neben XML hält Solr Handler für die<br />

Dateiformate Json und CSV vor. Bei ersterem<br />

steht jedes Dokument zwischen<br />

geschweiften Klammern, in denen jedes<br />

Feld-Wert-Paar nach diesem Muster deklariert<br />

wird: »"Autor":"Johann Doe"«.<br />

Eine Beispieldatei liegt <strong>im</strong> »exampledocs«-<br />

Verzeichnis unter »books.json«.<br />

In einer CSV-Datei stehen die Feldnamen<br />

in der ersten Zeile, jeweils durch Kommata<br />

getrennt. Jede weitere Zeile führt<br />

je ein Dokument auf, mit den Werten für<br />

die Felder in der Reihenfolge der Feldnamen<br />

in der ersten Zeile und ebenfalls<br />

durch Kommata getrennt. Auch hierfür<br />

liefert das Solr-Archiv ein Beispiel in der<br />

Datei »books.csv«.<br />

Nachdem der Solr-Index mit Dokumenten<br />

gefüllt ist, etwa mit dem Befehl »java ‐jar<br />

post.jar *.xml«, steht dem Schritt zum eigentlichen<br />

Zweck der Übung nichts mehr<br />

<strong>im</strong> Wege. Die Suche geschieht direkt über<br />

den laufenden Webserver unter Angabe<br />

des Indexnamens, für »collection1« ruft<br />

man <strong>im</strong> Browser die Abfrageseite »http://<br />

localhost:8983/solr/#/collection1/query«<br />

auf (Abbildung 3). Eine Suchanfrage<br />

(Query) gibt der Benutzer <strong>im</strong> Feld »q« in<br />

der Syntax der Solr-Abfragesprache [7]<br />

ein. Für einen einzelnen Ausdruck in einem<br />

best<strong>im</strong>mten Feld lautet das passende<br />

Format »Feldname:Anfrage«.<br />

Erhält Solr mehrere Such-Ausdrücke, die<br />

sich auf dasselbe oder auf verschiedene<br />

Felder beziehen können, n<strong>im</strong>mt es ohne<br />

nähere Angaben eine Oder-Verknüpfung<br />

an. Dann liefert es Dokumente zurück,<br />

die mindestens einen der angegebenen<br />

Ausdrücke <strong>im</strong> passenden Feld enthalten.<br />

Wer eine Wortfolge sucht, schließt diese<br />

mit Anführungszeichen zu einem Ausdruck<br />

zusammen. Zum Beispiel führt die<br />

Anfrage »text:"das gelbe Haus"« eine solche<br />

Phrasensuche aus.<br />

Möchte der Anwender einen Ausdruck<br />

als zwingend definieren, setzt er diesem<br />

ein »+«-Zeichen vor. Die gleiche<br />

Funktionalität bietet auch der Operator<br />

»AND«: Zwischen zwei Ausdrücke gesetzt<br />

markiert er beide als unverzichtbar.<br />

Weitere Suchklauseln ohne »+« helfen<br />

Lucene dabei, die Relevanz der Treffer<br />

besser zu bemessen.<br />

Abfragesprachen<br />

Die Solr- und Lucene-Query-Sprachen<br />

halten zur genaueren Spezifikation von<br />

Anfragen die Möglichkeit zur Bereich-<br />

Suche mit beispielsweise »[a TO m]« und<br />

zur Wildcard-Suche mit Ausdrücken wie<br />

»Linu*« parat. Im Unterschied zur nativen<br />

Lucene-Abfragesprache [8] erlaubt es<br />

Solr dank einer Erweiterung auch, Wildcards<br />

am Anfang einer Bereich-Suche zu<br />

verwenden, etwa »[* TO m]«. Außerdem<br />

Mit Lucene programmieren<br />

Die Lucene-Bibliothek bietet praktisch<br />

unbegrenzte Möglichkeiten, um eigene<br />

Suchapplikationen für Spezialanwendungen<br />

zu entwerfen, die über die Solr-Funktionalität<br />

hinausgehen. Bei der Entwicklung<br />

liegt der Fokus wiederum auf den<br />

beiden zentralen Schritten der Textsuche<br />

mittels inverser Indizes: erst indizieren,<br />

dann suchen.<br />

Die Java-Klasse »org.apache.lucene.index.IndexWriter«<br />

ist dafür zuständig,<br />

Indizes zu erstellen und zu verändern<br />

(Listing 1). Ihr Konstruktor n<strong>im</strong>mt zwei<br />

Argumente entgegen: ein Verzeichnis<br />

in Form eines Objekts der Klasse »org.<br />

apache.lucene.store.Directory« und eine<br />

Konfiguration mittels »org.apache.lucene.<br />

index.IndexWriterConfig« . Dann fügt der<br />

Programmierer mit der »IndexWriter«-<br />

Methode »addDocument()« ein oder mit<br />

»addDocuments()« mehrere Dokumente<br />

zum Index hinzu. Mit dem abschließenden<br />

»close()«-Aufruf schreibt er die Änderungen<br />

auf den Datenträger und schließt<br />

geöffnete Dateien.<br />

Ein Dokument besteht – wie oben beschrieben<br />

– aus einer beliebigen Anzahl<br />

von Feldern, die Lucene über die Klasse<br />

»org.apache.lucene.document.Field« definiert.<br />

Über die »add()«-Methode fügt der<br />

Programmierer sie einem »Document«-<br />

Objekt hinzu. Für die meisten in der Praxis<br />

gängigen Fälle hält Lucene passende<br />

Unterklassen bereit, etwa »TextField«,<br />

»IntField« und »DoubleField«.<br />

Der Standardkonstruktor »TextField«<br />

erwartet wie die meisten anderen Feld-<br />

Klassen den Namen und den Inhalt des<br />

Feldes in Form von Strings als Argumente<br />

sowie eine Angabe darüber, ob der Text<br />

auch in seiner originalen Version <strong>im</strong> Index


Abbildung 3: Die Webschnittstelle der Lucene-Anwendung Solr ermöglicht Suchanfragen <strong>im</strong> Browser; hier ist<br />

die Ausgabe eines Resultats <strong>im</strong> Json-Format zu sehen.<br />

landen soll. Der zu durchsuchende Text<br />

steht in der Praxis meist nicht in einer<br />

kurzen Zeichenkette wie in Zeile 10 von<br />

Listing 1, sondern wird durch eine String-<br />

Variable referenziert. Über eine Liste von<br />

Dokumenten kann der Programmierer<br />

mittels einer Schleife iterieren.<br />

Anschließend schreibt der Code das neue<br />

Dokument in den Index, wobei das erwähnte<br />

»IndexWriter«-Objekt zum Zuge<br />

kommt. Der Konstruktor benötigt ein »Directory«-<br />

und ein »IndexWriterConfig«-<br />

Objekt. Für letzteres kommt eine weitere<br />

wichtige Komponente zum Tragen, nämlich<br />

die Implementierung der abstrakten<br />

Klasse »org.apache.lucene.analysis.<br />

Analyzer«, die sich um die Analyse der<br />

eingespeisten Texte kümmert. Die Analyzer-Implementationen<br />

unterscheiden sich<br />

unter anderem in der Sprache, für die sie<br />

gemacht sind: Für Deutsch stellt Lucene<br />

»org.apache.lucene.analysis.de.German-<br />

Analyzer« bereit.<br />

Tokenisierung<br />

Möglichkeiten zur Opt<strong>im</strong>ierung des Index,<br />

zum Beispiel mit Hilfe von Filtern<br />

(bei »org.apache.lucene.analysis.Token-<br />

Filter«) häufige, aber inhaltlich mit wenig<br />

Aussagekraft behaftete Funktionswörter<br />

wie „und“ zu entfernen.<br />

Weitere Analyzer setzen die Suche auf<br />

Grundlage anderer Einheiten als der<br />

Wörter um. Im <strong>Paket</strong> »org.apache.lucene.<br />

analysis.phonetic« etwa gibt es einige Varianten,<br />

die statt auf Orthographie auf<br />

phonetische Umschreibungen setzen. So<br />

erlaubt etwa der Beider-Morse-Filter die<br />

Suche nach ähnlich klingenden Wörtern;<br />

der von Lucene mitgelieferte Filter beschränkt<br />

sich bislang jedoch auf Englisch.<br />

Andere Analyzer unterteilen einen<br />

Text beispielsweise nicht in Wörter, sondern<br />

in Silben, oder reduzieren die Zahl<br />

der unterschiedlichen Wörter und damit<br />

die Indexgröße, indem sie jedes Wort auf<br />

seinen Stamm reduzieren.<br />

Analyzer und Tokenizer bilden wichtige<br />

Bestandteile des Indizierungsprozesses,<br />

weil sie darüber entscheiden, wonach<br />

ein Benutzer suchen kann. Im Beispiel<br />

in Abbildung 1 bildet etwa das Wort »<strong>Linux</strong>‐<strong>Magazin</strong>«<br />

einen Eintrag <strong>im</strong> Index,<br />

ein anderer Tokenizer könnte es aber<br />

auch in die drei Tokens »<strong>Linux</strong>«, »‐« und<br />

»<strong>Magazin</strong>« unterteilen. In letzterem Fall<br />

hätte eine Suche nach einem zusammenhängenden<br />

Wort »<strong>Linux</strong>‐<strong>Magazin</strong>« keinen<br />

Erfolg; erst eine Phrasensuche nach den<br />

drei aufeinanderfolgenden Tokens führte<br />

zum gewünschten Ergebnis.<br />

Umgekehrt hätte die feingliedrige Aufteilung<br />

den Vorteil, dass bei der Suche nach<br />

»<strong>Linux</strong>« ein Dokument, das »<strong>Linux</strong>‐<strong>Magazin</strong>«<br />

enthält, auch ohne den Einsatz von<br />

Wildcards gefunden würde.<br />

Auf der Suche<br />

Um eventueller Verwirrung auf Grund<br />

unterschiedlicher Analyse- und Tokenisierungsalgorithmen<br />

vorzubeugen,<br />

durchlaufen eingehende Suchanfragen<br />

normalerweise denselben Analyzer wie<br />

die indizierten Dokumente. Auch in der<br />

sonstigen Vorgehensweise ähnelt die Suche<br />

der Indizierung.<br />

Für das Einlesen eines Index zeichnet die<br />

abstrakte Klasse »org.apache.lucene.index.IndexReader«<br />

verantwortlich, wie in<br />

Listing 2 zu sehen ist. Die Methode<br />

»open(Directory dir)« der Klasse »org.<br />

apache.lucene.index.DirectoryReader« erzeugt<br />

ein solches Objekt. Der Konstruktor<br />

von »org.apache.lucene.search.Index-<br />

Searcher« n<strong>im</strong>mt den »IndexReader« als<br />

Argument entgegen.<br />

Der »IndexSearcher« steht nun bereit, um<br />

mittels eines »Query«-Objekts Suchanfragen<br />

auszuführen. Ein Objekt der Klasse<br />

»org.apache.lucene.queryparser.flexible.<br />

standard.StandardQueryParser« erzeugt<br />

solche »Query«-Objekte mit der Methode<br />

Lucene 03/2013<br />

Programmieren<br />

www.linux-magazin.de<br />

91<br />

Der »Analyzer« spielt eine zentrale Rolle<br />

für die Struktur des Index, denn er sorgt<br />

unter anderem für die „Tokenisierung“,<br />

also die Aufteilung des Textes in jene Bestandteile,<br />

die <strong>im</strong> inversen Index eigene<br />

Einträge darstellen (Tokens). Das ist eine<br />

komplexe Aufgabe, beispielsweise muss<br />

er Satz- und Sonderzeichen korrekt als<br />

Teile eines Token – etwa in einer Weboder<br />

E-Mail-Adresse – von eigenständigen<br />

Zeichen wie dem abschließenden<br />

Satzpunkt unterscheiden. Des Weiteren<br />

bieten sich bei der Analyse zahlreiche<br />

Listing 1: Dokument erzeugen und in den Index schreiben<br />

01 /* Dieses Beispiel ignoriert Exceptions. Sie<br />

07 IndexWriter writer = new IndexWriter(dir,<br />

sind in der Praxis durch die umgebende Funktion<br />

config);<br />

mit Throw zu werfen oder mit Try‐/Catch‐Blöcken 08 <br />

abzufangen. */<br />

09 /* Das Dokument */<br />

10 Field textField = new TextField("text", "Otto<br />

02 <br />

geht nach Hause.", Field.Store.YES);<br />

03 /* Den IndexWriter erzeugen */<br />

11 Document doc = new Document();<br />

04 Analyzer analyzer = new GermanAnalyzer(VERSION.<br />

12 doc.add(textField);<br />

Lucene_40);<br />

13 <br />

05 IndexWriterConfig config =<br />

14 /* Dokument zum Index hinzufügen und alle<br />

new IndexWriterConfig(analyzer);<br />

Dateien schreiben und schließen */<br />

06 Directory dir = FSDirectory.open(new File(<br />

15 writer.addDocument(doc);<br />

"/home/user/lucene/index"));<br />

16 writer.close();


Programmieren<br />

www.linux-magazin.de Lucene 03/2013<br />

92<br />

01 String queryString =<br />

»parse()« aus einem Eingabe-String und<br />

einem Analyzer. Alternativ <strong>im</strong>plementiert<br />

der Programmierer einen eigenen Query-<br />

Parser, der die unterschiedlichen Query-<br />

Typen oder wiederum selbst definierte<br />

Suchobjekte generiert.<br />

Das Ergebnis übergibt er der »search()«-<br />

Methode des »IndexSearcher«. Deren<br />

Resultat besteht aus einem »org.apache.<br />

lucene.search.TopDocs«-Objekt, das die<br />

einzelnen Treffer sowie Angaben über die<br />

Trefferanzahl und den höchsten gefundenen<br />

Relevanzwert enthält.<br />

Query-Objekte helfen übrigens auch dabei,<br />

Dokumente zu löschen. Dazu übergibt<br />

der Programmierer ein Query an<br />

die Methode »deleteDocuments()« eines<br />

»IndexWriter«, der dann passende Dokumente<br />

aus dem Index entfernt.<br />

Sieger nach Punkten<br />

Die Disziplin des Information Retrieval<br />

beschränkt sich nicht allein auf die Textsuche.<br />

Es geht auch darum, die potenziell<br />

sehr große Treffermenge nach der Relevanz<br />

für die eingegebene Such anfrage<br />

der Benutzers zu sortieren. Lucene verwendet<br />

eine Vielzahl von Faktoren, um<br />

die Relevanz der Dokumente, die die<br />

Abfragebedingungen erfüllen, zu schätzen<br />

und in Zahlen auszudrücken. Harte<br />

Kriterien sind dabei schnell ausgemacht:<br />

Ein Dokument, das nicht alle mit »+«<br />

gekennzeichneten Ausdrücke enthält, erhält<br />

unverzüglich einen Score (Punktestand)<br />

von 0 zugewiesen. Analog gilt das<br />

ebenso für jene Dokumente, die einen<br />

mit »‐« gekennzeichneten Suchausdruck<br />

enthalten.<br />

Komplexer verhält es sich mit den Soll-<br />

Ausdrücken. Sie erhalten unterschiedlich<br />

new String("text:<strong>Linux</strong>‐<strong>Magazin</strong>");<br />

02 int maxHits = 100;<br />

03 <br />

04 /* IndexReader und IndexSearcher erzeugen */<br />

05 Analyzer analyzer = new GermanAnalyzer(<br />

VERSION.Lucene_40);<br />

06 Directory dir = FSDirectory.open(new File(<br />

"/home/user/lucene/index"));<br />

07 IndexReader reader = DirectoryReader.open(dir);<br />

08 IndexSearcher searcher =<br />

09 <br />

new IndexSearcher(reader);<br />

viel Gewicht, der Faktor lehnt sich an<br />

das maßgeblich von der britischen Information-Retrieval-Pionierin<br />

Karen Spärck-<br />

Jones entwickelte TF-IDF-Maß (Term Frequency<br />

– Inverse Document Frequency)<br />

an [9]. Danach zählt ein Ausdruck –<br />

meist ein Wort oder eine Wortfolge –, der<br />

in jedem Text einer Sammlung auftaucht,<br />

als wenig bedeutsam für dessen Inhalt,<br />

während einer, der nur in einem oder<br />

wenigen Dokumenten vorkommt, als<br />

wichtiger gilt.<br />

Boost<br />

Auch hier bietet Lucene Möglichkeiten,<br />

nach eigenem Gutdünken einzugreifen.<br />

Der erste Ansatzpunkt liegt be<strong>im</strong> Anlegen<br />

der Felder eines Dokuments, deren relative<br />

Relevanz das Feld »boost« best<strong>im</strong>mt.<br />

Ohne weitere Angaben liegt dieser Wert<br />

bei 1.0, die »Field«-Methode »setBoost()«<br />

manipuliert ihn. Je höher der Boost-Wert<br />

eines Feldes <strong>im</strong> Vergleich zu anderen Feldern<br />

ausfällt, desto höher bewertet Lucene<br />

Treffer darin. Wer ganze Dokumente<br />

statt einzelner Felder in der Relevanz-<br />

Rangliste nach oben befördern möchte,<br />

s<strong>im</strong>uliert einen dokumentbezogenen<br />

Boost, indem er für jedes Feld des Dokuments<br />

den Boost-Wert erhöht.<br />

Auch bei der Suche lässt sich ein angepasster<br />

Boost einrichten, der sich zusätzlich<br />

zu den <strong>im</strong> Index abgespeicherten<br />

Eigenheiten auswirkt. Dazu verändert<br />

man mit der »setBoost()«-Methode eines<br />

»Query«-Objekts den Faktor auf die gleiche<br />

Weise wie bei der Indizierung.<br />

Lucene lässt Programmierern zahlreiche<br />

Möglichkeiten zu weiteren Eigenentwicklungen.<br />

Zusätzliche Informationen über<br />

einzelne Tokens oder Wörter speichern<br />

Listing 2: Suche nach „<strong>Linux</strong>-<strong>Magazin</strong>“ mittels »IndexSearcher«<br />

10 /* Query erzeugen und suchen */<br />

11 StandardQueryParser parser = new<br />

StandardQueryParser(analyzer);<br />

12 Query query = parser.parse(queryString);<br />

13 TopDocs topdocs = searcher.search(query,<br />

maxHits);<br />

14 <br />

15 /* Treffer auslesen und ausgeben */<br />

16 ScoreDoc[] docs = topdocs.scoreDocs;<br />

17 for (ScoreDoc doc : doc)<br />

18 System.out.println(doc.doc+"\t"+doc.score);<br />

19 <br />

20 reader.close();<br />

sie in einer so genannten Payload. Dort<br />

können sie beispielsweise linguistische<br />

Informationen über Syntax und Semantik<br />

ablegen und über die Query-Klasse »org.<br />

apache.lucene.search.payloads.Payload-<br />

TermQuery« abfragen.<br />

Flexible Möglichkeiten<br />

Weitere Spezial-Query-Klassen stehen<br />

bereit: darunter »PhraseQuery« für die<br />

Suche nach aufeinanderfolgenden Wörtern,<br />

»BooleanQuery« für die Verknüpfung<br />

einzelner Anfragen nach boolescher<br />

Logik oder die Klasse »FuzzyQuery«, die<br />

ähnliche Wörter wie das in einer Suchanfrage<br />

angegebene findet. Auch der<br />

»StandardQueryParser« verwendet diese<br />

Query-Klassen, doch der fantasievolle<br />

Lucene-Nutzer setzt sie für seine Zwecke<br />

<strong>im</strong> eigenen Query-Parser ein.<br />

Wer Lucene mit dessen Standardmitteln<br />

nutzen möchte, findet mit Solr eine sofort<br />

anwendbare Applikation. Wer eigene Anwendungsfälle<br />

umsetzen will, der greift<br />

direkt auf das Lucene-API zurück; die<br />

eingehende Lektüre der Dokumentation<br />

und der Javadocs bietet Einstiegspunkte<br />

für die Entwicklung. (mhu) n<br />

Infos<br />

[1] Lucene: [http:// lucene. apache. org]<br />

[2] Solr: [http:// lucene. apache. org/ solr]<br />

[3] Hadoop: [http:// hadoop. apache. org]<br />

[4] Mahout: [http:// mahout. apache. org]<br />

[5] Nutch: [http:// nutch. apache. org]<br />

[6] Tika: [http:// tika. apache. org]<br />

[7] Solr-Abfragesprache: [http:// wiki. apache.​<br />

org/ solr/ SolrQuerySyntax]<br />

[8] Lucene-Abfragesprache: [http:// lucene.​<br />

apache. org/ core/ 4_0_0/ queryparser/​<br />

org/ apache/ lucene/ queryparser/ classic/​<br />

package‐summary. html]<br />

[9] TF-IDF: [http:// en. wikipedia. org/ wiki/​<br />

Tf%E2%80%93idf]<br />

[10] Listings zu diesem Artikel:<br />

[http:// www. linux‐magazin. de/ static/​<br />

listings/ magazin/ 2013/ 03/ lucene]<br />

Der Autor<br />

Carsten Schnober arbeitet als wissenschaftlicher<br />

Mitarbeiter am Institut für Deutsche Sprache in<br />

Mannhe<strong>im</strong>. Im Rahmen der Forschungsinfrastruktur<br />

baut er dort eine linguistische Analyseplattform,<br />

mit der Sprachwissenschaftler ihre<br />

umfangreichen Daten durchsuchen.


MEDIALINX<br />

IT-ACADEMY<br />

IT-Onlinetrainings<br />

Mit Experten lernen.<br />

powered by<br />

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

n Best<strong>im</strong>men Sie Ihr eigenes Lerntempo und nutzen Sie die flexible Zeiteinteilung.<br />

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

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

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

mit Ingo Wichmann,<br />

<strong>Linux</strong>hotel<br />

499 €<br />

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

mit Marco Göbel,<br />

Com Computertraining GmbH<br />

499 €<br />

www.medialinx-academy.de<br />

Effiziente BASH-Skripte<br />

mit Klaus Knopper,<br />

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

knopper.net<br />

199 €<br />

Zarafa – die offiziellen Trainings<br />

mit Marco Welter,<br />

Zarafa Deutschland GmbH<br />

Zarafa Administrator<br />

249 €<br />

Zarafa Engineer<br />

249 €


Programmieren<br />

www.linux-magazin.de Perl-Snapshot 03/2013<br />

94<br />

Ein Perl-Tool, um Distributionsrepositories abzufragen<br />

<strong>Linux</strong>-Analyse-Automat<br />

Wann frischen Fedora, Debian & Co. ihre <strong>Paket</strong>e auf? Ein Perl-Skript bemüht Plugins, die auf den FTP- und<br />

HTTP-Servern wichtiger <strong>Linux</strong>-Distributionen herumschnüffeln und die Releasedaten heraussuchen. Michael Schilli<br />

den Distributionen stellen ein weiteres<br />

Problem dar, das sich durch unscharfe<br />

Suchen und manuelle Auswahl aber mildern<br />

lässt (Abbildung 4).<br />

Duplizieren verpönt<br />

© Jane Rix, 123RF.com<br />

Diesmal entstand die Software gewissermaßen<br />

als Auftragsarbeit: Die Redaktion<br />

brauchte für den Schwerpunkt dieses <strong>Magazin</strong>s<br />

ein Tool, das die Update-Server<br />

der großen <strong>Linux</strong>-Distributionen nach Releasedaten<br />

durchforstet. Da Perl in dem<br />

Ruf steht, gut in komplexen Abfra gen und<br />

Stringmanipulationen zu sein, widmet<br />

sich der folgende Artikel ganz der werkzeuglichen<br />

Unterstützung des Schwerpunkt-Themas.<br />

Ziel soll ein Skript sein,<br />

das die per Kommandozeile übergebene<br />

Anfrage entgegenn<strong>im</strong>mt, die verschiedenen<br />

Lokalitäten aufsucht, passende <strong>Paket</strong>namen<br />

ausfiltert, die Datums an ga ben<br />

einsammelt und zum Schluss die Ergebnisse<br />

tabelliert ausgibt.<br />

Die Schwierigkeit besteht nun freilich<br />

darin, dass die Distributionen ihre Release-Informationen<br />

in unterschiedlichen<br />

Formaten anbieten. So liegen die <strong>Paket</strong>e<br />

bei Ubuntu und Debian auf einem FTP-<br />

Server – allerdings nicht alle in einem<br />

Verzeichnis, sondern aufgespaltet in Unterverzeichnisse,<br />

deren Namen aus dem<br />

ersten Buchstaben des <strong>Paket</strong>namens bestehen<br />

(Abbildung 1).<br />

So schlägt das <strong>Paket</strong> »pulseaudio« bei<br />

Debian <strong>im</strong> Verzeichnis »p« seine Zelte<br />

auf, während ein Server in Esslingen alle<br />

Fedora-<strong>Paket</strong>e <strong>im</strong> Verzeichnis zur Prozessor-Architektur<br />

auflistet (Abbildung<br />

2). Open Suse verfährt ähnlich, zeigt<br />

aber die Datei-Modifikationsdaten nicht<br />

wie ein FTP-Server an, sondern in einem<br />

wohl selbst erfundenen Format à la<br />

»19‐Nov‐2012 16:14« (Abbildung 3).<br />

Plugins überwinden<br />

Unterschiede<br />

Ein Skript, das diese Informationen von<br />

den einzelnen Servern abholt, steht nun<br />

vor der Schwierigkeit, dass es einerseits<br />

Gemeinsamkeiten zwischen den<br />

Repositories gibt, zum Beispiel die FTP-<br />

Server-artige Darstellung, aber andererseits<br />

auch Unterschiede wie die verschiedenen<br />

URLs oder das Datumsformat. Die<br />

unterschiedlichen <strong>Paket</strong>namen zwischen<br />

Code duplizieren gilt in Entwicklerkreisen<br />

als missliebig. Grund: Wer in einem<br />

der Copy-Paste-Abschnitte eine Kleinigkeit<br />

ändert, muss alle Duplikate aufspüren<br />

und nachbearbeiten. Die objektorientierte<br />

Programmierung bietet deshalb<br />

den Mechanismus der Vererbung, und<br />

das heute vorgestellte Perl-Skript »dist«<br />

macht davon Gebrauch. Es bedient sich<br />

nämlich zum Einholen der Informationen<br />

mehrerer Plugins, die ihrerseits von<br />

anderen funktionsähnlichen Plugins oder<br />

Utility-Modulen erben.<br />

Das Skript in Listing 1 definiert eine<br />

Klasse »Distro«. Deren Methode »list()«<br />

klappert auf einen Suchstring hin die<br />

<strong>Paket</strong>server von Distributionen ab. Das<br />

Skript n<strong>im</strong>mt die Abfrage auf der Kommandozeile<br />

entgegen, etwa »distro pulseaudio«,<br />

findet zur Laufzeit heraus, wie<br />

viele »Distro«-Plugins der User installiert<br />

hat, und ruft der Reihe nach die »list()«-<br />

Methode jedes einzelnen auf.<br />

Alle Plugins halten sich an eine vorgegebene<br />

Schnittstelle, akzeptieren einen<br />

Aufruf der Methode »list()« mit einem<br />

Suchstring und geben eine Referenz auf<br />

einen Array mit den Treffern zurück. Jeder<br />

Treffer besteht aus einer Referenz<br />

auf einen Hash mit den Einträgen »pkg«<br />

und »mt<strong>im</strong>e«, die den Namen gefundener<br />

Online PLUS<br />

In einem Screencast demonstriert<br />

Michael Schilli das Beispiel: [http://​<br />

www.linux-magazin.de/​plus/​2013/03]


Perl-Snapshot 03/2013<br />

Programmieren<br />

Abbildung 1: Debian und Ubuntu stellen die Releasepakete<br />

in zweistufiger Hierarchie per FTP zur Schau.<br />

<strong>Paket</strong>e und deren letztes Modifikationsdatum<br />

in Sekunden seit 1970 enthalten.<br />

Code sparen mit Mouse<br />

Wer viel objektorientiert in Perl programmiert,<br />

dem geht die weitschweifige Syntax<br />

für oft genutzte Bausteine wie Konstruktoren<br />

oder Parameterabfragen relativ<br />

schnell auf die Nerven. Vor einiger Zeit<br />

hatten es sich deswegen die Entwickler<br />

des CPAN-Moduls Moose [2] zur Aufgabe<br />

gemacht, Perl mittels syntaktischer<br />

Zauberei zu einer objektorientierten Sprache<br />

erster Wahl zu mausern („A Postmodern<br />

Object System for Perl“).<br />

Moose ist sehr umfangreich und bietet<br />

viele Funktionen – so viele, dass es Ressourcen<br />

frisst und für Entwickler einfacher<br />

objektorientierter Programme mehr<br />

Last als Hilfe bringt. Darum pflegen einige<br />

CPAN-Programmierer abgespeckte<br />

Moose-Derivate wie Mouse [3], Moo und<br />

einige mehr. Listing 1 verwendet Mouse,<br />

könnte aber auch gut mit Moose arbeiten,<br />

da die bei Moose üblichen zusätzlichen<br />

Abbildung 2: Ein Verzeichnis auf dem FTP-Server von Fedora mit den <strong>Paket</strong>en und deren Releasedaten.<br />

Sekunden be<strong>im</strong> Laden eines Einmal-<br />

Skripts nicht ins Gewicht fallen.<br />

Be<strong>im</strong> Listing 1 fällt auf, dass die ab Zeile<br />

13 definierte Klasse »Distro« keinen Konstruktor<br />

»new()« definiert, das Hauptprogramm<br />

aber einen solchen in Zeile 9 aufruft.<br />

Das Gehe<strong>im</strong>nis: »use Mouse« <strong>im</strong><br />

Code der Klasse schmuggelt einen Konstruktor<br />

ein. Dieser ruft nicht nur ein »Distro«-Objekt<br />

ins Leben, sondern könnte bei<br />

Bedarf sogar benamte Parameter verarbeiten<br />

und intern <strong>im</strong> Objekt und mit sauberen<br />

Accessors nach außen verwalten.<br />

Plugins ohne Ballast<br />

Eine weitere Besonderheit in Listing 1 ist<br />

die mit Module::​Pluggable aus dem CPAN<br />

eingeschleuste Plugin-Verwaltung. Der<br />

Parameter »search_dirs« in Zeile 18 gibt<br />

mit ».« an, dass das Modul später <strong>im</strong> aktuellen<br />

Verzeichnis nach Dateien der<br />

Form »Distro/Plugin/xxx.pm« suchen<br />

wird. Die Option »require« ist auf einen<br />

wahren Wert gesetzt, also lädt das Modul<br />

mittels »plugins()« gefundene Plugins automatisch,<br />

instanziert ihre Klasse und gibt<br />

eine Referenz auf das entstandene Objekt<br />

zurück. Jedes Plugin bietet – direkt oder<br />

ererbt – eine »list()«-Methode zum Einholen<br />

der Informationen an sowie eine<br />

»dateformat()«-Methode, die das Sekundendatum<br />

in ein anwenderfreundliches<br />

Stringformat verwandelt.<br />

Listing 2 zeigt ein Plugin, das den Ubun tu-<br />

Server abfragt. Das Debian-Derivat nutzt<br />

das gleiche Format wie der Stammvater.<br />

Das Debian-Plugin erbt daher in Zeile 5<br />

Abbildung 3: Open Suse wirft alle RPMs in ein Verzeichnis und serviert sie in einem eigenen Datumsformat.<br />

www.linux-magazin.de<br />

95<br />

Listing 1: »dist«<br />

01 #!/usr/local/bin/perl ‐w<br />

02 use strict;<br />

03 use Log::Log4perl qw(:easy);<br />

04 # Log::Log4perl‐>easy_init($DEBUG);<br />

05<br />

06 my( $query ) = @ARGV;<br />

07 die "usage: $0 query" if !defined $query;<br />

08<br />

09 my $distro = Distro‐>new();<br />

10 $distro‐>list( $query );<br />

11<br />

12 ###########################################<br />

13 package Distro;<br />

14 ###########################################<br />

15 use Mouse;<br />

16 use Module::Pluggable<br />

17 require => 1,<br />

18 search_dirs => ['.'];<br />

19<br />

20 sub list {<br />

21 my( $self, $query ) = @_;<br />

22<br />

23 for my $plugin ( $self‐>plugins() ) {<br />

24 next unless $plugin‐>can( "list" );<br />

25<br />

26 print "[$plugin]\n";<br />

27 my $data = $plugin‐>list( $query );<br />

28<br />

29 for ( @$data ) {<br />

30 print "$_‐>{ pkg }\t",<br />

31 $plugin‐>dateformat(<br />

32 $_‐>{ mt<strong>im</strong>e } ), "\n";<br />

33 }<br />

34 }<br />

35 }


Programmieren<br />

www.linux-magazin.de Perl-Snapshot 03/2013<br />

96<br />

Das FTP-Modul in Listing 4 nutzt zum<br />

Einholen der FTP-URL den Tausendsassa<br />

LWP::UserAgent. Die Zeitstempel in den<br />

Abbildungen 1 und 2 versteht das CPAN-<br />

Modul File::Listing einzulesen und zu interpretieren.<br />

Seine Methode »parse_dir()«<br />

n<strong>im</strong>mt die Ausgabezeilen des FTP-Servers<br />

entgegen und fieselt Dateinamen, Dateityp,<br />

Größe in Bytes, das Datum der letzten<br />

Modifikation und Berechtigungsmodus<br />

heraus. Zurück kommt eine Liste mit<br />

Werten, von denen sich Zeile 28 nur Name<br />

und Datum schnappt und als Eintrag<br />

an die später ans Hauptprogramm zurückgereichte<br />

Datenstruktur anhängt.<br />

Damit das Hauptprogramm den Sekundenwert<br />

des Zeitstempels ohne Mühe in<br />

ein »DateT<strong>im</strong>e«-Objekt umwandeln kann,<br />

ruft die Methode »dateformat()« ab Zeile<br />

36 in Distro::Plugin::FTP den alternativen<br />

»DateT<strong>im</strong>e«-Konstruktor »from_epoch()«<br />

auf, der ein »DateT<strong>im</strong>e«-Objekt des Zeitstempels<br />

zurückgibt. Be<strong>im</strong> FTP-Modul<br />

handelt es sich nicht um ein Distributions-Plugin,<br />

sondern nur um ein Utility-<br />

<strong>Paket</strong>. Es definiert deshalb auch keine<br />

»list()«-Methode. Das Hauptprogramm<br />

in Listing 1 prüft dies mit der allen Perlmit<br />

dem Mouse-Schlüsselwort »extends«<br />

vom Basisplugin »Distro::​Plug in::Debian«<br />

und definiert nur eine Funktion »base_<br />

url()« mit der Basis-URL zum FTP-Server<br />

des Ubuntu-Projekts. Die »list()«-Methode<br />

bietet dem Ubuntu-Plug in dies über die<br />

gleichnamige Methode der »Debian«-Basisklasse<br />

an.<br />

Auch wenn Perl später die ererbte Methode<br />

in einem anderen Modul ausführt,<br />

weiß es doch, dass es sich bei dem gerade<br />

aktiven Objekt um ein Ubuntu- und nicht<br />

um ein Debian-Plugin handelt. Ruft dann<br />

der Code <strong>im</strong> Debian-Plugin »base_url()«&l