24.03.2014 Aufrufe

LinuxUser SHELL - Administrieren und Automatisieren ohne GUI (Vorschau)

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

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

10.2011<br />

NO-MEDIA-EDITION<br />

NUR 5,50 E<br />

<strong>SHELL</strong><br />

Bildbearbeitung mit Perl <strong>und</strong> Python S. 90<br />

Ordnung im Bilderwust mit Digikam S. 72<br />

Sammlung katalogisieren mit GCStar S. 60<br />

EUR 5,50<br />

Deutschland<br />

Österreich EUR 6,30<br />

Schweiz sfr 11,00<br />

Benelux EUR 6,50<br />

Spanien EUR 7,45<br />

Italien EUR 7,45<br />

10.2011<br />

10.2011<br />

Das Magazin für die Praxis<br />

Imagination • Anki • Pearl Simvalley SP-60 GPS • GCStar • Digikam • Audacity • Synology DS110j • Sbackup • <strong>SHELL</strong><br />

ANKI • IMAGINATION • DS110j • DIGIKAM • SBACKuP • AuDACITY • <strong>SHELL</strong><br />

ADMINISTrIErEN uND AuTOMATISIErEN OHNE GuI<br />

<strong>SHELL</strong><br />

Netzwerk voll im Griff S. 38<br />

Optimale Netzwerkkonfiguration <strong>und</strong><br />

schnelle Fehlerbehebung via Prompt<br />

Tools für Einsteiger <strong>und</strong> Profis S. 20, 32<br />

Einstieg in den klassischen CLI-Editor Vi(m),<br />

Shell-Skripte schreiben <strong>und</strong> via Menü bedienen<br />

Zugriffe steuern, Ressourcen freigeben S. 46<br />

Benutzerkonten prüfen <strong>und</strong> verwalten, Benutzergruppen zweckdienlich<br />

organisieren <strong>und</strong> Systemressourcen gezielt für die Anwender freigeben<br />

Anki S. 64<br />

Schneller lernen<br />

mit Flashcards<br />

Sbackup S. 82<br />

Daten sichern<br />

leicht gemacht<br />

4 195111 005504 10<br />

Terabyte-NAS mit Mehrwert S. 76<br />

Synology DS110j in Kombination mit Strato-HiDrive-Paket:<br />

Durchdachte Funktionen <strong>und</strong> Cloud-Backup auf Knopfdruck<br />

Ohrenschmaus<br />

mit Audacity S. 56<br />

Audio-Files schneiden <strong>und</strong><br />

mit Effekten aufpeppen<br />

Pfiffige Videos statt<br />

dröger Diashows S. 68<br />

Mit Imagination bringen Sie<br />

Bewegung ins Fotoalbum<br />

Dual-SIM-Handy zum kleinen Preis S. 86<br />

Perfekt für Urlaub <strong>und</strong> Dienstgespräch: Pearl Simvalley<br />

SP-60 nutzt virtuos zwei SIM-Karten im Parallelbetrieb<br />

www.linux-user.de


STRATO PRO<br />

Server-Technik, die begeistert!<br />

STRATO MultiServer<br />

Die Private Cloud auf flexiblen Hardware-Pools<br />

Setzen Sie bei Ihren Webprojekten voll auf die Flexibilität der STRATO MultiServer. Sie mieten dedizierte Leistung <strong>und</strong> können diese mit<br />

Hilfe der vorinstallierten Virtualisierungsoberfläche selbst aufteilen. Erstellen Sie virtuelle Maschinen <strong>und</strong> weisen dedizierte Ressourcen<br />

zu. So entsteht Ihre persönliche Cloud. Dank der neuen Hardware-Pools können weitere MultiServer zu einem Verb<strong>und</strong> zusammengefügt<br />

werden, so daß sich Daten <strong>und</strong> VMs untereinander flexibel verteilen lassen. Das Cloning funktioniert nun unmittelbar von Server<br />

zu Server – <strong>ohne</strong> Umweg über das Internet. So können Sie bequem Up- <strong>und</strong> Downgrades realisieren. Das ist echtes Cloud Computing!<br />

NEU! Hardware-Pools – schnell <strong>und</strong> flexibel Daten im<br />

MultiServer-Verb<strong>und</strong> austauschen<br />

TOP! Volle Kontrolle der privaten Cloud durch eigene<br />

dedizierte Hardware<br />

Parallelbetrieb von bis zu 8 aktiven virtuellen Maschinen<br />

VM-Cloning <strong>und</strong> BackupControl inklusive<br />

Simultaner Betrieb von Produktiv-, Entwicklungs- <strong>und</strong><br />

Testsystemen auf virtuellen Maschinen<br />

Preisaktion bis 30.09.2011<br />

3 Monate<br />

19<br />

*<br />

€mtl.<br />

ab<br />

danach ab 69 €<br />

Telefon: 0 18 05 - 00 76 77<br />

(0,14 €/Min. aus dem dt. Festnetz, Mobilfunk max. 0,42 €/Min.)<br />

strato-pro.de<br />

* Vertragslaufzeit 12 Monate. Preis inkl. MwSt.


editorial<br />

Le Tablet, c‘est moi<br />

Sehr geehrte Leserinnen <strong>und</strong> Leser,<br />

die Geschichte von SCO, der<br />

Firma, die Lizenzgebühren für<br />

Linux kassieren wollte, endete am<br />

30. August mit der endgültigen<br />

Ablehnung aller Ansprüche durch<br />

ein US-Berufungsgericht [1]. Im<br />

Nachhinein erscheint SCO allerdings<br />

geradezu als Waisenknabe,<br />

denn ein gefährlicherer [2] Nachfolger<br />

steht schon bereit, <strong>und</strong> er<br />

will nicht nur Geld, sondern nichts<br />

weniger als ein Monopol: Apple.<br />

Lassen wir mal den unerfreulichen<br />

Fakt beiseite, dass die Kalifornier<br />

die Benutzer ihrer Erfolgsprodukte<br />

iPhone <strong>und</strong> iPad in ein<br />

Gefängnis einsperren, aus dem<br />

sich diese erst „jailbreaken“ müssen,<br />

um Apples Apps-Zensur zu<br />

entkommen. Ignorieren wir großzügig,<br />

dass Apple sogar eine inhaltliche<br />

Zensur der Apps vornimmt.<br />

Gehen wir auch über die<br />

Tatsache hinweg, dass Cupertino<br />

obendrein mit iCloud versucht, jeden<br />

final auf Apple-Produkte festzunageln,<br />

der so unvorsichtig war,<br />

sich diese zuzulegen [3].<br />

Dass Apple sich nicht entblödet,<br />

die Hersteller von Eierbechern [4]<br />

<strong>und</strong> Nudelgerichten [5] mit fadenscheinigen<br />

Prozessen zu überziehen,<br />

ließe sich noch in der Rubrik<br />

Anekdoten verbuchen. Schon weniger<br />

lustig ist es, wenn die Firma<br />

dem WWW-Standardisierungsgremium<br />

W3C eigentlich zugesicherte<br />

Rechte verweigert [6] oder<br />

gnadenlos jeden verklagt oder bedroht,<br />

der das Wort „Appstore“ in<br />

den M<strong>und</strong> nimmt [7] – freie Projekte<br />

nicht ausgenommen [8].<br />

Es genügt Apple auch nicht<br />

mehr, nur seine K<strong>und</strong>en zu bevorm<strong>und</strong>en<br />

– außerdem soll ja niemand<br />

anderswo einkaufen als in<br />

Cupertino: Mit einem fragwürdigen<br />

Gebrauchsmusterschutz [9]<br />

unterband die Firma Anfang August<br />

per Einstweiliger Verfügung<br />

(EV, [10]) die Auslieferung des<br />

(von Testern durchweg als gute<br />

iPad-Alternative gehandelten)<br />

Samsung Galaxy Tab mit Android.<br />

Jedes flache rechteckige Gerät mit<br />

abger<strong>und</strong>eten Kanten – wie sollte<br />

ein Tablet sonst aussehen? – als<br />

iPad-Nachahmung zu diffamieren,<br />

war Apple nicht genug, es musste<br />

im EV-Antrag obendrein die Abbildungen<br />

des Samsung-Geräts manipulieren<br />

[11]. Um die Sache auf<br />

die Spitze zu treiben, behauptet<br />

Apple jetzt auch noch, Android sei<br />

quasi in Cupertino erf<strong>und</strong>en worden<br />

[12] <strong>und</strong> verletze daher<br />

Apple-Patente. Begründung: Android-Chefentwickler<br />

Andy Rubin<br />

habe schließlich in den frühen<br />

1990ern mal bei Apple gearbeitet.<br />

Die Hardware zunageln, die Benutzer<br />

bevorm<strong>und</strong>en <strong>und</strong> einsperren,<br />

Inhalte zensieren, jede potenzielle<br />

Konkurrenz vorab wegklagen:<br />

Apple positioniert sich inzwischen<br />

als totale Antithese zu Open<br />

Source. So schön die Hardware des<br />

Herstellers ist, wer sie kauft – <strong>und</strong><br />

sei es nur, um Linux draufzuspielen<br />

– unterstützt Apples Machtansprüche,<br />

denn das Unternehmen<br />

lebt vom Hardware-Verkauf [13].<br />

Ich kann nur raten: Finger weg, so<br />

sehr es auch juckt …<br />

Herzliche Grüße,<br />

Jörg Luther<br />

Chefredakteur<br />

in eiGener SaCHe<br />

Auch in diesem Jahr möchten wir wieder<br />

Ihre Meinung zu unserem Heft<br />

<strong>und</strong> dessen Inhalten erfragen, um<br />

<strong>LinuxUser</strong> genauer nach Ihren Wünschen<br />

ausrichten zu können: Bitte<br />

unterstützen Sie uns dabei <strong>und</strong> investieren<br />

Sie fünf Minuten Ihrer Zeit,<br />

um unseren Online-Fragebogen auszufüllen.<br />

Sie finden ihn unter:<br />

http://www.linux-user.de/Umfrage11<br />

Vielen Dank vorab für Ihre Hilfe!<br />

info<br />

[1] Urteil SCO/ Novell: http:// www. groklaw. net/ pdf3/ SCOvNovell10-4122. pdf<br />

[2] Apple mit Rekordgewinnen: http:// www. apple. com/ pr/ library/ 2011/ 07/ 19Apple-Reports-Third-Quarter-Results. html<br />

[3] iCloud mit Lock-in: http:// t3n. de/ news/ icloud-apple-cloud-anders-google-cloud-314459/<br />

[4] Apple vs. eiPOTT: http:// www. heise. de/ newsticker/ meldung/ iPod-vs-eiPOTT-Urteilsbegruendung-veroeffentlicht-1064220. html<br />

[5] Apple vs. Nudelhersteller: http:// gochengdoo. com/ en/ blog/ item/ 2397/ apple_tells_chinese_food_company_to_change_its_logo<br />

[6] Apple vs. W3C: http:// www. golem. de/ 1107/ 84858. html<br />

[7] Apple vs. Amazon: http:// www. golem. de/ 1107/ 85369. html<br />

[8] Apple vs. Amahi: http:// blog. amahi. org/ 2011/ 06/ 21/ apple-hits-amahi-with-a-cease-and-desist-wait-what/<br />

[9] Tablet-„Community-Design“: http :// www. scribd. com/ doc/ 61944044/ Community-Design-000181607-0001<br />

[10] Apples EV-Antrag: http:// www. scribd. com/ doc/ 61993811/ 10-08-04-Apple-Motion-for-EU-Wide-Prel-Inj-Galaxy-Tab-10-1<br />

[11] Foto-Manipulationen: http:// www. osnews. com/ story/ 25065/ Apple_Tampered_with_Evidence_in_German_Apple_v_Samsung_Case<br />

[12] Apple vs. Google: http:// fosspatents. blogspot. com/ 2011/ 09/ apple-to-itc-andy-rubin-got-inspiration. html<br />

[13] Apple-Umsätze aufgeschlüsselt: http:// www. osnews. com/ story/ 24996/ Illustrated_Apple_s_Fear_of_Android<br />

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

3


10 | 11<br />

90<br />

Wir zeigen, wie Sie mit<br />

den Bordmitteln populärer<br />

Skriptsprachen wie<br />

Perl <strong>und</strong> Python Fotos bearbeiten.<br />

82<br />

Nur wer seine Daten regelmäßig sichert,<br />

der hat im Ernstfall gute Karten.<br />

Mit Sbackup erledigen Sie die<br />

oft ungeliebte Aufgabe im Handumdrehen <strong>und</strong><br />

vor allem in einer komfortablen Oberfläche, die<br />

nicht nur das Sichern der wichtigen Daten, sondern<br />

auch das Wiederherstellen einfach macht.<br />

Ü-Ei-Figur, Modellauto, Bierdeckel<br />

oder doch eher klassische<br />

60Ob<br />

Literatur – die Sammelleidenschaft<br />

kennt keine Grenzen. Dank GCStar behalten<br />

Sie stets den Überblick über Ihre wertvollen<br />

<strong>und</strong> lieb gewonnenen Exponate.<br />

heft-dvd<br />

schwerpuNkt<br />

prAxis<br />

Neue distributionen ..... 10<br />

Knoppix 6.7, OpenSuse Life 11.4,<br />

Mandriva 2011, Arch Linux<br />

2011.08.19, Dream Studio 11.04<br />

Aktuelles<br />

Angetestet ............. 12<br />

Notizbuch Mynotex 1.1.4,<br />

SSH-Client-Suite Putty 0.61,<br />

SSL-Wrapper Stunnel 4.42,<br />

Videokonverter Transcoder 0.0.6<br />

Aktuelles .............. 14<br />

Die interessantesten Neuheiten<br />

von der Internationalen Funkausstellung<br />

2011, Gimp 2.7.3 mit<br />

Single-Window-Modus, Udev-<br />

Discover überwacht Hardware,<br />

Mandriva 2011 „Hydrogen“ mit<br />

vielen Neuerungen<br />

report<br />

linux bei Amadeus ....... 6<br />

Linux statt Mainframe: H<strong>und</strong>erte<br />

Millionen Buchungen jährlich<br />

laufen über die 2000 Suse- <strong>und</strong><br />

Red-Hat-Server der Amadeus-IT-<br />

Gruppe in Erding bei München.<br />

Bash für alle fälle ...... 20<br />

Das Programmieren von Shell-<br />

Skripten ist keine Hexerei. Schon<br />

mit wenigen Gr<strong>und</strong>kenntnissen<br />

sparen Sie durch das <strong>Automatisieren</strong><br />

alltäglicher Aufgaben viel Zeit.<br />

editor-urgestein vim .... 32<br />

Der Texteditor Vim ist unter<br />

Linux-Nutzern so populär, dass<br />

auch andere Programme das gleiche<br />

Bedienkonzept nutzen – ein<br />

Gr<strong>und</strong>, das Vorbild genauer unter<br />

die Lupe zu nehmen.<br />

Netzwerk-tools. . . . . . . . . 38<br />

Die Linux-Kommandozeile hält<br />

einen Satz leistungsfähiger<br />

Werkzeuge bereit, mit denen Sie<br />

Fehlern in der Netzwerkkonfiguration<br />

oder im Netz selbst schnell<br />

auf die Spur kommen.<br />

dateisysteme pflegen. . . . 42<br />

Mit nur wenigen Shell-Befehlen<br />

erzeugen <strong>und</strong> konfigurieren Sie<br />

die Gr<strong>und</strong>lage für jede Distribution:<br />

das Dateisystem.<br />

Benutzer verwalten ..... 46<br />

Anlegen, ändern, löschen – viele<br />

Aufgaben r<strong>und</strong> um Benutzerkonten<br />

<strong>und</strong> Gruppen erledigen<br />

Sie elegant mit einer Handvoll<br />

Kommandozeilentools.<br />

Audacity ............... 56<br />

Audacity ist völlig zu Recht bei<br />

Anfängern wie Profis beliebt: Der<br />

unter der GPL stehende So<strong>und</strong>editor<br />

wartet mit zahlreichen<br />

Funktionen auf <strong>und</strong> lässt sich<br />

dank einer Plugin-Schnittstelle<br />

beliebig erweitern.<br />

Gcstar ................ 60<br />

Mit GCStar haben Jäger <strong>und</strong><br />

Sammler ein einfach zu benutzendes<br />

Werkzeug an der Hand,<br />

um die gehorteten Schätze komfortabel<br />

zu verwalten.<br />

Anki ................... 64<br />

Lernkarteien helfen dabei, neue<br />

Sprachen <strong>und</strong> Fakten effektiv zu<br />

lernen. Das clevere <strong>und</strong> vielseitige<br />

Anki treibt das Flashcard-basierte<br />

Lernen auf die Spitze.<br />

imagination ............ 68<br />

Mit Imagination erstellen Sie<br />

im Handumdrehen effektvolle<br />

Diashows Ihrer Fotos samt musikalischer<br />

Untermalung <strong>und</strong> eindrucksvollen<br />

Überblendeffekten.<br />

digikam ............... 72<br />

Durch innovative Suchmethoden<br />

sorgt die Fotoverwaltung Digikam<br />

dafür, dass Sie in Ihrem Bildarchiv<br />

schnell <strong>und</strong> zielsicher die gewünschten<br />

Motive finden.<br />

4 10 | 11<br />

www.linux-user.de


heft-dvds<br />

Auf den Heft-DVDs dieser Ausgabe befindet<br />

sich ausschließlich Anwendungssoftware.<br />

Die Datenträger enthalten keine jugendgefährdenden<br />

Inhalte.<br />

ist schnell <strong>und</strong><br />

verzeiht nicht, Experten<br />

wissen sie auch heute noch zu schätzen: die Shell. Wir<br />

20Sie<br />

zeigen, wie Sie ein Linux-System <strong>ohne</strong> große Umwege unter Kontrolle behalten<br />

– sei es beim Tuning des Dateisystems, beim Prüfen <strong>und</strong> Einrichten<br />

des Netzwerks oder bei der Vergabe <strong>und</strong> dem Verwalten von Ressourcen.<br />

Auf der heft-dvd:<br />

Mit Mandriva 2011<br />

legen die Franzosen<br />

einen Neustart mit<br />

einem Mix aus altbewährten<br />

<strong>und</strong> neuen<br />

Konzepten vor.<br />

im test<br />

synology-NAs ds110j ... 76<br />

Im Paket mit einem 1-TByte-<br />

Account des Speicherdienstes<br />

HiDrive bietet Strato bei 24 Monaten<br />

Laufzeit das Synology-NAS<br />

DS110j zum Schnäppchenpreis<br />

von 49 Euro gleich mit an. Das<br />

Duo hat einiges zu bieten.<br />

Netz&system<br />

sbackup ............... 82<br />

Eben mal eine Datensicherung<br />

einrichten? Kein Problem: Mit<br />

Simple Backup <strong>und</strong> seiner aufgeräumten<br />

grafischen Oberfläche<br />

archivieren Sie wichtige Daten im<br />

Handumdrehen.<br />

hArdwAre<br />

simvalley sp-60 Gps .... 86<br />

Zwei SIM-Karten in einem Phone<br />

sparen nicht nur beim Reisen den<br />

lästigen Wechsel, sondern auch<br />

bei Anwendern, die ein Handy<br />

privat <strong>und</strong> eines beruflich nutzen.<br />

kNow-how<br />

fotos bearbeiten ........ 90<br />

Zum individuellen Nachbearbeiten<br />

größerer Bildmengen<br />

bietet sich das <strong>Automatisieren</strong><br />

mithilfe von Perl <strong>und</strong> Python an:<br />

Mit wenig Aufwand gelangen Sie<br />

zu ersten Ergebnissen.<br />

Mit Knoppix 6.7 geht die<br />

Mutter aller Live­Systeme<br />

in eine neue R<strong>und</strong>e – komplett<br />

aktualisiert <strong>und</strong> erweitert.<br />

So haben Sie unterwegs<br />

stets alle wichtigen<br />

Tools zur Hand.<br />

Sagen Sie aufgebläh­<br />

ter Massenware den<br />

Kampf an mit Arch<br />

Linux 2011.08.19,<br />

das die optimale<br />

Gr<strong>und</strong>lage für ein<br />

schlankes, leistungsfähiges<br />

<strong>und</strong><br />

individuelles Linux­<br />

System bietet.<br />

76<br />

Das DS110j von<br />

Synology erledigt in<br />

Kombination mit<br />

dem HiDrive-Paket von Strato<br />

das Backup wichtiger Daten komfortabel<br />

in der Cloud.<br />

service<br />

editorial ................ 3<br />

it-profimarkt .......... 98<br />

impressum ............105<br />

vorschau .............106<br />

Statt in den Repositories<br />

mühsam nach Lernsoftware<br />

zu kramen, haben<br />

Sie mit OpenSuse Edu Life<br />

11.4 alle wichtigen Programme<br />

für Schule <strong>und</strong><br />

Studium im perfekt abge­<br />

stimmten System zur Hand.<br />

linuxuser dvd-edition<br />

hinweis: Haben Sie die DVD­Edition dieser Ausgabe erworben,<br />

finden Sie auf seite 10 wei tere Informationen zu<br />

den Programmen auf den beiden Datenträgern. Haben Sie<br />

dagegen die güns tigere No­Media­Ausgabe erstanden,<br />

enthält dieses Heft keine Datenträger.<br />

www.linux-user.de<br />

12 | 10 5


eport<br />

Linux bei Amadeus<br />

2000 Linux-Server im RZ-Einsatz<br />

Mit Linux in<br />

den Urlaub<br />

© Christa Richert, sxc.hu<br />

Wer fliegt, mit der Bahn oder dem Schiff fährt, im Hotel absteigt oder einen Mietwagen bucht,<br />

nutzt Linux: H<strong>und</strong>erte Millionen entsprechender Buchungen jährlich laufen im Rechenzentrum<br />

der Amadeus-IT-Gruppe im oberbayerischen Erding über Suse- <strong>und</strong> Red-Hat-Server. Dr. Udo Seidel<br />

reADMe<br />

H<strong>und</strong>erte Millionen Buchungen<br />

für Flüge,<br />

Bahn- <strong>und</strong> Kreuzfahrten,<br />

Hotelzimmer <strong>und</strong> Mietwagen<br />

laufen jährlich<br />

über die Systeme der<br />

Amadeus IT Group.<br />

Massive Transaktionsverarbeitung<br />

<strong>und</strong><br />

höchste Verfügbarkeit<br />

sind hier Trumpf: Schon<br />

wenige Minuten Ausfall<br />

verursachen Kosten in<br />

Millionenhöhe, die Wartungsfenster<br />

beschränken<br />

sich auf wenige Minuten<br />

im Quartal. In diesem<br />

anspruchsvollen<br />

Umfeld behaupten sich<br />

mittlerweile 2000 Linux-<br />

Server bestens.<br />

So gut wie jeder Reisende nutzt<br />

Linux – selbst wenn er noch nie<br />

etwas von dem freien Betriebssystem<br />

gehört hat. Ob er einen Flug<br />

oder eine Bahnfahrt bucht, ein<br />

Hotelzimmer oder einen Mietwagen<br />

reserviert, spielt dabei keine<br />

Rolle – ebensowenig, ob er sich im<br />

Reisebüro beraten lässt oder<br />

selbst in Online-Portalen stöbert.<br />

Wie funktioniert so eine Buchung<br />

eigentlich? Wie kommt das<br />

Reisebüro an die Daten für Flugverbindungen?<br />

Wo sind die Buchungsdaten<br />

gespeichert? Die<br />

Antworten auf alle diese Fragen<br />

finden sich in Erding bei München,<br />

einer sonst nur für die<br />

schmackhaften Produkte der lokalen<br />

Brauerei bekannten Kleinstadt:<br />

Hier werkeln in einem<br />

hochmodernen Rechenzentrum<br />

hinter den dicken Mauern der Firma<br />

Amadeus Data Processing<br />

über 2000 Linux-Server.<br />

Amadeus <strong>und</strong> IT<br />

Die Geschichte von Amadeus beginnt<br />

1987. In diesem Jahr gründeten<br />

die Fluggesellschaften Air<br />

France, Lufthansa, Iberia Airlines<br />

<strong>und</strong> Scandinavian Airlines die<br />

Amadeus-IT-Gruppe [1]. Deren<br />

Hauptquartier befindet sich in der<br />

spanischen Metropole Madrid,<br />

das Entwicklungszentrum operiert<br />

im südfranzösischen Nizza<br />

<strong>und</strong> das oberbayerische Erding<br />

fungiert als operatives Herzstück<br />

(Abbildung A). Amadeus ist ein<br />

sogenannter Global Distribution<br />

Service Provider – nicht der erste<br />

der Welt, aber weltweiter Marktführer.<br />

Am Anfang stand ein sogenanntes<br />

Computer-Reservierungssystem,<br />

das zunächst lediglich<br />

Daten für Flugreisen verwaltete.<br />

Später kamen weitere Bereiche<br />

dazu: Zug- <strong>und</strong> Schiffsreisen,<br />

Autovermietung, Hotelbuchungen<br />

<strong>und</strong> anderes mehr.<br />

Das Rückgrat bildete TPF, ein<br />

Echtzeit-Betriebssystem von IBM<br />

für Mainframes [2]. Das als hochspezialisiertes<br />

Betriebssystem für<br />

den Zweck der Computer-Reservierung<br />

entwickelte TPF abzulösen,<br />

galt lange Zeit als <strong>und</strong>enkbar.<br />

Zudem stand Amadeus als Lizenznehmer<br />

der Quelltext des Betriebssystems<br />

zur Verfügung –<br />

die TPF-Admins konnten also bei<br />

der Suche <strong>und</strong> Behebung von Fehlern<br />

auf die aus der Open-Source-<br />

Szene bekannten Möglichkeiten<br />

zurückgreifen <strong>und</strong> gegebenenfalls<br />

sogar eigene Funktionserweiterungen<br />

implementieren.<br />

Linux hält Einzug<br />

Vor einigen Jahren stand Amadeus<br />

vor der Entscheidung, entweder<br />

auf die neueste TPF-Version<br />

zu migrieren oder aber einen alternativen<br />

Weg einzuschlagen. Zu<br />

jener Zeit spielten die verschiede-<br />

6 10 | 11<br />

www.linux-user.de


Linux bei Amadeus<br />

report<br />

nen Unix-Derivate eine dominierende<br />

Rolle, aber auch Linux kam<br />

zunehmend ins Blickfeld <strong>und</strong><br />

schickte sich an, in den Rechenzentren<br />

Einzug zu halten. Die Möglichkeit<br />

des Zugriffs auf den Quelltext<br />

war Amadeus von TPF schon<br />

vertraut – dieser Aspekt sprach<br />

eindeutig für Linux. Der Vorsprung<br />

von Unix im Enterprise-Bereich<br />

war allerdings – noch – zu groß. So<br />

kam es, dass Amadeus bei den ersten<br />

Schritten zur TPF-Ablösung<br />

auf traditionelle Unix-Derivate<br />

wie HP-UX [3] setzte.<br />

Linux fand dennoch seinerzeit<br />

ebenfalls einen Weg ins Amadeus-<br />

Rechenzentrum (Abbildung B,<br />

nächste Seite) – vor allem über<br />

den Geschäftsbereich E-Commerce,<br />

da es bereits damals als<br />

Quasistandard für Webserver<br />

galt. In manchen Bereichen verwaltete<br />

das freie Betriebssystem<br />

auch DNS-Domänen oder diente<br />

als Application-Server. Die in diesen<br />

Bereichen erzielten Erfolge<br />

mit Linux überzeugten auch die<br />

Strategen <strong>und</strong> Macher hinter der<br />

TPF-Ablösung, zumal Linux inzwischen<br />

über die notwendige<br />

Enterprise-Fähigkeit verfügte,<br />

beispielsweise in Sachen Support.<br />

Heute ist Linux untrennbar mit<br />

dem Erfolg von Amadeus verb<strong>und</strong>en.<br />

Über 2000 Server versehen<br />

im Erdinger Rechenzentrum unter<br />

Linux ihren Dienst. Dabei<br />

stellt die Airline-IT den mit Abstand<br />

größten Anteil: Dieser Bereich<br />

spielt bei der Ablösung von<br />

TPF eine Schlüsselfunktion, Linux<br />

muss sich hier einigen Herausforderungen<br />

stellen. Dabei steht die<br />

Vielseitigkeit von Linux der hochgradigen<br />

Spezialisierung von TPF<br />

gegenüber. Der Übergang vom<br />

„großen Eisen“ zu verteilten Systemen<br />

stellt <strong>ohne</strong>hin einen ausgewachsenen<br />

Paradigmenwechsel<br />

dar, nicht zuletzt auch hinsichtlich<br />

des Sicherheitskonzepts:<br />

Rechte <strong>und</strong> Rollen wandern von<br />

einer lokalen Tabelle in einen Verzeichnisdienst.<br />

Auch andere Informationen<br />

müssen netzwerkfähig<br />

werden, da ein Zugriff auf einen<br />

gemeinsamen Speicher schon<br />

hardwareseitig nicht mehr gegeben<br />

ist. Zum Einsatz kommen die<br />

Enterprise-Distributionen von<br />

Suse <strong>und</strong> Red Hat – dazu gleich<br />

mehr.<br />

Linux in der Airline-IT<br />

Die Architektur des Nachrichtenflusses<br />

zu TPF-Zeiten bestand aus<br />

einem Frontend <strong>und</strong> einigen<br />

Backends. Das Frontend war (<strong>und</strong><br />

ist es auch heute noch für manche<br />

Bereiche) der zentrale Einstiegspunkt:<br />

Hier treffen die Nachrichten<br />

der Fluggesellschaften oder<br />

andererer Global Distribution<br />

Provider ein. Das Frontend routet<br />

die Pakete zur eigentlichen Verarbeitung<br />

an die Backends weiter.<br />

Dieser bewährte Aufbau findet<br />

sich im Linux-Pendant wieder.<br />

Auch hier gibt es ein Frontend<br />

(genau genommen eigentlich<br />

mehrere), das den gesamten Verkehr<br />

empfängt.<br />

Ein solches Frontend – egal, ob<br />

TPF oder Linux – muss tausende<br />

Transaktionen pro Sek<strong>und</strong>e abwickeln<br />

können. Ein Großrechner<br />

vom Typ IBM z9/z10 lässt sich<br />

natürlich nicht einfach durch einen<br />

Linux-Server ersetzen. Mit<br />

dem Wechsel zum verteilten System<br />

spaltete Amadeus auch die<br />

Funktionen des Frontends auf.<br />

Dies ermöglicht es Amadeus, mit<br />

Standard-Servern ausreichend in<br />

die Breite zu skalieren. Das Linux-<br />

Frontend an sich besteht aus<br />

mehreren Maschinen, die sich gegenseitig<br />

absichern. Fällt eine aus,<br />

übernehmen die anderen. Dank<br />

ausgeklügelter Mechanismen erfolgt<br />

die Übernahme im Normalfall<br />

transparent für den Benutzer.<br />

Die eigentlichen Applikationen<br />

befinden sich auf den sogenannten<br />

Open-Backends. Die Anwendungsschicht<br />

läuft ebenso wie das<br />

Frontend unter Suse Linux Enterprise<br />

Server (SLES). Es gibt noch<br />

ein paar „historische“ Installationen<br />

von SLES 9, der Löwenanteil<br />

der Systeme basiert auf SLES 10<br />

<strong>und</strong> SLES 11. Typischerweise sind<br />

die Applikationen zu Farmen zusammengefasst.<br />

Das erlaubt auf<br />

einfache Weise eine Skalierung in<br />

die Breite. Die Applikationsebene<br />

sorgt für Hochverfügbarkeit – ein<br />

wichtiges Thema für Amadeus.<br />

Fallen die FM-Server („Flight Management“)<br />

aus, bleiben weltweit<br />

die Flugzeuge auf dem Boden: Dabei<br />

entstünde binnen Minuten ein<br />

Schaden in Millionenhöhe.<br />

Die Datenbank befindet sich in<br />

einem Mischbetrieb. Die größten<br />

Oracle-Installationen setzen mit<br />

HP-UX auf ein traditionelles Unix<br />

als Unterbau. Mit vierteljährlichen<br />

Wartungsfenstern von<br />

15 Minuten stehen die IT-Experten<br />

von Amadeus hier vor einer<br />

handfesten Herausforderung in<br />

Sachen Hochverfügbarkeit, weswegen<br />

es praktisch keine Alterna-<br />

GlossAr<br />

TPF: Transactions Processing<br />

Facilities. Echtzeit-OS<br />

für IBM-Mainframes<br />

der S/ 360- <strong>und</strong><br />

System-z-Familien, das<br />

speziell auf hochvolumige<br />

Transaktionsverarbeitung<br />

<strong>und</strong> 24x7-Hochverfügbarkeit<br />

ausgelegt<br />

wurde. TPF wurde erstmals<br />

1979 vorgestellt<br />

<strong>und</strong> liegt seit 2005 in<br />

der derzeit aktuellen<br />

Version z/ TPF 1.1 vor.<br />

HP-UX: Hewlett Packard<br />

Unix. Kommerzielles<br />

SysV-Unix von HP für PA-<br />

RISC- <strong>und</strong> IA64-Systeme<br />

(„Itanium“), derzeit aktuelle<br />

Version 11.31.<br />

Die Verbreitung des früher<br />

recht populären HP-<br />

UX nimmt mittlerweile<br />

stark ab, wohl nicht zuletzt,<br />

weil keine Version<br />

für die x86-64-Architektur<br />

existiert.<br />

A Im Amadeus-Rechenzentrum<br />

in Erding<br />

bei München versehen<br />

r<strong>und</strong> 2000 Linux-Server<br />

ihren Dienst. (Bild:<br />

Amadeus IT Group SA)<br />

www.linux-user.de<br />

10 | 11 7


eport<br />

Linux bei Amadeus<br />

B Ein Blick in eine der<br />

sechs Feuerzellen des<br />

Amadeus-Rechenzentrums.<br />

(Bild: Amadeus<br />

GlossAr<br />

Data Processing<br />

GmbH)<br />

MVS: Multiple Virtual<br />

Storage. IBM-Mainframe-Betriebssystem<br />

der Siebziger- bis Neunzigerjahre<br />

für die Großrechner-Serien<br />

S/ 370<br />

<strong>und</strong> S/ 390, 2001 durch<br />

den Nachfolger z/ OS<br />

abgelöst.<br />

PCI-DSS: Payment Card<br />

Industry Data Security<br />

Standard. Regelwerk für<br />

das Abwickeln von Kreditkartentransaktionen.<br />

Firmen <strong>und</strong> Dienstleister,<br />

die solche Transaktionen<br />

speichern,<br />

übermitteln oder abwickeln,<br />

müssen diese<br />

Regelungen erfüllen.<br />

tive zum Einsatz des Real Application<br />

Clusters von Oracle gibt. Weniger<br />

kritische Systeme dagegen<br />

operieren im Failover-Modus.<br />

Kleinere Datenbanken laufen<br />

schon längst unter Red Hat Enterprise<br />

Linux (RHEL), <strong>und</strong> weitere<br />

folgen. Neben Oracle RDBMS<br />

setzt Amadeus auch MySQL ein –<br />

ein weiteres klares Ja zur Open-<br />

Source-Technologie.<br />

Obwohl es in hochkritischen<br />

Systemen seinen Dienst versieht,<br />

bleibt Linux dem Reisenden komplett<br />

verborgen. Das spricht einerseits<br />

für das freie Betriebssystem,<br />

das klaglos im Hintergr<strong>und</strong><br />

seinen Arbeit leistet. Andererseits<br />

ist es schade, dass von seinen<br />

Qualitäten der Nutznießer am anderen<br />

Ende der Leistungskette<br />

rein gar nichts mitbekommt.<br />

Der Zug fährt ab<br />

Bucht der Reisende ein Bahnticket<br />

über Amadeus, kommt ebenfalls<br />

viel Linux ins Spiel. Die Migration<br />

von HP-UX zu Linux erfolgte<br />

in zwei Schritten: Zunächst<br />

fand die Oracle-Datenbank ein<br />

neues Zuhause auf einem Red-<br />

Hat-Cluster. Dieser ist dabei überhaupt<br />

nicht ausgelastet <strong>und</strong> bietet<br />

noch weiteren Datenbanken eine<br />

stabile Plattform.<br />

Der Umzug der Anwendung war<br />

etwas schwieriger, da die Admins<br />

<strong>und</strong> Entwickler auch das Hochverfügbarkeitskonzept<br />

änderten: Der<br />

klassische Failover wich der Farm-<br />

Architektur. Wie schon bei der<br />

Airline-IT begrüßen gerade die<br />

Entwickler den Umzug auf Linux.<br />

Python, Java, moderne Compiler<br />

– was unter Unix eine stetige<br />

Herausforderung war,<br />

erweist sich unter Linux als<br />

normales Tagesgeschäft.<br />

Einen weiteren Geschäftszweig<br />

von Amadeus stellt<br />

das Hosting dar. Stöbert<br />

der potenzielle Urlauber im<br />

Online-Portal von Opodo.<br />

de, dann laufen die notwendigen<br />

Dienste auf Servern<br />

im Erdinger Rechenzentrum<br />

von Amadeus. Wenig<br />

überraschend dient hier Apache<br />

als Webserver im Einsatz -- allerdings<br />

aufgr<strong>und</strong> der speziellen<br />

K<strong>und</strong>enanforderungen nicht in<br />

der Version aus den distributionseigenen<br />

Repositories. Die Administratoren<br />

von Amadeus stellen<br />

ein Framework zur Verfügung, das<br />

es den K<strong>und</strong>en erlaubt, die gewünschten<br />

Versionen von Apache<br />

<strong>und</strong> Peripherie-Anwendungen zu<br />

betreiben. Gleiches gilt für den<br />

Applikationsserver wie Weblogic<br />

oder Jboss.<br />

Linux ist bei Amadeus aber nicht<br />

nur auf den K<strong>und</strong>ensystemen auf<br />

dem Vormarsch: Auch die interne<br />

IT fußt bereits teilweise auf Linux.<br />

Da Amadeus als Mainframe-Firma<br />

startet, war das hauseigene Problem-<br />

<strong>und</strong> Change-Management-<br />

System ursprünglich auf MVS [4]<br />

zu Hause. Inzwischen läuft der<br />

Datenbank-Teil mit MySQL auf<br />

RHEL, während die Anwendungsebene<br />

unter SLES ein neues Heim<br />

gef<strong>und</strong>en hat. Auch das Mail-System<br />

läuft schon seit Jahren auf Linux.<br />

Für den geschäftlichen Informationsaustausch<br />

kommt Lotus<br />

Notes zum Einsatz. Sollen die Produktivserver<br />

E-Mails verschicken<br />

oder weiterleiten, treten Postfix<br />

oder Sendmail auf den Plan. Monitoring,<br />

Software-Load-Control,<br />

Performance-Analyse, Change<strong>und</strong><br />

Configuration-Management –<br />

immer ist Linux da <strong>und</strong> stellt als<br />

Betriebssystem die Basis.<br />

Virtualisierung<br />

Virtualisierung gilt bei Amadeus<br />

als alter Hut – <strong>und</strong> das in zweierlei<br />

Hinsicht: Erstens war diese<br />

Technologie schon den Mainframe-Systemen<br />

bekannt <strong>und</strong><br />

kam folgerichtig auch im Erdinger<br />

Rechenzentrum schon früh zum<br />

Einsatz. Aber auch in der x86-<br />

Welt ist Virtualisierung kein neues<br />

Thema mehr. Amadeus greift<br />

auf Vmware als Hypervisor zurück,<br />

im Moment arbeiten r<strong>und</strong><br />

800 Linux-Server als virtuelle<br />

Gäste. Der Großteil davon dient<br />

als Entwicklungsplattform für die<br />

Airline-IT, aber auch der Anteil<br />

der Produktiv-Systeme wächst.<br />

Hier dominiert vor allem der Hosting-Bereich<br />

– der klassische<br />

Work load von Web- <strong>und</strong> Applikationsservern<br />

eignet sich hervorragend<br />

zum Virtualisieren. Als<br />

Hemmschuh erweisen sich dabei<br />

die ausgesprochen virtualisierungsunfre<strong>und</strong>lichen<br />

Lizenz- <strong>und</strong><br />

Support-Bedingungen bestimmter<br />

Betriebssystemanbieter – anderenfalls<br />

wäre Amadeus’ „Wirkungsgrad“<br />

in der Virtualisierung<br />

noch höher.<br />

Fazit<br />

Linux ist bei Amadeus keine Spielzeug-Plattform,<br />

das Erdinger Rechenzentrum<br />

vertraut dem freien<br />

Betriebssystem zahlreiche geschäftskritische<br />

Systeme an. Wie<br />

regelmäßige Sicherheitsaudits bestätigen,<br />

beispielsweise nach PCI-<br />

DSS [5], betreiben die IT-Experten<br />

von Amadeus das Linux-Geschäft<br />

ernsthaft <strong>und</strong> auf hohem<br />

Niveau. Die Audits zeigen auch,<br />

dass Amadeus die sensitiven Daten<br />

gut schützt – unter anderem<br />

auch dank Linux. Das heutige Rechenzentrum<br />

von Amadeus <strong>ohne</strong><br />

das freie Betriebssystem – unvorstellbar.<br />

(jlu) n<br />

info<br />

[1] Amadeus IT Group SA:<br />

http:// www. amadeus. com<br />

[2] IBM z/ TPF:<br />

http:// www. ibm. com/ software/ htp/ tpf/<br />

[3] HP-UX: http:// tinyurl. com/ lu1011-hpux<br />

[4] MVS: http:// de. wikipedia. org/ wiki/<br />

Multiple_Virtual_Storage<br />

[5] PCI-DSS:<br />

http:// de. wikipedia. org/ wiki/ PCI_DSS<br />

8 10 | 11<br />

www.linux-user.de


1&1 DUAL HOSTING<br />

DOPPELT SICHER!<br />

DOPPELT GUT...<br />

✓<br />

&<br />

1.000 Mitarbeiter!<br />

Maximal sicher:<br />

Paralleles Hosting Ihrer Website<br />

in zwei Hightech-Rechenzentren<br />

an verschiedenen Orten!<br />

✓ Superschnell:<br />

210 GBit/s Anbindung!<br />

✓ Zukunftssicher:<br />

1&1 DUAL HOSTING<br />

VIELE PAKETE JETZT SCHON AB<br />

0,–€/Monat*<br />

Dual Hosting gibt´s nur von 1&1! Kein anderer bietet Ihnen geored<strong>und</strong>ante<br />

Sicherheit <strong>und</strong> maximale Performance für Ihre Projekte.<br />

1&1 DUAL<br />

PERFECT<br />

6 Domains aus .de, .com, .net, .org, .at, .eu<br />

5 GB Webspace<br />

UNLIMITED T r a f fi c<br />

UNLIMITED Click & Build Apps uvm.<br />

0,–<br />

€<br />

In den ersten 3 Monaten,<br />

danach 9,99 €/Monat.*<br />

.DE, .EU, .COM, .NET, .ORG, .AT<br />

0, OHNE EINRICHTUNGSGEBÜHR! 29*<br />

ab<br />

€/Monat<br />

im ersten Jahr<br />

Weitere leistungsstarke<br />

1&1 Dual Hosting-Pakete<br />

<strong>und</strong> tolle Sparangebote<br />

unter www.1<strong>und</strong>1.info Ausgabe 08/11<br />

0 26 02 / 96 91<br />

0800 / 100 668 www.1<strong>und</strong>1.info<br />

&1 * Dual Perfect 1 3 Monate für 0,– €/Monat, danach 9,99 €/Monat. Einrichtungsgebühr 9,60 €. Domains im ersten Jahr .de, .eu 0,29 €/Monat, .com, .net, .org, .at 0,99 €/Monat, danach .de<br />

0,49 €/Monat, .eu , .com, .net, .org 1,49 €/Monat, .at 1,99 €/Monat. Einrichtungsgebühr entfällt. 12 Monate Mindestvertragslaufzeit. Preise inkl. MwSt.


Heft-DVD<br />

DVD-Inhalt<br />

Neues auf<br />

den Heft-DVDs<br />

Es ist ein Aufbruch in eine<br />

neue Zeit: Mit einem über-<br />

arbeiteten Desktop <strong>und</strong> neu-<br />

en Konzepten schlagen die<br />

Entwickler der französischen<br />

Distribution Mandriva 2011 ein<br />

neues Kapitel auf. Das Startmenü<br />

„Simple Welcome“ ermöglicht zum Bei-<br />

spiel nicht nur den Zugriff auf zuletzt<br />

benutzte Programme <strong>und</strong> Dokumente,<br />

sondern bietet auf einem zusätzlichen<br />

Reiter eine chronologische Liste der<br />

bereits aufgerufenen Anwendungen<br />

<strong>und</strong> Dateien. So finden Sie unter Umständen<br />

intuitive Software oder Inhalte,<br />

die Sie noch einmal benötigen.<br />

Einen Anknüpfungspunkt an die Vergan-<br />

genheit von Mandriva bildet allerdings das<br />

Kontrollzentrum des Systems, das die Ent-<br />

wickler nach wie vor auf Einfachheit ge-<br />

trimmt haben. So finden Sie an einer<br />

zentralen Stelle alle wichtigen Optionen<br />

zum Konfigurieren. Bei Bedarf<br />

schalten Sie hier ein neues Modul<br />

zum Verwalten der Software hinzu,<br />

das mit dem neuen Paketformat<br />

RPM5 optimal zusammenspielt. Sie<br />

finden auf der Heft-DVD, Seite A,<br />

eine Version für das 32-Bit-System,<br />

die sowohl den Live-Betrieb als auch<br />

die Installation erlaubt.<br />

Es ist ein Who´s who der wichtigen Mul-<br />

timedia-Anwendungen: die Programmliste<br />

in<br />

Dream Studio 11.04. Der Schwer-<br />

punkt der Applikationen liegt dabei auf<br />

Grafikprojekten – sei es bewegt oder<br />

unbewegt. Dazu kommen Audio-Tools<br />

wie Ardour oder Hydrogen sowie<br />

Webdevelopment-Software – kurz: alles,<br />

was Sie für einen Einstieg in das<br />

eigene Multimedia-Studio benötigen.<br />

Wer sich erst von den Qualitäten des<br />

Systems überzeugen möchte, tut<br />

dies einfach, indem er die<br />

Heft-DVD zur Hand nimmt<br />

<strong>und</strong> von Seite A Dream<br />

Studio in den Live-<br />

Betrieb bootet.<br />

Unbestritten leistet der Computer in der Bildung einen<br />

wichtigen Dienst. Das klappt aber nur, wenn die<br />

richtige Software installiert ist. Um nicht mühselig<br />

aus einer Vielzahl von Programmen die gewünschten<br />

auswählen zu müssen, bietet sich der Einsatz einer<br />

entsprechenden Distribution an, wie zum Beispiel<br />

OpenSuse Edu Life 11.4. Die gerade veröffentlichte<br />

Version kommt mit einer Vielzahl an nützlichen<br />

Lernprogrammen, die sich an Schüler, Studenten<br />

<strong>und</strong> Lehrer richten. Das System basiert auf Open-<br />

Suse 11.4 <strong>und</strong> bringt alle wichtigen Updates <strong>und</strong><br />

Sicherheitspatches mit, die auch die Standard-Distribution<br />

erhalten hat. Damit verfügt das System über<br />

eine getestete <strong>und</strong> leicht bedienbare Gr<strong>und</strong>lage. Die<br />

Bandbreite der integrierten Software reicht von einfachen<br />

Programmen für Kinder bis hin zu ausgewachsenen<br />

IDEs, die sich an Studierende richten.<br />

OpenSuse Edu Life bietet sowohl die Möglichkeit für<br />

einen Live-Test als auch für eine Installation auf<br />

einem Rechner. Sie finden die Distribution auf der<br />

Seite B der Heft-DVD in dieser Ausgabe.<br />

Wer statt vollgestopften Alleskönnern oder aufgeblähter<br />

Massenware eine schlanke <strong>und</strong> vor allem<br />

flotte Distribution mit klarem Fokus sucht, der liegt<br />

mit Arch Linux 2011.08.19 genau richtig: Das Projekt<br />

widmet sich seit Jahren dem erklärten Ziel, Aufbau<br />

<strong>und</strong> Umfang der Distribution so übersichtlich<br />

wie möglich zu halten. Dabei brauchen Sie als Anwender<br />

nicht auf aktuelle Programme zu verzichten.<br />

Nach der ersten Installation finden Sie ein Minimalsystem<br />

vor, das Sie optimal auf Ihre Bedürfnisse abstimmen.<br />

Möchten Sie Arch Linux ausprobieren, haben<br />

Sie die Möglichkeit, die Distribution direkt von<br />

der Seite B der Heft-DVD zu installieren. Weiterhin<br />

finden Sie auf dem Datenträger selbst noch die ISO-<br />

Images, mit denen Sie Installationsmedien für 32-<br />

<strong>und</strong> 64-Bit-Systeme erstellen.<br />

Ein bewährter Klassiker geht in die nächste R<strong>und</strong>e:<br />

Knoppix 6.7 bringt neben den üblichen Updates aus<br />

Debian Stable <strong>und</strong> Testing eine Reihe gr<strong>und</strong>legender<br />

Neuerungen mit: So hat der Maintainer Klaus Knopper<br />

Chromium zum Standard-Browser erhoben. Der<br />

Gr<strong>und</strong> für diese Änderung liegt im schnellen Seitenaufbau<br />

des Browsers. Weiterhin bringt das System<br />

Kernel 2.6.39.3, X.org 7.6 sowie freie Nouveau-Treiber<br />

mit. Knoppix bietet sich in erster Linie als Live-<br />

System an. Sie finden das System als bootfähige Version<br />

auf der beiliegenden Eco-Disk. (agr) n<br />

10<br />

10 | 11<br />

www.linux-user.de


SonDERaKTion!<br />

Testen Sie jetzt<br />

3 ausgaben für<br />

nUR 3€<br />

Miniabo <strong>ohne</strong> Risiko!<br />

Jetzt schnell bestellen:<br />

Telefon: 07131 /2707 274<br />

Fax: 07131 / 2707 78 601<br />

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

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

Mit großem Gewinnspiel unter:<br />

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

GEwinnEn SiE... eine von fünf rewind mini hd kameras<br />

im gesamtwert von fast 400 euro!<br />

Nur bis 15.12.2011<br />

zur Verfügung gestellt von<br />

.de


aktuelles<br />

Angetestet<br />

JJJJI<br />

Mit dem SSL-Wrapper<br />

Stunnel sichern Sie<br />

auch die Kommunikation<br />

älterer Tools ab, die<br />

selbst keine Verschlüsselung<br />

unterstützen. Dabei<br />

eignet sich das Tool<br />

auch für komplexe Konfigurationen.<br />

Abhörsicher kommunizieren mit Stunnel<br />

Eigentlich sollte heute im Internet<br />

SSL-verschlüsselte Kommunikation<br />

der Standard sein, doch noch<br />

immer beherrschen viele Client<strong>und</strong><br />

Server-Anwendungen diese<br />

von Haus aus noch nicht. Hier<br />

hilft der SSL-Wrapper Stunnel dabei,<br />

die Kommunikation abzusichern.<br />

Das C-Programm nimmt<br />

auf einem definierten Port verschlüsselte<br />

Verbindungen an, entschlüsselt<br />

sie <strong>und</strong> stellt sie auf<br />

einem anderen Port dem nicht<br />

SSL-fähigen Client oder Server zur<br />

Verfügung. Während sich ältere<br />

Stunnel-Versionen noch ad hoc<br />

über Kommandozeilenparameter<br />

konfigurieren ließen, setzt Stunnel<br />

ab Version 4.x eine Konfigurationsdatei<br />

voraus, die Sie beim<br />

Aufruf angeben. Das Verzeichnis<br />

tools im Quellarchiv enthält bereits<br />

einige Beispielkonfigurationen<br />

als Vorlage. Für eine Minimalkonfiguration<br />

genügt es, lediglich<br />

Port <strong>und</strong> Interface anzugeben,<br />

auf denen Stunnel Verbindungen<br />

entgegennehmen <strong>und</strong> weiterleiten<br />

soll. Um Stunnel im Client-Modus<br />

zu betreiben, setzen Sie den Parameter<br />

client auf yes, ansonsten<br />

läuft Stunnel im Server-Modus.<br />

Dann erwartet es die Angabe eines<br />

Zertifikats mit dem Konfigurationsparameter<br />

cert. Eine Anleitung<br />

zum Erstellen selbst signierter<br />

Zertifikate finden Sie in der Dokumentation<br />

auf der Webseite von<br />

Stunnel. Eine Konfigurationsdatei<br />

darf auch mehrere Port-Angaben<br />

enthalten, sodass Sie mit einer<br />

Stunnel-Instanz mehrere Dienste<br />

auf unterschiedlichen Ports absichern.<br />

Je nach getunneltem Protokoll<br />

kann man über Datenkompression<br />

mit Zlib oder Rle den Datendurchsatz<br />

steigern. Im Server-<br />

Modus lässt sich Stunnel mit dem<br />

Super-Dienst inetd kombinieren<br />

<strong>und</strong> wird so nur bei Bedarf aktiv.<br />

Die meisten Anwender betreiben<br />

Stunnel jedoch als eigenständigen<br />

Dienst – ein entsprechendes Initskript<br />

für SysV-Init findet sich<br />

ebenfalls im tools-Verzeichnis des<br />

Quellarchivs. Die Gr<strong>und</strong>konfiguration<br />

können Sie noch um Funktionen<br />

wie etwa chroot oder ein<br />

Random-Seed zum Verbessern der<br />

Verschlüsselung erweitern. Nutzen<br />

Sie Stunnel als eigenen<br />

Dienst, empfiehlt es sich, diesen<br />

im Kontext eines unprivilegierten<br />

Benutzerkontos zu betreiben.<br />

stunnel 4.41<br />

Lizenz: GPLv2<br />

Quelle: http:// www. stunnel. org<br />

JJJII<br />

Transcoder, ein übersichtliches<br />

GTK-Frontend<br />

für Ffmpeg, macht das<br />

Konvertieren von Videodateien<br />

zum Kinderspiel.<br />

Die Geschwindigkeit der<br />

Recodierung hängt maßgeblich<br />

vom Zielformat<br />

<strong>und</strong> der Rechenleistung<br />

des Systems ab.<br />

Videos im Handumdrehen recodieren mit Transcoder<br />

Linux unterstützt zahlreiche Videoformate.<br />

Zum Konvertieren der<br />

Filme von einem Format in ein anderes<br />

empfehlen die meisten Foren<br />

das Konsolenprogramm Ffmpeg.<br />

Mit Transcoder existiert jetzt<br />

eine übersichtliche GTK-basierte<br />

Oberfläche, die Ihnen das Setzen<br />

von Parameterketten in Ffmpeg<br />

abnimmt. Im oberen Teil der<br />

Trans coder-Oberfläche listet das<br />

Tool alle zu bearbeitenden Filme<br />

auf. Über einen Dateidialog wählen<br />

Sie die zu konvertierenden Dateien<br />

bequem aus. In der unteren<br />

Hälfte des Fensters finden sich die<br />

Einstellungen für das Zielformat.<br />

Transcoder unterteilt die Optionen<br />

in je einen Video- <strong>und</strong> Audio-Bereich<br />

sowie einige allgemeine<br />

Settings. Für Videos stehen<br />

acht unterschiedliche Codierungen<br />

zur Auswahl, wobei die Palette<br />

von H.263 <strong>und</strong> H.264 über<br />

MPEG2 bis hin zu VP8 <strong>und</strong> XVID<br />

reicht. Auflösung <strong>und</strong> Bitrate der<br />

Zieldatei lassen sich ebenso anpassen<br />

wie die Anzahl der Bilder<br />

pro Sek<strong>und</strong>e. Standardmäßig<br />

nutzt Transcoder eine Auflösung<br />

von 640x480 Pixeln. Im Audio-Bereich<br />

stehen die Codecs AAC, AC3,<br />

MP2, MP3 <strong>und</strong> Vorbis zur Verfügung.<br />

Die Bitrate liegt mit 128<br />

kbit/ s bei einer Sampling-Rate von<br />

48 kHz im Standardbereich, beide<br />

Parameter lassen sich aber anpassen.<br />

Während Sie die Bitrate stufenlos<br />

verändern, sind Sie bei der<br />

Sampling-Rate an Vorgaben geb<strong>und</strong>en<br />

(niedrigste Einstellung: 8<br />

kHz). Die angepassten Einstellungen<br />

gelten für alle Videos in<br />

der Transcoder-Bearbeitungsschlange,<br />

individuelle Settings pro<br />

Video kennt das Tool nicht. Haben<br />

Sie alle Einstellungen vorgenommen,<br />

starten Sie das Umwandeln<br />

mit einem Mausklick. Die konvertierten<br />

Dateien legt Transcoder in<br />

der Voreinstellung im Verzeichnis<br />

~/Videos ab. Mit dem Browse-Symbol<br />

am oberen rechten Fensterrand<br />

ändern Sie den Speicherort.<br />

transcoder 0.0.6<br />

Lizenz: GPLv3<br />

Quelle: http:// transcoder84.<br />

sourceforge. net<br />

12 10 | 11<br />

www.linux-user.de


Angetestet<br />

aktuelles<br />

Mit Mynotex sämtliche Notizen im Griff<br />

Mynotex hilft, wichtige Notizen<br />

zu erfassen <strong>und</strong> effizient zu verwalten.<br />

Das Tool verwaltet seine<br />

Einträge in einer SQLite-Datenbank,<br />

die Sie beim Start angeben.<br />

So lassen sich für unterschiedliche<br />

Aufgaben eigene Dateien anlegen<br />

<strong>und</strong> pflegen. In einer Datenbank<br />

können Sie beliebig viele Notizen<br />

mit verschiedenen Titeln ablegen<br />

<strong>und</strong> diese auch datieren. Eine solche<br />

Notiz darf auch einen Datei-<br />

Anhang enthalten. Über frei definierbare<br />

Schlagwörter fassen Sie<br />

Notizen zu Themengruppen zusammen.<br />

Am rechten Fensterrand<br />

Mynotex 1.1.4<br />

Lizenz: GPLv3<br />

Quelle: http:// code. google. com/ p/<br />

sunflower-fm/<br />

listet Mynotex alle bereits vergebenen<br />

Schlagworte auf. Die Ziffer<br />

hinter dem Schlagwort gibt Auskunft<br />

darüber, wie viele Notizen<br />

dazu die aktuelle Mynotex-<br />

Datenbank enthält. Statt nach<br />

Schlagworten können Sie auch<br />

nach einem bestimmten Betreff<br />

oder nach Textpassagen suchen.<br />

Jede Suche erfolgt nur innerhalb<br />

der gerade geöffneten Datenbank,<br />

einen Suchlauf über mehrere Dateien<br />

beherrscht Mynotex nicht.<br />

Der Notiztext selbst lässt sich wie<br />

in einer Textverarbeitung formatieren.<br />

Dank der HTML-Exportfunktion<br />

von Mynotex stellen Sie<br />

Notizen bei Bedarf <strong>ohne</strong> großen<br />

Aufwand auch jederzeit online.<br />

Daneben besteht die Möglichkeit,<br />

Notizen aus Mynotex heraus in<br />

LibreOffice zu öffnen, dort zu bearbeiten<br />

<strong>und</strong> als ODF-Dokument<br />

zu speichern. Möchten Sie einzelne<br />

Notizen vor unbefugtem Zugriff<br />

schützen, verschlüsseln Sie<br />

diese über den Punkt Encrypt des<br />

Notes-Menüs oder per [Strg]+[E].<br />

Geschützte Notizen zeigt Mynotex<br />

in der Titelübersicht mit<br />

einem roten Schriftzug an.<br />

JJJII<br />

Mit Mynotex steht Ihnen<br />

ein leistungsfähiges,<br />

allerdings noch nicht<br />

deutsch lokalisiertes<br />

Werkzeug zum Verwalten<br />

von Notizen zur Verfügung.<br />

Putty, der komfortable SSH-Client<br />

Windows-Anwender kennen die des Konsolenprogramms plink automatisieren<br />

Sie Abläufe oder er-<br />

SSH-Suite Putty schon lange –<br />

dass es auch eine Linux-Version weitern Skripte um SSH-Funktionen.<br />

Neben SSH beherrscht<br />

gibt, ist hingegen weniger bekannt.<br />

Im Gegensatz zu anderen Putty auch das Telnet-Protokoll<br />

grafischen SSH-Clients handelt es <strong>und</strong> unterstützt Rlogin.<br />

sich bei Putty nicht um eine reine Wer Putty bereits von Windows<br />

Oberfläche für OpenSSH: Das her kennt, findet sich nach dem<br />

Tool läuft dank einer eigenen SSH- Start in der GTK-Oberfläche sofort<br />

zurecht. Um eine Verbindung<br />

Implementierung auch <strong>ohne</strong><br />

OpenSSH. Die Putty-Suite umfasst<br />

neben dem grafischen Client das Übertragungsprotokoll aus,<br />

aufzubauen, wählen Sie lediglich<br />

noch eine Reihe von Kommandozeilenprogrammen<br />

wie beispiels-<br />

Sys tems an <strong>und</strong> legen gegebenen-<br />

geben die Adresse des Remoteweise<br />

psftp <strong>und</strong> pscp zum sicheren falls zusätzlich den Port fest, auf<br />

Übertragen von Dateien. Mittels dem der Remote-Dienst läuft. In<br />

der Navigationsleiste am linken<br />

Putty 0.61<br />

Fensterrand listet Putty alle weiteren<br />

Konfigurationsmöglich-<br />

Lizenz: MIT/ X<br />

Quelle: http:// www. chiark. greenend. keiten auf. Im Bereich Terminal<br />

000_LU1106_F-Weber_neu1.qxd<br />

org. uk/ ~sgtatham/ putty/<br />

18.09.2006 passen 19:00 Sie Uhr etwa Seite das Tastaturlayout<br />

1<br />

an, unter Window wählen Sie eine<br />

andere Schrift art <strong>und</strong> Farbe. Möchten<br />

Sie über eine SSH-Verbindung<br />

eine Portweiterleitung einrichten,<br />

nehmen Sie die entsprechenden<br />

Einstellungen im Bereich Connection<br />

vor. Alle Parameter für eine<br />

Verbindung zu einem bestimmten<br />

Remote-System lassen sich als Profil<br />

abspeichern<br />

<strong>und</strong> wiederverwenden.<br />

Die Daten<br />

dazu legt Putty<br />

unter ~/.putty/<br />

sessions ab. Die<br />

gespeicherten<br />

Verbindungen lassen<br />

sich auch mit<br />

den restlichen<br />

Tools der Suite<br />

nutzen. (jlu) <br />

JJJII<br />

Die Version 0.61 der<br />

praktischen SSH-Suite<br />

Putty bringt keine großen<br />

Neuerungen mit, beseitigt<br />

aber einige Fehler<br />

<strong>und</strong> nimmt kleinere Anpassungen<br />

vor, sodass<br />

sich ein Upgrade lohnt.<br />

X23


Aktuelles<br />

Neues r<strong>und</strong> um Linux<br />

Eee PC X101: Laut Hersteller<br />

Asus das dünnste<br />

<strong>und</strong> leichteste<br />

Netbook der<br />

Welt.<br />

Asus Eee PC X101 mit Intel Meego<br />

Als dünnstes <strong>und</strong> leichtestes<br />

Netbook der Welt feiert Asus<br />

den Eee PC X101 (http:// tiny<br />

url. com/ lu1110-asus-x101).<br />

Der knapp 18 Millimeter<br />

schlanke <strong>und</strong> 920 Gramm<br />

leichte Rechner wartet mit einem<br />

matten 10,1-Zoll-Display<br />

auf <strong>und</strong> basiert auf einem Intel-<br />

NM10-Chipsatz mit Atom-CPU<br />

(N435, 1,33 GHz) <strong>und</strong><br />

integ rierter GMA-3150-<br />

Grafik. Asus verbaut im<br />

einzelnen Memory-<br />

Slot 1 GByte DDR3-<br />

RAM, das sich<br />

auf maximal<br />

2 GByte erweitern<br />

lässt.<br />

Als Massenspeicher<br />

dient eine 8-GByte-SDD.<br />

Für HD-Multimedia liefert<br />

diese Kombination zu wenig<br />

Power <strong>und</strong> Platz, doch dafür ist<br />

der Flachmann auch gar nicht<br />

gedacht. Mit Intels Linux-Ableger<br />

Meego als Betriebssystem<br />

zielt der Eee PC X101 vornehmlich<br />

auf Social-Networking-Anwender.<br />

Entsprechende<br />

Apps für Instant Messaging,<br />

Face book <strong>und</strong> Twitter hat Asus<br />

denn auch schon vorinstalliert.<br />

Darüber hinaus sollen der Hersteller-Appstore<br />

sowie die Online-Plattform<br />

ASUS@Vibe einen<br />

besonders leichten Zugriff<br />

auf Anwendungen, E-Books,<br />

Musik <strong>und</strong> Spiele bieten. Im typischen<br />

Betrieb hält der dreizellige<br />

LiIon-Akku (2.600 mAh)<br />

des Eee PC X101 laut Asus bis<br />

zu vier St<strong>und</strong>en lang durch. Die<br />

Multimedia-Ausstattung des<br />

Gerätes umfasst eine 0,3-Megapixel-Webcam,<br />

integrierte Stereo-Lautsprecher,<br />

ein Mikrofon<br />

sowie eine Buchse für Audio-<br />

In/ Out. Daneben bringt der<br />

Eee PC X101 zwei USB-2.0-<br />

Ports sowie einen MicroSD-<br />

Cardreader mit. Verbindung ins<br />

Netz nimmt das Netbook ausschließlich<br />

via 802.11b/ g/ n-<br />

WLAN auf. Einen Ethernet-<br />

Port sucht man ebenso vergeblich<br />

wie einen zusätzlichen<br />

Bildschirmausgang – dafür bietet<br />

der ultraflache Korpus zu<br />

wenig Platz. Den Asus Eee PC<br />

X101 gibt es ab sofort zum<br />

empfohlenen Verkaufspreis<br />

von 169 Euro im Handel. Für<br />

das mit matter, texturierter<br />

Oberfläche versehene Gehäuse<br />

des r<strong>und</strong> 26 mal 18 Zentimeter<br />

großen Net books stehen die<br />

Farben Schwarz, Weiß, Rot <strong>und</strong><br />

Braun zur Auswahl. Asus gewährt<br />

auf das Gerät zwei Jahre<br />

Garantie inklusive Pick-Up<strong>und</strong><br />

Return-Service. (jlu)<br />

kurz notiert<br />

Mit Libre Office 3.4.3 hat die Document<br />

Fo<strong>und</strong>ation pünktlich<br />

Ende August ein Bugfix-Release<br />

des freien Büropakets vorgelegt<br />

(http:// www. libreoffice. org). Anfang<br />

Oktober soll Version 3.4.4<br />

dann einige bereits jetzt bekannte<br />

Fehler ausbügeln. ÇDVD<br />

Die Scratch- <strong>und</strong> Mix-Software<br />

Xwax 1.0 ermöglicht es Vinyl-<br />

Diskjockeys, mithilfe von Timecode-Platten,<br />

einer hochwertigen<br />

So<strong>und</strong>karte <strong>und</strong> eines Linux-PCs<br />

digitale Audiodateien so<br />

zu manipulieren, als wären sie<br />

auf Platte gepresst (http:// xwax.<br />

co. uk). Damit stellt die GPLv2-<br />

Software eine Alternative zu proprietären<br />

Produkten wie Final<br />

Scratch dar. ÇDVD<br />

Das Ziel des Projekts Ubuntu<br />

Friendly besteht darin, eine offene<br />

Datenbank mit Ubuntukompatibler<br />

Hardware für jede<br />

Version von Ubuntu zu erstellen.<br />

Dazu sucht man nun verstärkt<br />

nach Feedback von Ubuntu-Nutzern<br />

vom Einsteiger bis zum<br />

Fortgeschrittenen (http:// tinyurl.<br />

com/ lu1110-friendly).<br />

AT200: Android-Flachmann von Toshiba<br />

Gerade 8 Millimeter dünn: Toshibas Tablet AT200.<br />

Nicht einmal 600 Gramm<br />

schwer <strong>und</strong> 8 Millimeter dünn,<br />

10 Zoll Bildschirmdiagonale:<br />

Das sind die Abmessungen des<br />

Android-Tablets AT200 von<br />

Toshiba. Der kapazitive Touchscreen<br />

löst mit 1280x800 Bildpunkten<br />

auf. Für den nötigen<br />

Vortrieb sorgt ein mit 1,2 GHz<br />

getakteter Dualcore-Prozessor<br />

OMAP-4430 von TI. 1 GByte<br />

Arbeitsspeicher dürften auch<br />

für speicherintensive Anwendungen<br />

ausreichen. Im Antutu-Benchmark<br />

liegt das Gerät<br />

mit 3323 Punkten jedoch<br />

allenfalls im Mittelfeld. Da uns<br />

lediglich ein Vorserienmodell<br />

zum Test bereitstand, sind<br />

diese Werte nicht auf die finale<br />

Version übertragbar.<br />

Toshiba stellt das AT200 in<br />

verschiedenen Varianten mit<br />

bis zu 64 GByte Speicherplatz<br />

zur Verfügung. Der integrierte<br />

Micro-SD-Slot unterstützt die<br />

SDXC-Spezifikation,<br />

womit<br />

er Karten<br />

bis zu einer<br />

Maximalkapazität<br />

von 2<br />

TByte verwaltet.<br />

Die<br />

WLAN-<br />

Schnittstelle<br />

unterstützt<br />

die gängigen<br />

Standards<br />

802.11b/ g/ n. Auf der Rückseite<br />

des Tablets sitzt eine<br />

5-Megapixel-Kamera, für Videokonferenzen<br />

gibt es in der<br />

Front eine kleinere mit 2 Megapixeln.<br />

Als Akkulaufzeit<br />

nennt Toshiba 8 St<strong>und</strong>en<br />

beim Abspielen von Videos,<br />

macht jedoch keine Angaben<br />

zur Akkukapazität.<br />

Auch beim empfohlenen Verkaufspreis<br />

hält sich der Hersteller<br />

eher bedeckt: Es hieß lediglich,<br />

das Tablet würde „zum<br />

handelsüblichen Marktpreis“<br />

erscheinen, womit es, je nach<br />

Ausstattung, ungefähr in der<br />

Kategorie zwischen 400 <strong>und</strong><br />

600 Euro liegen dürfte. Während<br />

das WLAN-Modell voraussichtlich<br />

im Herbst dieses<br />

Jahres in die Läden kommt,<br />

liefert Toshiba die UMTS-Variante<br />

wahrscheinlich erst zum<br />

Weihnachtsgeschäft im Dezember<br />

aus. (tle)<br />

14<br />

10 | 11<br />

Das Neueste r<strong>und</strong> um Linux, aktuelle Kurztests <strong>und</strong> Artikel aus<br />

<strong>LinuxUser</strong> finden Sie täglich auf www.linux-community.de


Mandriva 2011 nur mit KDE<br />

Mit etwas Verspätung gegenüber<br />

dem bisher gewohnten<br />

Rhythmus ist Ende August<br />

Mandriva 2011.0 „Hydrogen“<br />

erschienen, die erste Mandriva-Version<br />

seit dem Fork<br />

von Mageia (http:// tinyurl.<br />

com/ lu1110-hydrogen). Mit<br />

dieser Ausgabe der Distribution<br />

startet gleichzeitig ein<br />

neuer, zwölfmonatlicher Release-Zyklus<br />

mit 18 Monaten<br />

Support für die Versionen.<br />

Zum Jahresende soll außerdem<br />

eine Mandriva-LTS-Variante<br />

mit einem Long Term<br />

Support von drei Jahren erscheinen.<br />

Mandriva schickt<br />

„Hydrogen“ mit KDE 4 als<br />

einzigen mitgelieferten Desktop<br />

ins Rennen. Andere Umgebungen<br />

wie Gnome <strong>und</strong><br />

XFCE sollen zwar weiterhin<br />

von der Community angeboten<br />

werden, zählen aber künftig<br />

nicht mehr zu den offiziellen<br />

Mandriva-Paketen. Ziel<br />

dieser Konzentration auf KDE<br />

soll es sein, Mandriva zur<br />

ausgefeiltesten KDE-Distribution<br />

überhaupt zu machen.<br />

In dieselbe Kerbe schlägt<br />

das Simple-Welcome-Menü,<br />

das das gewohnte Kickoff ersetzt.<br />

Das Schnellstartmenü,<br />

das Ubuntus Unity-Starter<br />

<strong>und</strong> dem Pendant der Gnome-<br />

3-Shell ähnelt, dürfte bei altgedienten<br />

Mandriva-Anwendern<br />

für Kontroversen sorgen.<br />

Ähnliches gilt für den<br />

Wechsel des Paketformats<br />

vom weitverbreiteten RPM4<br />

zum inkompatiblen Fork<br />

RPM5 – umso mehr, als der<br />

passende Mandriva Package<br />

Manager MPM noch nicht<br />

fertig ist: Er soll erst in Mandriva<br />

2011 LTS zum Einsatz<br />

kommen. Das Fotomanagement<br />

hat Mandriva an Shotwell<br />

übertragen, das damit<br />

Digikam ersetzt. Zu den aktualisierten<br />

Bestandteilen zählen<br />

der Kernel 2.6.38.7, GCC<br />

4.6.1, Firefox 5.0.1 <strong>und</strong> Libre-<br />

Office 3.4.2. Als weitere Neuerungen<br />

listen die Entwickler<br />

die Funktion Timeframe für<br />

den Dateimanager Nepomuk<br />

auf. Damit sucht der Nutzer<br />

nicht in Ordnern nach Dateien,<br />

sondern fährt auf der<br />

Zeitleiste Timeframe zu dem<br />

Zeitpunkt, an dem die Files<br />

gespeichert wurden (http://<br />

wiki. mandriva. com/ en/ 2011.<br />

0_Notes).<br />

Auf der Heft- DVD dieser<br />

Ausgabe finden Sie die 32-<br />

Bit-Version von Mandriva<br />

2011.0 „Hydrogen“ als installierbare<br />

Live-DVD zum Ausprobieren.<br />

(uba/ jlu) ÇDVD<br />

„Simple Welcome“, das neue Menüsystem von Mandriva 2011<br />

„Hydrogen“, ersetzt das gewohnte Kickoff. (Bild: Mandriva)<br />

Virtuelle Server<br />

Top-Performance zum Tiefpreis!<br />

• bis zu 3 CPU-Kerne<br />

• bis zu 8 GB RAM<br />

• bis zu 95 GB Festplatte<br />

• RAID-10-Datensicherheit<br />

• 5.000 GB Traffic inklusive<br />

• SSL-Zertifikat inklusive<br />

• Root-Zugriff per SSH<br />

• 100 % Backup-Speicher<br />

• 99,9 % garantierte Verfügbarkeit<br />

• 30 Tage Geld-zurück-Garantie<br />

• auch als Managed Server erhältlich<br />

• viele 64-Bit-Betriebssysteme nach Wahl<br />

6 Monate<br />

kostenlos<br />

danach ab 12,99 €*<br />

Jetzt kostenlos informieren unter:<br />

080 0 638 2587<br />

www.netclusive.de/linux<br />

* Aktion „6 Monate kostenlos“ gilt bis 31.10.2011. Nach 6 Monaten regulärer monatlicher Gr<strong>und</strong>preis:<br />

VPS L 12,99 €, VPS XL 16,99 €, VPS XXL 29,99 €. Die Mindestvertragslaufzeit beträgt wahlweise 12 Monate<br />

(Aktion 6 Monate kostenlos entfällt) oder 24 Monate (6 Monate kostenlos). Abrechnung vierteljährlich. Einmalige<br />

Einrichtungsgebühr 9,99 €. Alle Preise inkl. MwSt. Preisänderungen <strong>und</strong> Irrtümer vorbehalten.


Aktuelles<br />

Neues r<strong>und</strong> um Linux<br />

Der 4,8-Zoll-Touchscreen des<br />

Acer Iconia Smart lässt bei einer<br />

Auflösung von<br />

1024x480 Pixeln<br />

reichlich Platz für<br />

Anwendungen.<br />

kurz notiert<br />

Für Backtrack 5 R1 haben die<br />

Entwickler den Kernel auf Version<br />

2.6.39.4 gebracht <strong>und</strong> die benötigten<br />

Injection-Patches angewendet<br />

(http:// www. backtrack-linux. org).<br />

Zudem integrierten sie r<strong>und</strong> 30<br />

neue Tools in die Security-Live-<br />

Distribution <strong>und</strong> aktualisierten 70<br />

weitere Programme.<br />

Im Rahmen des „Summer of<br />

Code“ erhielt die Gnome Shell<br />

3.1.90 eine ganze Reihe von Verbesserungen,<br />

darunter ein<br />

Onscreen-Keyboard, eine Personensuche<br />

in der Überblicksansicht<br />

sowie die Anzeige von<br />

Cover-Art in den Benachrichtigungen<br />

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

lu1110-gshell).<br />

Das Linux-basierte Roboat hat<br />

bei der diesjährigen World Robotic<br />

Sailing Championship in Lübeck<br />

gegen 14 andere autonome,<br />

unbemannte Segelboote den Sieg<br />

errungen. Das siegreiche Gefährt<br />

stammt aus Österreich, ist 3,7<br />

Meter lang <strong>und</strong> wiegt r<strong>und</strong> 300<br />

Kilogramm (http:// www. roboat.<br />

at). Es kommt nicht nur für Rennen,<br />

sondern auch in der Walforschung<br />

zum Einsatz.<br />

Acer Iconia Smart: Android-Smartphone mit Tablet-Qualitäten<br />

Mit seinem neuesten Android-<br />

Smartphone peilt Acer Benutzer<br />

an, die ein vielseitiges Gerät<br />

für die mobile Unterhaltung suchen:<br />

Das Iconia Smart kombiniert<br />

die Funktionen eines Tablet-PCs<br />

mit dem Format<br />

eines Handys. Der kapazitive<br />

Multi-Touchscreen<br />

des Iconia Smart weist<br />

bei einer Diagonale von<br />

4,8 Zoll eine Auflösung<br />

von 1024x480 Pixeln<br />

auf, was im Querformat<br />

das bequeme Surfen im<br />

Web ermöglicht.<br />

Android 2.3 „Gingerbread“<br />

als Betriebssystem<br />

<strong>und</strong> eine mit 1 GHz<br />

getaktete Snapdragon-<br />

CPU (Qualcomm MSM<br />

8255-1) liefern laut<br />

Acer genug Power, um<br />

auch hochauflösende Video-<br />

Inhalte <strong>ohne</strong> Einschränkungen<br />

zu genießen. Als Arbeitsspeicher<br />

bringt das Iconia Smart<br />

Android-Outdoorhandy Xperia Active von Sony<br />

Die sportliche Generation der<br />

Smartphone-Nutzer adressiert<br />

Sony Ericsson mit seinem auf<br />

der IFA vorgestellten Outdoor-Handy<br />

Xperia Active.<br />

Das auf Android 2.3.4 basierende<br />

Quad-Band-Handy erfüllt<br />

nach Herstellerangaben<br />

die IP67-Spezifikation, die<br />

Android im Goldfischglas: Das Sony Xperia Active.<br />

512 MByte RAM mit. Bei einer<br />

Größe von 142x65x14 Millimetern<br />

bringt das Gerät r<strong>und</strong><br />

185 Gramm auf die Waage, der<br />

1500-mAh-Akku hält laut Hersteller<br />

8 bis 11 St<strong>und</strong>en Gesprächszeit<br />

oder 450 bis 500<br />

St<strong>und</strong>en Standby durch.<br />

Anschluss ins Mobilnetz findet<br />

das Iconia Smart via Triple-Band-<br />

3G (HSPA+/ WCDMA, HSDPA,<br />

HSUPA) <strong>und</strong> Quad-Band-2G<br />

(GSM/ GPRS/ EDGE), obendrein<br />

unterstützt es 802.11b/ g/ n-<br />

WLAN <strong>und</strong> Bluetooth 2.1+EDR.<br />

Über die rückseitige 8-Megapixel-Kamera<br />

(Auto-Fokus, LED-<br />

Blitz) nimmt das Smartphone bei<br />

Bedarf Videos im 720p-Format<br />

auf <strong>und</strong> kann diese später über<br />

DLNA/ UPnP direkt auf passende<br />

Geräte wie PCs, Fernseher oder<br />

Spielkonsolen streamen. Ein integrierter<br />

HDMI-Anschluss erlaubt<br />

auch das Abspielen auf externen<br />

Wiedergabegeräten wie<br />

Fernsehern oder Projektoren.<br />

Für IP-basierte Videochats gibt<br />

es außerdem eine frontseitige<br />

2-Megapixel-Cam. Mit an Bord<br />

sind daneben ein UKW-Radio<br />

mit RDS, GPS, zahlreiche Sensoren<br />

(unter anderem für Beschleunigung,<br />

Lage <strong>und</strong> Licht),<br />

ein MicroSD-Slot, ein Micro-<br />

USB-Port, ein Dual-Mikrofon sowie<br />

ein Audio-Ausgang (3,5mm-<br />

Klinkenstecker).<br />

Die Software-Ausstattung umfasst<br />

einen Flash-fähigen Webbrowser,<br />

Clients für E-Mail <strong>und</strong><br />

Instant Messaging, Anwendungen<br />

für Audio- <strong>und</strong> Video-<br />

Streaming, PC- <strong>und</strong> Cloud-Synchronisation,<br />

Navigation, Geotagging<br />

<strong>und</strong> Routenplanung sowie<br />

vieles andere mehr. Weitere<br />

Anwendungen lassen sich jederzeit<br />

aus dem Android Market<br />

nachziehen. Das Acer Iconia<br />

Smart ist ab Mitte September<br />

zu einem unverbindlich empfohlenen<br />

Preis von 499 Euro im<br />

Handel erhältlich. (jlu)<br />

ihm unter anderem attestiert,<br />

dass es unbeschadet 30 Minuten<br />

in einem Meter Wassertiefe<br />

übersteht. Daneben stattet<br />

der Hersteller das Xperia<br />

Active mit einem kratzfesten<br />

Display aus. Angeblich soll<br />

sich der Touchscreen auch mit<br />

nassen Fingern problemlos<br />

bedienen<br />

lassen.<br />

Das vergleichsweise<br />

kleine Display<br />

löst<br />

320x480<br />

Bildpunkte<br />

auf <strong>und</strong><br />

stellt 16<br />

Millionen<br />

Farben dar.<br />

Dafür liefert<br />

die 1-GHz-CPU genügend<br />

Power in allen Lebenslagen.<br />

Als verfügbaren Speicher<br />

nennt Sony bis zu 300 MByte,<br />

den eine mitgelieferte Micro-<br />

SD-Karte um 1 GByte erweitert.<br />

Die eingebaute 5-Megapixel-Kamera<br />

nimmt optional<br />

Filme bis zu einer Auflösung<br />

von 720 Pixeln bei einer Wiederholrate<br />

von 30 Bildern in<br />

der Sek<strong>und</strong>e auf. Falls es einmal<br />

zu dunkel wird, springt<br />

der integrierte Blitz ein. Als<br />

Akkustandzeit nennt der Hersteller<br />

bis zu 350 St<strong>und</strong>en im<br />

Standby <strong>und</strong> maximal 4,5<br />

St<strong>und</strong>en Gesprächszeit. Voraussichtlich<br />

erscheint das<br />

Smartphone im vierten Quartal<br />

2011 zu einem Preis von<br />

ungefähr 300 Euro auf den<br />

deutschen Markt.<br />

16<br />

10 | 11<br />

Das Neueste r<strong>und</strong> um Linux, aktuelle Kurztests <strong>und</strong> Artikel aus<br />

<strong>LinuxUser</strong> finden Sie täglich auf www.linux-community.de


Eigenwillige Android-Tablets von Sony<br />

Erfrischend anders gestaltet<br />

Sony seine beiden Neuzugänge<br />

Tablet S <strong>und</strong> Tablet P.<br />

Beide arbeiten mit Android<br />

3.2 <strong>und</strong> setzen auf Nvidias<br />

Tegra-2-Plattform mit einer<br />

Dual-Core-CPU mit 1 GHz<br />

Taktfrequenz. Diese Verb<strong>und</strong>enheit<br />

attestieren auch die<br />

Antutu-Benchmarks, bei dem<br />

beide Geräte beinahe auf den<br />

Punkt genau die gleichen<br />

Werte erreichten <strong>und</strong> das<br />

vergleichbare<br />

Toshiba<br />

AT200 trotz<br />

dessen 1,2-<br />

GHz Dual-<br />

Core-CPU<br />

deutlich in<br />

den Schatten<br />

stellen.<br />

Trotz der<br />

fast identischen<br />

Leistung<br />

fallen<br />

die beiden<br />

neuen Sony-<br />

Tablets optisch sehr unterschiedlich<br />

aus. So erinnert<br />

das Tablet P an ein Brillenetui,<br />

das in beiden Hälften je<br />

ein Display mit einer Diagonale<br />

von je 5,5 Zoll <strong>und</strong> einer<br />

Auflösung von 1024x480<br />

Bildpunkten aufweist. Je<br />

nach Einsatz dient der untere<br />

Teil als Tastatur oder Spielesteuerung,<br />

aber auch als Ergänzung<br />

zum oberen Display.<br />

Das Tablet S wartet mit<br />

einem eigenwilligen, V-förmigen<br />

Profil auf, wodurch es<br />

laut Sony ergonomischer in<br />

der Hand liegen soll. Das 9,4<br />

Zoll große Display bietet eine<br />

Auflösung von 1200x800 Pixeln.<br />

Als Besonderheit stattet<br />

der Hersteller das Gerät<br />

mit einer Infrarotschnittstelle<br />

aus, die es zu einer<br />

multifunktionalen Fernbedienung<br />

umfunktioniert.<br />

Sony stellt dafür tausende<br />

Sonys Tablet P erinnert optisch ein wenig an ein<br />

Brillenetui <strong>und</strong> sticht nicht nur damit wohltuend<br />

aus dem Tablet-Einerlei hervor.<br />

Auch beim Tablet S gingen Sonys Designer eigene<br />

Wege. Dank seiner Infarot-Schnittstelle arbeitet<br />

es auch als Multifunktionsfernbedienung.<br />

Profile verschiedener Marken<br />

<strong>und</strong> Geräte zum Download<br />

bereit. Für unbekannte Marken<br />

steht ein Lernmodus zur<br />

Verfügung.<br />

Die WLAN-Variante des Tablet<br />

S soll bereits Ende September<br />

zu einem Preis von<br />

479 Euro für die 16-GByte-<br />

Version <strong>und</strong> 579 Euro für das<br />

32-GByte-Modell in den<br />

Handel kommen. Im November<br />

folgt eine 3G-Version für<br />

599 Euro.<br />

Das Tablet P<br />

bringt Sony<br />

voraussichtlich<br />

ebenfalls<br />

im November<br />

zu einem<br />

Preis von<br />

599 Euro heraus.<br />

Derzeit<br />

ist nur eine<br />

16-GByte-<br />

Version vorgesehen.<br />

(tle)<br />

Die Welt des perfekten Druckens<br />

TurboPrint 2<br />

for Linux<br />

"Mit TurboPrint macht der Einsatz aktueller Drucker<br />

unter Linux richtig Spaß." Zitat <strong>LinuxUser</strong> 3/2011<br />

Linux-Desktop mit TurboPrint Statusmonitor <strong>und</strong> Druckvorschau<br />

Jetzt 30 Tage kostenlos testen!<br />

Testversion auf www.turboprint.de<br />

Intelligente Treiber<br />

einfache Konfiguration über grafisches Menü<br />

Fotos <strong>und</strong> Dokumente in höchster Druckqualität<br />

präzises Farbmanagement für perfekte Farben<br />

Farbprofile für Spezial- <strong>und</strong> Fotopapiere<br />

Tintensparoptionen: halber Tintenverbrauch bei guter<br />

Druckqualität<br />

Drucker-Statusmonitor<br />

Tintenstand <strong>und</strong> Druckerstatus, Tools z.B. Düsenreinigung<br />

Anzeige von Druckaufträgen <strong>und</strong> Fortschritt<br />

schnelle Diagnose bei Druckproblemen<br />

Miniprogramm für Schnellzugriff aus Kontrollleiste<br />

Mehr Möglichkeiten<br />

Druckvorschau, manueller Duplexdruck<br />

komfortables Drucken im Netzwerk<br />

variabler CD-Druck, randloser Fotodruck<br />

Anwendersupport über Forum <strong>und</strong> per E-Mail<br />

TurboPrint Studio mit erweiterten Funktionen<br />

Farbeinmess-Service<br />

neue Farbräume <strong>und</strong> ICC-Profile einbinden<br />

CMYK-Proof ermöglicht farbverbindliche Drucke<br />

Preise im Online-Shop (incl. MwSt):<br />

TurboPrint Pro € 29,95<br />

TurboPrint Studio € 59,95<br />

Farbprofil-Einmessung € 14,95<br />

Über 400 Drucker sind unterstützt, z.B.<br />

Canon PIXMA iP, iX, MP, MX, MG, Pro9000/9500, Epson Stylus BX,<br />

SX, Stylus Photo P, PX, R1900/2880/3000, HP PhotoSmart ...<br />

Für alle gängigen Linux-Distributionen z.B. Ubuntu, SuSE, Debian,<br />

Fedora (x86 32/64bit CPU).<br />

net<br />

ZE<br />

DO<br />

www.turboprint.de<br />

ZEDOnet GmbH - Meinrad-Spieß-Platz 2 - D-87660 Irsee - Tel. 08341/9083905


Aktuelles<br />

Neues r<strong>und</strong> um Linux<br />

kurz notiert<br />

Das interaktive Tool PDF Masher<br />

0.6.0 wandelt PDF-Dokumente in<br />

E-Books der Formate EPUB <strong>und</strong><br />

Mobi um. Um korrekt strukturierte<br />

E-Books zu erzeugen, lässt<br />

es den Anwender Überschriften,<br />

Kolumnentitel <strong>und</strong> Ähnliches<br />

markieren <strong>und</strong> kann daraus nun<br />

auch Inhaltsverzeichnisse generieren<br />

(http:// www. hardcoded.<br />

net/ pdfmasher/).<br />

Toorox 08.2011 gibt es in den<br />

zwei Varianten XFCE <strong>und</strong> Lite<br />

(http:// toorox. de). Beide Spielarten<br />

der auf Gentoo basierenden<br />

Live-Distribution verwenden<br />

XFCE 4.8.0 als Desktop. In der<br />

Lite-Edition ersetzen jedoch<br />

schlankere Programme wie Abiword<br />

oder Midori schwergewichtige<br />

Anwendungen wie LibreOffice<br />

oder Icecat. Als Basis dient<br />

Kernel 2.6.39-gentoo-r3.<br />

Der Window-Manager Openbox<br />

3.5.0 verbessert die Xinerama-<br />

Unterstützung <strong>und</strong> erlaubt Icons<br />

in den Menüs. Das Tastenkürzel<br />

[Alt]+[Tab] zeigt die geöffneten<br />

Fenster in einer vertikalen Liste<br />

an. Daneben lassen sich jetzt<br />

auch die Dialogfenster mit<br />

Themes verschönern. Außerdem<br />

beseitigten die Entwickler zahlreiche<br />

Bugs (http:// openbox. org).<br />

Das Open-Source-Finanzprogramm<br />

KMyMoney 4.6.0 bringt<br />

als Neuerung ein Plugin zum Import<br />

von CSV-Dateien mit. Das<br />

Nachschlagen von Geldinstituten<br />

per OFX erfolgt nun über den<br />

Service Ofxhome.com, da Microsoft<br />

seinen entsprechenden<br />

Dienst eingestellt hat. Außerdem<br />

beseitigten die Entwickler über<br />

100 Bugs <strong>und</strong> fügten einige neue<br />

Lokalisierungen hinzu (http://<br />

kmymoney2. sourceforge. net).<br />

Die Rettungsdistribution System<br />

Rescue CD 2.3.0 basiert auf<br />

Kernel 3.0 <strong>und</strong> ist mit zahlreichen<br />

Software-Updates erhältlich.<br />

Gparted als zentrale Anwendung<br />

springt auf Version 0.9.0, Parted<br />

auf 2.4. Daneben nahmen die<br />

Entwickler Firefox 5.0 auf (http://<br />

www. sysresccd. org).<br />

„Honeycomb“ beschleunigt Dells Streak 7<br />

Das Streak 7 von Dell gehört zu<br />

den am besten verarbeiteten<br />

Android-Tablets im 7-Zoll-Format<br />

<strong>und</strong> ist bei Straßenpreisen<br />

um 300 Euro auch nicht mehr<br />

allzu teuer. Allerdings mangelte<br />

Mit dem Update auf Android 3.2 kann das Tegra-2-<br />

Tablet von Dell endlich zeigen, was in ihm steckt.<br />

Mit der Entwicklerversion<br />

2.7.3 nähert sich Gimp wieder<br />

ein Stück der bereits seit Längerem<br />

anvisierten Stable 2.8<br />

an. Die nun funktionsfähige<br />

Umsetzung des Single-Window-Modus<br />

gilt den Entwicklern<br />

als eines der wichtigen<br />

Der Open-Source-Entwickler<br />

José Félix Ontañón hat eine<br />

<strong>GUI</strong>-Anwendung namens<br />

Udev-Discover geschrieben,<br />

mit der sich Hardware-Informationen<br />

komfortabel durchblättern<br />

lassen (http://<br />

fontanon. org/ udevdiscover/).<br />

Die Software ähnelt dem<br />

Gnome Device Manager, der<br />

aber das obsolete HAL nutzte,<br />

um an Hardware-Informationen<br />

zu kommen. Das neue<br />

Werkzeug verwendet die Udev-<br />

Schnittstelle <strong>und</strong> zeigt ausführliche<br />

Informationen der im<br />

Sysfs des Linux-Kernels vorhandenen<br />

Geräte an. Die Einträge<br />

lassen sich durchsuchen<br />

<strong>und</strong> filtern, einzelne Geräte<br />

es ihm bisher an der nötigen<br />

Performance: Trotz Tegra-2-<br />

CPU (1 GHz, Dualcore) fühlte<br />

sich das Streak eher wie ein auf<br />

600 MHz getaktetes Billig-Pad<br />

an. Dank Android 3.2 ändert<br />

sich das jetzt:<br />

Das Tablet reagiert<br />

unter<br />

„Honeycomb“<br />

flüssig auf<br />

Eingaben <strong>und</strong><br />

macht trotz<br />

der geringen<br />

Auflösung<br />

von 800x480<br />

Bildpunkten<br />

so richtig Spaß.<br />

Gimp 2.7.3 mit Single-Window-Modus<br />

Features. Daneben bügelt<br />

Gimp 2.7.3 viele Fehler aus<br />

<strong>und</strong> bringt unter der Haube einige<br />

Neuerungen mit. Deswegen<br />

funktionieren möglicherweise<br />

für die derzeitige Stable<br />

Gimp 2.6 gedachte Plugins <strong>und</strong><br />

Skripts nur noch bedingt mit<br />

Udev-Discover: Gerätewart mit <strong>GUI</strong><br />

kann man auf Events überwachen.<br />

Udev-Discover steht unter<br />

GPLv3 <strong>und</strong> ist mit Python<br />

<strong>und</strong> GTK+ 3 umgesetzt. Auf<br />

Mit Android 3.2 ist nun auch<br />

die Tegra-Zone von Nvidia vorinstalliert,<br />

sodass sich auch<br />

Top-Games problemlos spielen<br />

lassen. Beim Antutu-Benchmark<br />

schafft das Streak sehr<br />

gute 4959 Punkte. Mit dem<br />

„Honeycomb“-Update verbessert<br />

sich auch die Akkulaufzeit<br />

des Streak 7 deutlich: So sind<br />

nun bis zu 8 St<strong>und</strong>en Video-<br />

Playback <strong>und</strong> mehrere Tage<br />

Standby möglich. Das Honeycomb-Update<br />

spielt Dell overthe-air<br />

ein – allerdings gilt es,<br />

zuvor sämtliche Daten mit der<br />

vorinstallierten Backup-Software<br />

von Nero zu sichern. (mhi)<br />

dem neuen Release. Gimp 2.8<br />

könnte gemäß den Plänen der<br />

Entwickler zum Jahresende erscheinen,<br />

vorher sind laut<br />

Chef entwickler Martin Nordholts<br />

zwingend noch Arbeiten<br />

an verschiedenen Layer-Funktionen<br />

nötig. (uba) ÇDVD<br />

Launchpad stehen Ubuntu/ Debian-Pakete<br />

sowie der Quelltext<br />

von Udev-Discover zum<br />

Herunterladen bereit. (mhu)<br />

Udev-Discover durchsucht das Linux-Sysfs sowie dessen Subsysteme<br />

nach Hardware-Informationen. (Bild: José Félix Ontañón)<br />

18<br />

10 | 11<br />

Das Neueste r<strong>und</strong> um Linux, aktuelle Kurztests <strong>und</strong> Artikel aus<br />

<strong>LinuxUser</strong> finden Sie täglich auf www.linux-community.de


Neues r<strong>und</strong> um Linux<br />

Aktuelles<br />

Asus schnürt B<strong>und</strong>le aus Android-Tablet <strong>und</strong> Docking-Tastatur<br />

„Honeycomb“-Tablet <strong>und</strong> Netbook<br />

in einem – so präsentiert<br />

Asus ein B<strong>und</strong>le aus dem<br />

Eee Pad Transformer TF101<br />

plus Docking-Tastatur, das es<br />

ab sofort im Handel gibt. Das<br />

Webpad TF101 (http:// tinyurl.<br />

com/ lu1110-asus-tf101) basiert<br />

auf einem Tegra-2-SoC von Nvidia<br />

mit Dualcore-ARM9-CPU<br />

(1 GHz) <strong>und</strong> Geforce-ULP-GPU<br />

(4 Kerne). Als Arbeitsspeicher<br />

bringt es 1 GByte DDR2-RAM<br />

mit, als Massenspeicher 16<br />

GByte eMMC. Das bei einem<br />

Format von 271x177x13 Millimetern<br />

<strong>und</strong> nur 680 Gramm<br />

Gewicht recht handliche Tablet<br />

besitzt einen kapazitiven 10,1-<br />

Zoll-Touchscreen mit einer Auflösung<br />

von 1280x800 Pixeln.<br />

Als Betriebssystem ist<br />

Android 3.1 vorinstalliert, das<br />

sich aber over-the-air auf Version<br />

3.2 aktualisieren lässt.<br />

Über je einen Beschleunigungs<strong>und</strong><br />

Licht-Sensor sowie Gyroskop,<br />

Kompass <strong>und</strong> GPS registriert<br />

das TF101 seine Umwelt,<br />

mit der es via 802.11b/ g/ n-<br />

WLAN <strong>und</strong> Bluetooth 2.1+EDR<br />

bei Bedarf Kontakt aufnimmt.<br />

Die Multimedia-Ausstattung<br />

umfasst je eine front- <strong>und</strong> rückseitige<br />

Kamera (1,2 / 5 Megapixel),<br />

Stereo-Lautsprecher <strong>und</strong><br />

Mikrofon sowie eine kombinierte<br />

Kopfhörer/ Mikro-<br />

Buchse. Ansonsten beherbergt<br />

das rutschfeste braune Gehäuse<br />

lediglich noch einen Mini-<br />

HDMI-Port, einen Micro-SD-<br />

Cardreader sowie einen zweizelligen<br />

LiPo-Akku (3300 mAh,<br />

18 Watt), der laut Asus für bis<br />

zu 9,5 St<strong>und</strong>en Laufzeit taugt.<br />

Bei Anschluss des im Paket<br />

enthaltenen Docks mit Tastatur<br />

<strong>und</strong> Touchpad, das ebenfalls einen<br />

Zweizellen-Akku an Bord<br />

hat, erhöht sich die mögliche<br />

Laufzeit nach Herstellerangabe<br />

auf 16 St<strong>und</strong>en. Außerdem<br />

bringt das ansteckbare Unterteil<br />

auch zwei USB-2.0-Ports<br />

zum Anschluss von Peripherie<br />

sowie einen MMC/ SD/ SDHC-<br />

Cardreader mit. Mit einer<br />

Größe von 271x185x41 Millimetern<br />

<strong>und</strong> gut 1,3 Kilo Gesamtgewicht<br />

fällt das aus<br />

der Tab/ Tastaturdock-<br />

Kombi entstehende<br />

„Netbook“<br />

allerdings weder<br />

besonders klein noch recht<br />

leicht aus.<br />

Das B<strong>und</strong>le aus Eee Pad Transformer<br />

TF101 <strong>und</strong> Dockingtastatur<br />

vertreibt Asus ab sofort<br />

über ausgewählte Online-<br />

Shops <strong>und</strong> Fachhändler in<br />

Deutschland <strong>und</strong> Österreich<br />

zum empfohlenen Verkaufspreis<br />

von 499 Euro. (jlu) n<br />

Steck dir einen: Den Asus<br />

Eee Pad Transformer TF101 samt<br />

passender Dockingtastatur gibt<br />

es jetzt im günstigen B<strong>und</strong>le.<br />

1. Lernen Sie!<br />

Ja, ã training-on-the-jobÒ , oft praktiziert, aber nicht<br />

Ÿ berzeugend. Denn die Kollegen haben nie Zeit<br />

fŸ r echte ErklŠ rungen, au§ erdem werden ã NeueÒ<br />

sofort von dem vereinnahmt, was im Unternehmen<br />

schon seit Ewigkeiten tradiert wird. Warum gibt's<br />

seit 2000 Jahren Schulen <strong>und</strong> UniversitŠ ten?<br />

ã LERNENÒ ist eine vollwertige TŠ tigkeit, auf die<br />

man sich konzentrieren mu§ , die man nicht 'mal<br />

eben so nebenbei tun kann, <strong>und</strong> die immer auch<br />

eine Prise ã ErneuerungÒ beinhalten sollte!<br />

2. Ineffiziente Arbeit nicht akzeptieren!<br />

Je spezialisierter Sie arbeiten, desto weniger<br />

echte, fachliche Kollegen haben Sie in Ihrem eigenen<br />

Unternehmen. Wir stellen deshalb Gruppen<br />

zusammen, in denen Sie neben hilfsbereiten<br />

Kollegen mit Š hnlichen Kenntnissen an IHREM<br />

Projekt arbeiten. Und stŠ ndig ist ein fachlicher Berater<br />

anwesend.<br />

Das Neueste r<strong>und</strong> um Linux, aktuelle Kurztests <strong>und</strong> Artikel aus<br />

<strong>LinuxUser</strong> finden Sie täglich auf www.linux-community.de<br />

ã Guided CoworkingÒ nennen wir das, <strong>und</strong> es<br />

kš nnte DIE Lš sung fŸ r so manches Projekt sein,<br />

das in Ihrer Firma ã haktÒ .<br />

3. Hintergr<strong>und</strong><br />

Wer den riesigen OpenSource-Baukasten schnell<br />

beherrschen mu§ , geht zu einer unserer Ÿ ber 100<br />

Schulungen. Wer das bereits kann, aber schneller<br />

mit seinen Projekten vorankommen will, der<br />

kommt mit seiner Arbeit zum Guided Coworking.<br />

Wir sind eine der erfolgreichsten Schulungseinrichtungen<br />

im gesamten Bereich ã OpenSourceÒ<br />

- sowohl fŸ r Admins, als auch fŸ r Entwickler.<br />

Siehe www.linuxhotel.de<br />

10 | 11 19


schwerpunkt<br />

Bash-Skripting<br />

Erste Schritte mit Bash-Skripten<br />

Kleine Helfer<br />

Das Programmieren von Shell-Skripten ist keine Hexerei. Schon mit wenigen Gr<strong>und</strong>kenntnissen<br />

sparen Sie durch das <strong>Automatisieren</strong> alltäglicher Aufgaben viel Zeit. Æleen Frisch<br />

© Svilen001, sxc.hu<br />

reADMe<br />

Die Bourne-Again-Shell<br />

Bash hilft bei vielen<br />

kleinen <strong>und</strong> großen Aufgaben.<br />

Wenn Sie ein<br />

paar einfache Kniffe beherrschen<br />

<strong>und</strong> die richtigen<br />

Konstrukte kennen,<br />

können Sie im<br />

Lauf der Zeit viel Zeit<br />

<strong>und</strong> Mühe sparen.<br />

Listing 1<br />

#!/bin/bash<br />

if [ $# ‐gt 0 ]; then # Mindestens ein Argument sollte<br />

hier stehen<br />

tar czf /save/mystuff.tgz $@ >/dev/null<br />

fi<br />

Shell-Skripte sind der beste<br />

Fre<strong>und</strong> bequemer Menschen. Das<br />

mag seltsam klingen, denn das<br />

Schreiben eines Shell-Skripts setzt<br />

Können <strong>und</strong> Arbeit voraus, trotzdem<br />

stimmt es: Schreiben Sie ein<br />

Shell-Skript zum Erledigen von<br />

sich wiederholenden Aufgaben,<br />

rentiert sich die investierte Zeit in<br />

der Zukunft mehrfach. Außerdem<br />

ist das Schreiben eines Shell-<br />

Skripts eine Herausforderung, die<br />

viel Freude macht. Die nicht nur<br />

Bequemen, sondern auch Cleveren<br />

nehmen sich deshalb Zeit fürs Erlernen<br />

der Shell-Befehle <strong>und</strong> das<br />

Schreiben von Skripten.<br />

Dieser Artikel fasst die Gr<strong>und</strong>lagen<br />

zum Schreiben von Shell-<br />

Skripten mit Bash im Kontext einiger<br />

allgemeiner Aufgaben im<br />

Zusammenhang mit dem PC zusammen.<br />

Dabei erhalten Sie die<br />

wichtigsten Informationen, um<br />

gleich mit dem Schreiben eigener<br />

Skripte zu beginnen. Eine Zusammenfassung<br />

der im Artikel behandelten<br />

Kommandos <strong>und</strong> Optionen<br />

finden Sie in der Tabelle Schnellübersicht<br />

am Ende des Artikels.<br />

Hallo Bash!<br />

In der einfachsten Form besteht<br />

ein Shell-Skript lediglich aus einer<br />

Datei mit einer Liste von auszuführenden<br />

Befehlen. Das folgende<br />

Skript führt beispielsweise<br />

einen langen Tar-Befehl aus, um<br />

ein Backup von verschiedenen<br />

Bilddateien zu erstellen:<br />

#!/bin/bash<br />

tar cvzf /save/pix.tgz /home/chaU<br />

vez/pix /graphics/rdc /new/pix/rU<br />

rachel<br />

Das Skript beginnt mit einer speziellen<br />

Zeile, die die Datei selbst<br />

als Skript identifiziert. Die Kombination<br />

#! nennt man „Shebang“,<br />

darauf folgt der vollständige<br />

Dateipfad zur entsprechenden<br />

Shell. Der Shebang #!/bin/bash<br />

ruft ausdrücklich die Bourne-<br />

Again-Shell zum Ausführen des<br />

Skripts auf.<br />

Verwenden Sie die allgemeinere<br />

Form #!/bin/sh, kommt die Standard-Shell<br />

des Systems zum Zug,<br />

auf die der Symlink /bin/sh verweist<br />

– unter Ubuntu ist das beispielsweise<br />

die schlanke, weitgehend<br />

zur Bash kompatible Dash.<br />

Sie können die Ausführung aber<br />

auch einem ganz anderen Programm<br />

übertragen: Der Shebang<br />

#!/bin/cat etwa führt dazu, dass<br />

das entsprechende Programm<br />

den Inhalt des „Skripts“ auf der<br />

Konsole ausgibt.<br />

Damit die Shell das Skript auch<br />

als ausführbare Datei erkennt,<br />

setzen Sie zunächst die Ausführungsrechte<br />

entsprechend. Heißt<br />

die Datei zum Beispiel mytar, dann<br />

erledigen Sie das mit dem Befehl<br />

20 10 | 11<br />

www.linux-user.de


Bash-Skripting<br />

schwerpunkt<br />

chmod u+x mytar – vorausgesetzt,<br />

die Datei liegt im aktuellen Verzeichnis.<br />

Der Rest des Skripts nach dem<br />

Shebang besteht aus dem eigentlichen<br />

Tar-Befehl mit den zu verarbeitenden<br />

Pfaden <strong>und</strong> Dateinamen.<br />

Der folgende Befehl führt<br />

das Skript aus, woraufhin einige<br />

Meldungen von Tar folgen:<br />

$ ./mytar<br />

Damit haben Sie die Anzahl der<br />

Anschläge, die zum Erzeugen eines<br />

Archivs nötig sind, von etwa<br />

75 Zeichen auf 8 Zeichen reduziert.<br />

Allerdings ließe sich das<br />

Skript noch etwas allgemeiner –<br />

<strong>und</strong> damit auch nützlicher – gestalten,<br />

indem Sie die zu archivierenden<br />

Dateien in der Kommandozeile<br />

angeben:<br />

$ ./mytar /home/chavez /new/pix/U<br />

rachel /jobs/proj5<br />

Mit diesem Befehl archivieren Sie<br />

eine andere Gruppe von Dateien.<br />

Das modifizierte Skript sehen Sie<br />

in Listing 1.<br />

Es gibt darin einige neue Features:<br />

Der Tar-Befehl verwendet<br />

jetzt Ein- <strong>und</strong> Ausgabeumleitung,<br />

um alle Meldungen zu unterdrücken,<br />

die sich nicht auf Fehler beziehen.<br />

Der Befehl befindet sich<br />

innerhalb einer If-Anweisung. Erweist<br />

sich die in eckigen Klammern<br />

angegebene Bedingung als<br />

wahr, arbeitet das Skript die darauf<br />

folgenden Befehle ab.<br />

Das Skript prüft, ob die Anzahl<br />

der Argumente zum Skript, die<br />

Sie in der Variable $# finden, höher<br />

als 0 liegt. Trifft das zu, hat<br />

der Benutzer einen oder mehrere<br />

Pfade fürs Archivieren angegeben.<br />

Fehlen die Parameter, gibt es<br />

nichts zu tun, der Befehl kommt<br />

also nicht zum Einsatz.<br />

Die neue Variante bietet außerdem<br />

einen weiteren Vorteil: Das<br />

Skript übergibt die Argumente,<br />

die es auf der Kommandozeile erhalten<br />

hat, mittels der speziellen<br />

Variable $@ an den Tar-Befehl.<br />

Diese Variable enthält die Liste<br />

der Argumente. Der Befehl von<br />

unserem Beispiel sieht dann wie<br />

folgt aus:<br />

tar czf /save/mystuff.tgz /home/U<br />

chavez /new/pix/rachel /jobs/proU<br />

j5 >/dev/null<br />

Auch hier haben Sie wieder jede<br />

Menge Tipparbeit gespart – zwar<br />

nicht ganz so viel, wie in der ersten<br />

Version des Skripts, dafür arbeitet<br />

diese Variante aber wesentlich<br />

flexibler.<br />

#!/bin/bash<br />

Eingabedatei<br />

Mit der Methode in Listing 2 ändern<br />

Sie die Arbeitsweise des<br />

Skripts. Das erste Argument enthält<br />

nun eine Datei, die eine Liste<br />

der zu archivierenden Verzeichnisse<br />

enthält. Die übrigen Argumente<br />

behandelt das Skript als<br />

einzelne Elemente, die es ebenfalls<br />

verwendet, wieder in der<br />

schon bekannten Variable $@.<br />

Das Skript verwendet die Variablen<br />

DIRS <strong>und</strong> OUTFILE. Gemäß unausgesprochener<br />

Konvention <strong>und</strong><br />

für die bessere Übersicht verwenden<br />

Sie am besten Großbuchstaben<br />

für die Variablennamen –<br />

zwingend erforderlich ist das aber<br />

nicht. Mit der ersten Anweisung<br />

speichert das Skript den Inhalt<br />

der im ersten Argument angegebenen<br />

Datei. Durch das Setzen<br />

der Backticks fügen Sie die Ausgabe<br />

des Cat-Befehls ein statt des<br />

Befehls selbst einzufügen.<br />

Das klappt mit jedem Befehl,<br />

den Sie zwischen die Backticks<br />

setzen. Auf diese Weise führt die<br />

Shell diesen zuerst aus <strong>und</strong> setzt<br />

die Ausgabe an dieser Stelle ein.<br />

Steht dieses Konstrukt innerhalb<br />

einer Anweisung, übernimmt diese<br />

anschließend die Ausgabe. Im<br />

Beispiel gibt der Befehl cat den<br />

Inhalt der Datei, angegeben als<br />

erstes Argument zum Skript –<br />

nämlich die Verzeichnisliste – aus<br />

<strong>und</strong> fügt diese innerhalb der doppelten<br />

Anführungszeichen in die<br />

Zuordnung ein <strong>und</strong> definiert dadurch<br />

die Variable DIRS. Zeilenumbrüche<br />

in der Datei der Verzeichnisliste<br />

spielen dabei keine Rolle:<br />

Diese wandelt die Shell in Leerzeichen<br />

um.<br />

Nachdem die Datei eingelesen<br />

ist <strong>und</strong> das Skript das erste Argument<br />

abgearbeitet hat, nutzen Sie<br />

die Anweisung shift, um den Dateinamen<br />

aus der Liste zu entfernen.<br />

Die neue Liste der Argumente<br />

enthält zudem Verzeichnisse,<br />

sofern Sie diese zuvor in der<br />

Kommandozeile angegeben haben,<br />

<strong>und</strong> $@ expandiert wieder zu<br />

der gewünschten Liste: Das<br />

Skript ersetzt die Variable durch<br />

die Verzeichnisnamen. Der Mechanismus<br />

ermöglicht es also, zuerst<br />

eine feste Liste von Elementen<br />

zum Archivieren im Skript zu<br />

speichern <strong>und</strong> – falls nötig – weitere<br />

Elemente als Parameter miteinzubeziehen.<br />

Die dritte Anweisung definiert<br />

die Variable OUTFILE, diesmal unter<br />

Zuhilfenahme des Kommandos<br />

date. Die Syntax $(...) entspricht<br />

dem Verwenden von Backticks<br />

(siehe Kasten Backticks oder<br />

nicht? auf der nächsten Seite).<br />

Diese Art von Operation ist unter<br />

dem Namen Kommando-Substitution<br />

bekannt.<br />

In der letzten Zeile steht dann<br />

der eigentliche Tar-Befehl, der<br />

nun die Liste aus der Datei sowie<br />

eventuelle zusätzliche Argumente<br />

berücksichtigt, die Sie archivieren<br />

wollen. Verwenden Sie eine<br />

Listing 2<br />

DIRS="`cat $1`"<br />

# DIRS = Inhalt der Datei im ersten<br />

Argument<br />

shift<br />

# entfernt das erste Argument aus der Liste<br />

OUTFILE="$(date +%y%m%d)" # erstellt einen Archivnamen mit Datum<br />

tar czf /tmp/$OUTFILE.tgz $DIRS $@ >/dev/null<br />

www.linux-user.de<br />

10 | 11 21


schwerpunkt<br />

Bash-Skripting<br />

BAckticks oDer nicht?<br />

Variab le innerhalb einer anderen<br />

Anweisung, vergessen Sie nie, das<br />

Dollar-Zeichen vor dem Variablennamen<br />

zu setzen, wie zum Beispiel<br />

bei $DIRS.<br />

Tests<br />

Das Skript in Listing 2 prüft weniger<br />

gründlich als die vorherigen<br />

Beispiele die Exaktheit der Argumente.<br />

Etwas anspruchsvoller gestaltet<br />

sich Listing 3, das diese<br />

Prüfung wieder einführt <strong>und</strong><br />

noch mehr Flexibilität gewährleistet.<br />

Für das schnelle Bearbeiten<br />

von Argumenten kommt hier<br />

die Getopts-Funktion der Bash<br />

zum Einsatz.<br />

Die ersten beiden Befehle weisen<br />

den Variablen DEST <strong>und</strong> PREFIX<br />

die gewünschten Werte zu: zum<br />

einen das Verzeichnis, in dem die<br />

Archivdatei landet, sowie den Anfang<br />

des Dateinamens für das Archiv.<br />

Dieses Prefix erhält als Zusatz<br />

die Zeichenkette des aktuellen<br />

Datums (wie in Listing 2 oder<br />

Listing 4 auf der nächsten Seite<br />

definiert). Der Rest dieses Abschnittes<br />

im Skript folgt der<br />

Struktur einer While-Schleife:<br />

while Bedingung;<br />

Befehle<br />

done<br />

Bei der Kommandosubstitution hat bereits vor geraumer Weile<br />

die Schreibweise $(...) die ältere Variante mit Backticks abgelöst.<br />

Dafür gibt es gute Gründe:<br />

• Bessere Lesbarkeit: In vielen Darstellungsformen verwechselt<br />

man den Backtick ` sehr leicht mit dem einfachen Anführungszeichen<br />

’.<br />

• Besser einzutippen: Auf vielen internationalen Keyboard-Layouts<br />

lässt sich der Backtick nur schwer erreichen, auf manchen<br />

fehlt er ganz (etwa bei italienischen Standard-Keyboards).<br />

• Eindeutigere Syntax: Insbesondere beim Verschachteln von<br />

Substitutionen sowie beim Quoting entsteht ein übersichtlicheres<br />

Konstrukt.<br />

Daher sollten Sie in Ihren Skripten der Variante $(...) gegenüber<br />

der in der Bash zwar noch funktionierenden, aber als obsolet<br />

geltenden Backtick-Methode den Vorzug einräumen. Es gibt<br />

eigentlich nur zwei Gründe, den Backtick noch zu nutzen: Die<br />

Macht der Gewohnheit (viele routinierte Skript-Autoren sind mit<br />

dem „Fliegenschiss“ aufgewachsen) <strong>und</strong> den Zwang zur Kompatibilität<br />

mit älteren Shells (Bourne- <strong>und</strong> Korn-Shell) insbesondere<br />

auf anderen Unix-Systemen.<br />

Das Skript durchläuft die Schleife,<br />

solange die Bedingung erfüllt<br />

ist, <strong>und</strong> endet, wenn der Test negativ<br />

ausfällt – in diesem Fall das<br />

Konstrukt getopts "f:bn:d: " OPT.<br />

Die Ausdrücke für die Bedingung<br />

stehen häufig in eckigen Klammern,<br />

wie bei den If-Anweisungen<br />

im vorangegangenen Beispiel<br />

zu sehen, aber die eigentlichen<br />

Befehle nicht. Technisch gesehen<br />

rufen eckige Klammern den Test-<br />

Befehl auf.<br />

Der Befehl Getopts geht jede<br />

Option der Reihe nach durch, zusammen<br />

mit den eventuellen Argumenten<br />

dazu. Die Optionsbuchstaben<br />

landen nacheinander<br />

im zweiten Argument von Getopts<br />

(im vorliegenden Fall OPT),<br />

die Argumente in OPTARG. Das erste<br />

Argument von Getopts ist ein<br />

String der erlaubten Buchstaben<br />

(Groß- <strong>und</strong> Kleinschreibung unterscheidend).<br />

Einige Optionen verlangen ein<br />

Argument. Das zeigt immer der<br />

danach stehende Doppelpunkt –<br />

im Beispiel sind es die drei Buchstaben<br />

f, n <strong>und</strong> d.<br />

Listing 3<br />

#!/bin/bash<br />

DEST="/save"<br />

PREFIX="backup"<br />

Innerhalb der While-Schleife<br />

sorgt eine Case-Anweisung für<br />

das fachgerechte Bearbeiten der<br />

Optionen. Die Anweisung vergleicht<br />

den Wert von OPT mit einer<br />

Liste von Mustern. Bei jedem<br />

Muster handelt es sich um eine<br />

Zeichenkette, die Platzhalter enthalten<br />

darf. Eine r<strong>und</strong>e schließende<br />

Klammer beendet das Muster.<br />

Die Reihenfolge ist wichtig: Das<br />

erste passende Muster gewinnt.<br />

Im Beispiel sind neben den<br />

Mustern für die erlaubten Optionsbuchstaben<br />

zusätzlich ein<br />

Doppelpunkt <strong>und</strong> ein Sternchen<br />

als Jokerzeichen für alles definiert,<br />

was die anderen Muster<br />

nicht abfangen. Die auszuführenden<br />

Befehle bei den einzelnen<br />

Optionen unterscheiden sich, jeder<br />

Abschnitt endet mit doppeltem<br />

Semikolon.<br />

Über ‐n geben Sie ein alternatives<br />

Präfix für den Dateinamen des<br />

Archivs an. Dabei überschreiben<br />

Sie die Voreinstellung aus dem<br />

zweiten Befehl des Skripts. Über<br />

‐b setzen Sie Bzip2 statt Gzip zum<br />

Komprimieren der Daten ein. Mit-<br />

# Ablageort <strong>und</strong> Namensanfang (Prefix) vorgeben<br />

while getopts "f:bn:d:" OPT; do # Überprüfen der Parametern<br />

case $OPT in<br />

# gültige passende Muster<br />

vorgeben<br />

f) DIRS=$OPTARG ;; # ‐f <br />

b) ZIP="j"; EXT="tbz" ;; # ‐b = bzip2 statt gzip verwenden<br />

n) PREFIX=$OPTARG ;; # ‐n <br />

d) if [ "${OPTARG:0:1}" = "/" ] # ‐d <br />

then<br />

DEST=$OPTARG<br />

else<br />

echo "Zielverzeichnis muss mit / beginnen."<br />

exit 1<br />

# Skript mit Fehler‐Status<br />

beenden<br />

fi<br />

;;<br />

:) echo "Sie müssen ein Argument für die Option ‐$OPTARG angeben."<br />

exit 1<br />

;;<br />

*) echo "Kein gültiges Argument: ‐$OPTARG."<br />

exit 1<br />

;;<br />

esac<br />

done<br />

22 10 | 11<br />

www.linux-user.de


Der perfekte Auftritt<br />

macht unseren Erfolg:<br />

auf dem Laufsteg<br />

<strong>und</strong> im Web.<br />

Stefan Klos mit Model Janina<br />

www.famepr.de<br />

Erstellt mit dem PowerPlus-Paket<br />

Stefan Klos<br />

STRATO<br />

Hosting<br />

Für Anwender mit hohen Ansprüchen<br />

Hosting PowerPlus L<br />

statt<br />

*<br />

Ihre Website mit echten Profi-Features:<br />

8 Domains <strong>und</strong> 5.000 MB Speicher im Paket inklusive<br />

Unlimited Traffic <strong>und</strong> 10 MySQL-Datenbanken nutzbar<br />

Pro-Features: PHP, Perl, Python, Ruby 8, Web-FTP u. v. m.<br />

NEU! Inklusive neu entwickeltem STRATO Communicator<br />

6 Monate für<br />

Aktionsangebot nur<br />

bis zum 30.09.2011<br />

*<br />

€/Mon.<br />

Jetzt bestellen unter: s trato.de / hosting<br />

Servicetelefon: 0 18 05 - 055 055<br />

(0,14 €/Min. aus dem dt. Festnetz, Mobilfunk max. 0,42 €/Min.)<br />

* 6 Monate 0 €/mtl., danach 14,90 €/mtl. Einrichtungsgebühr 14,90 €. Mindestvertragslaufzeit 12 Monate. Preis inkl. MwSt.


schwerpunkt<br />

Bash-Skripting<br />

Listing 4<br />

Listing 5<br />

#!/bin/bash<br />

tels ‐f übergeben Sie den Dateinamen<br />

mit der Liste der zu archivierenden<br />

Elemente, mittels ‐d das<br />

Zielverzeichnis für die Archivdatei<br />

(in der Voreinstellung /save).<br />

Dabei überprüft das Skript, ob<br />

das Zielverzeichnis mit dem absoluten<br />

Pfadnamen beginnt. Das<br />

Konstrukt ${OPTARG:0:1} verdient<br />

besondere Aufmerksamkeit. Sie<br />

haben die Möglichkeit, die Variablen<br />

in geschweifte Klammern einzufassen:<br />

$1 können Sie als ${1}<br />

schreiben <strong>und</strong> $CAT als ${CAT}.<br />

Diese Syntax ist nützlich. Sie erlaubt<br />

es Ihnen, Parameter über<br />

die neunte Position hinaus anzugeben:<br />

${11} steht zum Beispiel<br />

für den elften Parameter des<br />

Skripts, wohingegen $11 zum ersten<br />

Argument des Skripts gefolgt<br />

von einer 1 expandiert. Diese<br />

if [ ‐z $DIRS ]; then # Datei mit Verzeichnisliste<br />

vorhanden?<br />

echo "Die Option ‐f für die Listendatei fehlt."<br />

exit 1<br />

elif [ ! ‐r $DIRS ]; then<br />

echo "Kann die Datei $DIRS nicht finden oder einlesen."<br />

exit 1<br />

fi<br />

DAT="$(/bin/date +%d%m%g)"<br />

/bin/tar ‐${ZIP‐z} ‐c ‐f /$DEST/${PREFIX}_$DAT.${EXT‐tgz}<br />

`cat $DIRS` > /dev/null<br />

if [ $# ‐lt 1 ]; then # kein Argument,<br />

Eingabeaufforderung einblenden<br />

read ‐p "Wen wollten Sie überprüfen? " WHO<br />

if [ ‐z $WHO ]; then # kein Name wurde eingetragen<br />

exit 0<br />

fi<br />

else<br />

WHO="$1"<br />

# speichert das<br />

Kommandozeilen‐Argument<br />

fi<br />

LOOK=$(w | grep "^$WHO")<br />

if [ $? ‐eq 0 ]; then # vorherigen Befehlsstatus<br />

überprüfen<br />

WHEN=$(echo $LOOK | awk '{print $4}')<br />

echo "$WHO ist angemeldet seit $WHEN."<br />

else<br />

echo "$WHO ist zurzeit nicht angemeldet."<br />

fi<br />

exit 0<br />

Syntax ermöglicht es ebenfalls,<br />

Variablen vom umgebenden Text<br />

zu isolieren: Wenn der Wert von<br />

HAUSTIER zum Beispiel katze ist,<br />

dann expandiert ${HAUSTIER}2 zu<br />

katze2, während $HAUSTIER2 sich<br />

auf den Wert der Variable HAUS‐<br />

TIER2 bezieht, der vielleicht nicht<br />

definiert ist.<br />

Die Zeichenkette :0:1 nach dem<br />

Variablennamen extrahiert einen<br />

Substring aus OPTARG, angefangen<br />

an der ersten Position (die Position<br />

der Schriftzeichen beginnt<br />

mit 0) <strong>und</strong> fortgesetzt bis zum<br />

ersten Schriftzeichen, mit anderen<br />

Worten: Es bleibt das erste<br />

Schriftzeichen übrig.<br />

Die If-Anweisung überprüft<br />

dann, ob es sich dabei um einen<br />

Schrägstrich handelt. Falls nicht,<br />

erscheint eine Fehlermeldung,<br />

<strong>und</strong> das Skript endet mit einem<br />

Status von 1, was auf einen Fehler<br />

hinweist. Ein Status von 0 steht<br />

für einen erfolgreichen Durchlauf.<br />

Wenn eine Option ein Argument<br />

verlangt, dieses aber fehlt,<br />

ersetzt Getopts die Variable OPT<br />

Listing 6<br />

#!/bin/bash<br />

/bin/cat /usr/local/sbin/email_<br />

list |<br />

while read WHO WHAT SUBJ; do<br />

/usr/bin/mail ‐s "$SUBJ" $WHO<br />

< $WHAT<br />

echo $WHO<br />

done<br />

Listing 7<br />

#!/bin/bash<br />

mit einem Doppelpunkt <strong>und</strong> fügt<br />

den entsprechenden String in<br />

OPTARGS ein. Der vorletzte Abschnitt<br />

der Case-Anweisung arbeitet<br />

diese Fehler auf. Der letzte<br />

Abschnitt behandelt alle ungültigen<br />

Optionen. Getopts ersetzt in<br />

diesem Fall die Variable durch ein<br />

Fragezeichen <strong>und</strong> legt die unbekannte<br />

Option in OPTARGS ab. Das<br />

Joker-Muster entdeckt <strong>und</strong> behandelt<br />

diese Ereignisse.<br />

Dieser Code zum Behandeln von<br />

Argumenten ist nicht h<strong>und</strong>ertprozentig<br />

sicher. Es gibt Kombinationen<br />

von Optionen, die das<br />

Skript erst später bemerkt. Fehlt<br />

zum Beispiel in der Folge ‐f ‐n<br />

das Argument von ‐f, hält das<br />

Skript fälschlicherweise ‐n dafür.<br />

Den Rest des Skripts von Listing<br />

3 sehen Sie in Listing 4.<br />

Die If-Anweisung überprüft<br />

zwei mögliche Probleme mit der<br />

Datei, welche die Verzeichnisliste<br />

enthält. Der erste Test überprüft,<br />

ob die Variable DIRS fehlt, das<br />

heißt, ob sie die Länge null hat.<br />

In diesem Fall endet das Skript<br />

mit einer Fehlermeldung.<br />

Der zweite Test nach elif überprüft,<br />

ob die angegebene Datei<br />

existiert <strong>und</strong> der Zugriff funktioniert.<br />

Wenn nicht (das Ausrufezeichen<br />

in dem Ausdruck dient<br />

als ein logisches NOT), gibt das<br />

Skript ebenfalls eine Fehlermeldung<br />

aus <strong>und</strong> beendet sich.<br />

Die letzten beiden Anweisungen<br />

richten den Datumsteil für das<br />

PATH=/bin:/usr/bin<br />

# setzt den Pfad<br />

. /usr/local/sbin/functions.bash # . f => Datei f hier einbinden<br />

printf "USER\tGB USED\n"<br />

# Kopfzeile für Bericht drucken<br />

for WHO in $(


Archiv ein <strong>und</strong> starten den Tar-Befehl.<br />

Letzterer verwendet eine Art bedingter<br />

Auflösung von Variablen,<br />

zum Beispiel ${EXT‐tgz}. Der Bindestrich<br />

hinter dem Variablennamen<br />

zeigt an, dass der darauf folgende<br />

String zum Einsatz kommt, falls die<br />

Variable nicht definiert ist.<br />

Die Variablen EXT <strong>und</strong> ZIP sind nur<br />

dann definiert, wenn Sie die Option<br />

‐b verwenden, nämlich durch die<br />

Werte tbz <strong>und</strong> j. Haben Sie diese<br />

nicht früher im Skript definiert, verwendet<br />

es nun die Werte z <strong>und</strong> tgz.<br />

Alles nur Nummern<br />

Die bisher gezeigten Beispiele haben<br />

beide Arten von Bedingungen demonstriert<br />

– den Vergleich von Zeichenfolgen<br />

<strong>und</strong> das Testen von Dateieigenschaften.<br />

Listing 5 zeigt nun ein<br />

Beispiel für numerische Bedingungen.<br />

Dieses Skript entstand, um der<br />

Sekretärin des Vorsitzenden eines<br />

Unternehmens zu helfen: Sie war damit<br />

jederzeit in der Lage, schnell<br />

nachzusehen, wer gerade im Intranet<br />

angemeldet ist.<br />

Dieses Skript überprüft zunächst,<br />

ob die Dame ein Argument in der Befehlszeile<br />

angegeben hatte. Falls<br />

nicht, also wenn die Anzahl von Argumenten<br />

kleiner als 1 ist, erscheint<br />

eine Eingabezeile zur Angabe des gewünschten<br />

Benutzers. Dabei kommt<br />

der eingebaute Befehl read zum Einsatz.<br />

Die Eingabe landet wiederum in<br />

der Variablen WHO.<br />

Hat die Variable WHO nach der Abfrage<br />

immer noch die Länge null, hat die<br />

Sekretärin keinen Benutzernamen<br />

eingetippt, sondern lediglich [Eingabe]<br />

gedrückt. In diesem Fall beendet<br />

sich das Skript. Im anderen Fall,<br />

wenn die Sekretärin ein Argument<br />

bereits in der Befehlszeile angegeben<br />

hat, erhält WHO dieses als Wert. So<br />

oder so: Der Benutzername der gesuchten<br />

Person landet letztendlich<br />

immer am gleichen Platz.<br />

Der zweite Teil des Skripts verwendet<br />

zwei Konstrukte mit Befehlssubstitution.<br />

Das erste sucht in der Ausgabe<br />

des Befehls w nach dem gewünschten<br />

Benutzernamen <strong>und</strong> speichert<br />

die entsprechende Zeile in LOOK.<br />

Die zweite definiert die Variable WHEN<br />

als das vierte Feld dieser Ausgabe<br />

(Zeitpunkt der letzten Anmeldung).<br />

Dieses Feld extrahieren Sie mittels<br />

Awk. Sie brauchen das Tool nicht in<strong>und</strong><br />

auswendig zu kennen, um diesen<br />

einfachen Trick anzuwenden. Dabei<br />

kommt der Befehl nur zum Einsatz,<br />

wenn der Wert der Variable $?<br />

gleich 0 ist. Sie enthält den Statuscode<br />

des letzten Befehls, in diesem<br />

Fall also jenen von Grep. Liegt ein Ergebnis<br />

vor, hat sie den Wert 0, sonst<br />

den Wert 1.<br />

Zum Abschluss zeigt das Skript eine<br />

entsprechende Meldung mit dem Status<br />

des Benutzers:<br />

kyrre ist angemeldet seit 08:47.<br />

Fragt der Chef jetzt nach kyrre, kann<br />

die Sekretärin beruhigt die Auskunft<br />

geben, der sei derzeit an seinem<br />

Rechner beschäftigt.<br />

Schleifen binden<br />

Das Skript aus Listing 6 demonstriert<br />

eine weitere Verwendung von while<br />

<strong>und</strong> read: das Verarbeiten aufeinander<br />

folgender Zeilen einer Ausgabe oder<br />

einer Datei. Der Zweck des Skripts<br />

liegt im Versenden von Mails an Benutzer<br />

in einer Liste als separate E-<br />

Mails.<br />

Das Skript sendet über eine Pipe (|)<br />

den Inhalt der entsprechenden Datei<br />

an die While-Schleife. Diese liest mittels<br />

read die Zeilen <strong>und</strong> speichert deren<br />

Inhalt in drei Variablen. Das erste<br />

Wort einer Zeile landet in WHO, das<br />

zweite in WHAT <strong>und</strong> alle weiteren in<br />

SUBJ. Diese enthalten anschließend<br />

die Mailadresse, den Inhalt der Nachricht<br />

in einer Datei sowie den Betreff<br />

für jede Person. Die Variablen kommen<br />

beim Erstellen des nachfolgenden<br />

Mail-Befehls zum Einsatz.<br />

Beachten Sie, dass dieses Skript den<br />

vollständigen Pfadnamen für externe<br />

Befehle verwendet. Am besten geben<br />

Sie immer den vollständigen Pfadnamen<br />

an oder fügen eine PATH-Definition<br />

am Anfang des Skripts hinzu, um<br />

eventuelle Probleme mit den Berechtigungen<br />

von ausführbaren Dateien<br />

bei der Substitution zu vermeiden.<br />

Was die Sicherheit betrifft, geht dieses<br />

Skript viel zu lässig mit dem In-<br />

STRATO<br />

Hosting<br />

Für Anwender mit<br />

hohen Ansprüchen<br />

www.famepr.de<br />

Erstellt mit dem PowerPlus-Paket<br />

Hosting<br />

PowerPlus L<br />

6 Monate<br />

für<br />

*<br />

€/Mon.<br />

Aktionsangebot nur<br />

bis zum 30.09.2011<br />

Jetzt bestellen unter:<br />

strato.de<br />

Servicetelefon: 0 18 05 - 055 055<br />

(0,14 €/Min. aus dem dt. Festnetz, Mobilfunk max. 0,42 €/Min.)<br />

* 6 Monate 0 €/mtl., danach 14,90 €/mtl. Einrichtungsgebühr 14,90 €.<br />

Mindestvertragslaufzeit 12 Monate. Preis inkl. MwSt.


schwerpunkt<br />

Bash-Skripting<br />

Listing 8<br />

to_gb()<br />

{<br />

# arguments: user usage‐in‐KB<br />

halt der Datei email_list um <strong>und</strong><br />

vertraut darauf, dass diese ordnungsgemäß<br />

formatierte Mail-Adressen<br />

enthält. Möchten Sie das<br />

Skript aber weitergeben, gilt es,<br />

die Adressen sorgfältig zu überprüfen.<br />

So besteht etwa die Möglichkeit,<br />

dass ein Nutzer ein Benutzer<br />

eine Eingabe in der Form<br />

user@example.com; /irgendwo/run_me<br />

in der Adressenliste versteckt.<br />

Das führt dazu, dass das Programm<br />

run_me unerlaubt startet.<br />

Schleifen<br />

Die nächsten beiden Skripte veranschaulichen<br />

andere Arten von<br />

Schleifen, die Sie in Shell-Skripten<br />

über den for-Befehl anwenden<br />

können. Listing 7 auf der vorigen<br />

Seite erstellt einen Bericht<br />

über den belegten Speicherplatz<br />

mitsamt einer kompletten Liste<br />

von Verzeichnissen für eine Reihe<br />

von Anwendern.<br />

Die Dateien mit der Liste der<br />

Benutzer <strong>und</strong> der zu prüfenden<br />

Verzeichnisse finden sich hier explizit<br />

im Skript, aber Sie können<br />

auch Optionen dafür setzen. Das<br />

Skript beginnt mit der Angabe<br />

des Pfades <strong>und</strong> der Einbeziehung<br />

einer anderen Datei in das Skript<br />

mithilfe des Include-Datei-Mechanismus,<br />

dem sogenannten<br />

Punktbefehl (aufgerufen mit einem<br />

Punkt).<br />

Eine For-Schleife bildet das zentrale<br />

Konstrukt dieses Skripts. Innerhalb<br />

der Schleife erhält eine<br />

Variable bei jedem Durchgang einen<br />

neuen Wert. Das Schlüsselwort<br />

in verweist auf die Liste von<br />

local MB D1 D2 USER<br />

# lokale Variablen<br />

USER=$1<br />

MB=$(( $2/1024 ))<br />

# konvertieren in MByte<br />

D1=$(( $MB/1000 ))<br />

# Ausgabe ganzzahlig in GByte<br />

D2=$(( $MB‐($D1*1000) )) # Rest berechnen<br />

# display abcd MB as: a.bcd GB<br />

printf "%s\t%s\n" $USER $D1.${D2:0:1}<br />

return<br />

}<br />

Werten <strong>und</strong> der separate Befehl<br />

do leitet die eigentlichen Operationen<br />

ein. Die Schleife endet mit<br />

done, sobald sie alle Elemente der<br />

Liste abgearbeitet hat.<br />

Im Beispiel erhält die Variable<br />

WHO immer das nächste Element<br />

aus der Datei ckusers. Das Konstrukt<br />

$(1 ; I‐‐ )); do<br />

F=$(( $F*$I ))<br />

done<br />

echo $1'! = '$F<br />

exit 0<br />

Eine Funktion namens to_gb (Listing<br />

8) erledigt das Ausdrucken<br />

jeder Berichtszeile.<br />

Die Bash setzt voraus, dass Sie<br />

Funktionen vor dem Einsatz definieren.<br />

Es bietet sich dazu an,<br />

Funktionen in einer externen Datei<br />

zu speichern <strong>und</strong> über den<br />

Punktbefehl in Skripte einzubinden.<br />

Im Beispiel aus Listing 7<br />

liegt die Funktion in der Datei<br />

functions.bash.<br />

Die Funktion to_gb() beginnt<br />

mit der Definition einiger lokaler<br />

Variablen. Damit ignoriert sie jegliche<br />

Bedeutung, welche diese Variablennamen<br />

im aufrufenden<br />

Skript eventuell haben könnten,<br />

<strong>und</strong> die lokalen Werte gelangen<br />

nicht in den übergeordneten Kontext<br />

zurück.<br />

Der größte Teil der Funktion besteht<br />

aus arithmetischen Operationen.<br />

Die Bash unterstützt ausschließlich<br />

Ganzzahl-Arithmetik.<br />

Möchten Sie eine einigermaßen<br />

genaue Gesamtgröße in GByte<br />

anzeigen, müssen Sie zu diesem<br />

Zweck einen gängigen Trick nutzen:<br />

Sie entnehmen zuerst die<br />

Ganzzahlen, dann den Rest des<br />

GByte-Wertes, <strong>und</strong> setzen die<br />

Ausgabe per Hand zusammen.<br />

Haben Sie zum Beispiel als Wert<br />

2987 MByte <strong>und</strong> dividieren dies<br />

durch 1024, wäre das ger<strong>und</strong>ete<br />

Ergebnis 2 GByte. Um ein genaueres<br />

Ergebnis anzuzeigen, dividieren<br />

Sie stattdessen zuerst 2987<br />

durch 1000 (D1=2), dann berechnen<br />

Sie 2987‐(2*1000). Der Wert<br />

für D2 beträgt folglich 987.<br />

Anschließend geben Sie die Variable<br />

D1 aus, dann ein Komma<br />

<strong>und</strong> dann die erste Ziffer von D2:<br />

Das Ergebnis lautet nun 2.9. So<br />

sähe eine beispielhafte Ausgabe<br />

des Skripts aus:<br />

BENUTZER<br />

BELEGT in GB<br />

andrea 80.5<br />

karsten 14.3<br />

monika 0.3<br />

Der Befehl printf ermöglicht eine<br />

formatierte Ausgabe. Er erfordert<br />

einen Format-String, gefolgt von<br />

26 10 | 11<br />

www.linux-user.de


Bash-Skripting<br />

schwerpunkt<br />

Argumente <strong>und</strong> Variablen<br />

$1 $2 ? $9 Befehlsargumente<br />

${nn}<br />

$@<br />

allgemeines Format für Argument nn<br />

alle Befehlsargumente: Liste von separaten Elementen<br />

$* alle Befehlsargumente: ein einzelnes Element<br />

$# Anzahl der Befehlsargumente<br />

$0 Skript-Name<br />

$var<br />

${var}<br />

${var:p:n}<br />

${var‐val2}<br />

${var+val2}<br />

${var=val2}<br />

${var?errmsg}<br />

arr=( var1, var2 )<br />

${arr[n]}<br />

${#arr[@]}<br />

getopts opts var<br />

Wert der Variable var<br />

allgemeines Format<br />

Allgemeine Anweisungskonstrukte<br />

`cmd`<br />

$(cmd)<br />

Substring von n Zeichen von var, beginnend bei p<br />

val2 zurückgeben, falls var nicht definiert ist<br />

val2 zurückgeben, falls var definiert ist<br />

val2 zurückgeben, falls var <strong>und</strong>efiniert ist, <strong>und</strong> bestimme var=val2<br />

var: errmsg einblenden, falls var <strong>und</strong>efiniert ist<br />

definiert arr als ein Array<br />

Element n von Array arr<br />

Anzahl der definierten Elemente in arr<br />

Prozessoptionen, Optionsbuchstabe in var zurückgeben (oder ?, wenn ungültig, oder :, wenn das erforderliche Argument fehlt).<br />

Der Parameter opts listet erlaubte Buchstaben auf, optional gefolgt von einem Doppelpunkt, der ein Argument verlangt (Doppelpunkt<br />

am Anfang: invalide Optionen ignorieren). Gibt das Argument der Option in fest definierten Variable OPTARG zurück.<br />

Ausgabe von cmd erneut auswerten (obsolete Schreibweise)<br />

Ausgabe von cmd erneut auswerten (kanonische Schreibweise)<br />

$? Exit-Status des letzten Kommandos<br />

$! PID (Prozess-ID) des zuletzt ausgeführten Hintergr<strong>und</strong>befehls<br />

eval string<br />

Substitutionsoperation am String vornehmen <strong>und</strong> dann ausführen<br />

. file Datei-Inhalt im Skript einfügen<br />

exit n<br />

Testmethoden<br />

Skript mit dem Status n beenden (0 bedeutet Erfolg)<br />

‐x Datei überprüft, ob die Datei die durch den Code ‐x angegebene Bedingung erfüllt. Einige nützliche Operationen sind: ‐s Datei größer<br />

als 0 Byte; ‐r lesbar; ‐w schreibbar; ‐e existiert; ‐d ist ein Verzeichnis; ‐f ist eine einfache Datei.<br />

Datei1 ‐nt Datei2<br />

Abfrage, ob Datei1 neuer ist als Datei2<br />

‐z Wort Länge von Wort gleich 0<br />

‐n Wort Länge von Wort größer als 0<br />

Wort1 = Wort2 Test auf identische Zeichenfolgen. Andere Operationen: !=, >,


schwerpunkt<br />

Bash-Skripting<br />

Variablen, um den Ausdruck zu<br />

befüllen. Kennbuchstaben hinter<br />

Prozentzeichen geben an, wo die<br />

Variablen-Inhalte landen. Im Beispiel<br />

bestimmt %s die Stellen, an<br />

denen die Funktion die Werte<br />

einfügt. Hier gibt der Buchstabe s<br />

an, dass es sich um eine Zeichenkette<br />

handelt.<br />

Die Zeichen \t <strong>und</strong> \n im Format-String<br />

entsprechen den Steuerzeichen<br />

Tabulator <strong>und</strong> Zeilenumbruch.<br />

Wollen Sie die Zeile explizit<br />

beenden, müssen Sie Letzteres<br />

angeben.<br />

Das nächste Skript (siehe Listing<br />

9, vorige Seite) berechnet Fakultäten<br />

<strong>und</strong> veranschaulicht dabei<br />

eine andere Art von For-<br />

Schleife. Sie ähnelt dem, was in<br />

vielen „echten“ Programmiersprachen<br />

üblich ist, wie zum Beispiel<br />

in C/C++.<br />

Die For-Syntax nutzt eine<br />

Schleifenvariable (I) zusammen<br />

mit einem Startwert ($1, also dem<br />

ersten Parameter, den Sie an das<br />

Skript übergeben), eine Bedingung<br />

zum Fortsetzen der Schleife<br />

sowie einen Ausdruck, der angibt,<br />

wie sich die Variable nach jedem<br />

Schleifendurchlauf ändert.<br />

Die Schleife selbst verarbeitet<br />

die Variable I. Am Ende jeder Iteration<br />

verringert das Skript den<br />

Wert von I um 1 (I++ würde anders<br />

herum I um den Wert 1 erhöhen).<br />

Die Schleife läuft durch,<br />

solange der Wert von I größer<br />

als 1 ist. Der Rumpf der Schleife<br />

multipliziert F (am Anfang auf 1<br />

Listing 10<br />

#!/bin/bash<br />

gesetzt) mit jedem nachfolgenden<br />

I. Das Skript endet mit der Ausgabe<br />

des Ergebnisses:<br />

$ ./fact 6<br />

6! = 720<br />

Wie man hier sieht, lässt sich<br />

auch in der Shell recht zügig Mathematik<br />

betreiben. Probieren Sie<br />

zum Beweis einmal ./fact 10000.<br />

Menüs erzeugen<br />

Das letzte Beispielskript demonstriert<br />

die eingebaute Fähigkeit<br />

der Bash zum Generieren von<br />

Menüs über den Select-Befehl<br />

(Listing 10).<br />

Die Parameter für den Select-<br />

Befehl setzen Sie in den beiden<br />

Variablen PKGS <strong>und</strong> MENU. Das<br />

Kons trukt benötigt eine Liste von<br />

Elementen als zweites Argument;<br />

dazu dient MENU. Über ein Konstrukt<br />

von Befehlssubstitutionen<br />

gelangen die Werte in den Platzhalter.<br />

Zusätzlich fügt das Skript<br />

am Ende der Liste die Zeichenkette<br />

Fertig hinzu.<br />

Die Definition von PKGS führt<br />

ein neues Feature ein: Arrays. Bei<br />

einem Array handelt es sich um<br />

eine Datenstruktur mit mehreren<br />

Elementen, die Sie über einen Index<br />

referenzieren. Folgendes Beispiel<br />

erzeugt <strong>und</strong> verwendet ein<br />

einfaches Array:<br />

$ a=(1 2 3 4 5)<br />

$ echo ${a[2]}<br />

3<br />

PATH=/bin:/usr/bin<br />

PFILE=/usr/local/sbin/userpkgs # Format der Eingabe: pkgname menu_<br />

item<br />

PKGS=( $(cat $PFILE | awk '{print $1}') )<br />

# Array von Paketnamen<br />

MENU="$(cat $PFILE | awk '{print $2}') Fertig" # Liste der Menüpunkte<br />

select WHAT in $MENU; do<br />

if [ $WHAT = "Fertig" ]; then exit; fi<br />

I=$(( $REPLY‐1 ))<br />

PICKED=${PKGS[$I]}<br />

echo Installiere Paket $PICKED ... Bitte haben Sie Geduld!<br />

... Befehle, um das Paket zu installieren ...<br />

done<br />

Zur Definition eines Arrays schließen<br />

Sie dessen Elemente in Klammern<br />

ein. Um auf eines davon zuzugreifen,<br />

verwenden Sie die Syntax<br />

aus der zweiten Zeile: Der<br />

Name des Elements steht in geschweiften,<br />

der Positionsparameter<br />

in eckigen Klammern. Das<br />

Nummerieren der Elemente beginnt<br />

bei 0. Die Anzahl der Elemente<br />

in einem Array erhalten Sie<br />

über den Ausdruck ${#a[@]}.<br />

Im Skript kommt ein Array in<br />

Form der Variable PKGS zum Einsatz.<br />

Dort finden sich die Werte<br />

aus dem zweiten Feld jeder Zeile<br />

der Eingabedatei. Das Select-Konstrukt<br />

verwendet den Inhalt von<br />

MENU für die Liste. Select erstellt<br />

aus den Elementen ein nummeriertes<br />

Menü <strong>und</strong> fordert den Benutzer<br />

zur Eingabe einer Auswahl<br />

auf. Das gewählte Element landet<br />

in der vor dem Schlüsselwort in<br />

angegebenen Variable (hier WHAT),<br />

die Nummer des Elements in<br />

REPLY. Das Skript reduziert den<br />

Wert von REPLY um 1 für das Abrufen<br />

des entsprechenden Paketnamens<br />

aus dem Array PKGS, der<br />

in der Variable PICKED landet.<br />

Die Differenz von 1 kommt zustande,<br />

weil die Nummerierung<br />

im Menü mit 1, bei den Elementen<br />

eines Arrays aber bei 0 anfängt.<br />

Wählt der Benutzer das<br />

Element Fertig, terminiert das<br />

Skript. Listing 11 zeigt ein Beispiel<br />

für einen Durchlauf.<br />

Fazit<br />

Eine Zusammenfassung gängiger<br />

Skript-Befehle finden Sie in der<br />

Tabelle Schnellübersicht auf der<br />

Vorseite. Sie beendet diesen Ausflug<br />

in die Welt der Bash <strong>und</strong><br />

macht hoffentlich Lust auf weitere<br />

Entdeckungen. (agr) n<br />

Listing 11<br />

1) CD/MP3_Player 3) Photo_Album<br />

2) Spider_Solitaire 4) Fertig<br />

#? 2<br />

Installiere Paket spider ...<br />

Bitte haben Sie Geduld!<br />

[...]<br />

#? 4<br />

28 10 | 11<br />

www.linux-user.de


Richtig schreibt<br />

man mit Duden<br />

Ebenfalls erhältlich für Linux:<br />

Die neue Rechtschreibprüfung<br />

8.0 für Open-<br />

Office <strong>und</strong> LibreOffice<br />

Preis 19,95 J<br />

Das große Wörterbuch<br />

der deutschen Sprache<br />

199,95 J<br />

Richtiges <strong>und</strong><br />

gutes Deutsch<br />

19,95 J<br />

Ab sofort im Handel <strong>und</strong> im Internet unter www.duden.de


«Seitdem ich Microsoft ® Exchange benutze, hindert mich nichts mehr daran,<br />

effizient zu sein, wenn ich unterwegs bin. Ich synchronisiere meine Aufgaben<br />

<strong>und</strong> meine Kalender <strong>und</strong> teile sie mit meinen Mitarbeitern.»<br />

1 bis 1000 E-Mail-Accounts pro Domain<br />

25 GB Speicherplatz pro Account<br />

Gemeinsam genutzte Kalender <strong>und</strong> Aufgaben<br />

Anti-Virus, Anti-Spam<br />

Webmail (OWA), Outlook ®<br />

(MAPI)<br />

Mobile Synchronisation (ActiveSync)


Die professionelle<br />

Groupwarelösung<br />

Hosted 2010<br />

Ihre E-Mail-Accounts mit 25 GB Speicherplatz<br />

TM<br />

3, 96 €<br />

inkl. MwSt. / Monat / Account<br />

Mehr Informationen: www.ovh.de/mail oder 0049 (0) 681 906730<br />

Ortsnetznummer<br />

Europas Webhoster Nr. 1<br />

Quelle NetCraft – Juni 2011<br />

Domains | E-Mails | Hosting | VPS | Server | Private Cloud | Cloud | SMS | Telefonie<br />

OVH.DE


schwerpunkt<br />

Vi(m)-Basics<br />

Einführung in Vi(m)<br />

Vielseitig<br />

© John Nyberg, sxc.hu<br />

Der Texteditor Vim<br />

ist derart populär,<br />

dass auch viele andere<br />

Programme<br />

das gleiche Bedienkonzept<br />

nutzen.<br />

Frank Hofmann,<br />

Thomas Winde<br />

reADMe<br />

Wer Vim als Texteditor<br />

einsetzt, dem eröffnen<br />

sich viele Möglichkeiten<br />

effektiven Arbeitens –<br />

auch in anderen Programmen,<br />

die die gleichen<br />

Tastenkombinationen<br />

verwenden.<br />

Bei den aktuellen Linux-Distributionen<br />

heißt der Standard-Editor<br />

zumeist Vim [1]. Mit ihm erstellen<br />

<strong>und</strong> bearbeiten Sie nicht<br />

nur Textdateien jeglicher Art,<br />

sondern beispielsweise auch Programmcode,<br />

LaTeX-Dokumente,<br />

Stilvorlagen für Webseiten im<br />

CSS-Format <strong>und</strong> die Konfigurationsdateien<br />

des Betriebssystems<br />

<strong>und</strong> seiner Dienste.<br />

Die Vielseitigkeit von Vi <strong>und</strong><br />

Vim erschließt sich nicht auf den<br />

ersten Blick. Der große Vorteil:<br />

Das Bedienkonzept ist seit Jahrzehnten<br />

über die Systemgrenzen<br />

hinweg weitestgehend unverändert<br />

geblieben. Wer sich damit intensiv<br />

auseinandersetzt, dem<br />

steht nicht nur ein sehr mächtiges<br />

Werkzeug zu Diensten, sondern<br />

der verfügt auch über das<br />

Know-how für die Bedienung einer<br />

ganzen Reihe von weiteren<br />

Unix-Programmen.<br />

Es lohnt sich daher für jeden Benutzer,<br />

mit den gr<strong>und</strong>legenden<br />

Konzepten <strong>und</strong> Tastenkombinationen<br />

dieses Texteditors vertraut<br />

zu sein. In den Zertifizierungen<br />

des Linux Professional Institutes<br />

(LPI,[2]) bilden die beiden Texteditoren<br />

Vim <strong>und</strong> Emacs essenzielle<br />

Bestandteile.<br />

Rückblick<br />

Ein Blick in die Geschichte der<br />

Betriebssysteme zeigt, dass Unix-<br />

Systeme nunmehr seit Jahrzehnten<br />

Vi(m) als den Standard-Texteditor<br />

enthalten. Auf einem Unixartigen<br />

System finden Sie entweder<br />

das Original Vi oder einen<br />

entsprechenden Nachfolger.<br />

Der Ursprung der gesamten Vi-<br />

Familie liegt in den Siebzigerjahren<br />

des letzten Jahrh<strong>und</strong>erts.<br />

1976 erweiterte Bill Joy den zeilenorientierten<br />

Editor Ex um einen<br />

visual mode, der schnell an<br />

A Mehr Komfort in der grafischen Oberfläche: Texte editieren in Gvim.<br />

32 10 | 11<br />

www.linux-user.de


Vi(m)-Basics<br />

schwerpunkt<br />

Populärität gewann. Von<br />

nun an war ein Navigieren<br />

mittels eines Cursors<br />

im Text möglich, anstatt<br />

einzelne Zeilen erst anzufordern,<br />

um sie dann ändern<br />

zu können. Bald<br />

startete das Programm<br />

gr<strong>und</strong>sätzlich im Visual<br />

Mode <strong>und</strong> erhielt in der Folge den<br />

Namen Vi als Ableitung von der<br />

kürzesten, unzweideutigen Abkürzung<br />

für das Kommando<br />

visual im Editor Ex.<br />

Daraus entwickelten sich eine<br />

ganze Reihe von Erweiterungen<br />

<strong>und</strong> Portierungen auf andere<br />

Plattformen [3]. Zu den bekanntesten<br />

Varianten gehören Vim<br />

(„Vi Improved“) <strong>und</strong> Gvim. Beide<br />

Programme unterstützen das<br />

charakteristische Bedienkonzept<br />

über Modi <strong>und</strong> Tastenkombinationen.<br />

Vim bietet einen gegenüber<br />

Vi deutlich erweiterten Funktionsumfang.<br />

Gvim bereichert<br />

Vim um eine graphische Benutzeroberfläche<br />

auf der Basis des<br />

Gimp Toolkits (Gtk).<br />

Bei Vim handelt es sich um die<br />

weitaus populärste erweiterte<br />

Version von Vi, die aber nicht auf<br />

dessen Programmcode basiert.<br />

Der Autor Bram Moolenaar entwickelte<br />

seit 1991 einen Vi-ähnlichen<br />

Editor auf seinem Amiga,<br />

daher stand Vim zunächst auch<br />

für „Vi IMitation“. Schrittweise<br />

kamen weitere Funktionen hinzu<br />

(siehe Kasten Vim: Erweiterungen).<br />

1992 war dann bis auf eine<br />

kleine Menge der komplette Umfang<br />

von Vi erreicht – <strong>und</strong> aus der<br />

„Imitation“ entstand der verbesserte<br />

Vi alias Vim.<br />

Die <strong>GUI</strong>-Variante Gvim (Abbildung<br />

A) erlaubt es, das Programm<br />

etwas komfortabler über<br />

Menüs, Schalter <strong>und</strong> Scroll-Leisten<br />

zu bedienen. Es eignet sich<br />

sehr gut für Einsteiger, weil es<br />

sich nicht nur in der klassischen<br />

Weise per Tastatur, sondern zusätzlich<br />

auch mithilfe der Maus<br />

bedienen lässt. Zudem zeigen die<br />

meisten Menüeinträge die passenden<br />

Tastenkürzel an. Das<br />

hilft, diese zu erlernen <strong>und</strong> später<br />

im Terminal zu verwenden.<br />

ViM-klone<br />

Während Sie Vim unter Windows erst<br />

nachrüsten müssen, bringen unixoide<br />

Systeme das Programm gleich mit,<br />

wenn auch zum Teil in anderen Varianten.<br />

Auf einem BSD 4.4 (FreeBSD <strong>und</strong><br />

NetBSD) steht der Nvi [7] bereit. Dabei<br />

handelt es sich um eine fehlerbereinigte<br />

Neuimplementation des Editors,<br />

die sich an die Originalversion<br />

des Vi anlehnt. Slackware [8], Kate<br />

OS [9] <strong>und</strong> Minix [10] kommen mit Elvis<br />

[11] als Standard-Editor.<br />

Mac OS X „Snow Leopard“ installiert<br />

einen Vim 7.2, der dem Unix-Vim ähnelt.<br />

Für erweiterte Features steht<br />

Macvim [12] bereit: Er basiert auf der<br />

Vim-Version 7.3. Neben dem Darstellen<br />

der geöffneten Dateien in Reitern<br />

bietet er Mac-OS-typische Tastenkürzel,<br />

einen transparenten Fensterhintergr<strong>und</strong>,<br />

einen Vollbildmodus <strong>und</strong> die<br />

Möglichkeit, Multibyte-Sequenzen zu<br />

bearbeiten. Auch für ältere Mac-Versionen<br />

stehen Binär-Pakete bereit [13].<br />

Diese basieren auf der Vim-Version 6<br />

<strong>und</strong> erhalten keine Updates mehr.<br />

Schlägt Ihr Herz sowohl für Emacs als<br />

auch für Vim, sollten Sie den Texteditor<br />

Vile [14] ausprobieren. Vile steht<br />

für „VI Like Emacs“ <strong>und</strong> versucht, das<br />

Beste aus beiden Welten in einem<br />

Programm zu vereinen. Das Paket für<br />

das Terminal heißt Vile, das für X11<br />

Xvile (Abbildung D, nächste Seite).<br />

Unter der Haube<br />

Bei vielen aktuellen Linux-Systemen<br />

verweist lediglich ein symbolischer<br />

Link /usr/bin/vi auf ein bestimmtes<br />

Programm, das dann<br />

tatsächlich ausgeführt wird. In<br />

Debian-basierten Distributionen<br />

führt der Aufruf von vi zunächst<br />

zu einem gleichnamigen Symlink,<br />

der auf die Datei /etc/alternatives/vi<br />

zeigt. Diese verweist ihrerseits<br />

wiederum auf die Datei /usr/<br />

bin/vim.gtk. Wie das Kommando<br />

file verrät, handelt es sich dabei<br />

um das Programm, welches das<br />

System letztendlich ausführt (Abbildung<br />

B).<br />

Für Gvim sieht das Ganze recht<br />

ähnlich aus: Der symbolische<br />

Link nach /etc/alternatives/gvim<br />

zeigt ebenfalls auf /usr/bin/vim.<br />

gtk. Der Name legt bereits nahe,<br />

dass das Programm gegen die<br />

Bibliotheken des Gimp Toolkit<br />

(Gtk) gelinkt ist. Eine detailliertere<br />

Auskunft darüber, welche Module<br />

<strong>und</strong> Bibliotheken es integriert,<br />

gibt das Kommando vim<br />

‐‐version in einem Terminal (Abbildung<br />

C, nächste Seite).<br />

Vim gibt es für fast alle Betriebssysteme,<br />

insbesondere für<br />

alle Varianten von Linux, Unix,<br />

Mac OS <strong>und</strong> Windows (siehe Kasten<br />

Vim-Klone). Erlerntes Wissen<br />

nützt also auch auf diesen Systemen.<br />

Über Vim gibt es bereits<br />

eine ganze Reihe exzellenter Bücher<br />

<strong>und</strong> Beschreibungen, bei-<br />

B Um drei Ecken: Wie<br />

die Shell den Vim-Aufruf<br />

interpretiert.<br />

Die Autoren<br />

Frank Hofmann hat Informatik<br />

an der Technischen<br />

Universität<br />

Chemnitz studiert.<br />

Derzeit arbeitet er in<br />

Berlin im Büro 2.0,<br />

einem Open-Source<br />

Experten-Netzwerk,<br />

als Dienstleister mit<br />

Spezialisierung auf<br />

Druck <strong>und</strong> Satz. Seit<br />

2008 koordiniert er<br />

das Regionaltreffen<br />

der Linux User<br />

Groups aus der Region<br />

Berlin-Brandenburg.<br />

Thomas Winde ist<br />

selbstständiger Ausflugsfahrtenunternehmer<br />

<strong>und</strong> langjähriger<br />

Linuxanwender. Als<br />

Mitorganisator der<br />

Chemnitzer Linux-Tage<br />

zeichnet er für das<br />

Einsteigerforum verantwortlich.<br />

Auch auf<br />

verschiedenen anderen<br />

Linux-Veranstaltungen<br />

hält er Vorträge<br />

für Einsteiger.<br />

ViM-erweiterungen<br />

Gegenüber dem Ur-Vi von Bill Joy weist der Vi Improved eine<br />

ganze Reihe von Erweiterungen <strong>und</strong> Verbesserungen auf:<br />

• unbegrenztes Undo/ Redo ([U] <strong>und</strong> [Strg]+[R])<br />

• mehrere Fenster über- <strong>und</strong> nebeneinander<br />

• Fenstergruppen in Reitern<br />

• Syntax-Highlighting für mehr als 500 strukturierte Formate,<br />

darunter über 42 (Programmier-)Sprachen<br />

• Vervollständigen von Namen, Wörtern oder Variablen im<br />

Quellcode<br />

• Vergleichen <strong>und</strong> Kombinieren von Dateien<br />

• erweiterte reguläre Ausdrücke<br />

• Ein- <strong>und</strong> Ausklappen von Textblöcken („Folding“)<br />

• Öffnen von komprimierten Dateien<br />

• eingebauter Textumbruch<br />

• integrierte Hilfefunktion<br />

• Historie für Suche <strong>und</strong> Cursor-Positionen<br />

• Session-Datei mit Pufferlisten <strong>und</strong> Registerinhalten<br />

• Arbeiten mit Makros (Aufnehmen <strong>und</strong> Abspielen von Tastensequenzen)<br />

• Maus-Interaktion<br />

www.linux-user.de<br />

10 | 11 33


schwerpunkt<br />

Vi(m)-Basics<br />

C Vim zeigt die Module,<br />

die es bereits<br />

mitbringt.<br />

DAnksAgung<br />

Lieben Dank für die<br />

Kommentare <strong>und</strong> Ergänzungen<br />

beim Zusammenstellen<br />

dieses Artikels gehen<br />

an Axel Beckert, Thomas<br />

Osterried,<br />

Werner Heuser, Sven<br />

Guckes, Julius Plenz<br />

<strong>und</strong> Wolfram Eifler.<br />

spielsweise Steve Ouallines „Vi<br />

IMproved – Vim“ [4] (englisch)<br />

<strong>und</strong> Reinhard Wobsts „Vim gepackt“<br />

[5]. Recht hilfreich ist auch<br />

das „Vi/ Vim Graphical Cheat<br />

Sheet“ [6], das eine farbig gestaltete<br />

Übersicht der einzelnen Tastenbelegungen<br />

im jeweiligen Modus<br />

bereithält.<br />

Bedienkonzept<br />

Vi war für den Einsatz am Textterminal<br />

konzipiert <strong>und</strong> weist daher<br />

absichtlich eine spartanische<br />

Benutzerschnittstelle auf. Gr<strong>und</strong>legend<br />

für das Verständnis des<br />

konzepte in ViM<br />

Konzept<br />

Kommandokombination<br />

Nummernpräfix vor<br />

Kommandos<br />

Filtern<br />

Suchen <strong>und</strong> Ersetzen<br />

mehrere Zwischenablagen<br />

(ein allgemeiner<br />

plus 35 weitere benannte<br />

Puffer)<br />

Editors ist das Konzept der mehreren<br />

Modi – Navigation <strong>und</strong><br />

blockweises Ändern im Kommandomodus,<br />

Schreiben <strong>und</strong> Korrigieren<br />

einzelner Zeichen im Einfügemodus,<br />

Überschreiben im Ersetzungsmodus,<br />

Markieren im visuellen<br />

Modus <strong>und</strong> komplexe<br />

Kommandos im Kommandozeilenmodus.<br />

Diese Modi erlauben<br />

das Wiederverwenden der Tasten<br />

in unterschiedlichen Kontexten.<br />

Verschiedene weitere Konzepte,<br />

wie man sie zum Teil auch aus<br />

grafischen Programmen kennt,<br />

vereinfachen die Textbearbeitung<br />

Beschreibung, Beispiele<br />

[D],[W] (lösche bis zum Wortende), [D],[$] (lösche bis<br />

zum Zeilenende), [D],[^] (lösche bis zum Zeilenanfang),<br />

[D],[1],[Umschalt+][G] (lösche vom Anfang des Dokuments<br />

bis zur aktuellen Cursor-Position)<br />

[5],[D],[D] (lösche drei Zeilen)<br />

:%!sort (sortiere den Text über das externe Unix-<br />

Kommando sort)<br />

:%s/foo/bar/g (ersetze foo durch bar im gesamten<br />

Text)<br />

[Y],[Y] (kopiert aktuelle Zeile in den allgemeinen Puffer),<br />

[Umschalt]+[2],[A],[Y],[Y] (kopiert aktuelle Zeile in<br />

den benannten Puffer „a“), [Umschalt]+[2],[A],[P] (fügt<br />

Inhalt des benannten Puffers „a“ hinter aktueller Cursorposition<br />

ein)<br />

weiter. Diese Konzepte basieren<br />

auf Zeichenfolgen <strong>und</strong> Tastenkombinationen,<br />

mit denen Sie die<br />

einzelnen Aktionen auslösen <strong>und</strong><br />

steuern (siehe Tabelle Konzepte<br />

in Vim).<br />

Nach dem Start befinden Sie<br />

sich im Kommandomodus, in dem<br />

Sie den Text über die Tastaturkommandos<br />

verändern. Hier arbeiten<br />

Sie mit Tastenkombinationen<br />

auf Zeichen oder Textblöcken:<br />

Zum Beispiel löscht<br />

[3],[D],[W] drei Worte ab der aktuellen<br />

Position des Cursors im<br />

Text, [5],[D],[D] dagegen fünf Zeilen,<br />

beginnend bei der aktuellen<br />

Zeile. [D],[Umschalt]+[G] tilgt alle<br />

Zeichen von der aktuellen Cursorposition<br />

bis zum Textende. Die<br />

Position der Schreibmarke ändern<br />

Sie über die Tasten [H] (links), [J]<br />

(unten), [K] (oben) <strong>und</strong> [L]<br />

(rechts). In Vim sind zusätzlich<br />

die Pfeil- <strong>und</strong> Bewegungstasten<br />

entsprechend belegt. Kombinieren<br />

Sie die Tasten mit den Ziffernpräfixen,<br />

springen Sie hier durch<br />

den Text. Mit [Umschalt]+[G] bewegt<br />

sich der Cursor zum letzten<br />

Zeichen in der Datei.<br />

Über weitere Tasten schalten Sie<br />

in die anderen Modi um. Über<br />

[Esc] gelangen Sie stets in den<br />

Kommandomodus zurück. Den<br />

Einfügemodus erreichen Sie über<br />

[I] oder [A] (Einfügen vor oder<br />

nach der Cursorposition). Mittels<br />

[R] überschreiben Sie nur das Zeichen<br />

unter dem Cursor. Mit<br />

[Umschalt]+[R] wechseln Sie in<br />

den Überschreibmodus.<br />

Mit [Umschalt]+[.] gelangen Sie<br />

aus dem Kommandomodus in<br />

den Kommandozeilenmodus für<br />

globale Aufgaben <strong>und</strong> öffnen in<br />

der letzten Zeile des Terminals<br />

eine Eingabezeile. Dort speichert<br />

zum Beispiel w Dateiname den aktuellen<br />

Text unter dem angegebenen<br />

Dateinamen, wq Dateiname<br />

speichert <strong>und</strong> beendet den Editor<br />

in einem Zug. Mit q! beenden Sie<br />

den Editor, <strong>ohne</strong> die Änderungen<br />

im Text zu speichern.<br />

In den visuellen Modus gelangen<br />

Sie mittels [V] beziehungs-<br />

34 10 | 11<br />

www.linux-user.de


Vi(m)-Basics<br />

schwerpunkt<br />

Kurse & Urlaub<br />

D Der Vim-Klon Vile/ Xvile im Einsatz.<br />

weise [Umschalt]+[V]. Über<br />

die Bewegungstasten markieren<br />

Sie zunächst den<br />

Text, den Sie dann mit den<br />

oben benannten Kommandos<br />

bearbeiten.<br />

Um das effektive Bedienen<br />

des Texteditors zu erlernen,<br />

hilft es, sich im Einfügemodus<br />

auf die Eingabe zu konzentrieren,<br />

um dann im<br />

Kommandomodus die Tippfehler<br />

auszubessern <strong>und</strong><br />

Wörter, Sätze oder Absätze<br />

entsprechend zu verschieben.<br />

[1] Vim-Homepage: http. //www.vim.org<br />

[2] Linux Professional Institute (LPI): http://www.lpi.org<br />

[3] Vi bei Wikipedia: http://en.wikipedia.org/wiki/Vi<br />

Nächste Schritte<br />

Mit den hier vorgestellten<br />

Informationen gelingen bereits<br />

die ersten Schritte in<br />

der Vim-Welt. Noch wesenlich<br />

interessanter wird es<br />

aber, wenn Sie das hier erworbene<br />

Wissen in weiteren<br />

Programmen in ähnlicher<br />

Art <strong>und</strong> Weise anwenden<br />

können. Mit solchen Werkzeugen<br />

beschäftigen wir uns<br />

in einem Artikel in einer der<br />

nächsten Ausgaben von <strong>LinuxUser</strong>.<br />

(agr/ jlu) n<br />

[4] Vim-Buch: Steve Oualline, „Vi IMproved – Vim“, New Riders Publishing,<br />

info<br />

Indianapolis, 2001, ISBN 0-7357-1001-5, ftp://ftp.vim.org/pub/vim/doc/book/<br />

vimbook-OPL.pdf<br />

[5] Vim-Referenz: Reinhard Wobst, „Vim ge-packt“, MITP Verlag Bonn 2004,<br />

ISBN 3-8266-1425-9, http://home.wtal.de/rwobst/vim/<br />

[6] Vi/ Vim-Cheat-Sheet: http://www.viemu.com/vi-vim-cheat-sheet.gif<br />

[7] Nvi – 4.4-BSD-Reimplementierung von Vi:<br />

http://packages.debian.org/squeeze/nvi<br />

[8] Slackware Linux: http://www.slackware.com/<br />

[9] Kate OS: http://www.kateos.org/<br />

[10] Minix 3: http://www.minix3.org/<br />

[12] Macvim: http://code.google.com/p/macvim/<br />

[13] Macvim (Again): http://macvim.org<br />

[11] Elvis: http://packages.debian.org/squeeze/elvis<br />

[14] Vile: http://packages.debian.org/squeeze/vile<br />

Kostenloser Urlaub am Bodensee<br />

bodenseo möchte Ihrem Partner oder Ihrer Partnerin einen<br />

kostenlosen Urlaub am Bodensee im 4-Sterne-Hotel “Hoeri<br />

am Bodensee” schenken: www.hoeri-am-bodensee.de<br />

Buchen Sie einen Kurs vom 1. Oktober bis 31. März, <strong>und</strong> Ihre<br />

Partnerin oder Partner übenachtet kostenlos in Ihrem<br />

Doppelzimmer. Auch das Frühstücksbüffet übernimmt<br />

bodenseo!<br />

Kurse finden<br />

Zum Beispiel können Sie Linux von Gr<strong>und</strong> auf kennen <strong>und</strong><br />

verstehen lernen. Oder wie wäre es mit Python, die<br />

Programmiersprache auf die Google setzt? Stöbern Sie doch<br />

einfach mal in unserem Kursprogramm im Internet. Neben<br />

Linux- <strong>und</strong> Shell-Kursen finden Sie die wichtigsten<br />

Sprachen wie Perl, C, C++, Tcl/Tk, Java, Bash, PHP <strong>und</strong><br />

viele andere: www.bodenseo.de<br />

Kleine Gruppen<br />

bodenseo will, dass Lernen Spaß macht <strong>und</strong> schnell geht.<br />

Deshalb sind alle Kurse sorgfältigst auf die jeweilige<br />

Zielgruppe abgestimmt. Wir legen großen Wert darauf, dass<br />

wir möglichst homogene <strong>und</strong> kleine Gruppen schulen, die<br />

in der Regel aus nur 2 – 4 Teilnehmer/innen bestehen.<br />

Preise<br />

Unsere Kurse gibt es bereits ab 379,- € plus MwSt pro Tag.<br />

Vollpension im 4-Sterne-Hotel “Hoeri am Bodensee”<br />

(www.hoeri-am-bodensee.de) mit Sauna, Swimming-Pool <strong>und</strong><br />

Wellness- <strong>und</strong> Spabereich ist bereits im Kurspreis enthalten.<br />

Telefon<br />

Manche Fragen lassen sich telefonisch einfach besser klären.<br />

Deshalb ist bodenseo telefonisch für Sie von montags bis<br />

inklusive samstags zwischen 8 <strong>und</strong> 20 Uhr erreichbar:<br />

07731/1476120<br />

Linux am Bodensee<br />

www.bodenseo.de<br />

www.linux-user.de<br />

10 | 11 35


schwerpunkt<br />

Netzwerk-Tools<br />

Tools für die Konfiguration <strong>und</strong> Fehlerbehebung von Netzwerkverbindungen<br />

Handliche Werkzeuge<br />

© John Holst, Fotolia<br />

Die Kommandozeile<br />

hält einen<br />

Satz leistungsfähiger<br />

Werkzeuge bereit,<br />

mit denen Sie<br />

reADMe<br />

Fehlern in der<br />

Netzwerkkonfiguration<br />

oder im Netz<br />

selbst schnell auf<br />

die Spur kommen.<br />

James Mohr, Joe<br />

„Zonker“ Brockmeier<br />

Die Linux-Kommandozeile<br />

bietet eine leistungsstarke<br />

Sammlung<br />

von Werkzeugen für die<br />

Konfiguration <strong>und</strong> Fehlerbehebung<br />

von Netzwerkverbindungen.<br />

Linux <strong>und</strong> andere Systeme auf<br />

Unix-Gr<strong>und</strong>lage bieten in aller Regel<br />

mehrere Alternativen zum Lösen<br />

eines Problems. Das mag Anwender<br />

mit weniger Erfahrung gelegentlich<br />

etwas verwirren, gehört<br />

aber zu den bestimmenden Merkmalen<br />

der Open-Source-Welt.<br />

Netzwerk-Tools bilden da keine<br />

Ausnahme: Hier finden Sie eine<br />

Reihe von nützlichen Programmen<br />

– einige mit ähnlichen Aufgaben,<br />

aber auch solche mit einzigartiger<br />

Funktion – zum Konfigurieren<br />

<strong>und</strong> Verwalten von Netzwerkverbindungen<br />

sowie zur Suche<br />

<strong>und</strong> Behebung von Fehlern.<br />

Dieser Artikel stellt die gängigsten<br />

Werkzeuge für die Arbeit mit<br />

Netzwerken vor. Er setzt dabei<br />

voraus, dass Sie mindestens über<br />

gr<strong>und</strong>legende Kenntnisse von<br />

TCP/ IP-Netzwerkkonzepten wie<br />

Listing 1<br />

Adressierung, Namensauflösung<br />

<strong>und</strong> Routing verfügen ([1],[2]).<br />

Schnittstellen<br />

Der Befehl ifconfig war <strong>und</strong> ist<br />

immer noch auf vielen Systemen<br />

das Standardwerkzeug für die<br />

Konfiguration von Netzwerkschnittstellen.<br />

Auf neueren Linux-<br />

Systemen finden Sie zusätzlich<br />

den Befehl ip, hinter dem sich<br />

nicht nur eine Neuauflage von Ifconfig<br />

verbirgt, sondern der als<br />

Arbeitspferd einer ganz neuen<br />

Generation von Netzwerkprogrammen<br />

arbeitet.<br />

Das Programm ip integriert<br />

nicht nur die Funktion einiger älterer<br />

Tools, sondern bietet eine<br />

einheitliche Syntax für alle Funktionen.<br />

Im Gegensatz dazu bilden<br />

die im Paket net-tools bereitgestellten<br />

Werkzeuge, zu denen<br />

$ ip addr show dev eth0<br />

2: eth0: mtu 1500 qdisc pfifo_fast qlen 1000<br />

link/ether 00:19:d1:a1:3e:b9 brd ff:ff:ff:ff:ff:ff<br />

inet 192.168.1.203/24 brd 192.168.1.255 scope global eth0<br />

inet6 fe80::219:d1ff:fea1:3eb9/64 scope link<br />

valid_lft forever preferred_lft forever<br />

auch Ifconfig zählt, eine breite<br />

Sammlung von eigenständigen<br />

Hilfsprogrammen, die voneinander<br />

unabhängig entstanden.<br />

Ip gehört zum Paket iproute.<br />

Dank der Ähnlichkeit zwischen<br />

den einzelnen Werkzeugen aus<br />

diesem Paket konfigurieren Sie<br />

Ihr Netzwerk viel einfacher, denn<br />

Sie brauchen keine unterschiedliche<br />

Syntax für die einzelnen<br />

Funktionen zu erlernen. Darüber<br />

hinaus müssen Sie nicht immer<br />

im Kopf behalten, welches Werkzeug<br />

gerade für welche Funktion<br />

nötig wäre, denn Ip bringt viele<br />

der Fähigkeiten von ifconfig,<br />

route <strong>und</strong> arp unter einem Dach<br />

mit. Ein Aufruf von ip sieht in der<br />

allgemeinen Form wie folgt aus:<br />

$ ip Optionen Objekt Kommando<br />

Beim Objekt handelt es<br />

sich etwa um link für<br />

Netzwerkschnittstellen,<br />

addr für IP-Adressen, route<br />

für Routen <strong>und</strong> so weiter.<br />

Der Befehl ip unterstützt<br />

neben den genannten<br />

noch mehrere andere Ob-<br />

38 10 | 11<br />

www.linux-user.de


Netzwerk-Tools<br />

schwerpunkt<br />

jekte – die Manpage des Tools liefert<br />

weitere Details.<br />

Im Kontext von ip handelt es<br />

sich bei einem Link-Objekt um<br />

ein (entweder physikalisches oder<br />

virtuelles) Netzwerkgerät. Die<br />

Details zu einer solchen Schnittstelle<br />

erhalten Sie mithilfe des Befehls<br />

ip addr show (Listing 1).<br />

In den meisten Fällen liefert das<br />

Kommando show die gr<strong>und</strong>legenden<br />

Parameter zu einem angegebenen<br />

Objekt. Geben Sie kein solches<br />

explizit an, zeigt es die Informationen<br />

für alle betreffenden<br />

Objekte an. Zum Beispiel erhalten<br />

Sie mittels ip addr show Informationen<br />

zu den Adressen aller<br />

Netzwerkschnittstellen. Gegebenenfalls<br />

verwenden Sie list statt<br />

show. Das kommt der Vorstellung<br />

entgegen, dass das System Geräte<br />

eher auflistet als „zeigt“.<br />

Die in Listing 1 gezeigte Form<br />

des Befehls ip addr arbeitet mit<br />

drei Parametern: show dev eth0.<br />

Das Kommando show arbeitet also<br />

als ein Befehl-im-Befehl mit den<br />

Argumenten dev eth0. Das zeigt,<br />

dass die Befehle mit Ip in der Regel<br />

etwas komplexer ausfallen als<br />

die Entsprechungen mit Ifconfig:<br />

Dort hieße derselbe Befehl einfach<br />

ifconfig eth0.<br />

Möchten Sie eine virtuelle<br />

Schnittstelle eth0:1 hinzufügen,<br />

dann sieht der entsprechende Befehl<br />

wie folgt aus:<br />

# ip addr add 192.168.1.42 dev eU<br />

th0:1<br />

In diesem Fall dienen die Parameter<br />

192.168.1.42 dev eth0:1 als Argumente<br />

für den Befehl add. Dieses<br />

Beispiel weist dem Gerät<br />

eth0:1 die IP-Adresse 192.168.1.42<br />

zu. Den Ip-Befehl verwenden Sie<br />

auch zum Aktivieren <strong>und</strong> Deaktivieren<br />

von Schnittstellen:<br />

# ip link set up dev eth1<br />

Hier kommt das Kommando set<br />

zum Einsatz. Die Befehle set <strong>und</strong><br />

view gehören zum link-Objekt. Als<br />

Alternative für das Aktivieren einer<br />

Netzwerkschnittstelle bietet<br />

sich der Befehl ifup an. Dahinter<br />

verbirgt sich eigentlich ein Shellskript,<br />

welches das System beim<br />

Hochfahren aus der Datei /etc/<br />

init.d/network zum Aktivieren der<br />

Schnittstelle aufruft. Wie zu erwarten,<br />

gibt es auch ein Kommando<br />

ifdown, bei dem es sich jedoch<br />

lediglich um einen symbolischen<br />

Link auf Ifup handelt.<br />

Routing<br />

Traditionell definieren <strong>und</strong> verwalten<br />

Sie Routen über den Befehl<br />

route. Mit ip route steht eine<br />

modernere Alternative zur Verfügung.<br />

Das Hinzufügen einer Route<br />

sieht bei den beiden Tools wie<br />

folgt aus:<br />

# route add ‐net 192.168.42.0/24U<br />

gw 192.168.1.99<br />

# ip route add 192.168.42.0/24 vU<br />

ia 192.168.1.99<br />

Das Format gleicht im Gr<strong>und</strong>e genommen<br />

dem beim Hinzufügen<br />

von IP-Adressen. Beachten Sie,<br />

dass beide Befehle die Route für<br />

einen gesamten Bereich von IP-<br />

Adressen (192.168.42.0/24 im<br />

CIDR-Format) hinzufügen <strong>und</strong><br />

diese Route einer Router-Adresse<br />

zuweisen – mithilfe des Arguments<br />

gw (engl. „gateway“) im<br />

Route-Befehl <strong>und</strong> dem deutlich<br />

intuitiveren via bei ip route.<br />

Geben Sie den Befehl ip route<br />

<strong>ohne</strong> modifizierendes Argument<br />

ein, erhalten Sie eine Liste der vorkonfigurierten<br />

Routen, wobei die<br />

Ausgabe etwas<br />

eingängigere<br />

Informa-<br />

$ route<br />

tionen enthält<br />

als jene<br />

von Route.<br />

Ein Beispiel<br />

dafür finden<br />

Sie in Listing<br />

2, das die<br />

$ ip route<br />

Ausgaben der<br />

beiden Tools<br />

auf einem<br />

Notebook<br />

zeigt.<br />

Namen <strong>und</strong> Zahlen<br />

Das Address Resolution Protocol<br />

ARP ermittelt die physikalische<br />

Hardware-Adresse, die zu der IP-<br />

Adresse eines Rechners gehört.<br />

Ursprünglich nutzte <strong>und</strong> verwaltete<br />

der Befehl arp die gleichnamigen<br />

Tabellen. Auch hierfür stellt<br />

Ip einen Ersatz bereit.<br />

Das Objekt heißt in diesem Fall<br />

neigh (engl.: „neighbor“, Nachbar).<br />

Beispiele für die Ausgabe der zwei<br />

Befehle zeigt Listing 3, nächste<br />

Seite. In beiden Fällen enthält die<br />

Ausgabe die IP-Adresse<br />

(192.168.1.111), die Link-Layer-<br />

Adresse (lladdr 00:30:05:0c:<br />

0b:23) sowie das physische Gerät<br />

(eth0), das mit dieser Adresse verb<strong>und</strong>en<br />

ist.<br />

Benutzer bauen eine Verbindung<br />

zu einem entfernten Rechner<br />

eher über den Hostnamen als<br />

über die IP-Adresse auf. Computer<br />

aber müssen die IP-Adresse<br />

verwenden <strong>und</strong> wandeln den Namen<br />

daher automatisch via DNS<br />

zurück in Zahlen. Ob das Umwandeln<br />

von Namen <strong>und</strong> Adressen<br />

klappt, prüfen Sie entweder<br />

mit dem Tool nslookup oder mit<br />

host. Beide Programme gehören<br />

zum Paket bind-utils. Der Befehl<br />

nslookup bietet dabei mehr Funktionalität<br />

<strong>und</strong> liefert eine umfangreichere<br />

Ausgabe als host.<br />

Fehler beheben<br />

Nachdem Sie Routen definiert haben,<br />

überzeugen Sie sich zuerst<br />

davon, ob die Pakete entfernte<br />

Hosts tatsächlich erreichen. Dazu<br />

gLossAr<br />

CIDR: Classless Inter-<br />

Domain Routing [3]. Ein<br />

Verfahren zur effizienteren<br />

Nutzung des IP-<br />

Adressraums <strong>und</strong> um<br />

die Größe der Routing-<br />

Tabellen zu reduzieren.<br />

tipp<br />

Der Befehl ip erlaubt,<br />

die Namen der Objekte<br />

abzukürzen.<br />

Meist genügt der<br />

ers te Buchstabe des<br />

Objektbezeichners,<br />

etwa ip l für ip link<br />

oder ip a für ip<br />

addr. Beachten Sie<br />

jedoch, dass es einige<br />

Objekte mit gleichen<br />

Anfangsbuchstaben<br />

gibt, zum Beispiel<br />

address <strong>und</strong><br />

addrlabel. Sie können<br />

Abkürzungen<br />

nicht nur für Objekte,<br />

sondern auch für Befehle<br />

verwenden.<br />

Statt ip addr show<br />

dev eth0 genügt<br />

auch ip a s eth0.<br />

Listing 2<br />

Kernel‐IP‐Routentabelle<br />

Ziel Router Genmask Flags Metric Ref Use Iface<br />

192.168.1.0 * 255.255.255.0 U 1 0 0 eth0<br />

192.168.1.0 * 255.255.255.0 U 2 0 0 eth1<br />

link‐local * 255.255.0.0 U 1000 0 0 eth1<br />

default gateway 0.0.0.0 UG 0 0 0 eth0<br />

192.168.1.0/24 dev eth0 proto kernel scope link src 192.168.1.105 metric 1<br />

192.168.1.0/24 dev eth1 proto kernel scope link src 192.168.1.106 metric 2<br />

169.254.0.0/16 dev eth1 scope link metric 1000<br />

default via 192.168.1.1 dev eth0 proto static<br />

www.linux-user.de<br />

10 | 11 39


schwerpunkt<br />

Netzwerk-Tools<br />

Listing 3<br />

Listing 4<br />

$ ping ‐c4 192.168.1.111<br />

verwenden Sie das Werkzeug ping<br />

<strong>und</strong> geben dabei als Argument<br />

entweder den Hostnamen oder<br />

die entsprechende IP-Adresse an<br />

(Listing 4). Die Option ‐c (engl.<br />

„count“) begrenzt dabei die Anzahl<br />

der übermittelten Pakete.<br />

Ohne diese Einschränkung sendet<br />

Ping fortlaufend Testpakete,<br />

bis Sie es über [Strg]+[C] beenden.<br />

In der Ausgabe von Ping sehen<br />

Sie einen Bericht für jedes<br />

Paket mit den Informationen<br />

über den Erfolg der Verbindungsaufnahme<br />

<strong>und</strong> die entsprechenden<br />

Antwortzeiten.<br />

Um die Route der Pakete bis<br />

zum Ziel zu überprüfen, verwenden<br />

Sie entweder das traditionelle<br />

traceroute oder das neuere Hilfsprogramm<br />

tracepath, das wie Ping<br />

zum Paket iputils gehört. Obwohl<br />

es sich bei Traceroute um das ältere<br />

Programm handelt, kennt es<br />

mehr Optionen als Tracepath.<br />

Letzteres nimmt im Prinzip als<br />

Parameter nur ein Ziel (Adresse<br />

oder Hostname) sowie eine Port-<br />

Nummer entgegen. Ansonsten<br />

können Sie lediglich über ‐l die<br />

Paketlänge angeben <strong>und</strong> mittels<br />

PING 192.168.1.111 (192.168.1.111) 56(84) bytes of data.<br />

64 bytes from 192.168.1.111: icmp_seq=1 ttl=128 time=0.309 ms<br />

64 bytes from 192.168.1.111: icmp_seq=2 ttl=128 time=0.361 ms<br />

64 bytes from 192.168.1.111: icmp_seq=3 ttl=128 time=0.316 ms<br />

64 bytes from 192.168.1.111: icmp_seq=4 ttl=128 time=0.318 ms<br />

‐‐‐ 192.168.1.111 ping statistics ‐‐‐<br />

4 packets transmitted, 4 received, 0% packet loss, time 2998ms<br />

rtt min/avg/max/mdev = 0.309/0.326/0.361/0.020 ms<br />

$ ss ‐r<br />

State Recv‐Q Send‐Q Local Address:Port Peer Address:Port<br />

ESTAB 0 0 192.168.1.105:57633 hydra.ntm‐gmbh.de:ssh<br />

ESTAB 0 0 192.168.1.105:50981 grape.canonical.com:https<br />

ESTAB 0 8 192.168.1.105:40217 defendo.local:24800<br />

‐n die Namensauflösung deaktivieren.<br />

Traceroute dagegen kennt<br />

r<strong>und</strong> ein Dutzend Parameter von<br />

Time-to-live-Werten über Maximum<br />

Hops bis hin zum Typ der<br />

Schnittstelle. Erachten Sie den<br />

Verlauf der Pakete als ineffizient<br />

oder unerwartet, erfahren Sie<br />

über route oder ip route, welche<br />

Routen konfiguriert sind. Beachten<br />

Sie, dass Sie nur diejenige<br />

Route sehen, die in der lokalen<br />

Maschine konfiguriert ist; möglicherweise<br />

liegt das Problem jedoch<br />

an anderer Stelle.<br />

Es kommt vor, dass ein bestimmter<br />

Router explizit so konfiguriert<br />

ist, keine Angaben auszugeben.<br />

Von Tracepath erhalten<br />

Sie in diesem Fall keine Ausgabe.<br />

Das bedeutet aber nicht, dass mit<br />

dem Ziel keine Verbindung möglich<br />

wäre (was Sie wiederum mit<br />

Ping prüfen). Es bedeutet lediglich,<br />

dass der dazwischen liegende<br />

Router die Anfrage von Tracepath<br />

(oder Traceroute) einfach nicht<br />

beantwortet. Weitere Tools für<br />

die Fehlerbehebung stehen Ihnen<br />

mit dem Befehl netstat zur Verfügung.<br />

Er gibt Informationen über<br />

Verbindungen<br />

sowie<br />

Routing-Tabellen<br />

<strong>und</strong><br />

umfangreiche<br />

Statistiken<br />

für<br />

Schnittstellen<br />

aus. Hier<br />

zu erwähnen<br />

ist noch das<br />

neuere Tool<br />

ss, das zwar<br />

Teil des iproute-Paketes<br />

ist <strong>und</strong> sich<br />

auf Sockets<br />

<strong>und</strong> Verbindungen<br />

konzentriert<br />

(Listing 5).<br />

Weitere Informationen<br />

entnehmen<br />

Sie der Manpage<br />

von ss.<br />

$ arp 192.168.1.111<br />

Adresse Hardware‐Typ Hardware‐Adresse Optionen Maske Schnittstelle<br />

192.168.1.111 ether 00:30:05:0c:0b:23 C eth0<br />

$ ip neigh show 192.168.1.1<br />

192.168.1.111 dev eth0 lladdr 00:30:05:0c:0b:23 REACHABLE<br />

Listing 5<br />

Letzter Schliff<br />

Um zu prüfen, ob Sie einen entfernten<br />

Rechner erreichen, bietet<br />

der Befehl ping immer die einfachste<br />

Lösung. Funktioniert ein<br />

Ping, können Sie davon ausgehen,<br />

dass das Netzwerk richtig<br />

konfiguriert ist (oder zumindest<br />

gut genug, damit Pakete an ihrem<br />

Bestimmungsort ankommen).<br />

Um sicherzugehen, dass wirklich<br />

alles passt, überprüfen Sie,<br />

ob Sie den entfernten Rechner sowohl<br />

über den Hostnamen als<br />

auch über die IP-Adresse erreichen.<br />

Erreichen Sie die Maschine<br />

lediglich über die Adresse, jedoch<br />

nicht mit dem Hostnamen, dann<br />

liegt das Problem höchstwahrscheinlich<br />

beim DNS. Dasselbe<br />

gilt für den umgekehrten Fall:<br />

Der Eintrag für den Host verweist<br />

dann auf eine falsche IP-Adresse.<br />

Können Sie weder mit dem<br />

Hostnamen noch mit der IP-Adresse<br />

eine Verbindung zum entfernten<br />

Rechner herstellen, fangen<br />

Sie am besten beim lokalen<br />

Rechner an <strong>und</strong> arbeiten sich<br />

dann Schritt für Schritt weiter<br />

nach außen vor. Die erste Frage<br />

lautet, ob TCP/ IP auf dem lokalen<br />

System richtig konfiguriert ist.<br />

Das prüfen Sie mit ip addr.<br />

Senden Sie dann einen Ping an<br />

den Router, um sicherzustellen,<br />

dass Sie mit ihm verb<strong>und</strong>en sind.<br />

Klappt das, dann versuchen Sie<br />

Ping mit einer Adresse jenseits<br />

des Routers, um zu testen, ob dieser<br />

die Pakete auch weiterleitet.<br />

Haben Sie damit das Problem<br />

noch immer nicht entdeckt, geben<br />

Traceroute oder Tracepath mehr<br />

Auskunft darüber, wo genau die<br />

Pakete verlorengehen. (agr/ jlu) n<br />

info<br />

[1] Netzwerkprotokolle: Achim Leitner,<br />

„Netz-Geheimnisse“, LU 11/ 2005, S. 40,<br />

http:// www. linux-community. de/ 9483<br />

[2] TCP/ IP-Basics: Kristian Kißling, „Pfade<br />

durch den Dschungel“, LU 12/ 2006, S. 34,<br />

http:// www. linux-community. de/ 11811<br />

[3] Classless Inter-Domain Routing:<br />

http:// de. wikipedia. org/ wiki/<br />

Classless_ Inter-Domain_Routing<br />

40 10 | 11<br />

www.linux-user.de


www.android–user.de


schwerpunkt<br />

Dateisysteme pflegen<br />

Dateisysteme aufsetzen, konfigurieren <strong>und</strong> warten mit Bordmitteln<br />

Festes F<strong>und</strong>ament<br />

© Greyman, sxc.hu<br />

Mit ein paar<br />

einfachen Shell-<br />

Befehlen legen<br />

Sie die Gr<strong>und</strong>lage<br />

für jede moderne<br />

Linux-Distribution:<br />

das Dateisystem.<br />

Nathan Willis<br />

reADMe<br />

Obwohl die meisten<br />

Linux-Distributionen<br />

heutzutage über benutzerfre<strong>und</strong>liche<br />

grafische<br />

Oberflächen verfügen,<br />

um Dateisysteme aufzusetzen<br />

<strong>und</strong> zu verwalten,<br />

ist es durchaus<br />

sinnvoll zu wissen, wie<br />

Sie diese Aufgaben per<br />

Befehlszeile erledigen.<br />

Linux unterstützt ein breites<br />

Spektrum an Dateisystemen, darunter<br />

viele aus dem Umfeld anderer<br />

Betriebssysteme. Für Festplatten<br />

kommen jedoch nach wie<br />

vor am ehesten die nativen Linux­<br />

Dateisysteme Ext2, Ext3 <strong>und</strong><br />

Ext4 (den Nachfolgern von Ext2)<br />

sowie XFS infrage. Aus Kompatibilitätsgründen<br />

ist es darüber hinaus<br />

wichtig, das VFAT­Dateisystem<br />

zu lesen <strong>und</strong> auf diesem Daten<br />

zu schreiben, da es standardmäßig<br />

auf vielen Medien zum<br />

Einsatz kommt, darunter USB­<br />

Sticks <strong>und</strong> Flash­Laufwerke. Darüber<br />

hinaus dienen einige Tools,<br />

die beim Verwalten von normalen<br />

Dateisystemen helfen, auch zum<br />

Verwalten von Swap­Partitionen.<br />

Solche Swap­Partitionen setzt der<br />

Linux­Kernel als virtuellen Speicher<br />

ein, wenn nicht genug Arbeitsspeicher<br />

bereitsteht.<br />

Dateisysteme anlegen<br />

Mit dem Befehl mkfs (Abbildung<br />

A) richten Sie ein neues<br />

Dateisystem auf einem ausgewählten<br />

Block­Gerät ein, beispielsweise<br />

in einer Partition auf<br />

der Festplatte. Die gr<strong>und</strong>sätzliche<br />

Aufrufform lautet:<br />

# mkfs ‐t Typ Gerät<br />

Dabei bezeichnet Typ eines der<br />

von Linux unterstützten Dateisysteme,<br />

wie zum Beispiel Ext2<br />

oder XFS, <strong>und</strong> Gerät legt die Partition<br />

auf der Festplatte fest, wie<br />

zum Beispiel /dev/hda1 oder auch<br />

/ dev/sdc3. Darüber hinaus dürfen<br />

Sie neben dem Dateisystemtyp<br />

weitere Parameter angeben, die<br />

allerdings je nach Dateisystem<br />

unterschiedlich ausfallen.<br />

Das Programm mkfs überlässt<br />

das eigentliche Erstellen des<br />

Dateisystems einem von mehreren<br />

Spezialwerkzeugen, wie etwa<br />

mkfs.ext2, mkfs.xfs oder mkfs.vfat.<br />

Da sich Dateisysteme stark voneinander<br />

unterscheiden, pflegen<br />

die Experten des jeweiligen Systems<br />

die Tools selbst. Das trägt<br />

dazu bei, dass deren Programmcode<br />

äußerst stabil läuft.<br />

Die meisten der Programme nutzen<br />

dieselben Optionen, obwohl<br />

es in Einzelfällen Unterschiede<br />

gibt – abhängig von den Funktionen,<br />

die das jeweilige Dateisystem<br />

kennt. Es empfiehlt sich daher,<br />

stets den Befehl mkfs zu nutzen,<br />

um ein Dateisystem zu erstellen,<br />

selbst wenn dieser andere spezifische<br />

Helfer aufruft.<br />

Trotz der Unterschiede gibt es<br />

ein paar Standardoptionen, die<br />

allen Hilfsprogrammen gemeinsam<br />

sind. Benutzen Sie den Parameter<br />

‐c, so prüft das Programm<br />

das angegebene Gerät auf defekte<br />

Blöcke, die es dann während des<br />

eigentlichen Erstellens überspringt.<br />

Die Parameter ‐v <strong>und</strong> ‐V<br />

bewirken die Ausgabe von ausführlichen<br />

beziehungsweise sehr<br />

ausführlichen Meldungen.<br />

Beispiele<br />

Mit folgender Zeile formatieren<br />

Sie die erste Partition des ersten<br />

SATA­Laufwerks mit Ext3:<br />

# mkfs ‐t ext3 /dev/sda1<br />

42 10 | 11<br />

www.linux-user.de


Dateisysteme pflegen<br />

schwerpunkt<br />

In diesem Beispiel kommen die<br />

Standardeinstellungen für Blockgröße,<br />

Inode­Parameter sowie alle<br />

anderen Optionen zum Einsatz –<br />

wobei das Programm einige davon<br />

tatsächlich erst während der<br />

Laufzeit ermittelt, während mkfs<br />

die Geometrie der Festplatten­<br />

Partition analysiert. Der folgende<br />

Befehl erzeugt ebenfalls ein Ext3­<br />

Dateisystem auf /dev/sda1, erzwingt<br />

aber eine Blockgröße von<br />

4096 Byte:<br />

A Unterschiede zwischen<br />

dem simulierten<br />

Erzeugen von XFS- <strong>und</strong><br />

Ext3-Dateisystemen.<br />

Die Optionen ‐f <strong>und</strong> ‐F<br />

sorgen dafür, dass<br />

mkfs das Dateisystem<br />

selbst dann erstellt,<br />

wenn bereits ein Dateisystem<br />

vorhanden ist.<br />

# mkfs ‐t ext3 ‐b 4096 /dev/sda1<br />

Ein weiterer Befehl erzeugt dasselbe<br />

Dateisystem wie die vorherige<br />

Befehlszeile, legt aber zusätzlich<br />

eine Journal­Datei auf einer<br />

separaten Partition an (/dev/sdb1).<br />

# mkfs ‐t ext3 ‐b 4096 ‐J deviceU<br />

=/dev/sdb1 /dev/sda1<br />

Dagegen legen Sie mit folgendem<br />

Befehl eine XFS­Partition auf der<br />

ersten Partition /dev/sda1 an:<br />

# mkfs ‐t xfs /dev/sda1<br />

Folgende Eingabe ist erforderlich,<br />

um für dieses Dateisystem eine<br />

Blockgröße von 4096 Byte einzustellen:<br />

# mkfs ‐t xfs ‐b size=4096 /dev/U<br />

sda1<br />

Die Syntax unterscheidet sich von<br />

der bei Ext3. Daher sollten Sie<br />

sich mithilfe der Dokumentation<br />

genau darüber informieren, was<br />

die Dateisystem­spezifischen Parameter<br />

bei mkfs bewirken.<br />

Wartung<br />

Obwohl die Speicherkapazität der<br />

Festplatten jedes Jahr zunimmt,<br />

scheint es, als füllten sich die<br />

OptiOnen<br />

Sämtliche Tools für Ext-Dateisysteme sowie XFS unterstützen<br />

Optionen, mit denen Sie die Einstellungen für das Dateisystem<br />

anpassen, darunter die Blockgröße, die Anzahl<br />

<strong>und</strong> Größe der Inodes, die Größe der Fragmente oder den<br />

Speicherplatz, der für Prozesse reserviert bleibt, die der Administrator<br />

ausführt. Darüber hinaus gibt es Optionen, um<br />

die Deskriptortabelle für Blockgruppen zu vergrößern, falls<br />

sich die Dateisystemgröße einmal verändert, sowie zum Anpassen<br />

der Einstellungen für Stripe, Stride <strong>und</strong> andere Informationen,<br />

die Sie benötigen, wenn Sie das Dateisystem<br />

in einen RAID-Verb<strong>und</strong> einbinden.<br />

Erfreulicherweise existieren Standardeinstellungen für all<br />

diese Parameter, die Sie auch nutzen sollten, falls es nicht<br />

gute Gründe gibt, davon abzuweichen. Nichtsdestoweniger<br />

sollten Sie sich für den Fall, dass es irgendwann einmal bei<br />

Ihrer Arbeit mit Dateisystemen zu Problemen kommt, mit<br />

den Gr<strong>und</strong>lagen der Optionen vertraut machen.<br />

Über Blockgröße geben Sie die Größe der Chunks an, die<br />

ein Dateisystem benutzt, um Daten zu speichern – gewissermaßen<br />

die Granularität der Teile, in die es eine Datei<br />

aufspaltet, wenn Sie diese auf ein Medium speichern.<br />

Ext-Dateisysteme verstehen sich auf Blöcke in den Größen<br />

1024, 2048 oder 4096 Byte. Größere Blöcke erhöhen einerseits<br />

den Durchsatz, da die Platte pro Zeiteinheit mehr<br />

Daten liest <strong>und</strong> schreibt, bevor der Treiber eine neue Position<br />

ansteuert. Andererseits verschwenden Sie auf diese<br />

Weise viel Platz auf dem Datenträger, wenn Sie eine Vielzahl<br />

kleiner Dateien speichern, da jedes Fragment einer<br />

Datei trotzdem immer einen kompletten Block verbraucht,<br />

selbst wenn die Daten nur einen kleinen Teil davon belegen.<br />

Für alle vier Linux-Dateisysteme stellen Sie die Blockgröße<br />

mittels des Parameters ‐b ein. Die nach dem Parameter<br />

erforderliche Syntax weist jedoch Unterschiede auf,<br />

weswegen Sie die Einzelheiten in der Manpage für die jeweilige<br />

Option nachlesen sollten.<br />

Ext3, Ext4 <strong>und</strong> XFS unterstützen Journaling, mit dem sie<br />

Fehlern bei Abstürzen vorbeugen. Das geschieht mittels<br />

eines Änderungsberichtes bezüglich der Dateien <strong>und</strong> Verzeichnisse,<br />

des sogenannten Journals. Die Größe dieses<br />

Journals geben Sie entweder in Blöcken oder Bytes an. Außerdem<br />

legen Sie fest, ob das Journal auf demselben Gerät<br />

liegen soll oder Sie es getrennt speichern möchten. Die genaue<br />

Syntax unterscheidet sich je nach Dateisystem. Beachten<br />

Sie daher die Dokumentation.<br />

VFAT-Dateisysteme unterscheiden sich in vielerlei Hinsicht<br />

von den nativen Dateisystemen, die bei Linux <strong>und</strong> Unix-ähnlichen<br />

Betriebssystemen zum Einsatz kommen. Da FAT sehr<br />

viel einfacher gestrickt ist, müssen Sie sich um Inodes,<br />

Fragmentgrößen oder RAID-Einstellungen hier keine Gedanken<br />

machen. Sie haben die Möglichkeit, die Anzahl der reservierten<br />

Sektoren, Sektoren pro Cluster <strong>und</strong> die Sektorengröße<br />

einzustellen – Parameter, die den Blockeinstellungen<br />

der nativen Dateisysteme unter Unix ähneln. In beinahe allen<br />

Fällen sind die Standardeinstellungen ausreichend.<br />

Der Befehl mkswap erzeugt einen Swap-Bereich auf einer<br />

Partition – analog zu mkfs, der ein Dateisystem erstellt. Die<br />

Syntax gleicht sich ebenfalls: Sie lautet mkswap Gerät, wobei<br />

der optionale Parameter ‐c bewirkt, dass das Programm<br />

die Partition auf defekte Blöcke hin überprüft, bevor es den<br />

entsprechenden Bereich einrichtet. Genauso wie Sie ein<br />

neues Dateisystem mithilfe des Befehls mount in den Verzeichnisbaum<br />

einhängen, bevor es zum Einsatz bereitsteht,<br />

gilt es, eine neue Swap-Partition mit dem Befehl swapon ‐L<br />

Gerät zu aktivieren.<br />

www.linux-user.de<br />

10 | 11 43


schwerpunkt<br />

Dateisysteme pflegen<br />

B Df stellt den Speicherplatzverbrauch<br />

im<br />

laufenden Betrieb dar.<br />

Mit dem Parameter ‐a<br />

zeigt es zusätzlich virtuelle<br />

Dateisysteme<br />

wie /proc an.<br />

Platten noch schneller, als man<br />

sie nachkaufen kann. Wahrscheinlich<br />

kommt dieses Problem auch<br />

von Zeit zu Zeit auf Sie zu. Zu wenig<br />

Speicherplatz auf der Platte<br />

ist aus verschiedenen Gründen<br />

unangenehm: Beispielsweise erstellt<br />

das Betriebssystem eine<br />

ganze Reihe temporärer Dateien,<br />

was in einigen Fällen dazu führt,<br />

dass ein Root­Dateisystem auf einer<br />

vollen oder fast vollen Partition<br />

die Performance des Rechners<br />

erheblich beeinträchtigt.<br />

Platz prüfen<br />

Bei Bedarf prüfen Sie den Speicherplatz<br />

mit dem Befehl df<br />

(„disk free“). Falls Sie keine Parameter<br />

setzen, gibt Df eine Tabelle<br />

zurück, in der das Programm den<br />

Speicherplatzverbrauch aller eingeb<strong>und</strong>enen<br />

Dateisysteme darstellt,<br />

<strong>und</strong> zwar in KByte sowie<br />

als Prozentsatz der Gesamtgröße<br />

jedes Dateisystems. Geben Sie<br />

den Parameter ‐a an, bezieht Df<br />

virtuelle Dateisysteme wie zum<br />

Beispiel /proc mit in die Auswertung<br />

ein (Abbildung B).<br />

Einen Bericht für eine bestimmte<br />

Partition erhalten Sie, indem<br />

Sie diese als Argument verwenden,<br />

wie df /dev/sda1. Übergeben<br />

Sie einen Dateinamen als Argument,<br />

so analysiert Df diejenige<br />

Partition, welche die angegebene<br />

Datei enthält. Außerdem kennt<br />

das Programm Df einige weitere<br />

nützliche Parameter:<br />

• Mit ‐i listet es die Anzahl der<br />

belegten Inodes auf, statt jene<br />

der Blocks.<br />

• Mit ‐l beschränken Sie den Bericht<br />

auf lokale Dateisysteme.<br />

• Die Optionen ‐‐type=Typ <strong>und</strong><br />

‐‐exclude‐type=Typ ermöglichen<br />

es, die Ausgabe auf einen bestimmten<br />

Dateisystem­Typ zu<br />

beschränken beziehungsweise<br />

einen solchen bei der Anzeige<br />

auszuschließen.<br />

• Der Parameter ‐h liefert die Ergebnisse<br />

„human­readable“ als<br />

für Menschen leichter erfassbarer<br />

in KByte, MByte, GByte<br />

oder TByte.<br />

Stellen Sie fest, dass auf einer<br />

Partition nur noch wenig freier<br />

Speicher verbleibt, bietet sich als<br />

Erstes eine Analyse des Platzverbrauchs<br />

mittels du an. Der Aufruf<br />

du /Verzeichnis liefert eine Liste<br />

des Ordners samt aller seiner Unterverzeichnisse<br />

inklusive des jeweiligen<br />

Speicherplatzverbrauchs<br />

in KByte. Fügen Sie den Parameter<br />

‐a hinzu, listet Du zusätzlich<br />

zu den Verzeichnissen noch den<br />

Speicherplatz auf, den die Dateien<br />

verbrauchen, beides rekursiv.<br />

Geben Sie Du kein Verzeichnis als<br />

Argument mit, verwendet es das<br />

aktuelle Verzeichnis als Ausgangspunkt.<br />

Die Option ‐c gibt<br />

zusätzlich zu den Statistiken der<br />

Dateien <strong>und</strong> Verzeichnissen noch<br />

eine Gesamtsumme an.<br />

Andere Optionen dienen dazu,<br />

verirrte große Dateien ausfindig<br />

zu machen, wie zum Beispiel ‐L,<br />

das allen symbolischen Links<br />

folgt, oder ‐x, mit dessen Hilfe Sie<br />

die Suche auf das aktuelle Dateisystem<br />

einschränken. Über<br />

‐‐max‐depth=N begrenzen Sie die<br />

Anzahl der Rekursionen, mit denen<br />

das Programm in Unterverzeichnisse<br />

abtaucht – eine äußerst<br />

hilfreiche Option, wenn Sie<br />

es mit einer umfangreichen<br />

Dateisammlung zu tun haben.<br />

Wie bei Df liefert auch bei Du der<br />

Parameter ‐h die Ergebnisse als<br />

KByte, MByte, GByte oder TByte.<br />

Tuning<br />

Es gibt einige Tools, die die Möglichkeit<br />

bieten, die Leistung von<br />

Dateisystemen zu verbessern. So<br />

verändern Sie beispielsweise mit<br />

dem Programm tune2fs viele Einstellungen<br />

von Ext­Dateisystemen.<br />

Mit tune2fs ‐c N legen Sie<br />

beispielsweise die Anzahl der<br />

Mounts zwischen automatischen<br />

Integritätsüberprüfungen fest.<br />

Den maximalen zeitlichen Abstand<br />

zwischen Überprüfungen<br />

bestimmen Sie mit tune2fs ‐i<br />

Zeitraum. Dabei bezeichnen die<br />

Buchstaben d, m <strong>und</strong> w jeweils<br />

Tage, Monate <strong>und</strong> Wochen. Bei<br />

Bedarf fügen Sie mit dem Befehl<br />

tune2fs ‐j einem Ext3­Dateisystem<br />

ein Journal hinzu. Bei Bedarf<br />

passen Sie zudem die RAID­Parameter,<br />

Journal­Einstellungen <strong>und</strong><br />

das Verhalten in Bezug auf die reservierten<br />

Blöcke an.<br />

Sämtliche Tools zum Modifizieren<br />

der Größe von Dateisystemen<br />

beherrschen sowohl das Vergrößern<br />

als auch Verkleinern. Das<br />

Vergrößern eines Dateisystems<br />

setzt allerdings verständlicherweise<br />

voraus, dass auf der darunterliegenden<br />

Festplattenpartition<br />

genügend Platz frei ist.<br />

44 10 | 11<br />

www.linux-user.de


Dateisysteme pflegen<br />

schwerpunkt<br />

Das Dateisystem XFS bringt eine<br />

eigene Palette an Tools mit, die<br />

viele der bereits genannten Optionen<br />

ebenfalls abdecken. Über<br />

xfs_growfs bearbeiten Sie beispielsweise<br />

die Größe. Darüber<br />

hinaus gibt es weitere Aktionen,<br />

die die Software beherrscht: Verwenden<br />

Sie die Option ‐m, modifizieren<br />

Sie mithilfe des Befehls<br />

xfs_growfs den Wert des Speicherplatzes,<br />

den das System für<br />

Inodes reserviert. Die Optionen<br />

‐l <strong>und</strong> ‐L ermöglichen es, Änderungen<br />

am Journal vorzunehmen<br />

– beide Funktionen sind auch in<br />

den anderen Tools der anderen<br />

Dateisysteme enthalten. XFS<br />

stellt darüber hinaus ein Tool<br />

zum Defragmentieren namens<br />

xfs_fsr bereit – so etwas existiert<br />

für Ext­Dateisysteme nicht.<br />

Darüber hinaus legen Sie bei Bedarf<br />

Sicherheitskopien <strong>und</strong> Dateisystem­Snapshots<br />

unter XFS an.<br />

Das Tool xfs_freeze friert das<br />

Dateisystem ein: Kein Programm<br />

darf Dateien lesen oder schreiben.<br />

xfsdump erstellt eine Sicherheitskopie<br />

eines Dateisystems (in<br />

Inode­Abfolge, was den Einsatz<br />

bei einem gemounteten Dateisystem<br />

ermöglicht). Mit xfsrestore<br />

spielen Sie eine vorher angefertigte<br />

Sicherheitskopie ein.<br />

Fehlersuche<br />

Linux überprüft jedes Dateisystem<br />

in regelmäßigen Abständen<br />

<strong>und</strong> beim Systemstart. Dabei<br />

sucht ein Testprogramm nach<br />

Unregelmäßigkeiten – zum Beispiel<br />

Inodes, die zu keiner Datei<br />

gehören, Abweichungen zwischen<br />

der Zahl der Inode­Referenzen<br />

<strong>und</strong> dem Inode­Referenzzähler<br />

oder Unterschieden zwischen der<br />

Zahl der verfügbaren Blöcke in einem<br />

Dateisystem <strong>und</strong> der erwarteten<br />

Anzahl, die im Superblock<br />

gespeichert ist.<br />

Findet das Betriebssystem Diskrepanzen,<br />

interpretiert es dies<br />

als einen Hinweis darauf, dass ein<br />

Systemabsturz oder ein anderes<br />

Problem vorliegt. Das Tool, das<br />

die Prüfungen vornimmt, heißt<br />

fsck. Wenn Sie vermuten,<br />

dass etwas im<br />

Dateisystem nicht in<br />

Ordnung sein könnte,<br />

nutzen Sie folgenden<br />

Befehl, um die Prüfung<br />

manuell anzustoßen<br />

<strong>und</strong> alle nötigen Reparaturen<br />

zu erledigen:<br />

# fsck Gerät<br />

Geben Sie fsck ein, <strong>ohne</strong><br />

ein Ziel zu präzisieren,<br />

prüft das Programm alle<br />

Dateisysteme in /etc/<br />

fstab in der angegebenen<br />

Reihenfolge.<br />

Die dateisystemspezifischen<br />

Programme zum Überprüfen<br />

auf Fehler – e2fsck bei Ext­<br />

Dateisystemen <strong>und</strong> fsck.vfat bei<br />

VFAT (Abbildung C) – unterstützen<br />

größtenteils dieselben Parameter,<br />

die Syntax weicht jedoch<br />

im Detail ab. Es ist daher wichtig,<br />

die Hinweise in der Dokumentation<br />

der Programme zu beachten.<br />

Bei VFAT­Dateisystemen äußern<br />

sich Fehler in Form von anderen<br />

Symptomen – defekte Cluster<br />

<strong>und</strong> Verzeichniszeiger oder<br />

sogar defekte Dateinamen. Das<br />

Tool fsck.vfat entdeckt viele dieser<br />

Probleme <strong>und</strong> kann einige davon<br />

beseitigen. Wie die anderen<br />

Tools verfügt auch dieses Programm<br />

über einen nicht interaktiven<br />

Betriebsmodus, der den<br />

Einsatz in einem Skript ermöglicht.<br />

So kennzeichnen Sie bei Bedarf<br />

automatisch defekte Cluster,<br />

damit diese in Zukunft nicht<br />

mehr zum Einsatz kommen. Der<br />

Parameter ‐V bewirkt, dass fsck.<br />

vfat einen zweiten Prüflauf startet,<br />

nachdem das Tool versucht<br />

hat, Fehler zu beheben.<br />

XFS verfügt über getrennte<br />

Werkzeuge zum Prüfen <strong>und</strong> zur<br />

Reparatur: xfs_check <strong>und</strong> xfs_repair.<br />

Wie bei den anderen Dateisystemen<br />

mit Journaling­Funktion<br />

gibt es eine Option, mit deren<br />

Hilfe Sie auch in diesem Fall das<br />

Journal auf einer anderen Partition<br />

abspeichern.<br />

Zwei hilfreiche Funktionen, die<br />

nur bei XFS existieren, erreichen<br />

Sie über die Parameter ‐f sowie<br />

‐s: Ersterer ermöglicht das Überprüfen<br />

eines Dateisystem­Images,<br />

das als normale Datei vorliegt,<br />

wie zum Beispiel eine Sicherheitskopie<br />

eines Dateisystems, die Sie<br />

mit xfsdump angelegt haben. Die<br />

Option ‐s bewirkt, dass das Programm<br />

nur schwerwiegende Fehler<br />

meldet. Das Tool xfs_repair<br />

schafft es in den meisten Fällen,<br />

Datenfehler zu korrigieren, wie<br />

sie auch e2fsck behebt.<br />

Expertenmodus<br />

Wollen Sie ein fehlerhaftes Dateisystem<br />

mit flexibleren Mitteln<br />

untersuchen, greifen Sie auf andere<br />

Programme zurück. Bei<br />

Prob lemen mit Ext2/ 3/ 4 gestattet<br />

es das Tool debugfs, das Dateisystem<br />

interaktiv zu untersuchen<br />

<strong>und</strong> Fehler zu beheben. Dabei haben<br />

Sie die Möglichkeit, Schritt<br />

für Schritt vorzugehen.<br />

Dabei stehen ähnliche Befehle<br />

wie in einer Linux­Shell bereit,<br />

zum Beispiel cd, open, close, pwd,<br />

mkdir <strong>und</strong> sogar chroot. Seine wirkliche<br />

Stärke zeigt das Tool, wenn<br />

es darum geht, Superblöcke, Blöcke<br />

<strong>und</strong> Inodes direkt zu untersuchen,<br />

Zuordnungen herzustellen<br />

<strong>und</strong> wieder aufzuheben, Blöcke<br />

freizugeben <strong>und</strong> sogar Referenzen<br />

zu erstellen. (agr) n<br />

C Die Ausgabe von<br />

fsck unter Einsatz der<br />

Standardoptionen bei<br />

einem VFAT-Dateisystem.<br />

Die Option ‐v bewirkt<br />

die Ausgabe ausführlicher<br />

Meldungen.<br />

www.linux-user.de<br />

10 | 11 45


schwerpunkt<br />

Benutzer <strong>und</strong> Gruppen<br />

Benutzer <strong>und</strong> Gruppen auf der<br />

Befehlszeile verwalten<br />

Zentrales<br />

Register<br />

© Pawel Szpytma, 123RF<br />

Lernen Sie<br />

Dateien <strong>und</strong><br />

Befehle kennen,<br />

mit deren Hilfe Sie<br />

Benutzer- <strong>und</strong><br />

Gruppen-Konten<br />

hinzufügen, verändern<br />

<strong>und</strong> entfernen.<br />

Matt Simmons, Joe<br />

„Zonker“ Brockmeier<br />

reADMe<br />

Hinzufügen, Bearbeiten<br />

<strong>und</strong> Entfernen von Benutzern<br />

<strong>und</strong> Benutzergruppen:<br />

All diese Aufgaben<br />

gehen schnell<br />

<strong>und</strong> elegant von der<br />

Hand, wenn Sie die richtigen<br />

Tools kennen <strong>und</strong><br />

gekonnt einsetzen.<br />

In der IT-Steinzeit, als ein Computer<br />

noch etliche Quadratmeter<br />

in Anspruch nahm, kam es so gut<br />

wie nie vor, dass mehrere Personen<br />

denselben Rechner gleichzeitig<br />

nutzten. Mit zunehmender<br />

Leistung gewann das Konzept des<br />

„Time Sharing“ an Bedeutung:<br />

Die Anwender gaben ihre Programme<br />

(„Jobs“) ein <strong>und</strong> starteten<br />

diese. Dann erhielten sie die<br />

Ergebnisse des Jobs <strong>und</strong> starteten<br />

danach den nächsten Auftrag<br />

– eine mühselige Angelegenheit.<br />

Parallel arbeiten<br />

In den 70er-Jahren löste Multitasking<br />

das Time-Sharing-Konzept<br />

ab: Nun konnten mehrere<br />

Programme zur gleichen Zeit aktiv<br />

sein. Dies führte zum Konzept<br />

des Benutzerkontos: Das System<br />

bot die Möglichkeit, dass sich<br />

eine große Anzahl Anwender<br />

parallel anmelden durfte, wobei<br />

alle Zugriff auf eine individuelle<br />

Arbeitsumgebung erhielten.<br />

Linux <strong>und</strong> andere Unix-basierte<br />

Systeme nutzen das Konzept des<br />

Benutzerkontos, um Identitäten<br />

zu verwalten. Außerdem begrenzen<br />

sie auf diese Weise den Zugriff<br />

auf Ressourcen, die mit dem<br />

betreffenden Account oder mit<br />

den Gruppen, zu denen er gehört,<br />

verknüpft sind.<br />

Zu den Charakteristika des Benutzerkontos<br />

zählt die Eingabeaufforderung<br />

beim Anmelden.<br />

Der Systemadministrator hat unter<br />

Linux zudem die Möglichkeit,<br />

den Zugang zu den Ressourcen<br />

per Gruppen-Mitgliedschaft zu<br />

verwalten. Eine Gruppe fasst<br />

mehrere Benutzer zusammen, üblicherweise<br />

mit einer gemeinsamen<br />

Aufgabe <strong>und</strong> daher mit einem<br />

ähnlichen Bedürfnis nach<br />

Zugang zu einer gemeinschaftlich<br />

genutzten Ressource.<br />

Eine Gruppe namens Buchhaltung<br />

enthält beispielsweise alle<br />

Nutzer, die der gleichnamigen<br />

Abteilung angehören <strong>und</strong> daher<br />

dieselben Zugriffsrechte auf Tabellen<br />

<strong>und</strong> andere Daten mit Finanzinformationen<br />

benötigen.<br />

Statt jedem einzelnen Nutzer Zugriffsrechte<br />

für jede einzelne Datei<br />

zuzuweisen, räumt der Administrator<br />

diese Möglichkeit der<br />

Gruppe Buchhaltung ein <strong>und</strong> ordnet<br />

dann die jeweiligen Nutzer<br />

dieser Gruppe zu.<br />

Diese Vorgehensweise bietet<br />

sich auch für Peripheriegeräte<br />

(Drucker, Scanner) oder Dienste<br />

eines Rechners an. Damit Benutzer<br />

beispielsweise auf das optische<br />

Laufwerk (CD/ DVD) am PC<br />

zugreifen können, müssen sie<br />

Mitglied der Gruppe cdrom sein<br />

(zumindest bei Debian <strong>und</strong> dessen<br />

Abkömmlingen), <strong>und</strong> der Zugriff<br />

auf Userspace-Dateisysteme<br />

(Fuse) setzt die Mitgliedschaft in<br />

der Gruppe fuse voraus. Viele Distributionen<br />

gestatten nur solchen<br />

Benutzern den Zugriff auf den<br />

Befehl sudo, die zu den Gruppen<br />

admin oder wheel gehören.<br />

UID <strong>und</strong> GID<br />

Für jedes Benutzerkonto legt das<br />

System je eine Zeile in den beiden<br />

Dateien /etc/passwd <strong>und</strong> /etc/shadow<br />

an. Auf diese Weise weist es<br />

jedem Benutzer eine eindeutige<br />

Kennung zu, die Benutzer-ID<br />

(UID). In ähnlicher Weise legt es<br />

46 10 | 11<br />

www.linux-user.de


Benutzer <strong>und</strong> Gruppen<br />

schwerpunkt<br />

für jede Gruppe eine Zeile in der<br />

Datei /etc/group an <strong>und</strong> weist ihr<br />

eine Gruppenkennung zu (GID).<br />

Als UIDs <strong>und</strong> GIDs sind Ganzzahlen<br />

von 0 bis 232-1 zulässig.<br />

Als allgemeiner Usus gilt allerdings<br />

der Höchstwert 65535, was<br />

216-1 entspricht. UIDs zwischen 0<br />

<strong>und</strong> 999 reservieren die Distributoren<br />

im Allgemeinen für Systemdienste.<br />

Dem Superuser-Konto,<br />

root genannt, sollten Sie immer<br />

die UID 0 zuweisen. Weiter sollte<br />

er Mitglied einer Gruppe namens<br />

root sein, der Sie den GID-Wert 0<br />

zuordnen. Das erfüllt bestimmte<br />

Annahmen seitens des Systems,<br />

zum Beispiel in Skripten. Die IDs<br />

der normalen Benutzer fangen<br />

bei den meisten Linux-Distributionen<br />

mit der UID 1000 an.<br />

Kommentare<br />

Jeder Benutzer darf die Datei /<br />

etc/passwd öffnen <strong>und</strong> lesen. Dass<br />

Benutzer Einsicht in eine Datei<br />

mit Passwörtern haben – selbst,<br />

wenn diese verschlüsselt sind –<br />

stellt allerdings ein Sicherheitsrisiko<br />

dar. Daher befinden sich die<br />

Passwörter auf modernen Systemen<br />

in der Datei /etc/shadow, die<br />

nur der Superuser einsehen darf.<br />

Doppelpunkte gliedern jede Zeile<br />

in /etc/passwd in Abschnitte<br />

(Abbildung A), wobei das erste<br />

Feld den Benutzernamen enthält,<br />

der den Inhaber gegenüber dem<br />

System identifiziert. Das zweite<br />

Feld zeigt an, ob ein Benutzer<br />

sich am System überhaupt anmelden<br />

darf. Der Eintrag x erlaubt<br />

dies, ein Asterisk (*) verwehrt dagegen<br />

das Anmelden.<br />

Das dritte <strong>und</strong> vierte Feld enthalten<br />

jeweils die UID des Users<br />

beziehungsweise die GID der<br />

Gruppe, zu der er gehört. Das<br />

fünfte Feld heißt GECOS-Feld –<br />

die Abkürzung steht für „General<br />

Electric Comprehensive Operating<br />

System“. Früher standen in<br />

diesem Feld Sicherheitskennungen,<br />

heute speichern die Distributionen<br />

an dieser Stelle zusätzliche<br />

Informationen über den Benutzer,<br />

getrennt durch Kommata.<br />

Obwohl das Feld meist nur den<br />

Namen des Benutzers enthält,<br />

lautet das vollständige Format:<br />

Voller Name, Gebäude/Raumnummer,<br />

Telefon dienstlich, weitere<br />

Telefonnummer<br />

Das sechste Feld der Datei legt<br />

das Home-Verzeichnis des Benutzers<br />

fest. Existiert das genannte<br />

Verzeichnis nicht, verwendet das<br />

System beim Einloggen des Benutzers<br />

das Wurzelverzeichnis /<br />

als aktuelles Verzeichnis.<br />

Das letzte Feld der Datei /etc/<br />

passwd bezeichnet die Shell des Benutzers.<br />

Meldet sich dieser in einem<br />

Terminal an, braucht er einen<br />

Kommandozeileninterpreter,<br />

der mit ihm interagiert <strong>und</strong> Befehle<br />

entgegennimmt. Das Feld<br />

legt diesen Interpreter fest, unter<br />

Linux in der Regel die Bash.<br />

Überprüfen Sie die Datei /etc/<br />

passwd auf Ihrem eigenen Rechner,<br />

dann stellen Sie eventuell fest,<br />

dass bei mehreren Konten als<br />

Shell /sbin/nologin steht. Das verhindert,<br />

dass diese Konten Zugang<br />

zu einer Shell erhalten – für<br />

den Fall, dass Dritte die Systemprozesse,<br />

die sie verwalten, manipuliert<br />

haben. Diese Methode eignet<br />

sich auch für Konten, die zum<br />

Beispiel nur für das Verteilen von<br />

Mails gedacht sind.<br />

Wie in der Datei /etc/passwd<br />

trennen auch in /etc/shadow Doppelpunkte<br />

die einzelnen<br />

Felder, für jedes<br />

Konto existiert eine<br />

eigene Zeile (Abbildung<br />

A, unten). Das<br />

erste Feld enthält den<br />

Benutzernamen des<br />

Kontos, das zweite<br />

Feld das verschlüsselte<br />

Passwort. Die Verschlüsselungsmethode<br />

hängt von der Distribution<br />

ab. Ursprünglich<br />

kam das<br />

Verfahren Crypt zum<br />

Einsatz, später löste<br />

das MD5-Hashing das<br />

Crypt-Verfahren ab.<br />

Die Felder drei bis sechs steuern<br />

den Zeitraum der Gültigkeit des<br />

Passworts. Aus Sicherheitsgründen<br />

empfiehlt es sich, das Passwort<br />

regelmäßig zu ändern. Dazu<br />

legen Sie für jedes Passwort fest,<br />

wie viele Tage maximal vergehen<br />

dürfen, bis das System ein neues<br />

Passwort anfordert.<br />

Um zu verhindern, dass Benutzer<br />

einfach im Schnellverfahren<br />

mehrere Passwörter durchlaufen,<br />

bis sie wieder beim ursprünglichen<br />

angelangt sind, schreiben<br />

viele Sicherheitsrichtlinien zusätzlich<br />

eine Mindestdauer für<br />

die Gültigkeit eines Passworts<br />

vor. Die Felder in /etc/shadow ermöglichen<br />

es, Regeln für das Altern<br />

von Passwörtern aufzustellen.<br />

Die Bedingungen zum Ändern<br />

von Passwörtern gelten nur<br />

für normale Benutzer; der Superuser<br />

darf Passwörter <strong>ohne</strong> Einschränkungen<br />

ändern.<br />

Das dritte Feld der Datei /etc/<br />

shadow enthält das Passwort-Alter.<br />

Es zeigt die Anzahl der Tage seit<br />

dem Beginn der Unix-Zeit am 1.<br />

Januar 1970. Verwenden Sie das<br />

Date-Kommando, um die Zahl in<br />

ein Datum umzuwandeln (Listing<br />

1, folgende Seite).<br />

Daraus ergibt sich, dass das<br />

Passwort für den Benutzer msimmons<br />

am 8. November 2009 festgelegt<br />

wurde. Der Rest der datumsspezifischen<br />

Felder beziehen<br />

sich auf diese Zahl.<br />

A Oben ein Beispiel<br />

für einen Eintrag in der<br />

Datei /etc/passwd, unten<br />

eines für einen<br />

Eintrag in der Datei<br />

/ etc/shadow.<br />

www.linux-user.de<br />

10 | 11 47


schwerpunkt<br />

Benutzer <strong>und</strong> Gruppen<br />

Listing 2<br />

Listing 1<br />

01 $ grep msimmons /etc/shadow<br />

02 msimmons:$1$UVHO7Lj9<br />

$SguVZlNtWWoCoi7m2uS<br />

e/1:14556:0:99999:7:::<br />

03 $ date ‐d "Jan 1 1970 + 14556<br />

days"<br />

04 Sun Nov 8 00:00:00 EST 2009<br />

01 # finger msimmons<br />

02 Login: msimmons Name: Matt Simmons<br />

03 Directory: /home/msimmons Shell: /bin/bash<br />

04 Last login Sun Nov 8 14:51 (EST) on pts/2 from centos<br />

05 No mail.<br />

06 No Plan.<br />

Listing 3<br />

01 $ who<br />

02 msimmons tty1 2009‐11‐08 14:58<br />

03 root :0 2009‐11‐08 12:46<br />

04 root pts/0 2009‐11‐08 12:48 (:0.0)<br />

05 msimmons pts/2 2009‐11‐08 14:58 (centos)<br />

06<br />

07 $ w<br />

08 15:00:51 up 8:58, 4 users, load average: 0.07,<br />

0.10, 0.10<br />

09 USER TTY FROM LOGIN@ IDLE<br />

JCPU PCPU WHAT<br />

10 msimmons tty1 ‐ 14:58 2:19<br />

0.22s 0.22s ‐bash<br />

11 root :0 ‐ 12:46 ?xdm?<br />

4:11 0.92s /usr/bin/gnome‐session<br />

12 root pts/0 :0.0<br />

12:48 0.00s 0.76s 0.29s ssh msimmons@localhost<br />

13 msimmons pts/2 centos<br />

14:58 0.00s 0.20s 0.02s w<br />

Das vierte Feld besagt, wie viele<br />

Tage mindestens vergehen müssen,<br />

bevor der Benutzer das Passwort<br />

ändern darf. Im Beispiel<br />

steht dieser Wert auf 0, das heißt,<br />

es gibt keinen Mindestwert: Der<br />

Benutzer darf das Passwort also<br />

jederzeit ändern.<br />

Das fünfte Feld bezeichnet die<br />

maximale Anzahl der Tage, die<br />

zwischen zwei Änderungen des<br />

Passworts vergehen dürfen. Da es<br />

keine Möglichkeit gibt, einen unbegrenzten<br />

Zeitraum festzulegen,<br />

stellen viele Distributionen an<br />

dieser Stelle mit 99999 eine Zeitspanne<br />

von 274 Jahren ein.<br />

Das sechste Feld legt fest, wie<br />

viele Tage vor Ablauf des Passworts<br />

das System einen Warnhinweis<br />

an den Benutzer einblendet.<br />

Im Beispiel erhielte der Benutzer<br />

sieben Tage, bevor das Passwort<br />

abläuft, beim Anmelden einen<br />

entsprechenden Hinweis <strong>und</strong> die<br />

Gelegenheit, es zu ändern.<br />

Das siebte Feld legt fest, wie viele<br />

Tage nach Ablauf des Passwortes<br />

das System das Konto abschaltet.<br />

Für ein deaktiviertes<br />

Konto zeigt das achte Feld an,<br />

seit wann der Account bereits abgeschaltet<br />

ist (Anzahl der Tage<br />

seit Beginn der Unix-Zeit). Das<br />

letzte Feld bleibt für künftige Anwendungen<br />

reserviert.<br />

Gruppenarbeit<br />

Der Aufbau der Datei /etc/group<br />

ähnelt jenem der Dateien /etc/<br />

passwd <strong>und</strong> /etc/shadow, doch enthält<br />

sie weniger Felder. Das erste<br />

davon gibt den Namen der Gruppe<br />

an, gefolgt von einem Token,<br />

ähnlich wie in der Passwd-Datei.<br />

Das dritte Feld zeigt die GID, <strong>und</strong><br />

das letzte Feld enthält eine durch<br />

Kommas getrennte Liste von<br />

Konten in dieser Gruppe. Enthält<br />

die Datei /etc/passwd für einen Benutzer<br />

eine GID, heißt dies nicht<br />

zwingend, dass eine Mitgliedschaft<br />

in der entsprechenden<br />

Gruppe in /etc/group vorliegt.<br />

Es gibt eine Reihe von Tools, um<br />

die Benutzerkonten im System<br />

näher zu untersuchen. Das einfachste<br />

Werkzeug dieser Art ist<br />

das Tool finger, das Sie einfach<br />

mit einem Benutzernamen als Argument<br />

aufrufen. Es liefert dann<br />

eine ganze Reihe von Informationen<br />

in einem kompakten Überblick<br />

zurück (Listing 2).<br />

Die Informationen über den Benutzer<br />

stellt das System mithilfe<br />

der bereits besprochenen Dateien<br />

zusammen. Darüber hinaus zieht<br />

Listing 4<br />

01 # useradd ‐D<br />

02 GROUP=100<br />

03 HOME=/home<br />

04 INACTIVE=‐1<br />

05 EXPIRE=<br />

06 <strong>SHELL</strong>=/bin/bash<br />

07 SKEL=/etc/skel<br />

08 CREATE_MAIL_SPOOL=yes<br />

es noch einige Logs sowie Dateien<br />

im Benutzerverzeichnis der Person<br />

heran. In der Vergangenheit<br />

war es üblich, über finger nicht<br />

nur Informationen über einen lokalen<br />

Benutzer abzurufen, sondern<br />

auch eine Verbindung zu einem<br />

Finger-Server auf TCP-Port<br />

79 auf einem entfernten Rechner<br />

herzustellen. Durch gestrafftere<br />

Sicherheitsrichtlinien ist Letzteres<br />

mit der Zeit aus der Mode gekommen,<br />

weswegen heute kaum<br />

eine Standardinstallation mehr<br />

einen Finger-Server enthält.<br />

Um festzustellen, welche Benutzer<br />

aktuell am System angemeldet<br />

sind, verwenden Sie entweder<br />

den Befehl who oder nutzen stattdessen<br />

w, wenn Sie Wert auf einen<br />

ausführlichen Bericht legen (Listing<br />

3). Beide zeigen den Benutzernamen<br />

sowie das Gerät, auf<br />

dem sich der Benutzer angemeldet<br />

hat, aber bei w sehen Sie zusätzlich<br />

noch die benutzten Programme<br />

sowie einige Statistiken.<br />

Konten anlegen<br />

Auf der Kommandozeile erstellen<br />

Sie neue Nutzer <strong>und</strong> Gruppen<br />

meist mit useradd <strong>und</strong> groupadd.<br />

Diese Werkzeuge, auf die Sie nur<br />

als Superuser Zugriff erhalten,<br />

finden Sie standardmäßig im Verzeichnis<br />

/usr/sbin. Auf Debian-<br />

Systemen gibt es auch das Perl-<br />

Skript adduser, das als benutzerfre<strong>und</strong>liches<br />

Frontend für<br />

Useradd, Groupadd <strong>und</strong> Usermod<br />

gedacht ist. Da Useradd bei allen<br />

Linux-Distributionen funktioniert,<br />

beziehen sich die folgenden<br />

Beispiele auf dieses Tool.<br />

Trotz zahlreicher möglicher Optionen<br />

erweist sich der Umgang<br />

mit Useradd als nicht sonderlich<br />

kompliziert. Beim ersten Aufruf<br />

ist der nützlichste Parameter<br />

wahrscheinlich ‐D (Listing 4): Er<br />

zeigt die momentan geltenden<br />

Standardwerte für verschiedene<br />

Einstellungen an, festgelegt in<br />

der Datei /etc/default/useradd.<br />

Diese Werte können sich von Distribution<br />

zu Distribution allerdings<br />

unterscheiden.<br />

48 10 | 11<br />

www.linux-user.de


Alles zum ThemA<br />

Android<br />

Die Monatszeitschrift für Android-Fans, Smartphone-<strong>und</strong> Tablet Nutzer<br />

Kennenlernangebot:<br />

3 AusgAben<br />

für nur 3 euro<br />

Jetzt bestellen unter:<br />

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

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

ab 29.09.<br />

Neu!<br />

am KiosK


schwerpunkt<br />

Benutzer <strong>und</strong> Gruppen<br />

Listing 6<br />

Um ein neues Benutzerkonto per<br />

Kommandozeile zu erstellen, geben<br />

Sie useradd Benutzername ein,<br />

woraufhin das Programm die entsprechenden<br />

Zeilen in die Dateien<br />

/etc/passwd <strong>und</strong> /etc/shadow einträgt.<br />

Das Benutzerkonto ist in<br />

diesem Stadium allerdings noch<br />

nicht ganz einsatzfähig, da Sie<br />

bislang weder ein Passwort zugewiesen<br />

noch ein Benutzerverzeichnis<br />

erstellt haben. Um das<br />

Benutzerkonto startklar zu machen,<br />

gibt es mehrere Argumente,<br />

mit deren Hilfe Sie es entsprechend<br />

gestalten:<br />

# /usr/sbin/useradd msimmons ‐c U<br />

"Matt Simmons" ‐d /home/msimmonsU<br />

‐m ‐s /bin/bash<br />

Zusätzlichen zu den Einträgen in<br />

/etc/passwd <strong>und</strong> /etc/shadow trägt<br />

diese Befehlszeile den Wert Matt<br />

Simmons in das GECOS-Feld ein<br />

(‐c), legt das Benutzerverzeichnis<br />

fest (‐d) <strong>und</strong> erstellt es auch<br />

gleich (‐m) <strong>und</strong> weist als Anmelde-<br />

Shell (‐s) die Bash zu. Damit steht<br />

ein funktionierendes Benutzerkonto<br />

bereit.<br />

Ein Parameter für Useradd, der<br />

im Beispiel nicht zum Einsatz<br />

kam, lautet ‐‐password. Als Argument<br />

dient hier ein verschlüsselter<br />

Password-Hash. Diese Option<br />

sollte man tunlichst meiden, da<br />

dadurch kurzzeitig das verschlüsselte<br />

Passwort für alle Benutzer<br />

im System zu sehen ist.<br />

Listing 5<br />

01 # passwd msimmons<br />

02 Enter new UNIX password:<br />

03 Retype new UNIX password:<br />

04 passwd: password updated<br />

successfully<br />

01 # cat /etc/shadow | grep msimmons<br />

02 msimmons:$1$MfBYOD/O$yv2.31xLwrsN9oXtlBxpa0:14563:0:9<br />

9999:7:::<br />

03 # chage ‐E "2009‐11‐16" msimmons<br />

04 # cat /etc/shadow | grep msimmons<br />

05 msimmons:$1$MfBYOD/O$yv2.31xLwrsN9oXtlBxpa0:14563:0:99<br />

999:7::14564:<br />

06 # date ‐d "Jan 1, 1970 + 14564 days"<br />

07 Mon Nov 16 00:00:00 EST 2009<br />

Erledigen Sie das Erstellen von<br />

Benutzerkonten per Skript <strong>und</strong><br />

erhalten alle neuen Benutzer<br />

standardmäßig das gleiche Passwort,<br />

spart dies eventuell Zeit.<br />

Alternativ bietet es sich an, einen<br />

Blick auf den Befehl /usr/sbin/newusers<br />

zu werfen, der das Importieren<br />

von Benutzerkonten im<br />

Batch-Verfahren erlaubt. Der<br />

Nachteil von Newusers liegt darin,<br />

dass es die Passwörter, die Sie<br />

eingeben, im Klartext speichert –<br />

eine gravierende Sicherheitslücke,<br />

sollten Angreifer den Weg in das<br />

System finden.<br />

Es kommt immer wieder vor,<br />

dass Sie Benutzerkonten erstellen<br />

wollen, die kein Benutzerverzeichnis<br />

<strong>und</strong> keine Login-Daten<br />

benötigen – zum Beispiel, wenn<br />

ein Account nur die Funktion hat,<br />

Mails zu empfangen oder zu verschicken.<br />

Dann können Sie folgenden<br />

Befehl nutzen:<br />

# /user/sbin/useradd mailuser ‐cU<br />

"Mail User" ‐M ‐s /bin/false<br />

Die Option ‐M weist useradd an, in<br />

diesem Fall kein Home-Verzeichnis<br />

zu erstellen <strong>und</strong> mit ‐s auf ein<br />

Login zu verzichten (‐s /bin/false,<br />

alternativ: ‐s /bin/nologin).<br />

Keine eigene Gruppe<br />

Standardmäßig erstellt Useradd<br />

eine Gruppe mit demselben Namen<br />

wie der Benutzernamen (daher<br />

existiert in obigem Beispiel<br />

parallel zum Benutzer msimmons<br />

eine Gruppe namens msimmons).<br />

Bei umfangreichen Mehrplatzsystemen<br />

ist das unter Umständen<br />

nicht erwünscht. In diesem Fall<br />

weisen Sie das Programm über<br />

die Option ‐n (Abkürzung für<br />

‐‐no‐user‐group) an, keine neue<br />

Benutzergruppe zu erstellen.<br />

Stattdessen geben Sie entweder<br />

über die Option ‐g die Gruppe an<br />

oder tun gar nichts – worauf<br />

Useradd versucht, einen Gruppeneintrag<br />

in /etc/default/useradd<br />

zu finden. Existiert dieser nicht,<br />

kommt die Gruppe users mit der<br />

GID 100 zum Zuge.<br />

Zu guter Letzt kommt es manchmal<br />

vor, dass Sie die Benutzer-ID<br />

(UID) selbst festlegen wollen, anstatt<br />

das System standardmäßig<br />

die nächste verfügbare UID zuweisen<br />

zu lassen. Dies ist hauptsächlich<br />

dann sinnvoll, wenn Sie<br />

sichergehen möchten, dass ein<br />

Benutzer auf verschiedenen Systemen<br />

über dieselbe UID verfügt.<br />

Die Option lautet ‐u NNNN, wobei<br />

NNNN die UID bezeichnet, die Sie<br />

dem Benutzer zuweisen wollen:<br />

# /user/sbin/useradd newuser ‐cU<br />

"New User" ‐d /home/newuser ‐m U<br />

‐s /bin/bash ‐g testuser ‐u 2001<br />

Es fällt auf Dauer lästig, bei jedem<br />

Nutzer alle diese Optionen<br />

anzugeben. Um den Aufwand zu<br />

reduzieren, bietet es sich an, die<br />

Vorgaben zu ändern. Dazu modifizieren<br />

Sie entweder /etc/default/useradd<br />

oder nutzen die<br />

Standard-Option ‐D. Wie beschrieben<br />

gibt useradd ‐D <strong>ohne</strong><br />

weitere Parameter die Standardeinstellungen<br />

aus. Benutzen Sie<br />

aber den Befehl mit weiteren Optionen,<br />

ändern Sie die Standardwerte.<br />

Der folgende Befehl setzt<br />

Ablaufdatum, Standard-Shell <strong>und</strong><br />

Gruppe neu:<br />

# /user/sbin/useradd newuser ‐D U<br />

‐e 2012‐12‐31 ‐s /bin/false ‐g tU<br />

testuser<br />

Die Option ‐e legt das Ablaufdatum<br />

für Benutzerkonten im Format<br />

Jahr‐Monat‐Tag fest. Die Option<br />

‐s stellt die Standard-Shell ein,<br />

‐g setzt die Standard-Gruppe.<br />

Werfen Sie einen kurzen Blick<br />

auf die Dokumentation für den<br />

Befehl useradd auf Ihrem Rechner.<br />

In den meisten Fällen passen die<br />

Standardwerte. Bringen die Vorgaben<br />

nicht den gewünschten Erfolg,<br />

greifen Sie wie beschrieben<br />

auf useradd zurück, um über diesen<br />

Befehl den Account entsprechend<br />

anzupassen.<br />

Wenn Sie den Parameter ‐‐password<br />

nicht verwenden, schaltet<br />

das System das Benutzerkonto<br />

50 10 | 11<br />

www.linux-user.de


Benutzer <strong>und</strong> Gruppen<br />

schwerpunkt<br />

ab. In diesem Fall bearbeiten Sie<br />

das Passwort des Kontos mithilfe<br />

des Befehls passwd. Mit der Eingabe<br />

/usr/bin/passwd Username erstellen<br />

Sie ein Passwort für einen<br />

neuen Benutzer. Listing 5 zeigt,<br />

wie das Ergebnis dieses Befehls<br />

normalerweise aussieht.<br />

Beachten Sie, dass viele Distributionen<br />

bestimmte Anforderungen<br />

bezüglich der Sicherheit von<br />

Passwörtern stellen, um die Sie<br />

nicht herumkommen – außer als<br />

Root, wo Sie aber immer noch einen<br />

Warnhinweis erhalten.<br />

Der Befehl Passwd erlaubt es daneben,<br />

den Status für ein oder<br />

mehrere Benutzerkonten abzufragen.<br />

Möchten Sie beispielsweise<br />

nachsehen, ob das Konto<br />

msimmons im Einsatz ist, erledigen<br />

Sie das mit folgendem Befehl:<br />

# passwd ‐S msimmons<br />

msimmons P 11/20/2009 0 99999 7 ‐1<br />

Als Resultat sehen Sie den Login-<br />

Namen, den Status des Passwortes,<br />

das Datum der letzten Änderung<br />

(falls zutreffend), den minimal<br />

<strong>und</strong> maximal erlaubten Zeitraum<br />

zwischen Änderungen, den<br />

Zeitraum für den Warnhinweis<br />

<strong>und</strong> wie lange das Konto schon<br />

deaktiviert ist.<br />

Der Buchstabe P weist darauf<br />

hin, dass das Konto über ein gültiges<br />

Passwort verfügt. Stünde<br />

hier ein L, wäre das Konto gesperrt;<br />

NP wiese auf das Fehlen eines<br />

Passworts hin. Geben Sie am<br />

Prompt passwd ‐S ‐a ein, gibt das<br />

Programm dieselben Informationen<br />

aus, diesmal allerdings für<br />

alle Benutzerkonten.<br />

Möchten Sie ein Konto sperren,<br />

erledigen Sie dies mit dem Befehl<br />

passwd ‐l Benutzername. Das macht<br />

das Passwort ungültig, indem es<br />

einen zufälligen Wert erhält, der<br />

mit keinem verschlüsselten Wert<br />

übereinstimmt. Auf diese Weise<br />

legen Sie das Konto allerdings<br />

nicht komplett still: Verfügt der<br />

Benutzer beispielsweise über einen<br />

gültigen SSH-Schlüssel, vermag<br />

er sich dennoch einzuloggen.<br />

Um ein Konto sicher zu deaktivieren<br />

<strong>und</strong> jede Anmeldung zu unterbinden,<br />

verwenden Sie passwd<br />

‐‐expiredate 1, was das Ablaufdatum<br />

in die Vergangenheit setzt.<br />

Einige Versionen von Passwd erledigen<br />

das automatisch, sobald<br />

Sie die Option ‐l verwenden. Um<br />

ein Konto zu entsperren, geben<br />

Sie passwd ‐u ein: Das stellt das<br />

frühere Passwort wieder her.<br />

Bearbeiten<br />

Dem Administrator stehen darüber<br />

hinaus noch mehr Tools bereit,<br />

um Konten <strong>und</strong> Gruppen zu<br />

analysieren <strong>und</strong> zu bearbeiten.<br />

Das wichtigste Werkzeug zum Bearbeiten<br />

bereits bestehender Benutzerkonten<br />

ist /usr/sbin/usermod.<br />

Es lässt dieselben Kommandozeilenoptionen<br />

zu wie /usr/<br />

sbin/useradd, inklusive des Benutzernamens<br />

(‐‐login NeuerBenutzername)<br />

<strong>und</strong> der UID (‐‐uid NeueUID).<br />

Oft kommt es vor, dass ein Systemadministrator<br />

nur dann mit<br />

Benutzerkonten zu tun hat, wenn<br />

es darum geht, diese anzulegen,<br />

zu löschen oder Benutzern zu helfen,<br />

ihr Passwort wiederherzustellen.<br />

Manchmal jedoch tritt<br />

der Fall ein, dass Sie Usermod<br />

brauchen, um Änderungen am<br />

Konto vorzunehmen, wie zum<br />

Beispiel das Ablaufdatum. Um<br />

dieses zu ändern, verwenden Sie<br />

die Option ‐e JJJJ‐MM‐TT (J=Jahr,<br />

M=Monat, T=Tag).<br />

Unter Umständen müssen Sie<br />

die Benutzerverzeichnisse irgendwann<br />

einmal verschieben. Dazu<br />

verwenden Sie dieselbe Option<br />

(‐d), die Sie bei Useradd benutzt<br />

haben, um das Verzeichnis festzulegen.<br />

Fügen Sie die Option ‐m<br />

hinzu, verschieben Sie zusätzlich<br />

den Inhalt des bestehenden Verzeichnisses<br />

ins neue:<br />

# usermod ‐d /home/newhome ‐m<br />

Arbeiten Sie mit Red Hat oder<br />

Fedora (oder einem anderen System<br />

das SELinux einsetzt), geben<br />

Sie mithilfe der Option ‐Z den<br />

SELinux-Benutzer an.<br />

Ein weiterer typischer Fall besteht<br />

darin, dass Sie Benutzer zu<br />

neuen Gruppen hinzufügen müssen.<br />

Dazu dienen die Optionen ‐a<br />

(für „append“) <strong>und</strong> ‐G (für<br />

„groups“). Dabei müssen Sie die<br />

Gruppen durch Kommas getrennt<br />

angeben (wobei kein Leerzeichen<br />

dazwischen stehen darf). Um einen<br />

Benutzer zu den Gruppen<br />

cdrom <strong>und</strong> admin hinzufügen, tippen<br />

Sie daher:<br />

# usermod ‐a ‐G cdrom,admin<br />

Das Entfernen des Benutzers aus<br />

einer Gruppe geht nicht ganz so<br />

intuitiv von der Hand, es gibt keinen<br />

eigenen Befehl dafür. Stattdessen<br />

müssen Sie den Befehl<br />

Usermod verwenden, <strong>und</strong> zwar<br />

mit denjenigen Gruppen als Argument,<br />

in denen der Benutzer Mitglied<br />

bleiben soll, also zum Beispiel<br />

cdrom <strong>und</strong> user. Damit entfernen<br />

Sie ihn automatisch aus allen<br />

anderen Gruppen:<br />

# usermod ‐G cdrom,user<br />

Mit dem Befehl /usr/sbin/groupmod<br />

bearbeiten Sie darüber hinaus<br />

Einstellungen für einzelne Gruppen.<br />

Genau wie Usermod unterstützt<br />

auch Groupmod sämtliche<br />

Optionen, die der vorher erwähnte<br />

Befehl Groupadd anbietet.<br />

Mit Usermod bearbeiten Sie bei<br />

Bedarf das GECOS/ Kommentar-<br />

Feld. Allerdings bleibt dabei das<br />

Format demjenigen überlassen,<br />

der den Befehl eingibt. Das Kommando<br />

/usr/bin/chfn macht es wesentlich<br />

einfacher, Zugang zum<br />

standardisierten Format zu erhalten:<br />

Geben Sie den Befehl <strong>ohne</strong><br />

weitere Optionen ein, fragt das<br />

System sogar nach, ob Sie alle Felder<br />

ausfüllen möchten.<br />

Mit Passwd ändern Sie einige,<br />

aber nicht alle Einstellungen für<br />

das Altern des Passwortes. Das<br />

Tool /usr/bin/chage hingegen gewährt<br />

Ihnen volle Kontrolle über<br />

alle Optionen. Bei Chage können<br />

Sie sowohl ein explizites Datum<br />

eingeben als auch die Anzahl der<br />

www.linux-user.de<br />

10 | 11 51


schwerpunkt<br />

Benutzer <strong>und</strong> Gruppen<br />

Listing 7<br />

Tage seit Beginn der Unix-Zeit.<br />

Listing 6 (S. 50) zeigt in allen Einzelheiten<br />

das Ändern des Ablaufdatums<br />

von einem Passwort, bei<br />

dem ein herkömmlich formatiertes<br />

Datum zum Einsatz kommt.<br />

01 $ ulimit ‐a<br />

02 core file size (blocks, ‐c) 0<br />

03 data seg size (kbytes, ‐d) unlimited<br />

04 scheduling priority (‐e) 0<br />

05 file size (blocks, ‐f) unlimited<br />

06 pending signals (‐i) 32768<br />

07 max locked memory (kbytes, ‐l) unlimited<br />

08 max memory size (kbytes, ‐m) unlimited<br />

09 open files (‐n) 1024<br />

10 pipe size (512 bytes, ‐p) 8<br />

11 POSIX message queues (bytes, ‐q) 819200<br />

12 real‐time priority (‐r) 0<br />

13 stack size (kbytes, ‐s) 8192<br />

14 cpu time (seconds, ‐t) unlimited<br />

15 max user processes (‐u) 32768<br />

16 virtual memory (kbytes, ‐v) unlimited<br />

17 file locks (‐x) unlimited<br />

Verteilungskampf<br />

Listing 4 (S. 48) enthielt bereits<br />

einen Verweis auf die Variable<br />

SKEL, die im Beispiel auf das Verzeichnis<br />

/etc/skel zeigt. Dahinter<br />

verbirgt sich das Skeleton-Verzeichnis,<br />

das alle Standarddateien<br />

für ein neues Benutzerverzeichnis<br />

enthält. Jedes Mal, wenn Sie<br />

ein neues Konto erstellen, dient<br />

dieses Verzeichnis als Vorlage:<br />

Sämtliche Dateien <strong>und</strong> Verzeichnisstrukturen,<br />

die sich darin befinden,<br />

landen im neuen Benutzerverzeichnis,<br />

das Sie beim Befehl<br />

Useradd angeben. Diese Methode<br />

eignet sich ausgezeichnet<br />

dazu, um jedem neuen Benutzer<br />

ein Profil oder eine spezielle<br />

Bash-Umgebung zuzuweisen.<br />

Eine weitere Datei zum Verwalten<br />

von Benutzerumgebungen<br />

heißt /etc/profile. Jedes Mal,<br />

wenn ein Benutzer sich anmeldet,<br />

überprüft das System diese Datei<br />

<strong>und</strong> liest daraus die Standardwerte<br />

für häufig genutzte Umgebungsvariablen,<br />

wie zum Beispiel<br />

Prompts, Pfade oder Umasks.<br />

Neben dem Bearbeiten der eigentlichen<br />

Benutzerkonten gehört<br />

das Verteilen der Systemressourcen<br />

mit zu den wichtigen<br />

Aufgaben beim <strong>Administrieren</strong> eines<br />

Systems. Auf einem Rechner,<br />

den mehrere Personen benutzen,<br />

sollte jeder Nutzer gleichberechtigt<br />

Zugriff auf den Speicher andere<br />

Komponenten erhalten. Die<br />

stärkste Waffe im Arsenal ist dabei<br />

das in die Bash integrierte<br />

Tool ulimit: Es setzt dem einzelnen<br />

User Grenzen für den Verbrauch<br />

von Festplattenspeicher,<br />

Arbeitsspeicher oder auch die Anzahl<br />

der Prozesse.<br />

Sie haben die Möglichkeit, den<br />

Befehl von einer Benutzer-Shell<br />

aus zu starten. In diesem Fall<br />

wirkt er sich sowohl auf die Shell<br />

aus als auch auf alle Programme,<br />

die Sie darin starten. Das Kommando<br />

kennt „harte“ <strong>und</strong> „weiche“<br />

Limits sowie unbegrenzte<br />

Werte. Legen Sie ein hartes Limit<br />

einmal fest, können Sie es später<br />

nur noch senken, aber nicht mehr<br />

erhöhen. Ein anfänglich gesetztes<br />

weiches Limit dürfen Sie bis zur<br />

Höhe des harten Limits anheben,<br />

aber nicht darüber hinaus.<br />

Der Parameter unlimited hebt<br />

alle Barrieren auf <strong>und</strong> erlaubt es<br />

dem Benutzer, sämtliche Ressourcen<br />

eines bestimmten Typs<br />

für sich zu beanspruchen.<br />

Da es dieser Befehl relativ einfach<br />

macht, zulässige Aktivitäten<br />

der Benutzer zu blockieren, ist es<br />

wichtig, die Konsequenzen von<br />

Modifikationen über Ulimit zu<br />

durchschauen. Schränken Sie beispielsweise<br />

den Verbrauch von<br />

Arbeitsspeicher ein, führt dies<br />

unter Umständen dazu, dass<br />

beim Benutzer Programme, die<br />

auf Shared Libraries aufsetzen,<br />

abstürzen oder nicht starten.<br />

Normalerweise kommt Ulimit<br />

zum Einsatz, um harte <strong>und</strong> weiche<br />

Grenzen in der Datei /etc/profile<br />

festzulegen. Da die Shell bei<br />

jedem Start auf /etc/profile zugreift,<br />

sobald sich ein Nutzer anmeldet,<br />

haben Sie die Möglichkeit,<br />

dort harte Limits zu setzen,<br />

um die User im Zaum zu halten.<br />

Weiche Limits hingegen darf der<br />

Benutzer individuell nach Bedarf<br />

anpassen – bis zu der Höhe, die<br />

Sie als Administrator für diese Variable<br />

vorgesehen haben.<br />

Grenzen setzen<br />

Ulimit bietet zahlreiche Optionen,<br />

die auf Systemen mit knappen<br />

Ressourcen von Interesse<br />

sind. Bei knappem Festplattenspeicher<br />

beschränken Sie beispielsweise<br />

über die Option ‐c die<br />

Größe der Coredumps sowie über<br />

‐f die maximale Dateigröße, die<br />

eine Shell <strong>und</strong> alle ihre Kindprozesse<br />

schreiben.<br />

Testen einzelne Benutzer experimentelle<br />

Software, ist es mitunter<br />

sinnvoll, das System zu schützen,<br />

indem Sie die maximale Anzahl<br />

an Prozessen (‐u), den CPU-<br />

Verbrauch (‐t) <strong>und</strong> den maximalen<br />

Anteil am Arbeitsspeicher (‐m)<br />

beschränken, damit keine wild gewordenen<br />

Prozesse den Rechner<br />

plötzlich überlasten.<br />

Um die aktuellen Beschränkungen<br />

aufzulisten, verwenden Sie<br />

den Befehl ulimit ‐a (Listing 7). In<br />

der linken Spalte sehen Sie für<br />

jede Option eine kurze Beschreibung,<br />

die dafür zuständige Option<br />

steht in der Mitte, <strong>und</strong> die aktuelle<br />

Grenze rechts. Um sowohl<br />

ein hartes als auch ein weiches Limit<br />

zu setzen, verwenden Sie ulimit<br />

Optionen Grenze. Um nur ein<br />

hartes Limit zu setzen, reicht ‐H,<br />

für weiche Limits ‐S.<br />

Ausmisten<br />

Benutzerkonten unterliegen einem<br />

Lebenszyklus: Früher oder<br />

später müssen Sie unter Umständen<br />

Benutzerkonten aus einem<br />

System wieder entfernen, <strong>und</strong> oft<br />

ist es für alle Beteiligten wünschenswert,<br />

wenn dabei keine<br />

Spuren zurückbleiben. In einem<br />

Unternehmen sollten Sie sich vorab<br />

darüber informieren, welche<br />

Richtlinien bezüglich des Aufbewahrens<br />

von Firmendaten gelten,<br />

<strong>und</strong> sicherstellen, dass Sie alle nötigen<br />

Sicherheitskopien von den<br />

Benutzerdaten anfertigen, bevor<br />

Sie diese endgültig aus dem System<br />

löschen.<br />

52 10 | 11<br />

www.linux-user.de


Benutzer <strong>und</strong> Gruppen<br />

schwerpunkt<br />

Falls Sie vorhaben, die Daten aufzubewahren,<br />

gilt es, eine Entscheidung<br />

zu treffen, wer die Daten<br />

erhält <strong>und</strong> in welcher Form<br />

Sie sie übergeben – das heißt, ob<br />

es ausreicht, lediglich den Eigentümer<br />

im System zu ändern oder<br />

ob ein Auslagern auf einen Datenträger<br />

<strong>und</strong> die physische Übergabe<br />

erforderlich sind.<br />

Haben Sie diese vorbereitenden<br />

Arbeiten abgeschlossen, ermitteln<br />

Sie im ersten Schritt die UID<br />

<strong>und</strong> die Gruppenmitgliedschaften<br />

des Benutzers. Am einfachsten<br />

erledigen Sie diese einfache Aufgabe<br />

mit dem Befehl id:<br />

# id msimmons<br />

uid=1002(msimmons) gid=1004(msimU<br />

mons) groups=1004(msimmons),37(oU<br />

perator)<br />

Mithilfe dieser Informationen<br />

spüren Sie die Dateien, die sich<br />

im Besitz des Nutzers befinden,<br />

auf allen Dateisystemen auf <strong>und</strong><br />

weisen sie gegebenenfalls anderen<br />

Benutzern zu. Zum Aufspüren<br />

der Daten verwenden Sie find<br />

in Kombination mit der fraglichen<br />

UID:<br />

# find / ‐uid 1002<br />

Sobald Sie das Schicksal der Dateien<br />

des Benutzers geklärt haben,<br />

entfernen Sie das Konto<br />

selbst mit dem Befehl<br />

# /usr/sbin/userdel Benutzername<br />

aus dem System. Mit dem Parameter<br />

‐r löschen dabei Sie automatisch<br />

das dazugehörige Benutzerverzeichnis.<br />

Das Entfernen<br />

der Gruppe des Benutzers klappt<br />

über<br />

# /usr/sbin/groupdel Gruppe<br />

Dieser Befehl entfernt die entsprechende<br />

Zeile in /etc/group,<br />

löscht aber keine Dateien, die mit<br />

dieser Gruppe verknüpft sind.<br />

Die bessere Alternative zum<br />

Handhaben der Dateien stellt der<br />

bereits erwähnte Find-Befehl dar,<br />

bei dem Sie dieses Mal statt ‐uid<br />

den Parameter ‐gid nutzen.<br />

Fazit<br />

Das Verwalten der Benutzerkonten<br />

stellt einen wichtigen Teil des<br />

Linux-Alltags dar. Je vertrauter<br />

Sie mit den Tools sind, desto<br />

mehr steigert sich Ihre Effizienz<br />

<strong>und</strong> Flexibilität. Mit den vorgestellten<br />

Tools verfügen Sie über<br />

eine solide Basis <strong>und</strong> einen gut<br />

sortierten Werkzeugkasten.<br />

Benötigen Sie weitere Informationen<br />

zu diesem Thema, werfen<br />

Sie am besten einen Blick in die<br />

Dokumentation der verschiedenen<br />

Programme. Darüber hinaus<br />

finden Sie im Internet zahlreiche<br />

Workshops <strong>und</strong> Howtos, die Ihnen<br />

beim Verwalten von Benutzerkonten<br />

<strong>und</strong> Gruppen weiterhelfen.<br />

(agr) n<br />

Harte Nuss?<br />

Android 3<br />

Apps entwickeln<br />

Debian GNU/Linux<br />

aktuell zu »Squeeze«<br />

Geknackt!<br />

fauxware, Fotolia<br />

■ Hilfe für Einsteiger<br />

■ Topaktuelle News<br />

■ Riesiges Artikelarchiv<br />

aktuell zu<br />

»Honeycomb«<br />

<strong>und</strong> »Gingerbread«<br />

419 S., 2011, mit DVD, 34,90 €<br />

» www.GalileoComputing.de/2516<br />

Linux-Know-how<br />

Linux-Server einrichten<br />

<strong>und</strong> administrieren<br />

786 S., 4. Auflage 2011, mit DVD, 39,90 €<br />

» www.GalileoComputing.de/2510<br />

www.GalileoComputing.de<br />

Linux-Server<br />

Bestseller!<br />

www.linux-community.de<br />

Deine tägliche Portion Linux<br />

www.linux-user.de<br />

925 S., 2011, mit DVD, 39,90 €<br />

» www.GalileoComputing.de/2443<br />

815 S., 2011, 49,90 €<br />

» www.GalileoComputing.de/2205<br />

10 | 11 53<br />

Wissen, wie’s geht.


praxis<br />

Audacity<br />

So<strong>und</strong>bearbeitung mit Audacity<br />

Schnittmeister<br />

Linux eignet sich hervorragend zum Schneiden<br />

<strong>und</strong> Bearbeiten von So<strong>und</strong>dateien. Mit<br />

Audacity, einem der bekanntesten Audio-<br />

Editoren, peppen Sie Ihre Aufnahmen im<br />

Handumdrehen auf. Florian Effenberger<br />

© Carole Nickerson, sxc.hu<br />

Audacity 1.3.13<br />

LU/audacity/<br />

rEaDME<br />

Audacity ist bei Anfängern<br />

wie Profis beliebt,<br />

denn der unter der GPL<br />

stehende So<strong>und</strong>editor<br />

wartet nicht nur mit<br />

zahlreichen Funktionen<br />

auf, sondern lässt sich<br />

zudem dank Plugin-<br />

Schnittstelle schnell erweitern.<br />

Neben Linux<br />

steht er auch für Mac<br />

OS X <strong>und</strong> Windows zur<br />

Verfügung.<br />

Der So<strong>und</strong>editor Audacity [1]<br />

präsentiert sich aufgeräumt <strong>und</strong><br />

steht auch in deutscher Sprache<br />

zur Verfügung (Abbildung A). Einige<br />

Plugins auf unserem Testsystem<br />

(siehe Kasten Audacity einrichten)<br />

ließen allerdings eine<br />

Lokalisierung vermissen. Direkt<br />

nach dem Programmstart öffnet<br />

sich eine Dialogbox mit Links zu<br />

Dokumentation, Wiki <strong>und</strong> Forum,<br />

die es auch in einer deutschsprachigen<br />

Variante gibt [2]. Schon<br />

ein flüchtiger Blick darauf lässt<br />

erahnen, welche Möglichkeiten in<br />

Audacity schlummern. Im Folgenden<br />

vermitteln wir Ihnen das<br />

Handwerkszeug, um mit Audacity<br />

den eigenen Aufnahmen sprichwörtlich<br />

den Marsch zu blasen.<br />

Allesfresser<br />

Der erste Schritt besteht darin,<br />

das gewünschte Material in Audacity<br />

zu laden, beispielsweise durch<br />

Import – was dank einer Vielzahl<br />

unterstützter Dateiformate keinerlei<br />

Probleme bereitet. WAV,<br />

MP3 <strong>und</strong> Ogg Vorbis [3] öffnet<br />

der So<strong>und</strong>editor problemlos, audiophile<br />

Geister freuen sich über<br />

die jüngst hinzugekommene Unterstützung<br />

für FLAC. Auch zahlreiche<br />

proprietäre Codecs wie<br />

WMA machten im Test keinerlei<br />

Probleme – zumindest, solange<br />

sie frei von DRM sind. Derartige<br />

Formate setzen unter Umständen<br />

aber die Installation zusätzlicher<br />

Bibliotheken voraus. Einschränkungen<br />

gibt es hingegen bei MIDI,<br />

das Audacity zwar importiert,<br />

aber weder abspielt noch speichert<br />

– dafür eignet sich ein sogenannter<br />

Sequencer aber <strong>ohne</strong>hin<br />

besser. Doch ganz gleich, welches<br />

Format Sie öffnen, der Weg ist<br />

immer derselbe: Datei | Import |<br />

Audio… sorgt dafür, dass Audacity<br />

das Material einliest.<br />

Aufwendiger, dafür aber auch<br />

kreativer, ist die Aufnahme eigenen<br />

Materials. Das muss sich<br />

nicht auf das Einsprechen von<br />

Texten per Mikrofon beschränken<br />

– auch lieb gewordene Schätze<br />

von alten Tonbändern, zerkratzten<br />

Schallplatten <strong>und</strong> ausgeleierten<br />

Kassetten lesen Sie ein <strong>und</strong><br />

restaurieren das Material direkt<br />

am PC. Je nach System stehen<br />

mehrere Audioquellen zur Verfügung,<br />

die zunächst ausgewählt<br />

werden wollen, wozu Sie sich der<br />

vier Dropdown-Boxen in der rechten<br />

oberen Fensterhälfte bedienen<br />

(Abbildung B). Auf unserem Testsystem<br />

mit einfacher Onboard-<br />

So<strong>und</strong>karte <strong>und</strong> zwei Eingängen<br />

mussten wir lediglich auf den<br />

auDacity EinrichtEn<br />

Audacity ist Bestandteil nahezu jeder<br />

Linux-Distribution. Auf unserem<br />

Testsystem mit Ubuntu 11.04 genügte<br />

zur Installation das Einrichten<br />

des Pakets audacity. Um MP3-Dateien<br />

zu bearbeiten, installieren Sie<br />

zusätzlich noch die sogenannte<br />

Lame-Bibliothek libmp3lame0. Anschließend<br />

starten Sie Audacity<br />

über den gleichnamigen Eintrag im<br />

Gnome-Menü unter Anwendungen |<br />

Multimedia. Ubuntu liefert die derzeit<br />

aktuelle Beta-Version Audacity<br />

1.3.13 aus, die gegenüber dem stabilen<br />

Release 1.2 zahlreiche neue<br />

Funktionen mit sich bringt <strong>und</strong> deutlich<br />

mehr Formate unterstützt.<br />

56 10 | 11<br />

www.linux-user.de


Audacity<br />

praxis<br />

Mikrofoneingang umstellen <strong>und</strong><br />

die rote Aufnahmetaste betätigen.<br />

Ob die Signale auch laut <strong>und</strong><br />

deutlich ankommen, das sehen<br />

Sie sowohl in der Spuranzeige als<br />

auch in der oben mittig platzierten<br />

Aussteuerungsanzeige (Abbildung<br />

C). Zum Justieren des Signals<br />

dienen die Schieber oben<br />

rechts im Programmfenster: Sie<br />

regeln die Lautstärke sowohl der<br />

Aufnahme als auch der Wiedergabe.<br />

Durch einen Klick auf den kleinen<br />

Pfeil unterhalb der Aussteuerungsanzeige<br />

<strong>und</strong> die Wahl der<br />

Option Aussteuerungsanzeige aktivieren<br />

starten Sie einen Monitormodus,<br />

der auch <strong>ohne</strong> laufende<br />

Aufnahme den jeweiligen Pegel<br />

anzeigt – wer häufig Live-Aufnahmen<br />

macht, der weiß, wie hilfreich<br />

das sein kann.<br />

Auf der richtigen Spur<br />

Die soeben gestartete Aufnahme<br />

läuft nun so lange, bis Sie den gelben<br />

Stopp-Knopf drücken. Um die<br />

Schneidearbeit zu minimieren,<br />

können Sie den Mitschnitt auch<br />

unterbrechen – beispielsweise für<br />

den Seitenwechsel von Schallplatten<br />

oder aber für längere Pausen<br />

in einer Live-Aufnahme. Dazu<br />

dient naheliegenderweise die<br />

blaue Pause-Taste. Um die Aufnahme<br />

wieder fortzusetzen, klicken<br />

Sie erneut darauf. Haben Sie<br />

versehentlich doch auf Stopp geklickt,<br />

gibt es noch einen Trick:<br />

Drücken Sie gleichzeitig die Umschalt-<br />

<strong>und</strong> die rote Aufnahme-<br />

Taste, denn auch das setzt den<br />

Mitschnitt fort.<br />

Doch warum ist die Umschalttaste<br />

überhaupt erforderlich? Das<br />

liegt in einem weiteren Feature<br />

von Audacity begründet, nämlich<br />

der Möglichkeit, mit mehreren<br />

Spuren zu arbeiten. Probieren Sie<br />

es einmal aus: Nehmen Sie einen<br />

Text auf, klicken Sie auf Stopp,<br />

<strong>und</strong> drücken danach erneut die<br />

Aufnahmetaste – diesmal jedoch<br />

<strong>ohne</strong> [Umschalt]. Diese zweite<br />

Aufnahme wird nicht etwa zum<br />

vorherigen Bereich hinzugefügt,<br />

sondern als zweite Spur angelegt.<br />

Der Clou dabei: Während die neue<br />

Aufnahme läuft, spielt Audacity<br />

die bestehenden Spuren ab. Was<br />

zunächst verwirrend klingen mag,<br />

hat einen handfesten Nutzen:<br />

Wer beispielsweise schon immer<br />

mal sein Interpretationstalent à la<br />

Bobby McFerrin („Don’t worry, be<br />

happy“) unter Beweis stellen wollte,<br />

wer Aufnahmen mit einer<br />

Kommentarspur versehen will,<br />

oder wer Hörspiele <strong>und</strong> Dialoge<br />

mit verschiedenen Sprechern aufnimmt,<br />

der weiß die Mehrspurfunktionalität<br />

zu schätzen.<br />

Was früher teurer Luxus gehobener<br />

Rekorder war, ist jetzt direkt<br />

am heimischen PC möglich: Jede<br />

Spur wird separat eingesprochen<br />

<strong>und</strong> am Schluss als eine Datei<br />

exportiert. Diese Wiedergabefunktion<br />

lässt sich übrigens im Transport-Menü<br />

deaktivieren. Dort finden<br />

Sie auch weitere Aufnahmemöglichkeiten,<br />

beispielsweise einen<br />

zeitgesteuerten Mitschnitt<br />

oder die Möglichkeit, automatisch<br />

bei Erreichen eines bestimmten<br />

Lautstärkepegels aufzunehmen.<br />

Überhaupt erweisen sich die<br />

Spuren als sehr mächtiges Werkzeug.<br />

Audacity zeigt jede separat<br />

an, markiert die aktuell ausgewählte<br />

mit einem gelben Rahmen,<br />

<strong>und</strong> gibt dem Tonmeister auf der<br />

linken Seite zahlreiche Kontrollelemente<br />

an die Hand. Ein Klick<br />

auf den Pfeil neben Tonspur öffnet<br />

ein Kontextmenü mit zahlreichen<br />

Optionen. Darin geben Sie jeder<br />

Spur bei Bedarf einen eigenen Namen<br />

– in unserem Beispiel (Abbildung<br />

D) die der Sprecher Erwin<br />

<strong>und</strong> Fred – verschieben sie nach<br />

oben oder unten, <strong>und</strong> wählen die<br />

Art der Tondarstellung. Zusätzlich<br />

bietet Audacity auch die Möglichkeit,<br />

das Sampleformat <strong>und</strong> die<br />

Samplerate anzupassen <strong>und</strong> verschiedene<br />

Spuren, beispielsweise<br />

von zwei Mikrofonen, zu einer<br />

Stereospur zusammenzufassen<br />

<strong>und</strong> wieder zu trennen.<br />

Zur besseren Kontrolle schalten<br />

Sie einzelne Aufnahmen über die<br />

gleichnamige Schaltfläche Stumm<br />

oder reduzieren die Wiedergabe<br />

mittels Solo auf eine ganz bestimmte<br />

Tonspur. Diese Technik<br />

hilft beispielsweise bei Liveaufnahmen<br />

dabei, den Applaus des<br />

Publikums auszublenden oder<br />

einzelne Instrumente gesondert<br />

zu hören. Zusätzlich stellen Sie<br />

über die entsprechenden Regler<br />

sowohl die Balance als auch die<br />

Lautstärke jeder einzelnen Spur<br />

für die Wiedergabe<br />

separat<br />

ein.<br />

A Trotz zahlreicher<br />

Funktionen präsentiert<br />

sich Audacity sehr aufgeräumt<br />

<strong>und</strong> übersichtlich.<br />

B Die Zahl der möglichen<br />

Audioquellen<br />

kann manchmal ganz<br />

schön verwirren.<br />

tipp<br />

Audacity konvertieren<br />

Sie mit wenigen<br />

Handgriffen sogar zu<br />

einer portablen Version<br />

für den USB-<br />

Stick. Ein Eintrag im<br />

offiziellen Wiki verrät,<br />

wie’s geht [7].<br />

C Die Aussteuerungsanzeige<br />

sollten Sie immer<br />

im Blick haben.<br />

D Spuren sind das<br />

zentrale Element jeder<br />

Audiobearbeitung.<br />

www.linux-user.de<br />

10 | 11 57


praxis<br />

Audacity<br />

E Die Zoomwerkzeuge<br />

erleichtern<br />

die Navigation in der<br />

Aufnahme.<br />

Arbeiten Sie mit mehreren Spuren,<br />

dann klappen Sie gerade<br />

nicht benötigte Mitschnitte einfach<br />

über den unteren Pfeil ein.<br />

Misslungene Aufnahmen befördert<br />

ein Klick auf das X gleich<br />

ganz ins Nirwana.<br />

F Was Nadel <strong>und</strong> Faden für<br />

den Schneider, das sind<br />

diese Funktionen für den<br />

Tonmeister.<br />

Tapferes Schneiderlein<br />

Sind die verschiedenen Spuren im<br />

Programm, dann geht es ans Eingemachte,<br />

das eigentliche Bearbeiten<br />

der Aufnahme, wofür Audacity<br />

komfortable Editierwerkzeuge<br />

zur Verfügung stellt. Einfachste<br />

Übung: Der Schnitt des<br />

Materials, mit dem Sie zu lange<br />

Pausen, unnütze Stille am Anfang<br />

oder auch missglückte Passagen<br />

einfach entfernen.<br />

In der Aufnahme navigieren Sie<br />

mit einem sogenannten Marker,<br />

einer grauen, vertikalen Linie,<br />

welche die aktuelle Position in der<br />

Datei verrät. Mit ihr legen Sie<br />

auch die Zielposition für den Einfügen-Befehl<br />

fest. Um den Marker<br />

zu setzen, klicken Sie an die gewünschte<br />

Stelle in der Spur. Bei<br />

einem Klick auf das Play-Symbol<br />

oder einem Druck auf die Leertaste<br />

spielt Audacity den Track nicht<br />

mehr von Anfang an ab, sondern<br />

jeweils von der gerade gewählten<br />

Position aus. Da der Marker nicht<br />

automatisch mitwandert, startet<br />

auch ein erneuter Klick auf die<br />

Play-Taste die Aufnahme wieder<br />

von der gewünschten Position –<br />

ideal, um bestimmte Stellen<br />

mehrfach Probe zu hören.<br />

Markieren Sie einen Bereich<br />

mittels gedrückter linker Maustaste,<br />

hinterlegt der Editor ihn<br />

dunkelblau <strong>und</strong> markiert ihn somit.<br />

Alle Aktionen – wie Ausschneiden,<br />

Kopieren oder das Zuweisen<br />

von Effekten – beziehen<br />

sich dann nur noch auf diese Auswahl<br />

<strong>und</strong> nicht mehr auf die gesamte<br />

Datei. Das<br />

gilt auch für die<br />

Wiedergabe, die bei<br />

einer Markierung<br />

nur den jeweiligen<br />

Bereich abspielt.<br />

Zur genauen Kontrolle<br />

nutzen Sie den sogenannten<br />

Loop-Modus, also das Abspielen<br />

in einer Dauerschleife. Dazu klicken<br />

Sie mit gedrückter Umschalttaste<br />

auf das Play-Symbol,<br />

<strong>und</strong> Audacity spielt den gewählten<br />

Bereich so lange, bis Sie die<br />

Wiedergabe abbrechen.<br />

Die gesamte Spur markieren Sie<br />

bei Bedarf durch einen Klick ins<br />

Kontrollelement auf der linken<br />

Seite, mehrere Spuren durch Halten<br />

der Umschalttaste <strong>und</strong> einen<br />

Klick ins jeweilige Kontrollelement.<br />

Praktisch ist auch die<br />

Schnellvorschau: Drücken Sie auf<br />

der Tastatur [1], dann spielt Audacity<br />

ab Marker beziehungsweise<br />

Mausposition eine Sek<strong>und</strong>e des<br />

aktuellen Projekts ab.<br />

Je länger die Aufnahme ausfällt,<br />

desto ungenauer ist die Darstellung<br />

selbst bei hoher Auflösung,<br />

da der Editor standardmäßig die<br />

komplette Spur anzeigt. Um genauer<br />

zu arbeiten, nutzen Sie die<br />

Zoom-Werkzeuge (Abbildung E),<br />

um den angezeigten Bereich anzupassen.<br />

Neben einer Funktion<br />

zum Vergrößern <strong>und</strong> Verkleinern<br />

passen Sie auch die gesamte Datei<br />

ins Fenster ein, alternativ stellen<br />

Sie nur die aktuelle Auswahl in<br />

voller Breite dar.<br />

So gerüstet, geht es nun ans eigentliche<br />

Schneiden. Markieren<br />

Sie den gewünschten Bereich <strong>und</strong><br />

klicken Sie das entsprechende<br />

Werkzeug an (Abbildung F). Ausschneiden,<br />

Kopieren <strong>und</strong> Einfügen<br />

sind selbsterklärend <strong>und</strong> funktionieren<br />

wie in jeder Textverarbeitung.<br />

Mit Stille setzen Sie die<br />

Lautstärke des gewählten Bereichs<br />

auf null. Über die praktische<br />

Funktion Zuschneiden entfernen<br />

Sie alle Bereiche außer dem<br />

aktuell gewählten – ideal, um aus<br />

einem längeren Radio-Mitschnitt<br />

genau ein Lied zu sichern.<br />

Um Daten aus der aktuellen Spur<br />

in eine neue zu überführen, gibt<br />

es ebenfalls zwei Funktionen: Mit<br />

Bearbeiten | In neue Tonspur kopieren<br />

kopieren Sie die aktuelle Auswahl<br />

in eine zusätzliche Spur, um<br />

daran beispielsweise Effekte zu<br />

testen. Ähnlich arbeitet Bearbeiten<br />

| In neue Tonspur verschieben,<br />

das den ausgewählten Bereich jedoch<br />

nicht dupliziert, sondern<br />

stattdessen nur verschiebt. Wer<br />

einen Blick ins Bearbeiten-Menü<br />

wagt, der sieht schnell, dass dort<br />

noch weitere Funktionen zur Verfügung<br />

stehen. Das deutschsprachige<br />

Audacity-Handbuch [4],<br />

wenn auch schon etwas in die<br />

Jahre gekommen, verrät dazu<br />

noch mehr Kniffe sowie eine<br />

Technik, wie Sie mit mehreren<br />

Spuren effizient schneiden.<br />

Effekthascherei<br />

Haben Sie die Aufnahme nach<br />

Ihren Wünschen zugeschnitten,<br />

verleihen Sie ihr mit einem der<br />

zahlreichen Effekte den nötigen<br />

Feinschliff. Das Angebot reicht<br />

dabei von einfachen Standards<br />

über Restaurationswerkzeuge bis<br />

hin zu komplexen Spezialfiltern.<br />

Einen guten Einstieg bietet das<br />

sogenannte Ein- <strong>und</strong> Ausblenden,<br />

das den vorher vorgenommenen<br />

Schnitt perfekt ergänzt. Mit dieser<br />

Funktion sorgen Sie dafür,<br />

dass Ihre Aufnahme am Anfang<br />

langsam an Lautstärke gewinnt<br />

<strong>und</strong> am Schluss die Lautstärke<br />

sanft zurückgefahren wird.<br />

Dazu markieren Sie etwa ein bis<br />

zwei Sek<strong>und</strong>en (Abbildung G) am<br />

Anfang der Aufnahme, wodurch<br />

Audacity diesen Bereich blau hinterlegt.<br />

Anschließend wählen Sie<br />

im Menü Effekte die Funktion<br />

Einblenden, woraufhin kurze Zeit<br />

später die Änderung der Lautstärke<br />

in der Spur sichtbar wird (Abbildung<br />

H). Analog markieren Sie<br />

ein bis zwei Sek<strong>und</strong>en am Ende<br />

der Aufnahme <strong>und</strong> wählen Effekte<br />

| Ausblenden.<br />

Das Menü Effekte bildet den<br />

Dreh- <strong>und</strong> Angelpunkt zum Aufpeppen<br />

Ihrer Aufnahme. Im Test<br />

58 10 | 11<br />

www.linux-user.de


Audacity<br />

praxis<br />

G Im Editorfenster zeigt Audacity die jeweilige Dauer der Aufnahme an.<br />

präsentierte Audacity hier mehr<br />

als 30 Einträge (Abbildung I).<br />

Neben Klassikern wie Bassverstärkung,<br />

Echo, Phaser <strong>und</strong> Wahwah-Effekt<br />

bietet der digitale<br />

Werkzeugkasten auch wichtige<br />

Hilfsmittel wie etwa eine Rauschentfernung,<br />

die alte Schallplattenaufnahmen<br />

in ein besseres<br />

Licht rückt. Auch die Geschwindigkeit<br />

der Aufnahme sowie deren<br />

Tonhöhe passen Sie mit ein<br />

paar Klicks an, <strong>und</strong> zu guter Letzt<br />

sorgen Sie mit der Normalisieren-<br />

Funktion für ein einheitliches<br />

Lautstärkeverhalten.<br />

Der einzige Nachteil besteht darin,<br />

dass Sie Effekte nicht „live“<br />

zuschalten können, da deren Berechnung<br />

einiges an Zeit in Anspruch<br />

nimmt. Allerdings bieten<br />

die meisten Optionen eine Kurzvorschau,<br />

mit der der gewünschte<br />

Effekt auf die aktuelle Passage<br />

vorgeschaut wird.<br />

Eine Frage des Formats<br />

Ist die Aufnahme perfekt, geht es<br />

ans Speichern. Im Gegensatz zu<br />

anderen Programmen verändert<br />

Audacity die Originaldatei auf der<br />

Festplatte nicht. Die Funktion<br />

Projekt speichern im Datei-Menü<br />

erzeugt vielmehr ein File mit der<br />

Endung .aup – ein Audacity-eigenes<br />

Format samt separatem Datenverzeichnis<br />

mit der Endung<br />

_data. In der Standardkonfiguration<br />

enthält es alle relevanten Einstellungen<br />

sowie die einzelnen<br />

Spuren. Audacity nutzt es zur<br />

weiteren Bearbeitung, es kann<br />

aber von so gut wie keinem anderen<br />

Programm abgespielt werden.<br />

Das Pendant dazu ist der Export<br />

in eines der unterstützten Audioformate<br />

wie etwa MP3 oder Ogg<br />

Vorbis, den Sie über Datei | Exportieren…<br />

aufrufen. Das funktioniert<br />

prinzipiell ähnlich wie bei<br />

Grafikprogrammen, wo die exportierten<br />

Bilder lediglich die Grafikdaten<br />

enthalten, während das<br />

programmeigene Format verschiedene<br />

Ebenen, Bearbeitungsschritte<br />

<strong>und</strong> mehr unterstützt.<br />

Ganz ähnlich verhält es sich mit<br />

Audacity: Beim Export beispielsweise<br />

ins MP3-Format fasst es<br />

sämtliche Spuren zu einer zusammen<br />

<strong>und</strong> entfernt die Spurnamen<br />

– für das Weiterbearbeiten denkbar<br />

ungeeignet. Als Faustregel<br />

gilt daher: Eine Kopie für die weitere<br />

Bearbeitung im AUP-Format<br />

aufbewahren, zur Weitergabe am<br />

besten nach Ogg Vorbis exportieren.<br />

Praktisch ist die Funktion,<br />

eine markierte Auswahl zu exportieren,<br />

die Sie ebenfalls im Menü<br />

Datei finden. Auf diese Weise sichern<br />

Sie beispielsweise jedes<br />

Lied eines Live-Konzerts in eine<br />

separate Datei. Noch komfortabler<br />

funktioniert die Angelegenheit<br />

mit sogenannten Schnittpunkten,<br />

die das Audacity-Wiki<br />

ausführlich dokumentiert [5].<br />

Vor dem Speichern bietet es sich<br />

an, zur besseren Inventarisierung<br />

die sogenannten Metadaten zu<br />

bearbeiten, die Sie unter Datei |<br />

Metadaten-Editor… finden. Dort<br />

hinterlegen Sie Titel, Interpret,<br />

Album <strong>und</strong> weitere Informationen,<br />

die Audacity dann beispielsweise<br />

auch in die ID3-Tags von<br />

MP3-Dateien übernimmt.<br />

info<br />

[1] Audacity: http:// audacity. sourceforge. net<br />

[2] Deutschsprachige Hilfe: http:// wiki.<br />

audacityteam. org/ wiki/ German_Information<br />

[3] Multimediaformate: Florian Effenberger,<br />

„Wald der Formate“, LU 08/ 2011, S. 78,<br />

http:// www. linux-community. de/ 22953<br />

[4] Deutschsprachiges Handbuch:<br />

http:// www. audacity-forum. de/ download/ Au<br />

dacity-Handbuch-deutsch-23-Jan-2005. pdf<br />

[5] Aufteilen von Dateien mit Schnittpunkten:<br />

http:// audacity. sourceforge. net/ de/ docs/<br />

schneiden/<br />

[6] Informationen zu Plugins: http:// audacity.<br />

sourceforge. net/ download/ plugins<br />

[7] Portable Version erzeugen: http:// wiki.<br />

audacityteam. org/ wiki/ Portable_Audacity<br />

Fazit<br />

Dieser Artikel kann nur einen<br />

Ein blick in die Möglichkeiten von<br />

Audacity geben. Trotz der Funktionsvielfalt<br />

lässt sich das Programm<br />

einfach bedienen, auch<br />

Neulinge kommen schnell zu<br />

brauchbaren Ergebnissen. Studiomusiker,<br />

die teure proprietäre<br />

Software gewohnt sind, vermissen<br />

sicher einige Funktionen, aber<br />

für semiprofessionelle Anwender<br />

reicht Audacity völlig aus. Zudem<br />

gibt es zahlreiche Plugins mit Zusätzfunktionen,<br />

die sich in der Regel<br />

durch einfaches Kopieren installieren<br />

lassen [6]. Vor dem Einstieg<br />

in Audacity sollten Sie die<br />

reichhaltige Dokumentation studieren,<br />

die viele Tipps <strong>und</strong> Tricks<br />

bereithält <strong>und</strong> erklärt, wie Sie mit<br />

Audacity auch an großen Projekten<br />

effektiv arbeiten. (jlu) n<br />

H So sieht eine ein<strong>und</strong><br />

ausgeblendete<br />

Aufnahme im Editor<br />

aus.<br />

I Audacity bringt<br />

schon von Haus aus<br />

zahlreiche Filter <strong>und</strong><br />

Effekte mit.<br />

www.linux-user.de<br />

10 | 11 59


praxis<br />

GCStar<br />

© Sascha Hofmann, sxc.hu<br />

Sammlungen mit GCStar verwalten<br />

Schätze im Blick<br />

Dank GCStar<br />

verwalten Jäger<br />

<strong>und</strong> Sammler mit<br />

einem einfach zu<br />

benutzenden<br />

Werkzeug komfortabel<br />

die gehorteten<br />

Schätze.<br />

Falko Benthin<br />

rEaDME<br />

GCStar erlaubt das<br />

komfortable Verwalten<br />

umfangreicher Sammlungen.<br />

Dazu bringt es<br />

eine ganze Reihe vordefinierter<br />

Sammlungstypen<br />

mit, die einen<br />

schnellen Einstieg erlauben.<br />

Daneben lassen<br />

sich auch eigene<br />

Typen definieren.<br />

Tassen, Briefmarken, Kaffeemühlen,<br />

Ü-Ei-Figuren, Münzen,<br />

Bücher, CDs, DVDs … im Laufe<br />

eines Sammlerlebens häuft sich<br />

so einiges an. Überschreiten die<br />

gehorteten Schätze eine kritische<br />

Menge, fällt es immer schwerer,<br />

den Überblick zu behalten. Profi-<br />

„Sammler“ wie Bibliotheken <strong>und</strong><br />

Museen helfen sich da mit aufgefeilten<br />

Kataloganwendungen wie<br />

CollectiveAccess, KoHa oder Evergreen<br />

– solche Programme sind<br />

für den Hobbysammler in den<br />

meisten Fällen zu umfangreich.<br />

Doch unter Linux laufen auch viele<br />

einfachere Programme, die Jäger<br />

<strong>und</strong> Sammler dabei unterstützen,<br />

ihre Bestände zu katalogisieren<br />

<strong>und</strong> so den Überblick zu bewahren.<br />

Zu dieser Riege zählt<br />

auch GCStar [1].<br />

Das Programm eignet sich als<br />

Verwaltungsassistent für eine<br />

Vielzahl von Leidenschaften, bei<br />

denen man Dinge anhäuft. Neben<br />

Sammelklassikern wie Büchern,<br />

CDs <strong>und</strong> Videos lässt es sich auch<br />

für Brettspiele, Weine, Stempel<br />

oder Modellautos nutzen. Sammler,<br />

die sich auf andere Gegenstände<br />

konzentrieren, legen dazu<br />

eigene, angepasste Kataloge an.<br />

Falls Sie bereits eine Sammlungsverwaltung<br />

wie Tellico ([2],[3]),<br />

Alexandria [4] oder MyMovies [5]<br />

genutzt haben, können Sie entsprechende<br />

Sammlungen in die<br />

Software importieren. Das Programm<br />

hilft nicht nur, Bestandteile<br />

einer Sammlung zu verwalten,<br />

sondern lässt sich auch nutzen,<br />

um zu dokumentieren, wenn<br />

Sie etwas verleihen.<br />

GCStar einrichten<br />

GCStar steht unter der GPL <strong>und</strong><br />

basiert auf Perl <strong>und</strong> Gtk2. In vielen<br />

Fällen hält die distributionseigene<br />

Paketverwaltung das Programm<br />

vor. Möchten Sie aber die<br />

aktuellste Version 1.6.2 einsetzen,<br />

kommen Sie nicht um die Installation<br />

aus den Quellen herum.<br />

Dazu laden Sie den Tarball [6] herunter<br />

<strong>und</strong> entpacken ihn mittels<br />

$ tar ‐xzf gcstar‐1.6.2.tar.gz<br />

An Abhängigkeiten benötigt das<br />

Programm Gtk2, Perl <strong>und</strong> Gtk2-<br />

perl. Zum Einrichten stehen drei<br />

Wege zur Auswahl – Grafik- (./install)<br />

<strong>und</strong> Textmodus (./install<br />

‐‐text) sowie automatisch:<br />

# ./install ‐‐prefix=/Ziel<br />

Bei Letzterem bestimmen Sie mit<br />

dem Parameter ‐‐prefix das Zielverzeichnis.<br />

Läuft die Installation<br />

A Für viele Sammelgebiete bietet<br />

das Programm GCStar bereits vorgefertige<br />

Sammlungen.<br />

60 10 | 11<br />

www.linux-user.de


GCStar<br />

praxis<br />

B GCStar nimmt Daten<br />

in übersichtlichen<br />

Masken entgegen.<br />

GCStar 1.6.2<br />

LU/gcstar/<br />

fehlerfrei durch, starten Sie die<br />

Sammlungsverwaltung anschließend<br />

mit /Ziel/bin/gcstar.<br />

Erste Schritte<br />

Nach dem Start bietet GCStar<br />

Vorlagen für verschiedene Sammelgebiete<br />

an (Abbildung A). Alternativ<br />

importieren Sie eine bestehende<br />

Sammlung oder legen<br />

einen Sammlungstyp nach eigenen<br />

Vorstellungen an. Um eine<br />

private Bibliothek zu verwalten,<br />

bietet sich die Büchersammlung<br />

an. Der Sammlungstyp enthält<br />

bereits alle relevanten Datenfelder<br />

für Titel, ISBN-Nummer, Autoren<br />

<strong>und</strong> so weiter, sodass Sie<br />

keine weiteren Anpassungen vornehmen<br />

müssen.<br />

Haben Sie den Sammlungstyp<br />

ausgewählt, öffnet GCStar bereits<br />

eine Eingabemaske, in die Sie alle<br />

erforderlichen Informationen<br />

eingegeben können (Abbildung<br />

B). In einer Büchersammlung<br />

sind die ersten beiden unbeschrifteten<br />

Felder des Reiters Allgemein<br />

für ISBN <strong>und</strong> Titel vorgesehen,<br />

bei allen anderen Feldern<br />

gibt GCStar an, welche Daten es<br />

erwartet. Das Erscheinungsdatum<br />

geben Sie entweder direkt im<br />

Format TT/ MM/ JJJJ ein oder<br />

nutzen dazu den grafischen Dialog<br />

Wählen Sie ein Datum. Die Cover-Ansicht<br />

eines Buches hinterlegen<br />

Sie, indem Sie das zugehörige<br />

Feld in der Maske mit der rechten<br />

Maustaste anklicken.<br />

Neben dem Reiter Allgemein, der<br />

außer Titel <strong>und</strong> ISBN auch Genre,<br />

Autoren, Sprache, Seitenanzahl<br />

<strong>und</strong> Beschreibung eines Werkes<br />

abfragt, existieren noch Tabs für<br />

Details, Bemerkungen zu einem<br />

eventuellen Verleih <strong>und</strong> Markierungen.<br />

In der Detailansicht hinterlegen<br />

Sie Daten zur Auflage<br />

des Werkes sowie wann Sie das<br />

Buch erworben haben<br />

<strong>und</strong> wie es Ihnen<br />

gefallen hat.<br />

Die Markierungen<br />

dienen der Verschlagwortung,<br />

sodass<br />

Sie später auch<br />

thematisch nach einem<br />

Buch suchen<br />

können. Für Werte,<br />

die häufiger auftreten,<br />

bietet GCStar<br />

beim Erfassen Dropdown-Listen<br />

an, die<br />

sich mit der Zeit füllen.<br />

So sparen Sie<br />

jede Menge Tipparbeit, beispielsweise<br />

bei Autoren, Verlagen, Genres<br />

<strong>und</strong> Markierungen.<br />

Internetsuche<br />

Umfangreiche Büchersammlungen<br />

zu katalogisieren, kann ein<br />

zeitraubendes Unterfangen sein.<br />

Um Zeit zu sparen, bietet GCStar<br />

eine Importfunktion, mit deren<br />

Hilfe die Anwendung einen großen<br />

Teil der benötigten Daten<br />

automatisch ausfüllt. Dazu greift<br />

GCStar auf die Datenbanken verschiedener<br />

Anbieter zurück,<br />

da runter Amazon, Bol, ISBNdb,<br />

Merlin <strong>und</strong> andere mehr (Abbil-<br />

C Die Internetsuche<br />

ruft viele Daten aus<br />

Datenbanken großer<br />

Anbieter ab.<br />

www.linux-user.de<br />

10 | 11 61


praxis<br />

GCStar<br />

D Erzielt die Suche im<br />

Internet mehrere Treffer,<br />

müssen Sie entscheiden,<br />

welchen<br />

Sie letztendlich<br />

übernehmen.<br />

F Ausgefeilte Filter<br />

machen das Auffinden<br />

einzelner Einträge<br />

zum Kinderspiel.<br />

dung C, vorherige Seite). Die Angabe<br />

des Titels, der ISBN oder des<br />

Autors genügen, um sich dann<br />

mit etwas Glück durch den Klick<br />

auf den Button Internetsuche viel<br />

Tipperei zu ersparen.<br />

War die Suche erfolgreich, listet<br />

GCStar alle infrage kommenden<br />

Titel auf, sofern mehrere Werke<br />

den Suchkriterien entsprechen<br />

(Abbildung D). Sie können die zugehörigen<br />

Daten sofort importieren<br />

oder sich eine <strong>Vorschau</strong> anzeigen<br />

lassen, um zu prüfen, ob<br />

es sich bei dem ausgewählten Titel<br />

wirklich um das gewünschte<br />

Werk handelt. Nach einer Übernahme<br />

der Daten genügen – je<br />

nach Datenbank – meist wenige<br />

zusätzliche Informationen per<br />

Hand, um den GCStar-Eintrag zu<br />

komplettieren.<br />

Anfragen nach fremdsprachigen<br />

Titeln verliefen bei Amazon<br />

Deutschland meist im Sande –<br />

hier ziehen Sie am besten gleich<br />

einen entsprechenden Anbieter<br />

im Ausland für die Suche heran.<br />

Auch eine nur auf einem Titel basierende<br />

Anfrage führt nicht immer<br />

zum gewünschten Ergebnis:<br />

Schon ein Tippfehler oder ein nur<br />

teilweise eingegebener Titel sorgen<br />

oft dafür, dass die Suche keinen<br />

Treffer liefert. Basiert die Suche<br />

auf der ISBN-13, werden die<br />

Daten in der Regel problemlos gef<strong>und</strong>en<br />

<strong>und</strong> sofort geladen.<br />

Verleih<br />

Gerade die Bestandteile privater<br />

Bibliotheken sowie CDs <strong>und</strong><br />

DVDs werden hin <strong>und</strong> wieder verliehen.<br />

GCStar bietet hierfür ein<br />

rudimentäres Management, das<br />

sich hinter dem Reiter Verleih verbirgt.<br />

Hier lassen sich nicht nur<br />

Entleiher <strong>und</strong> Verleihdatum festhalten,<br />

sondern auch eine Erinnerungsmail<br />

versenden <strong>und</strong> eine<br />

Verleihhistorie anzeigen (Abbildung<br />

E). Entleiher <strong>und</strong> der Text<br />

der Erinnerungsnachricht<br />

hinterlegen<br />

Sie unter<br />

Einstellungen<br />

|<br />

Entleiher<br />

<strong>und</strong> greifen<br />

so später<br />

schnell darauf<br />

zurück.<br />

Um sofort<br />

zu sehen,<br />

was noch so<br />

alles im Bekanntenuniversum<br />

herumschwirrt,<br />

genügt ein Klick auf<br />

Datei | Verliehenes anzeigen.<br />

Filter<br />

Je umfangreicher eine Bibliothek<br />

ausfällt, desto schwieriger wird<br />

es, einzelne Bücher wiederzufinden.<br />

Vor allem, wenn einem Titel<br />

<strong>und</strong> Autor gerade partout nicht<br />

einfallen wollen, erweisen sich<br />

Filterfunktionen als überaus hilfreich.<br />

Solche bietet GCStar zuhauf<br />

<strong>und</strong> ordnet ihnen einen eigenen<br />

Menüpunkt zu. Er erlaubt<br />

es, die Bibliothek im Handumdrehen<br />

nach Autoren, Verlagen,<br />

Sprachen, Genre oder Markierungen<br />

zu filtern.<br />

Etwas granularer gestaltet sich<br />

das Filtern über die Suche. Die<br />

Standardsuche ermöglicht es bereits,<br />

den Bestand nach Wörtern<br />

im Titel oder nach ISBNs zu<br />

durchsuchen. Weiterhin können<br />

Sie angeben, ob GCStar nur Werke<br />

auflisten soll, die bereits gelesen,<br />

ab einem bestimmten Datum<br />

erworben oder mit einer Mindestpunktzahl<br />

bewertet wurden<br />

(Abbildung F).<br />

Noch mehr Möglichkeiten bietet<br />

die Erweiterte Suche, mit deren<br />

Hilfe Sie die Einträge nach beliebigen<br />

Kriterien durchsuchen beziehungsweise<br />

eine große Anzahl<br />

von Suchmerkmalen kombinieren,<br />

um die Ergebnisliste so weit<br />

wie möglich einzuschränken. Mit<br />

der erweiterten Suche durchforsten<br />

Sie beispielsweise auch die<br />

Beschreibungen <strong>und</strong> Kommentare<br />

zu einzelnen Werken oder merken<br />

alle Titel vor, die schon einmal<br />

an einen bestimmten Entleiher<br />

gingen (Abbildung G).<br />

info<br />

[1] GCStar: http:// www. gcstar. org<br />

[2] Tellico: http:// tellico-project. org/<br />

[3] Tellico-Workshop: Mirko Albrecht, „Ordnung!“,<br />

LU 05/ 2008, S. 54,<br />

http:// www. linux-community. de/ 15472<br />

[4] Alexandria: http:// alexandria. rubyforge. org<br />

[5] MyMovies: http:// www. mymovies. dk<br />

[6] GCStar herunterladen:<br />

http:// download. gna. org/ gcstar/<br />

62 10 | 11<br />

www.linux-user.de


GCStar<br />

praxis<br />

Nicht unbedingt nötig, aber<br />

mitunter recht nützlich sind<br />

die mit GCStar möglichen<br />

Statistischen Auswertungen,<br />

die Sie unter dem Menüpunkt<br />

Datei finden. Damit<br />

stellen Sie schnell fest, wie<br />

viele Werke zu welchen Genres<br />

zählen, welche Sprache<br />

in der Bibliothek dominiert<br />

oder von welchem Verlag die<br />

meisten Bücher kommen<br />

(Abbildung H). Ob Statistiken<br />

sinnvoll sind, die auf<br />

Beschreibung, ISBN oder<br />

Erscheinungsdatum basieren,<br />

muss allerdings jeder<br />

für sich entscheiden.<br />

Ein ebenfalls verzichtbares, aber<br />

witziges Feature stellt der Button<br />

Heute Abend dar. Können Sie sich<br />

nicht so recht entscheiden, was<br />

als nächste Lektüre ansteht,<br />

nimmt dieser Schalter die Entscheidung<br />

zufallsbasiert ab. Dabei<br />

berücksichtigt die Auswahl nur<br />

solche Werke, die Sie laut Eintrag<br />

noch nicht gelesen haben – es<br />

lohnt sich also, diszipliniert das<br />

entsprechende Häkchen unter<br />

Details zu setzen.<br />

Export<br />

Neben den bereits erwähnten<br />

Features verfügt GCStar auch<br />

über umfangreiche Export-Funktionen,<br />

sodass Sie keineswegs<br />

zwingend für den Rest Ihrer Tage<br />

mit GCStar arbeiten müssen, nur<br />

weil Sie der Anwendung die kompletten<br />

Informationen zu einer<br />

Sammlung anvertraut haben. So<br />

sollte es problemlos möglich sein,<br />

auf Tellico auszuweichen. Eine<br />

Migration zu anderen Programmen<br />

mit den Exportformaten<br />

CSV, XML <strong>und</strong> SQL gestaltet sich<br />

etwas aufwendiger, ist aber immer<br />

noch angenehmer, als sämtliche<br />

Daten neu einzugeben.<br />

Fazit<br />

Mit GCStar haben Jäger <strong>und</strong><br />

Sammler ein einfach zu benutzendes<br />

Werkzeug an der Hand,<br />

um die gehorteten Schätze komfortabel<br />

zu verwalten. Die vorgefertigten<br />

Typen für weit verbreitete<br />

Sammelbereiche ermöglichen<br />

einen schnellen Start. GCStar<br />

lässt sich intuitiv bedienen <strong>und</strong><br />

konzentriert sich im Funktionsaufwand<br />

auf das Wesentliche, sodass<br />

auch Neulinge schnell mit<br />

dem Programm zurechtkommen.<br />

Poweruser werden Tastenkürzel<br />

für einzelne Funktionen vermissen<br />

– aber für Menschen, die tagtäglich<br />

ganze Wagenladungen<br />

Neuerwerbungen heranschleppen,<br />

gibt es sicherlich bessere Lösungen<br />

als das vorliegende Programm.<br />

Für den normalen Sammler<br />

bietet GCStar alles Notwendige,<br />

selbst wenn die Sammlung aus<br />

mehreren h<strong>und</strong>ert oder tausend<br />

Stücken besteht. (jlu) n<br />

E Das Verleihfeature<br />

hilft, Verliehenes im<br />

Blick zu behalten.<br />

G Dank eines Filters gibt GCStar darüber Auskunft, welche der eigenen Bücher<br />

Sie bereits an Ihre Fre<strong>und</strong>e ausgeliehen haben.<br />

H Statistiken zeigen übersichtlich, wie viele Werke in Ihrer<br />

Sammlung bestimmte Kriterien erfüllen.<br />

www.linux-user.de<br />

10 | 11 63


praxis<br />

Anki<br />

Lernkarteien helfen<br />

dabei, neue Sprachen<br />

<strong>und</strong> Fakten<br />

effektiv zu lernen.<br />

Das clevere <strong>und</strong><br />

vielseitige Anki<br />

treibt das Flashcard-basierte<br />

Lernen<br />

auf die Spitze.<br />

Thomas Leichtenstern<br />

rEaDME<br />

Das in Python geschriebene<br />

Programm Anki<br />

bietet den Unterbau für<br />

digitale Lernkarteien aller<br />

Art. Viele davon stehen<br />

im Internet zum<br />

Download bereit, optional<br />

erstellt sie der Nutzer<br />

selbst. Diverse Im<strong>und</strong><br />

Exportfunktionen<br />

sowie eine statistische<br />

Auswertung komplettieren<br />

das Programm.<br />

Lernen auch jenseits der Schule<br />

oder Uni – ob Sprachen, Fachbegriffe<br />

oder neue Techniken – gehört<br />

heute beinahe untrennbar<br />

zu unserer Kultur. Althergebrachte<br />

Techniken wie das Lesen von<br />

Fachliteratur erweisen sich als<br />

nur begrenzt hilfreich, da die<br />

Lernmedien nicht mit dem Leser<br />

interagieren <strong>und</strong> nur unzureichende<br />

Möglichkeiten bieten, erlerntes<br />

Wissen zu vertiefen.<br />

Anders verhält es sich mit Lernkarteien,<br />

neuhochdeutsch: Flashcards.<br />

Sie erlauben es, das Lernmaterial<br />

zielgerichtet so lange zu<br />

wiederholen, bis der Stoff sitzt.<br />

Technisch voll auf der Höhe gibt<br />

sich da das Flashcard-Programm<br />

Anki [1]: Die Anwendung erlaubt,<br />

die virtuellen Lernkarten um Grafiken<br />

<strong>und</strong> Audio-Ausgaben anzureichern<br />

sowie den Lernerfolg<br />

statistisch auszuwerten.<br />

Installation<br />

Lediglich Fedora bietet in F15<br />

<strong>und</strong> F16 aktuelle Anki-Versionen<br />

zur Installation an. Ubuntu stellt<br />

im Main-Repository zwar Anki<br />

bereit, jedoch handelt es sich dabei<br />

um die veraltete Version 1.0.1.<br />

Das derzeit aktuelle Release 1.2.8<br />

erhalten Sie auf der Projektseite<br />

optional als DEB-Paket oder im<br />

Quellcode. Ein Klick auf das DEB-<br />

Paket im Dateibrowser startet die<br />

Installation <strong>und</strong> löst dabei einige<br />

Abhängigkeiten selbstständig auf.<br />

Um alle Funktionen des Programms<br />

zu nutzen, gilt es jedoch,<br />

einige zusätzliche Pakete zu installieren.<br />

Zum Ausgeben von grafischen<br />

Auswertungen benötigt<br />

Anki python-numpy sowie pythonmatplotlib,<br />

für den Audio-Support<br />

den mplayer, sox, pyaudio <strong>und</strong><br />

lame. Bei der Installation legt das<br />

Setup im Gnome-Menü einen Programmstarter<br />

unter Bildung an.<br />

Anwender von Linux-Distributionen<br />

mit einer anderen Paketverwaltung<br />

als DPKG installieren das<br />

Programm aus den Quellen. Hier<br />

gilt es, zuvor python ab Version<br />

2.4, python-qt/pyqt, sqlalchemy,<br />

simplejson <strong>und</strong> pysqlite2 einzurichten.<br />

Wechseln Sie dann in das<br />

aus dem Tarball extrahierte Anki-<br />

Verzeichnis <strong>und</strong> tippen Sie sudo<br />

python setup.py install. Sie starten<br />

Anki danach mit dem Aufruf<br />

anki im Terminal.<br />

© Benito LeGrande, sxc.hu<br />

Setup<br />

Die gr<strong>und</strong>legenden Einstellungen<br />

des Programms erreichen Sie unter<br />

Einstellungen | Optionen. Im<br />

Reiter Einfach (Abbildung A) legen<br />

Sie unter anderem die Sprache<br />

sowie einige Anzeigemerkmale<br />

fest, etwa Trennlinie zwischen<br />

Frage <strong>und</strong> Antwort. Wie erwähnt<br />

erlaubt Anki das Einbinden von<br />

Multimedia-Dateien. Wo das Programm<br />

diese speichert, stellen Sie<br />

über Multimedia ein. Neben dem<br />

Sichern im Verzeichnis des zugehörigen<br />

Kartenstapels stellt das<br />

Programm auch Dropbox als<br />

möglichen Speicherort bereit. Der<br />

Vorteil: Die Dateien stehen Ihnen<br />

auf jedem Rechner mit installiertem<br />

Dropbox-Client [2] zur Verfügung.<br />

Warum Anki diese Option<br />

aber nicht auch für andere Objekte<br />

wie die Kartenstapel selbst<br />

anbietet, bleibt unklar.<br />

Der Abschnitt Netzwerk gestattet<br />

es unter anderem, einen Anki-<br />

Account anzulegen oder sich dort<br />

anzumelden. Dieser dient dazu,<br />

Stapel zu sichern <strong>und</strong> zu synchro-<br />

64 10 | 11<br />

www.linux-user.de


Anki<br />

praxis<br />

nisieren. Sofern Sie einen Proxy<br />

als Zugang ins Internet verwenden,<br />

tragen Sie ihn an dieser Stelle<br />

ein. Im Reiter Speichern geben<br />

Sie unter anderem vor, in welchem<br />

Zyklus Anki während der<br />

Abfrage Ihre Eingaben sichert,<br />

Erweitert ermöglicht es Ihnen unter<br />

anderem, den Zeitzähler einzublenden<br />

<strong>und</strong> farbig anzuzeigen<br />

oder die Anzeige für kleine Bildschirme<br />

zu optimieren.<br />

Der erste Start<br />

Wie in der analogen Welt unterscheidet<br />

auch Anki zwischen Stapeln<br />

<strong>und</strong> Karten, Letztere im Programm<br />

auch Fakten genannt. Stapel<br />

bezeichnen die Zusammenstellung<br />

mehrerer Karten aus einem<br />

Themengebiet. Ob Sie einen<br />

eigenen Stapel erstellen oder fertige<br />

aus dem Internet herunterladen<br />

möchten, entscheiden Sie im<br />

Modus Stapel, den das Programm<br />

beim Start anzeigt. Derzeit stehen<br />

mehrere H<strong>und</strong>ert der virtuellen<br />

Lernhelfer zum Download bereit.<br />

Die Themengebiete reichen<br />

dabei von Übungen zu den verschiedensten<br />

Sprachen bis hin zu<br />

LPIC-2-Vorbereitungen <strong>und</strong> Lernsätzen<br />

zu Anatomie. Nach Anwahl<br />

<strong>und</strong> Download des gewünschten<br />

Stapels erscheint dieser in der Tabelle<br />

unter Stapel (Abbildung B).<br />

Ein Klick auf Öffnen neben dem<br />

Eintrag führt Sie zu den Lern-Einstellungen,<br />

in denen Sie die Rahmenbedingungen<br />

festlegen, wie<br />

etwa die Reihenfolge der Abfrage<br />

oder den Zeitrahmen, in dem Sie<br />

die Aufgaben lösen möchten. Das<br />

Aktivieren<br />

von Lernen<br />

am unteren<br />

Rand startet<br />

die Abfrage<br />

(Abbildung<br />

C).<br />

Im oberen<br />

Feld erscheint<br />

danach<br />

der Begriff,<br />

den Sie<br />

lernen möchten.<br />

Nach einem<br />

Klick<br />

auf Antwort<br />

anzeigen zeigt Anki darunter die<br />

Lösung an. Je nachdem, wie einfach<br />

oder schwer die Frage für Sie<br />

war, wiederholen Sie diese Bald, in<br />

1 Tag, 4 Tagen oder erst in 7 Tagen.<br />

Das Anklicken des entsprechenden<br />

Schalters öffnet die nächste<br />

Frage des Stapels. Öffnen Sie den<br />

Stapel später wieder, erscheinen<br />

die Karten entsprechend Ihrer Zuordnung<br />

erst nach dem gewählten<br />

Zeitraum zur erneuten Abfrage.<br />

Zur Auswertung der erzielten<br />

Lernerfolge stellt Anki ein grafisches<br />

Analysetool bereit, das Sie<br />

über den Schalter Diagramme öffnen.<br />

Dieses zeigt danach auf acht<br />

Balkendiagramme verteilt unter<br />

anderem an, wann, wie oft <strong>und</strong> in<br />

welchen Abständen Sie Karten<br />

wiederholt haben (Abbildung D).<br />

Selbst gestaltet<br />

Damit ist Anki mit seinen Fähigkeiten<br />

aber noch lange nicht am<br />

Ende: Es kann auch Multimedia-<br />

Dateien <strong>und</strong> mathematische Formeln<br />

in die Karten einbinden.<br />

Zur Gestaltung der Karten setzt<br />

das Tool komplett auf LaTeX <strong>und</strong><br />

HTML, was erlaubt, das Layout<br />

praktisch frei zu definieren.<br />

Um eine neue Karte zu erstellen,<br />

klicken Sie nach Anwahl eines<br />

Stapels auf den grünen Plus-<br />

Schalter oben links. Es erscheint<br />

eine Eingabemaske, in der Sie<br />

Frage <strong>und</strong> Antwort eintragen. Darüber<br />

finden Sie mehrere Icons,<br />

mit denen Sie unter anderem den<br />

Text kolorieren <strong>und</strong> formatieren.<br />

Klicken Sie auf das Lautsprechersymbol,<br />

so erscheint ein Dateibrowser,<br />

über den Sie eine auf<br />

dem System vorhandene Audio-<br />

Datei in die Karte einbinden.<br />

Möchten Sie eine Bilddatei hinzufügen,<br />

klicken Sie auf die stilisierte<br />

Palette <strong>und</strong> anschließend<br />

im Dateibrowser auf die ge-<br />

A Die Einstellungen<br />

von Anki erlauben unter<br />

anderem das Einbinden<br />

von Dropbox als<br />

Speichermedium multimedialer<br />

Inhalte.<br />

Anki 1.2.8<br />

LU/anki/<br />

B Im Abschnitt Stapel<br />

zeigt Anki alle heruntergeladenen<br />

oder<br />

selbst erstellten Lernkarteien<br />

in der Übersicht<br />

an.<br />

anki-plugins<br />

Zum Erweitern des Funktionsumfangs<br />

von Anki nutzen Sie die Plugin-Schnittstelle.<br />

Um neue Erweiterungen hinzuzufügen,<br />

wechseln Sie ins Menü Datei<br />

| Herunterladen | Öffentlich freigegebenes<br />

Plugin…. Damit öffnet sich<br />

ein Auswahlfenster, das alle derzeit<br />

frei verfügbaren Plugins auflistet. Um<br />

eines davon hinzuzufügen, genügt es,<br />

das Gewünschte anzuwählen <strong>und</strong> danach<br />

mit OK zu bestätigen.<br />

Die Verwaltung der Erweiterungen erreichen<br />

Sie unter Einstellungen | Plugins.<br />

Der etwas missverständliche Unterpunkt<br />

Starten ermöglicht es, einzelne<br />

oder alle Module an- oder abzuschalten.<br />

Viele der Plugins entfalten ihr Potenzial<br />

aber erst im Backend – so etwa<br />

Google TTS. Es ermöglicht im Editiermodus,<br />

eine Frage via Google Text to<br />

Speech mit einer gesprochenen Version<br />

zu versehen. Ähnlich verhält es<br />

sich mit Leo: Das Plugin verlinkt sowohl<br />

Frage als auch Antwort direkt mit<br />

der Übersetzungsseite Dict.leo.org [3].<br />

www.linux-user.de<br />

10 | 11 65


praxis<br />

Anki<br />

C Je nachdem, ob<br />

Ihnen die Antwort<br />

schwer- oder leichtfiel,<br />

legen Sie fest, wann<br />

Anki die Karte wiederholen<br />

soll.<br />

wünschte Aufnahme. Hier gilt es<br />

zu beachten, dass die Applikation<br />

die Datei in der unveränderten<br />

Originalgröße anzeigt. Abhilfe<br />

schafft das Plugin „Resize Image“,<br />

das zumindest die Breite des Bildes<br />

an die aktuelle Darstellung<br />

anpasst (siehe Kasten Anki-Plugins,<br />

vorige Seite). Der Aufnahmeknopf<br />

daneben erlaubt es, per<br />

Mikrofon gesprochene Anmerkungen<br />

einzufügen. Im Lernmodus<br />

spielen Sie die hinterlegten<br />

Dateien mit dem Wiedergabeknopf<br />

in der Menüleiste ab.<br />

Ein Klick auf Kartenlayout im<br />

Hinzufügen-Modus öffnet ein<br />

weiteres Fenster, in dem Sie unter<br />

anderem die Ausrichtung des Textes<br />

beeinflussen. Am unteren<br />

Rand finden Sie einen Schalter,<br />

der in der Gr<strong>und</strong>einstellung auf<br />

Fordere mich nicht auf, die Antwort<br />

einzugeben steht. Ändern Sie das<br />

auf Mit Feld Antwort vergleichen,<br />

so erscheint zukünftig in allen<br />

Karten des verwendeten Stapels<br />

eine Eingabezeile, in der Sie die<br />

Antwort eintippen. Diese vergleicht<br />

Anki nach dem Klick auf<br />

Antwort anzeigen buchstabengenau<br />

mit der hinterlegten Antwort.<br />

Das weitgehend schlüssige<br />

Bedien konzept verkompliziert<br />

Anki durch sogenannte Modelle,<br />

von denen das Programm vier<br />

verschiedene (Einfach, Englisch,<br />

Französisch <strong>und</strong> Chinesisch) zum<br />

Einsatz bereitstellt. Solche Modelle<br />

fassen eine Liste von Vorlagen<br />

<strong>und</strong> Feldern zusammen, die es erlauben,<br />

die Stapel <strong>und</strong> Karten auf<br />

den jeweils benutzten Anwendungsfall<br />

auszurichten. Abgesehen<br />

von Ausnahmen genügt in<br />

der Regel jedoch das Modell Einfach.<br />

Weiterführende Informationen<br />

zum Thema erhalten Sie im<br />

Online-Manual [4].<br />

Um aktuell geladene Karten zu<br />

bearbeiten, klicken Sie auf das angedeutete<br />

Eingabefeld rechts neben<br />

dem grünen Pluszeichen. Damit<br />

öffnet sich der Editor, der<br />

weitgehend jenem zum Anlegen<br />

neuer Karten entspricht. Eine<br />

<strong>Vorschau</strong> fehlt jedoch in beiden<br />

Varianten, was sich speziell beim<br />

Einsatz von Multimedia-Dateien<br />

als hinderlich erweist.<br />

Im- <strong>und</strong> Export<br />

Seine Auslegung auf plattformunabhängiges<br />

Arbeiten beweist Anki<br />

nicht nur damit, dass es neben<br />

Linux auch für Mac OS X <strong>und</strong><br />

Windows zum Download bereitsteht,<br />

sondern auch mit den zahlreichen<br />

Funktionen zum Im- <strong>und</strong><br />

Export. Die einfachste Methode,<br />

Stapel zwischen Rechnern zu teilen,<br />

bietet Anki mit einem Online-<br />

Konto auf seiner Webseite.<br />

Klicken Sie nach der kostenfreien<br />

Anmeldung auf Datei | Synchronisieren,<br />

lädt das Programm den<br />

aktuell geöffneten Stapel auf das<br />

Konto [5]. In der Gr<strong>und</strong>einstellung<br />

geschieht das bei jedem<br />

Schließen des Programms automatisch.<br />

Arbeiten Sie an einem<br />

Rechner <strong>ohne</strong> installiertes Anki,<br />

können Sie die Fragen hochgeladener<br />

Stapel nach der Anmeldung<br />

auch direkt via Browser beantworten<br />

oder editieren.<br />

Zum Importieren online abgelegter<br />

Stapel klicken Sie auf Datei<br />

| Herunterladen | Eigener Stapel<br />

<strong>und</strong> wählen aus dem Dialog das<br />

Gewünschte aus. Lokal gespeicherte<br />

Stapel fügen Sie via Datei |<br />

Importieren… Ihren Stapeln hinzu.<br />

Fazit<br />

Anki leistete sich im Test keinen<br />

einzigen Fehler oder Absturz, was<br />

für saubere Programmierung<br />

spricht – bei einem Projekt solcher<br />

Komplexität beileibe keine Selbstverständlichkeit.<br />

An einigen Stellen<br />

war die Übersetzung jedoch inkonsistent,<br />

meist aber erst in tiefer<br />

verschachtelten Einstellungen.<br />

Auch fuhr das Python-Programm<br />

in der Nutzerführung Minuspunkte<br />

ein: An der Oberfläche<br />

noch schlüssig <strong>und</strong> leicht zu<br />

durchschauen, änderte sich das<br />

Bild in den Tiefen der Konfiguration.<br />

Wollen Sie das Programm<br />

ausreizen, kommen Sie um einen<br />

Blick ins umfangreiche englische<br />

Manual nicht herum. Dafür belohnt<br />

Anki Sie dann mit einem<br />

weitgehend frei konfigurierbaren<br />

Fragenkatalog, der wohl jedem<br />

Anspruch genügt. (tle) n<br />

D Ankis Karteneditor<br />

bietet eine Vielzahl von<br />

Möglichkeiten, zusätzliche<br />

Medien einzubinden<br />

<strong>und</strong> das Layout<br />

dem eigenen Geschmack<br />

oder Bedürfnis<br />

anzupassen.<br />

info<br />

[1] Anki: http:// ankisrs. net<br />

[2] Dropbox: http:// www. dropbox. com<br />

[3] Leo: http:// dict. leo. org<br />

[4] Online-Manual:<br />

http:// ankisrs. net/ docs/ index. html<br />

[5] Anki-Online-Konto:<br />

http:// anki. ichi2. net/ study<br />

66 10 | 11<br />

www.linux-user.de


EINfaCH auf LINuX<br />

umSTEIGEN!<br />

4 x im Jahr kompaktes Linux-Know-how - IMMER mit 2 DVDs<br />

15%<br />

sparen<br />

EASYLINUX-JAHRES-ABO<br />

NUR 33,30E*<br />

❱<br />

JETZT GRaTIS<br />

aBo-pRämIE<br />

SICHERN!<br />

Ich bekomme gratis:<br />

1. das EasyLinux Mega-Archiv<br />

Jahres-DVD 2010 (8 Jahre Easy-<br />

Linux auf einer DVD)<br />

2. DVD „Die Reise der Pinguine“<br />

(solange Vorrat reicht)<br />

Coupon<br />

*Preise außerhalb Deutschlands siehe www.easylinux.de/abo<br />

ich möchte EasyLinux für nur 8,33 Euro* pro Ausgabe<br />

Ja,<br />

abonnieren.<br />

ich möchte für nur 1 € pro Monat das EasyLinux-<br />

Ja,<br />

Community-Abo abschließen. Jederzeit Zugriff<br />

auf alle Online-Artikel, Workshops <strong>und</strong> mehr.<br />

Ich zahle pro Ausgabe nur € 8,33* statt € 9,80* im Einzelverkauf.<br />

Ich erhalte EasyLinux alle drei Monate (vier Ausgaben pro Jahr) zum Vorzugspreis von<br />

€ 33,30* pro Jahr bei jährlicher Verrechnung. Möchte ich EasyLinux nicht mehr<br />

haben, kann ich das Abonnement nach einem Jahr jederzeit kündigen.<br />

Name, Vorname<br />

Datum<br />

Unterschrift<br />

Mein Zahlungswunsch: Bequem per Bankeinzug Gegen Rechnung<br />

Straße, Nr.<br />

BLZ<br />

Konto-Nr.<br />

PLZ<br />

Ort<br />

Bank<br />

JETZT GLEICH BESTELLEN!<br />

n Tel.: 07131 / 2707 274 n fax: 07131 / 2707 78 601<br />

n uRL: www.easylinux.de/abo n E-mail: abo@easylinux.de


praxis<br />

Imagination<br />

Diashows erstellen mit Imagination<br />

Elegante<br />

Vorstellung<br />

Präsentieren Sie Ihre Fotos einmal anders: Als Diaschau ganz <strong>ohne</strong><br />

Dias. Imagination hat die Funktionen dazu. Vincze-Aron Szabo<br />

© Christos Georghiou, Fotolia<br />

Imagination 3.0<br />

LU/imagination/<br />

rEaDME<br />

Mit Imagination erstellen<br />

Sie im Handumdrehen<br />

effektvolle Diashows Ihrer<br />

Fotos samt musikalischer<br />

Untermalung <strong>und</strong><br />

eindrucksvollen Überblendeffekten.<br />

A In den Diaschau-<br />

Einstellungen legen<br />

Sie das Format fest, in<br />

das Imagination die<br />

Slideshow nach dem<br />

Bearbeiten exportiert.<br />

Wollte man früher in geselliger<br />

R<strong>und</strong>e die neuesten Urlaubsfotos<br />

präsentieren, ließ man seine Fotos<br />

als Dia entwickeln <strong>und</strong> schleppte<br />

dann die gesamte Ausrüstung zum<br />

Familientreffen mit: Diaprojektor,<br />

Leinwand <strong>und</strong> – nicht zu vergessen<br />

– die mit den Dias gefüllten<br />

Magazine. War endlich alles aufgebaut<br />

<strong>und</strong> hatte sich das Publikum<br />

zu fünft auf das Dreiersofa gequetscht,<br />

konnte die Vorführung<br />

beginnen. Der Bediener drückte<br />

den entsprechenden Knopf auf<br />

der Fernbedienung, <strong>und</strong> der Projektor<br />

sorgte für das typische Geräusch,<br />

das sich anhörte wie das<br />

Durchladen eines Plastikgewehrs.<br />

Ein neues Dia wurde vor die Linse<br />

geschoben, <strong>und</strong> auf der Leinwand<br />

war die nächste Urlaubserinnerung<br />

zu bew<strong>und</strong>ern.<br />

Mit der analogen Fotografie verschwinden<br />

auch die Diaschauen.<br />

Statt Projektor <strong>und</strong> Leinwand<br />

kommen mittlerweile Monitor,<br />

Smartphone, Fernseher oder sogar<br />

Beamer zum Einsatz, um die<br />

jüngsten Reiseerlebnisse anderen<br />

zu präsentieren Doch die Atmosphäre<br />

eines Dia-Abends muss dabei<br />

nicht verloren gehen: Statt<br />

nacheinander Bilder aus einem<br />

Dateimanager heraus aufzurufen,<br />

können Sie mithilfe von entsprechenden<br />

Tools schöne Fotosequenzen<br />

erstellen. Ein solches<br />

Werkzeug ist Imagination [1], mit<br />

dem Sie Fotosequenzen<br />

–<br />

sogenannte<br />

Slide shows –<br />

erstellen. Sie<br />

können einzelne<br />

Fotos wie in<br />

einer Diaschau<br />

nacheinander<br />

abspielen <strong>und</strong><br />

dazu selbst ausgewählte Hintergr<strong>und</strong>musik<br />

laufen lassen. Für das<br />

Überblenden zwischen den einzelnen<br />

Fotos bietet das Programm<br />

verschiedene Übergänge. Passenderweise<br />

heißen Fotos in Imagination<br />

auch „Dia“. Imagination<br />

erstellt Slideshows im DVD-gerechten<br />

VOB-Format, als Flash,<br />

Theora Vorbis oder 3GP.<br />

Installation<br />

Imagination liegt derzeit in Version<br />

3.0 vor. Nach dem Herunterladen<br />

[2] des Quell-Tarballs (auch<br />

auf der Heft-DVD) entpacken Sie<br />

diesen in ein beliebiges Verzeichnis<br />

(Listing 1, Zeile 1). Anschließend<br />

wechseln Sie in den entpackten<br />

Ordner (Zeile 2). Dort öffnen<br />

Sie nun die Datei src/support.h mit<br />

einem Texteditor (Zeile 3), suchen<br />

die Zeile #define PLUGINS_INSTALLED<br />

0 <strong>und</strong> ändern die 0 in eine 1. Speichern<br />

Sie diese Änderung <strong>und</strong><br />

schließen Sie den Editor wieder.<br />

Durch diese kleine Anpassung<br />

stehen Ihnen nachher auch die<br />

Übergänge zwischen einzelnen<br />

68 10 | 11<br />

www.linux-user.de


Imagination<br />

praxis<br />

Bildern zur Verfügung – andernfalls<br />

würden Sie keine Übergänge<br />

auswählen können.<br />

Führen Sie nun ./configure aus,<br />

um Imagination für Ihr System zu<br />

konfigurieren. Eventuell erhalten<br />

Sie hier die Meldung, dass bestimmte<br />

Pakete fehlen. Richten<br />

Sie die fehlenden Komponenten<br />

dann über den Paketmanager des<br />

Systems ein <strong>und</strong> rufen Sie ./configure<br />

erneut auf. Unter Linux Mint<br />

11 mussten wir beispielsweise die<br />

Pakete docbook-xsl, intltool,<br />

libglib2.0-dev, libgtk2.0-dev <strong>und</strong><br />

libsox-dev nachinstallieren.<br />

Nach der Konfiguration übersetzen<br />

<strong>und</strong> installieren Sie Imagination<br />

mit dem bekannten Dreischritt<br />

(Zeile 4 bis 6). Im Anschluss<br />

starten Sie die Anwendung<br />

über den Befehl imagination<br />

auf der Kommandozeile oder per<br />

Maus über das Startmenü.<br />

Erste Schritte<br />

Nach dem Start legen Sie zuerst<br />

über den Menüeintrag Diaschau |<br />

Neu oder über die Tastenkombination<br />

[Strg]+[N] eine neue Diaschau<br />

an. Im Dialog Neue Diaschau<br />

anlegen nehmen Sie gr<strong>und</strong>legende<br />

Einstellungen zum Format<br />

(siehe Tabelle Videoformate)<br />

<strong>und</strong> der Größe des Videos vor.<br />

Abhängig von der Auswahl des<br />

Formats stehen verschiedene<br />

Größen zur Auswahl. Nachdem<br />

Sie Format <strong>und</strong> Größe ausgewählt<br />

haben, aktivieren Sie die Funktion<br />

Bilder in das Format einpassen<br />

<strong>und</strong> legen eine passende Hintergr<strong>und</strong>farbe<br />

fest, bevor Sie den<br />

Dialog bestätigen.<br />

Nun holen Sie die zu präsentierenden<br />

Fotos in die Slideshow.<br />

Dazu klicken Sie im Menü auf<br />

Diaschau | Bilder importieren oder<br />

drücken [Strg]+[I]. Navigieren Sie<br />

nun in das Verzeichnis mit den<br />

gewünschten Bildern <strong>und</strong> wählen<br />

Sie die entsprechenden Dateien<br />

aus. Sie können auch nachträglich<br />

weitere Bilder hinzufügen. Haben<br />

Sie eine Auswahl getroffen, erscheinen<br />

die Bilder am unteren<br />

Fensterrand in einer Leiste.<br />

Hier bringen Sie die Bilder per<br />

Maus in die gewünschte Reihenfolge.<br />

Dazu halten Sie die linke<br />

Maustaste gedrückt <strong>und</strong> ziehen<br />

einzelne Bilder an die vorgesehene<br />

Stelle. Möchten Sie dabei nicht<br />

immer durch die gesamte Leiste<br />

scrollen, dann erleichtern Sie sich<br />

mit dem Übersichtsmodus das<br />

Leben: Klicken Sie dazu im Menü<br />

Ansicht auf Übersicht. Nun zeigt<br />

Imagination die Bilder ähnlich<br />

wie in einem Dateimanager an.<br />

Denken Sie bei all der Verschieberei<br />

auch daran, Ihr Projekt zwischendurch<br />

zu speichern.<br />

Haben Sie die richtige Reihenfolge<br />

gef<strong>und</strong>en, geht es an die Gestaltung<br />

der Slideshow. Sie können<br />

für jedes Bild eigene Einstellungen<br />

festlegen (Abbildung B),<br />

wie Texte, Überblendeffekte <strong>und</strong><br />

Anzeigedauer. Allerdings bedeutet<br />

das, dass Sie tatsächlich auch<br />

jedes Bild in die Hand nehmen<br />

müssen: Es fehlt die Möglichkeit,<br />

01 $ tar ‐xzf<br />

imagination‐3.0.tar.gz<br />

02 $ cd imagination‐3.0/<br />

03 $ gedit src/support.h<br />

04 $ .configure<br />

05 $ make<br />

06 $ sudo make install<br />

Listing 1<br />

Einstellungen von einem Foto auf<br />

ein anderes zu übertragen. Immerhin<br />

können Sie bei gedrücktem<br />

[Strg] mehrere Bilder mit der<br />

Maus markieren <strong>und</strong> gemeinsame<br />

Einstellungen treffen.<br />

Effektiv<br />

Um Einstellungen für ein einzelnes<br />

Bild vorzunehmen, wählen Sie<br />

dieses aus <strong>und</strong> passen in den<br />

rechts daneben platzierten Reitern<br />

die Optionen an. Im Tab<br />

Video verbergen sich alle wichtigen<br />

Eigenschaften für die Optik. Unter<br />

Überblend-Effekt wählen Sie<br />

aus der Auswahlliste einen passen-<br />

B In Imagination legen<br />

Sie für jedes Bild getrennt<br />

die Anzeigedauer,<br />

Überblendeffekte<br />

<strong>und</strong> zahlreiche<br />

weitere Einstellungen<br />

fest.<br />

ViDEoforMatE<br />

Kürzel Format Erläuterung<br />

VOB DVD Video VOB ist ein Containerformat für<br />

DVDs, das neben den eigentlichen<br />

Videos auch Untertitel <strong>und</strong> Menüinformationen<br />

enthalten kann. VOB-<br />

Dateien mit Videos sind üblicherweise<br />

MPEG-2- oder MPEG-1-codiert.<br />

OGV Theora Vorbis Theora ist ein freier Videocodec <strong>und</strong><br />

ist als patentfreies Pendant als Alternative<br />

zu anderen verwendeten<br />

Codecs im Internet gedacht.<br />

FLV Flash Video Dateien im bekannten Flash-Format<br />

können mit vielen gängigen Playern<br />

abgespielt werden.<br />

3GP Mobile Phones Containerformat für Mobiltelefone,<br />

das auf MPEG4 basiert.<br />

www.linux-user.de<br />

10 | 11 69


praxis<br />

Imagination<br />

C Imagination stellt<br />

zahlreiche Überblendeffekte<br />

zur Verfügung.<br />

D Jedes Bild, dem Sie<br />

einen Überblendeffekt<br />

zuordnen, versieht<br />

Imagination mit einem<br />

entsprechenden Icon.<br />

den Effekt aus (Abbildung C). Die<br />

Menü-Einträge dieser Auswahlliste<br />

erscheinen zwar auf Englisch,<br />

doch die kleinen <strong>Vorschau</strong>bildchen<br />

unten machen ganz schnell klar,<br />

um was für einen Effekt es sich jeweils<br />

handelt, <strong>ohne</strong> diesen schon<br />

auswählen zu müssen.<br />

Experimentierfreudige klicken<br />

einfach auf Zufällig, woraufhin<br />

Imagination selbst einen Effekt<br />

aussucht. Der eingestellte Effekt<br />

gilt stets für die Überblendung<br />

vom vorherigen Bild auf das aktuelle<br />

Foto. Haben Sie einen Überblendeffekt<br />

ausgewählt, signalisiert<br />

Imagination diesen durch<br />

ein kleines Icon am zugehörigen<br />

<strong>Vorschau</strong>bildchen (Abbildung D).<br />

Zusätzlich legen Sie über die<br />

entsprechenden Felder die Überblendgeschwindigkeit<br />

sowie die<br />

Anzeigedauer fest. Unter Länge<br />

der Diaschau behalten Sie immer<br />

im Blick, wie lange die Diaschau<br />

mit den getroffenen Einstellungen<br />

insgesamt dauert.<br />

Das Gesamtergebnis<br />

können Sie<br />

sich als <strong>Vorschau</strong><br />

über das Abspielsymbol<br />

Startet die<br />

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

Werkzeugleiste<br />

schon einmal ansehen.<br />

Möchten Sie<br />

wissen, wie oft welcher<br />

Überblendeffekt<br />

an welcher Stelle<br />

der Slideshow<br />

zum Einsatz kommt,<br />

hilft der Menüpunkt<br />

Dia | Bericht weiter<br />

(Abbildung E).<br />

Kennen Sie Ken Burns?<br />

Als „Ken-Burns-Effekt“ bezeichnet<br />

man das Verfahren, mittels<br />

Vergrößern <strong>und</strong> Schwenken aus<br />

einem Standbild ein Pseudo-Bewegtbild<br />

zu erstellen. Als Namensgeber<br />

dient dabei der renommierte<br />

<strong>und</strong> mehrfach ausgezeichnete<br />

US-amerikanische Dokumentarfilmer<br />

Ken Burns [3],<br />

der diese Technik zwar nicht erf<strong>und</strong>en<br />

hat, sie jedoch in seinen<br />

Filmen meisterlich anwendet.<br />

Dank Imagination setzen auch<br />

Sie bequem dieses Verfahren ein,<br />

um beispielsweise die Aufmerksamkeit<br />

der Zuschauer durch<br />

Ausrichten <strong>und</strong> Zoomen auf einen<br />

bestimmten Punkt (etwa ein<br />

Gesicht) zu lenken.<br />

Schieben Sie dazu den Regler<br />

Zoom im Bereich Dia-Bewegung<br />

nach rechts, um etwas in das Bild<br />

hineinzuzoomen. Nun ziehen Sie<br />

mit gedrückter linker Maustaste<br />

das Bild an diejenige Stelle, in die<br />

Imagination später per Ken-<br />

Burns-Effekt hineinzoomen soll.<br />

Gegebenenfalls müssen Sie dabei<br />

den Vergrößerungsfaktor noch<br />

ein wenig nachjustieren. Über<br />

Dauer legen Sie fest, wie lange der<br />

Fokus auf diesem Punkt liegen<br />

soll. Entspricht das Ergebnis<br />

schließlich Ihren Ansprüchen, klicken<br />

Sie auf Hinzufügen <strong>und</strong> erstellen<br />

damit einen sogenannten<br />

Anhaltepunkt.<br />

Sie können auf einem Bild auch<br />

mehrere Anhaltepunkte anlegen<br />

– etwa, um auf Gruppenfotos jedes<br />

Gesicht einmal im Porträt<br />

vergrößert zu zeigen. Als ersten<br />

Anhaltepunkt sollten Sie immer<br />

das komplette, nicht gezoomte<br />

Bild verwenden – anderenfalls<br />

startet Imagination dieses Bild in<br />

der Diaschau gegebenenfalls stark<br />

hineingezoomt am ersten Anhaltepunkt.<br />

Möchten Sie einen einzelnen<br />

Anhaltepunkt nachträglich<br />

verändern, wählen Sie ihn<br />

dazu über die Pfeil-Schalter aus.<br />

Vergessen Sie nicht, nach erfolgter<br />

Änderung mittels Aktualisieren<br />

die Anpassungen zu übernehmen.<br />

Zum Löschen klicken Sie<br />

einfach auf Entfernen.<br />

Beim ersten Versuch, mit dem<br />

Ken-Burns-Effektwerkzeug zu arbeiten,<br />

gelangen Sie wahrscheinlich<br />

nicht sofort ans Ziel der Wünsche.<br />

Mit ein wenig Ausprobieren<br />

stellen sich dann aber zügig zufriedenstellende<br />

Ergebnisse ein.<br />

Text <strong>und</strong> Musik<br />

Über den Bereich Dia-Text fügen<br />

Sie einer Abbildung auch Texte<br />

hinzu. Neben der Schriftart <strong>und</strong><br />

der Schriftgröße legen Sie dabei<br />

über die beiden entsprechenden<br />

Buttons auch eine Füllfarbe <strong>und</strong><br />

eine Schriftkonturfarbe fest. Zusätzlich<br />

können Sie unter Animation<br />

einen Effekt für das Einblenden<br />

des Textes auswählen. Über<br />

den Punkt Position des Untertitels<br />

bestimmen Sie, an welcher Stelle<br />

des Bildes der Text erscheint.<br />

Um die Stimmung zu pointieren<br />

oder bei langen Diaschauen keine<br />

Langeweile aufkommen zu lassen,<br />

hilft oft eine passende musiinfo<br />

[1] Imagination:<br />

http:// imagination. sourceforge. net<br />

[2] Download: http:// sourceforge. net/ projects/<br />

imagination/ files/ imagination/ 3. 0/<br />

[3] Ken Burns (Wikipedia):<br />

http:// de. wikipedia. org/ wiki/ Ken_Burns<br />

[4] Bombono DVD: Vincze-Aron Szabo, „Menü<br />

mit drei Gängen“, LU 09/ 2011, S. 48,<br />

http:// www. linux-community. de/ 22904<br />

70 10 | 11<br />

www.linux-user.de


Imagination<br />

praxis<br />

kalische Untermalung. Klicken<br />

Sie dazu im Menü auf Diaschau |<br />

Musik importieren oder drücken<br />

Sie [Strg]+[M]. Über den sich öffnenden<br />

Dialog wählen Sie anschließend<br />

die gewünschten Musikdateien<br />

aus. Dann passen Sie<br />

die Reihenfolge der Stücke unter<br />

dem Reiter Audio an.<br />

Export<br />

Sind Sie mit allen Einstellungen<br />

zufrieden, exportieren Sie nun<br />

die Diaschau als Video. Vorher<br />

lohnt es sich eventuell, noch einmal<br />

die <strong>Vorschau</strong>funktion über<br />

Diaschau | <strong>Vorschau</strong> auszuführen.<br />

Den Export, also das Erzeugen<br />

der eigentlichen Slideshow, stoßen<br />

Sie über Diaschau | Exportieren<br />

an. In dem sich daraufhin öffnenden<br />

Dialog treffen Sie weitere<br />

Einstellungen, wie zum Beispiel<br />

Qualität, Format <strong>und</strong> Auflösung.<br />

Zu guter Letzt starten Sie dann<br />

den Export.<br />

Haben Sie mehrere Slideshows<br />

produziert, können Sie noch einen<br />

Schritt weitergehen <strong>und</strong> das<br />

Gesamtkunstwerk zum Beispiel<br />

auf eine DVD brennen. Ein ansprechendes<br />

Menü dazu erstellen<br />

Sie beispielsweise mit Bombono<br />

[4]. So haben Sie am Ende ein<br />

optisches Schmankerl erarbeitet,<br />

das sich prima verschenken lässt.<br />

Fazit<br />

Trotz einiger Haken in der Handhabbarkeit<br />

lassen sich mit Imagination<br />

ansehnliche Slideshows erstellen.<br />

Ein paar Funktionen fehlen<br />

allerdings noch: So würde der<br />

Bedienkomfort beträchtlich von<br />

Eigenschaftsprofilen profitieren,<br />

mit denen man die Einstellungen<br />

eines angepassten Fotos nachträglich<br />

auf weitere Bilder übertragen<br />

könnte. Dennoch macht<br />

die Arbeit mit Imagination Spaß<br />

<strong>und</strong> führt zu sehr ansehnlichen<br />

Ergebnissen. Dazu trägt nicht zuletzt<br />

bei, dass die Entwickler die<br />

Anwendung auf das funktional<br />

Notwendigste reduziert haben,<br />

sodass auch Einsteiger tolle Diaschauen<br />

zusammenstellen können,<br />

<strong>ohne</strong> sich langwierig einarbeiten<br />

zu müssen. (jlu) n<br />

E Über Dia | Bericht<br />

können Sie sich anzeigen<br />

lassen, wie oft Sie<br />

einzelne Übergänge<br />

verwenden.


praxis<br />

Digikam<br />

Digikam schafft Ordnung bei den Bildern<br />

Sammeln <strong>und</strong><br />

Strukturieren<br />

© Krayker, sxc.hu<br />

Durch innovative<br />

Suchmethoden<br />

sorgt Digikam dafür,<br />

dass Sie in<br />

Ihrem Bildarchiv<br />

schnell <strong>und</strong> zielsicher<br />

die gewünschten<br />

Motive finden.<br />

Karsten Günther<br />

rEaDME<br />

Die wachsenden Mengen<br />

digitaler Bilder erfordern<br />

die richtigen<br />

Werkzeuge, um einzelne<br />

Motive zu finden. Digikam<br />

kombiniert zahlreiche<br />

Mechanismen,<br />

um Struktur in die Bilderflut<br />

zu bringen.<br />

Mit einer steigenden Anzahl<br />

von Bildern auf der Festplatte<br />

wachsen die Schwierigkeiten, ein<br />

gewünschtes Bild wiederzufinden.<br />

Hier setzen Bildarchive wie Digikam,<br />

F-Spot oder Shotwell an: Sie<br />

identifizieren die Bilder nicht nur<br />

über EXIF-Tags, sondern erlauben<br />

zusätzlich das Vergeben von Stichwörtern<br />

sowie komplexe Suchen.<br />

Digikam [1] arbeitete ursprünglich<br />

als Datenbank-Frontend, verfügt<br />

heute aber über wesentlich<br />

mehr Funktionen, wie einen<br />

Leuchttisch <strong>und</strong> Möglichkeiten<br />

zum Bearbeiten von Bildern sowie<br />

Funktionen, um verwaltete Bilder<br />

wiederzufinden. Das Programm<br />

importiert alle gängigen Bildformate<br />

<strong>und</strong> Kamera-Rohdaten, die<br />

es bei Bedarf seit einiger Zeit sogar<br />

nach DNG wandelt.<br />

Alle Angaben im Folgenden beziehen<br />

sich auf Digikam 1.2.0, basierend<br />

auf KDE SC 4.4.5 aus dem<br />

Repository von Ubuntu 10.04.<br />

Spaltenkünstler<br />

Die Programmoberfläche teilt sich<br />

in drei Spalten (Abbildung A):<br />

Links befindet sich die Suchspalte,<br />

die entsprechenden Treffer<br />

zeigt Digikam in der mittleren<br />

Spalte. Für dort ausgewählte Bilder<br />

erscheinen rechts Details.<br />

Über Buttons in den Rahmen<br />

blenden Sie die äußeren Spalten<br />

ein oder aus. Der obere Rand enthält<br />

Schalter für häufig benötigte<br />

Funktion, der untere eine Statuszeile.<br />

Über einen Regler <strong>und</strong> eine<br />

Schaltfläche passen Sie die Größe<br />

der angezeigten Bilder ein.<br />

Im linken Rahmen (Bereich 1)<br />

steuern Sie über sieben Schaltflächen<br />

die Anzeige in dieser Spalte:<br />

Es gibt eine Übersicht der Alben,<br />

eine kalendarisch sortierte Ansicht,<br />

eine Liste der Stichworte,<br />

eine Zeitleiste mit den Entstehungsdaten<br />

der Bilder sowie drei<br />

Suchfunktionen: die Suche nach<br />

einem Stichwort, eine unscharfe<br />

Suche sowie die Suche nach Geodaten.<br />

Die Suchkriterien geben<br />

Sie am unteren Rand ein.<br />

Bilder, die den Kriterien entsprechen,<br />

zeigt Digikam oben in<br />

der Mitte als Liste (Bereich 3), bei<br />

Bedarf schalten Sie dies über<br />

[Strg]+[T] um. Ein Doppelklick<br />

auf ein Bild vergrößert die Ansicht<br />

(Bereich 4). Am unteren<br />

Rand gibt es ein Eingabefeld für<br />

Stichwörter (Bereich 6), eine Auswahl<br />

für Dateitypen (Bereich 7)<br />

<strong>und</strong> sternförmige Radiobuttons<br />

(Bereich 8), über die Sie steuern,<br />

welche Wertung Bilder haben sollen,<br />

die das Programm nach der<br />

Suche anzeigt.<br />

Digikam führt bei Bedarf mehrere<br />

Varianten von Detailinformationen<br />

zum aktuellen Bild auf, wie<br />

Dateieigenschaften, Metadaten<br />

(EXIF-, IPTC-, XMP-Tags), Farbinformationen,<br />

Beschriftungen <strong>und</strong><br />

Stichwörter. Ein typischer Arbeitsablauf<br />

sieht vor, dass Sie Bilder<br />

von einer Kamera, einem Kartenleser<br />

oder USB-Medium einlesen.<br />

Dabei hat es sich bewährt,<br />

die Bilder zunächst in ein spezielles<br />

Eingangsverzeichnis zu importieren.<br />

Arbeiten Sie mit Rohdaten,<br />

sollten Sie diese nach DNG konvertieren,<br />

was später den Austausch<br />

vereinfacht.<br />

Nach dem Import haben Sie die<br />

Möglichkeit, die Bilder zu bewerten<br />

<strong>und</strong> jene auszuwählen, die Sie<br />

in Alben verschieben wollen. Über<br />

Stichwörter, Kommentare <strong>und</strong> die<br />

geographischen Daten vereinfachen<br />

Sie ein späteres Auffinden<br />

der Motive. Bei Bedarf bearbeiten<br />

72 10 | 11<br />

www.linux-user.de


Digikam<br />

praxis<br />

<strong>und</strong> verbessern Sie die Fotos. Für<br />

ein detaillierteres Bearbeiten<br />

lohnt es sich aber, auf externe<br />

Programme zurückzugreifen.<br />

Importieren<br />

Um Bilder <strong>und</strong> andere Multimediadaten<br />

in die Applikation aufzunehmen,<br />

steht ein eigener<br />

Menüpunkt Importieren bereit.<br />

Dieses Menü erlaubt neben dem<br />

Einlesen der Inhalte von einer<br />

Kamera oder einem USB-Speicher<br />

das Kopieren der Daten von einem<br />

Kartenleser. Zwei weitere<br />

Punkte regeln den Import von lokalen<br />

Ordnern <strong>und</strong> Dateien, der<br />

Rest der Menüpunkte erlaubt den<br />

Zugriff auf Bilder in Online-Alben<br />

wie Facebook oder Picasa.<br />

Nach dem Anstecken eines Mediums<br />

erscheint ein neues Fenster,<br />

das die auf dem Speicher befindlichen<br />

Dateien anzeigt. Nun<br />

laden Sie entweder alle oder nur<br />

ausgewählte Bilder herunter.<br />

Nach einem Klick auf die entsprechende<br />

Schaltfläche fragt das Programm<br />

ab, in welches Album Sie<br />

die Bilder importieren möchten.<br />

Dabei können Sie alternativ auch<br />

ein neues Album anlegen. In jedem<br />

Fall haben Sie die Möglichkeit,<br />

die Eigenschaften des Albums<br />

(Titel, Kategorie oder Datum)<br />

zu bearbeiten. Ein Import<br />

ist zwar empfehlenswert, aber<br />

nicht zwingend notwendig: Da Digikam<br />

die verwalteten Verzeichnisse<br />

überwacht, genügt es auch,<br />

mit einem Dateimanager Bilder<br />

direkt in ein Album zu kopieren.<br />

Verzeichnisse lädt Digikam mit<br />

allen Unterverzeichnissen, sofern<br />

deren Namen nicht mit einem<br />

Punkt beginnen. Beim Import<br />

von Verzeichnissen kopiert die<br />

Software stillschweigend sämtliche<br />

darin enthaltenen Dateien,<br />

auch solche, die das Programm<br />

weder liest noch anzeigt.<br />

Für das direkte Laden von Bildern<br />

von der Kamera verwendet<br />

die Applikation Libgphoto2, die<br />

dieses Verfahren für viele gängigen<br />

Kameras ermöglicht. Das<br />

funktioniert allerdings nur, solange<br />

Sie die Kamera nicht als<br />

Massenspeicher eingehängt haben.<br />

Kameras, die diese Technik<br />

verwenden, erscheinen als Mass<br />

Storage Camera.<br />

Taggen <strong>und</strong> Bewerten<br />

Nach dem Laden in die Datenbank<br />

bietet es sich an, die Bilder<br />

zu verschlagworten. Sie können<br />

auch mehrere Bilder auswählen<br />

<strong>und</strong> mit einem gemeinsamen<br />

Schlagwort versehen: Das Kontextmenü<br />

jedes markierten Bildes<br />

zeigt unter Stichwort zuweisen<br />

eine Liste der bisher bekannten<br />

Stichwörter. Fehlt das Gewünschte<br />

für die ausgewählten Bilder, legen<br />

Sie es über Neues Stichwort<br />

hinzufügen an. Alternativ ziehen<br />

Sie die Stichwörter aus der Liste<br />

rechts auf die entsprechenden<br />

Bilder, was aber ein zusätzliches<br />

Bestätigen erfordert. Dafür bietet<br />

dieses Verfahren die Möglichkeit,<br />

in einem Schritt mehrere Stichwörter<br />

aus der Liste auszuwählen.<br />

Die einzelnen Tags trennen Sie<br />

mit Kommas. Analog entfernen<br />

Sie Stichwörter: Das Kontextmenü<br />

enthält einen entsprechenden<br />

Eintrag zum Entfernen der Tags<br />

von Bildern.<br />

Eine weitere, effektive Methode<br />

des Verschlagwortens stellt in der<br />

rechten Spalte der Reiter Beschriftung/<br />

Stichwörter (Abbildung B,<br />

nächste Seite) bereit. Dort zeigt<br />

Digikam veränderbare Details zu<br />

den ausgewählten Aufnahmen.<br />

Hier stellen Sie die Bewertung,<br />

das Aufnahmedatum sowie weitere<br />

Daten ein – <strong>und</strong> vergeben natürlich<br />

Stichwörter: Meine Stichwörter<br />

enthält eine Liste aller in<br />

der Datenbank vergebenen Stichwörter,<br />

von denen Sie die gewünschten<br />

via Mausklick in einer<br />

Checkbox auswählen. Zusätzlich<br />

stehen die zuletzt genutzten<br />

Stichwörter über den Button ganz<br />

rechts in dieser Zeile bereit. Der<br />

Button links davon bewirkt, dass<br />

Digikam die Liste auf die in den<br />

ausgewählten Bildern bisher<br />

schon verwendeten beschränkt.<br />

Digikam bietet die Möglichkeit,<br />

Stichwörter in Hierarchien zu<br />

ordnen. Als Trennsymbol verwendet<br />

es dabei einen Schrägstrich.<br />

Es empfiehlt sich, von dieser<br />

Möglichkeit Gebrauch zu machen:<br />

Legen Sie zu viele Einträge direkt<br />

auf der obersten Ebene an, hat<br />

das den Nachteil, dass die Liste<br />

A Das Hauptfenster<br />

von Digikam fasst die<br />

Elemente zum Verwalten<br />

der Bilder in drei<br />

Spalten zusammen.<br />

Glossar<br />

DNG: Ein von Adobe auf<br />

dem TIFF/ EP-Standard<br />

basierendes Format für<br />

digitale Negative. Das<br />

Unternehmen erlaubt<br />

den lizenzfreien Einsatz<br />

<strong>und</strong> hat einen Entwurf<br />

an die ISO-Gremien geschickt,<br />

um das Format<br />

in TIFF/ EP zu integrieren.<br />

installation<br />

Alle gängigen Distributionen führen Digikam in ihren Repositories.<br />

Um allerdings alle Features von Digikam zu nutzen, müssen<br />

Sie auch die Kipi-Plugins installieren. Für eine deutschsprachige<br />

Oberfläche benötigt das Programm zusätzlich das Paket kdel10n-de<br />

. Beim ersten Start aktiviert Digikam einen Assistenten,<br />

um einige Einstellungen vorzunehmen. Die meisten Möglichkeiten<br />

sind gut erklärt, die Voreinstellungen erweisen sich als<br />

sinnvoll – etwa beim Anlegen der Datei für die Datenbank im<br />

Wurzelverzeichnis. Beim Einsatz von Rohdaten lohnt es sich, den<br />

passenden Editor zu aktivieren.<br />

www.linux-user.de<br />

10 | 11 73


praxis<br />

Digikam<br />

B Eine Liste enthält<br />

bereits genutzte Tags.<br />

So verhindern Sie einen<br />

Wust von ähnlichen<br />

Schlagworten.<br />

C Unter dem Punkt<br />

Recent locations führt<br />

Digikam eine Liste mit<br />

den bereits ausgewählten<br />

Orten.<br />

schnell sehr lang <strong>und</strong> unübersichtlich<br />

ausfällt. Wichtig: Bei<br />

Stichwörtern unterscheidet Digikam<br />

zwischen Groß- <strong>und</strong> Kleinschreibung,<br />

bei HIMMEL, Himmel <strong>und</strong><br />

himmel handelt es sich also um unterschiedliche<br />

Tags.<br />

Stichwörter speichert das Bildarchiv<br />

in erster Linie in der Datenbank,<br />

kann sie aber auch in<br />

die Bilddateien übertragen. Die<br />

erste Methode ermöglicht den<br />

schnellen Zugriff, die zweite erlaubt<br />

es, Metadaten in andere<br />

Programme mitzunehmen. Dabei<br />

kommt es allerdings manchmal<br />

zu Verlusten, wenn diese Programme<br />

diese Daten ihrerseits<br />

nicht speichern. Im Menü Extras<br />

finden Sie den Menüpunkt Metadaten<br />

in alle Bilder schreiben, mit<br />

dem Digikam die in der Datenbank<br />

vorhandenen<br />

Einträge in<br />

einem<br />

Rutsch in<br />

die Bilder<br />

überträgt.<br />

Geodaten<br />

Geodaten<br />

ermöglichen<br />

es,<br />

Bilder aus<br />

einer Region<br />

zusammenzufassen.<br />

Spezielle<br />

EXIF-<br />

Tags nehmen<br />

bei<br />

Bedarf die passenden Koordinaten<br />

für Länge, Breite <strong>und</strong> Höhe<br />

auf. Digikam bietet im Menü Bild<br />

mehrere Möglichkeiten an, diese<br />

Daten auszuwerten:<br />

• Kameras mit GPS schreiben die<br />

Tags automatisch in die Bilder.<br />

Digikam erkennt das <strong>und</strong> pflegt<br />

die Daten in die Datenbank ein.<br />

• Bei mit GPS-Trackern aufgenommenen<br />

Daten gilt es, diese<br />

zeitlich synchronisiert auf die<br />

Bilder zu übertragen.<br />

• Mithilfe einer auf Google-Maps<br />

basierenden Karte geben Sie<br />

Tags nachträglich ein oder editieren<br />

diese.<br />

Die letzte Variante nutzen Sie<br />

über den Menüpunkt Bild | Geolokalisierung<br />

| Koordinaten bearbeiten<br />

…. Digikam öffnet ein Fenster<br />

(Abbildung C), in dem Sie die von<br />

Google-<br />

Maps bekannte<br />

Blase<br />

auf den<br />

Standort<br />

zum Zeitpunkt<br />

der<br />

Aufnahme<br />

verschieben.<br />

Mit einem<br />

Klick<br />

auf OK<br />

übernehmen<br />

Sie die<br />

Auswahl.<br />

Bewerten<br />

Handelt es sich bei den Stichwörtern<br />

schon um eine höchst individuelle<br />

Angelegenheit, gilt das in<br />

einem noch weit höheren Maß für<br />

die Bewertungen. Es bedarf einer<br />

stringent durchgehaltenen Taktik,<br />

um deren Vorteile richtig zu nutzen.<br />

Ein einfaches Verfahren zum<br />

Erstellen von Bewertungen basiert<br />

auf dem Prinzip, zwischen<br />

den Mengen der Bilder in den jeweiligen<br />

Bewertungsstufen ein<br />

festes Zahlenverhältnis im Bereich<br />

von 3 bis 10 anzustreben.<br />

Wählen Sie einen Faktor von 5,<br />

enthält jede untergeordnete Ebene<br />

immer nur ein Fünftel der Bilder<br />

der aktuellen. So entsteht relativ<br />

schnell eine ausgewogene Hierarchie.<br />

Eine ausführliche Diskussion<br />

zu diesem Thema findet<br />

sich im Web [2].<br />

Bilder suchen<br />

Digikam verfügt über verschiedene<br />

Sortier- <strong>und</strong> Suchfunktionen<br />

sowie Ansichten. Sie erreichen die<br />

Funktionen über Schaltflächen<br />

links im Rahmen des Fensters.<br />

Die Albenansicht zeigt die Bilder<br />

als Ordnerstruktur. Um die Liste<br />

einzugrenzen, geben Sie Suchfeld<br />

am unteren Rand den Namen<br />

oder Namensbestandteile ein.<br />

In der Kalenderübersicht sehen<br />

Sie Bilder aller Alben nach Jahreszahl<br />

<strong>und</strong> Monat chronologisch<br />

sortiert. So erhalten Sie schnell<br />

einen Überblick der in einem bestimmten<br />

Zeitraum gemachten<br />

Bilder. Die Zeitleiste dagegen<br />

zeigt eine statistische Übersicht<br />

der Bilderzahlen, aufgetragen als<br />

Histogramm gegen die Zeit.<br />

Über die Stichworte, welche die<br />

Applikation alphabetisch sortiert<br />

<strong>und</strong> hierarchisch gegliedert anzeigt,<br />

finden Sie die Aufnahmen,<br />

denen Sie die entsprechenden<br />

Tags zugeordnet haben. Ein Suchfeld<br />

am unteren Rand grenzt auch<br />

hier das Ergebnis ein.<br />

Die Funktion der unscharfen Suche<br />

ermöglicht es, anhand eines<br />

Beispielbildes ähnliche Aufnahmen<br />

zu finden. Ein Schwellwert<br />

74 10 | 11<br />

www.linux-user.de


Digikam<br />

praxis<br />

legt fest, wie sehr sich die Bilder<br />

gleichen müssen. Hierfür berücksichtigt<br />

Digikam den Bildinhalt<br />

(Farben <strong>und</strong> Strukturen), den es<br />

in sogenannten Fingerabdrücken<br />

speichert. Die Funktion ermöglicht<br />

es außerdem, anhand einer<br />

groben Skizze nach Bildern zu<br />

suchen.<br />

Für die Kartensuche wertet das<br />

Programm die Geotags aus <strong>und</strong><br />

erlaubt es, in einer stilisierten<br />

Karte via Maus in Kombination<br />

mit [Strg] ein Gebiet zu markieren,<br />

aus dem die gesuchten Bilder<br />

stammen. Das funktioniert natürlich<br />

nur für Bilder, die Sie mit<br />

Geotags ausgezeichnet haben.<br />

Meist bietet das Bildarchiv auch<br />

eine inkrementelle Suche: Digikam<br />

zeigt dann nach Eingabe eines<br />

Buchstabens sofort alle passenden<br />

Ergebnisse. Das erweist<br />

sich insbesondere bei der Stichwortsuche<br />

als sehr effektiv.<br />

Digikam speichert Suchanfragen<br />

<strong>und</strong> hält sie für spätere Anfragen<br />

vor. Über die Schaltfläche<br />

mit dem Fernglas im linken Rahmen<br />

öffnet sich ein entsprechender<br />

Dialog. Ein Eingabefeld oben<br />

nimmt den Suchbegriff auf. Darunter<br />

öffnen Sie über eine entsprechende<br />

Schaltfläche die erweiterte<br />

Suche. Diese erreichen<br />

Sie alternativ über einen Klick auf<br />

Extras | Erweiterte Suche… oder<br />

[Strg]+[Alt]+[F].<br />

Hier definieren Sie eine Suche<br />

nach einzelnen EXIF-Tags, etwa<br />

nach hohen ISO-Werten (Abbildung<br />

D). Mehrere Angaben verknüpfen<br />

Sie mit einem logischen<br />

„UND“. Liefert die Suche ein befriedigendes<br />

Ergebnis, können Sie<br />

diese abspeichern. Dazu vergeben<br />

Sie einen möglichst eindeutigen<br />

Namen, der dann in der Liste darunter<br />

erscheint.<br />

Angaben in den Feldern unterhalb<br />

des Hauptfensters schränken<br />

ein, was Digikam tatsächlich anzeigt.<br />

Drei davon (Stichwörter<br />

jeglicher Art einschließlich Dateinamen,<br />

der Auswahlknopf für den<br />

Dateityp <strong>und</strong> die Bewertung) befinden<br />

sich direkt unter dem<br />

Hauptfenster <strong>und</strong> stellen<br />

so einfache Suchmethoden<br />

bereit: Wählen Sie<br />

dafür einfach das Hauptalbum<br />

aus <strong>und</strong> nutzen<br />

Sie dann diese Felder.<br />

Falls Digikam einige Bilder<br />

nicht findet, obwohl<br />

die Datenbank diese enthält,<br />

ist wahrscheinlich<br />

Albenunterbaum einschließen<br />

im Menü Ansicht<br />

nicht aktiviert.<br />

Im Test sorgten diese<br />

Controls aber für Irritationen,<br />

denn Sie schränken<br />

das Ergebnis einer<br />

Suche über die Schaltflächen<br />

auf der linken Seite ein. Falls<br />

Sie also beispielsweise das Eingabefeld<br />

für die Schlagwortsuche<br />

nicht löschen <strong>und</strong> dort auch nur<br />

ein Buchstabe zurückbleibt, reduziert<br />

sich das Suchergebnis auf unerwartete<br />

Weise. Da das Suchfeld<br />

Unicode-Zeichen akzeptiert, besteht<br />

somit die Möglichkeit, dass<br />

Sie versehentlich ein nicht sichtbares<br />

Zeichen eingeben, das dann in<br />

jedem Fall für eine ergebnislose<br />

Suche sorgt. Einziger Hinweis auf<br />

ein zusätzliches Suchkriterium ist<br />

eine Art Lämpchen neben dem<br />

Eingabefeld, das auf Rot springt,<br />

wenn die Eingabe kein Ergebnis<br />

liefert.<br />

Ordnung im Chaos<br />

Bei einer großen Menge an Bildern<br />

fällt es schwer, das Gesuchte<br />

über einzelne Tags zu finden –<br />

etwa, weil diese unvollständig<br />

sind, fehlen oder synonyme Stichwörter<br />

im Einsatz sind. Andererseits<br />

fördert die Suche bei korrekten<br />

<strong>und</strong> vollständigen Schlagworten<br />

oft einfach zu viele Treffer zutage.<br />

Hier hilft eine Kombination<br />

von Tags, das Ziel einzukreisen.<br />

Im Menü Ansicht existieren eine<br />

Reihe von Optionen, über die Sie<br />

die Darstellung der Bilder steuern.<br />

Bilder sortieren legt die Reihenfolge<br />

fest, die Digikam in Alben <strong>und</strong><br />

bei anderen Ausgaben verwendet,<br />

zum Beispiel bei den Stichwörtern<br />

oder in der Kalenderübersicht.<br />

Bilder gruppieren | Nach Album bewirkt,<br />

dass Digikam zusätzlich zu<br />

allen anderen Kriterien noch die<br />

Alben zeigt, in denen die Bilder<br />

lagern. Albumunterbaum einschließen<br />

<strong>und</strong> Stichwortunterbaum einschließen<br />

sorgen dafür, dass das<br />

Programm beim Einlesen <strong>und</strong> der<br />

Anzeige rekursiv arbeitet.<br />

Fazit<br />

Digikam bringt viele Funktionen<br />

mit, um auch sehr umfangreiche<br />

Bildersammlungen zu verwalten.<br />

Dabei speichert die Anwendung<br />

viele Daten separat in einer Datenbank,<br />

sodass der Originalzustand<br />

der Bilddateien erhalten<br />

bleibt. Das Hinzufügen von zusätzlichen<br />

Metadaten fällt nach einer<br />

kurzen Einarbeitungszeit<br />

leicht. Auf der anderen Seite erschlägt<br />

Digikam den Anwender<br />

förmlich mit seiner Funktionsvielfalt.<br />

Das macht es – zumindest<br />

mit den Standardeinstellungen –<br />

nicht gerade zur ersten Wahl für<br />

Gelegenheitsnutzer. Für diese gibt<br />

es geeignetere Kandidaten. Doch<br />

die Menge der Aufnahmen nimmt<br />

ständig zu, <strong>und</strong> nur mit einem<br />

ausreichend dimensionierten<br />

Werkzeug behalten Sie auch in Zukunft<br />

noch den Überblick. (agr) n<br />

info<br />

[1] Digikam: http:// www. digikam. org<br />

[2] Bewertungen: http:// www. gerhard. fr/ DAM/<br />

deutsch. html<br />

D Die erweiterte Suche<br />

erlaubt zum Beispiel<br />

das Filtern nach<br />

bestimmten Werten in<br />

EXIF­Tags.<br />

www.linux-user.de<br />

10 | 11 75


im test<br />

Synology DS110j<br />

Synology-NAS DS110j <strong>und</strong> Strato HiDrive<br />

Sinnig kombiniert<br />

© binski, 123RF<br />

Im Paket mit einem HiDrive-Account mit einer Speicherkapazität von 1 TByte bietet Strato das<br />

Synology-NAS DS110j zum Preis von 49 Euro bei 24 Monaten Laufzeit an. Thomas Leichtenstern<br />

ReADme<br />

Strato bietet im B<strong>und</strong>le<br />

mit einem 1-TByte-Hi-<br />

Drive-Account das Synology-NAS<br />

DS110j für 49<br />

beziehungsweise<br />

99 Euro an. Der Hoster<br />

liefert das Gerät mit einer<br />

1-TByte-WD-Festplatte<br />

<strong>und</strong> vorinstallierter<br />

Software zum Zugriff<br />

auf den HiDrive-<br />

Account aus.<br />

Der Webhoster Strato bietet zu<br />

seinen HiDrive-Accounts [1] der<br />

Größe 1 <strong>und</strong> 2 TByte ein Synology-NAS<br />

zum Vorzugspreis an. Bei<br />

einer HiDrive-Laufzeit von<br />

12 Monaten kostet das 1-TByte-<br />

NAS DS110j [2] 99 Euro, bei<br />

24 Monaten 49 Euro. Der Straßenpreis<br />

des Gerätes liegt bei<br />

knapp 180 Euro. Zum 2-TByte-<br />

Account liefert Strato optional<br />

das DS211j [3] für 149 beziehungsweise<br />

199 Euro. Hier liegt<br />

der reguläre Verkaufspreis bei<br />

technische spezifikAtionen<br />

Hersteller<br />

Synology<br />

Modell<br />

DS110j<br />

Betriebssystem Linux<br />

CPU<br />

Marvell 6281, 800 MHz<br />

Hauptspeicher 128 MByte DDR2<br />

Festplatte<br />

SATA II, 2,5 oder 3,5 Zoll, max. 3 GByte<br />

Leistungsaufnahme 19 W Betrieb, 9 W Ruhezustand<br />

Schnittstellen 3 x USB 2.0, 1 x RJ45 (GbE)<br />

Netzteil<br />

extern<br />

Geräuschpegel 19,9 dB(A)<br />

Größe (HxBxT) 160 X 63 X 218 mm<br />

Gewicht<br />

810 Gramm<br />

etwa 280 Euro. Im Strato-B<strong>und</strong>le<br />

arbeitet das NAS als lokaler Netzwerkspeicher,<br />

der HiDrive-Account<br />

dient in erster Linie zur Datensicherung.<br />

Zu diesem Zweck<br />

bietet der Hoster eine App für das<br />

NAS an, die es erlaubt, die Datenbestände<br />

konsistent zu halten.<br />

Innere Werte<br />

Die von uns getestete Synology<br />

Diskstation DS110j (Abbildung A)<br />

liefert Strato mit einer 1-TByte-<br />

Festplatte des Typs Western Digital<br />

WD10EARS aus der Caviar-<br />

Green-Reihe aus. Das mit Ext3 formatierte<br />

SATA-Laufwerk arbeitet<br />

mit 5400 Umdrehungen <strong>und</strong> besitzt<br />

64 MByte Cache. Die Zugriffszeit<br />

liegt laut Hersteller bei 8,9 ms.<br />

Die Platte zeichnet sich durch<br />

niedrigen Energieverbrauch <strong>und</strong><br />

eine geringe Geräuschentwicklung<br />

aus. Im Test erreichte sie beim<br />

Kopieren einer 1-GByte-Datei<br />

etwa 30 MByte/ s Durchsatz. Da<br />

das auf Blockebene arbeitende<br />

Hdparm der Platte aber mit annähernd<br />

100 MByte/ s durchaus ordentliche<br />

Werte attestiert, bremst<br />

vermutlich das Dateisystem die<br />

Performance aus. Um die Platte<br />

gegen eine größere oder schnellere<br />

zu tauschen, lösen Sie am Blech<br />

auf der Rückseite die zwei äußersten<br />

Schrauben oben <strong>und</strong> unten.<br />

Danach schieben Sie den Deckel<br />

nach vorne auf. Das NAS unterstützt<br />

HDDs bis zu einer Größe<br />

von 3 TByte. Beachten Sie: Beim<br />

ersten Start mit einer neuen Platte<br />

formatiert das NAS diese <strong>und</strong><br />

installiert darauf das auf Linux<br />

basierende Betriebssystem. Sämtliche<br />

enthaltenen Daten gehen dabei<br />

entsprechend verloren.<br />

Zum Anschluss von Druckern<br />

oder USB-Massenspeichern bietet<br />

die DS110j drei USB-2.0-Anschlüsse.<br />

Die Schnittstellen eignen<br />

sich jedoch nicht dazu, das<br />

Gerät seinerseits als externe USB-<br />

Festplatte zu verwenden, was<br />

beim erstmaligen Befüllen des<br />

Storage durchaus hilfreich wäre.<br />

Der Anschluss ans LAN erfolgt via<br />

76 10 | 11<br />

www.linux-user.de


Synology DS110j<br />

im test<br />

Gbit-Ethernet, WLAN bringt das<br />

Gerät von Hause aus nicht mit.<br />

Allerdings unterstützt es eine Reihe<br />

von USB-WLAN-Dongles [4],<br />

um diese Funktion nachzurüsten.<br />

Laut Hersteller begnügt sich die<br />

Diskstation mit einem Stromverbrauch<br />

von 19 Watt im Betrieb<br />

<strong>und</strong> 9 Watt im Ruhezustand. Die<br />

mit 800 MHz getaktete ARM-CPU<br />

des Typs Marvell 6281 liefert für<br />

die meisten Anwendungsfälle ausreichend<br />

Leistung, allerdings fällt<br />

die Speicherausstattung mit<br />

128 MByte RAM eher mager aus.<br />

Ein Auf- oder Umrüsten des Speichers<br />

ist nicht möglich.<br />

Zum Lieferumfang der DS110j<br />

gehören neben dem NAS selbst je<br />

ein Strom- <strong>und</strong> LAN-Kabel sowie<br />

eine DVD mit dem Handbuch <strong>und</strong><br />

der Software. Die Tabelle Technische<br />

Spezifikationen fasst die Eckdaten<br />

des Gerätes zusammen.<br />

Erster Start<br />

Installationssoftware steht sowohl<br />

für Windows als auch Mac<br />

OS X <strong>und</strong> Linux zum Einsatz bereit.<br />

Für Linux beschränkt sie sich<br />

jedoch auf den sogenannten Synology<br />

Assistant (Abbildung B). Dieser<br />

dient in erster Linie dazu, das<br />

NAS im Netz ausfindig zu machen<br />

<strong>und</strong> in einer Tabelle anzuzeigen.<br />

Da Sie die Administrationsoberfläche<br />

des Gerätes nach dem Anschluss<br />

ans Netz aber <strong>ohne</strong>hin<br />

über http://diskstation:5000 erreichen,<br />

bleibt der Sinn der Funktion<br />

unklar. Darüber hinaus bietet die<br />

Applikation einen Ressourcenmonitor<br />

sowie eine Funktion namens<br />

Photo Uploader. Für den Zugriff<br />

über potenziell unsichere Netze<br />

bietet das NAS auch die verschlüsselte<br />

HTTPS-Variante an.<br />

Am Synology DiskStation Manager<br />

melden Sie sich via Browser<br />

mit dem Nutzernamen admin<br />

<strong>ohne</strong> Passwort an. Das Webinterface<br />

haben die Entwickler dem<br />

Look & Feel einer Desktopumgebung<br />

nachempf<strong>und</strong>en (Abbildung<br />

C, nächste Seite). So öffnet<br />

ein Mausklick auf eines der Elemente<br />

stets ein Fenster, das Sie<br />

beliebig auf<br />

dem Pseudo-<br />

Desktop positionieren.<br />

Die<br />

Fenster besitzen<br />

am oberen<br />

rechten<br />

Rand die bekannten<br />

Symbole<br />

zum<br />

Schließen <strong>und</strong><br />

Verkleinern,<br />

der Dateibrowser<br />

unterscheidet sich sowohl<br />

optisch als auch technisch nur<br />

unwesentlich von den bekannten<br />

lokalen Varianten.<br />

Einrichten <strong>und</strong> Verwalten<br />

Um das Passwort für das Admin-<br />

Konto einzustellen, klicken Sie zunächst<br />

auf das Icon Bedienfeld <strong>und</strong><br />

im neuen Fenster auf Benutzer.<br />

Ein Doppelklick auf admin öffnet<br />

den Konfigurationsdialog. Er erlaubt<br />

auch das Zuteilen von Disk-<br />

Quota sowie das Zuweisen zu<br />

Gruppen. Über Gemeinsame Ordner<br />

im Fenster Bedienfeld richten<br />

Sie Freigaben ein. Alternativ verwenden<br />

Sie als Übertragungsprotokoll<br />

SMB/ CIFS, NFS oder FTP,<br />

Letzteres optional auch SSL/ TLSverschlüsselt.<br />

Ferner erlaubt das<br />

NAS auch das Anlegen verschlüsselter<br />

Shares. Diese chiffriert es<br />

mit Ecryptfs, dessen Ergebnis die<br />

Box via Fuse ins Dateisystem einhängt.<br />

Das geschieht aber sowohl<br />

auf der Web-<strong>GUI</strong> als auch bei der<br />

Freigabe transparent. Allerdings<br />

lassen sich verschlüsselte<br />

Shares nicht mit NFS<br />

einbinden.<br />

Der nach unten zeigende<br />

Pfeil oben links öffnet einen<br />

den gängigen Desktops<br />

nachempf<strong>und</strong>enen<br />

Programmstarter. Er enthält<br />

sämtliche installierten<br />

Apps sowie einige nützliche<br />

Zusatzfeatures wie<br />

etwa den Ressourcenmonitor.<br />

Dieser zeigt die Auslastung<br />

von CPU <strong>und</strong><br />

Hauptspeicher sowie den<br />

Netzwerkdurchsatz an. Ein<br />

Klick aufs jeweilige<br />

Diagramm öffnet die Detailansicht.<br />

Wie es um die Ressourcen<br />

der Festplatte bestellt ist, zeigt<br />

der Speichermanager. Er bietet darüber<br />

hinaus einen SMART-Test<br />

sowie die Möglichkeit, das NAS<br />

als iSCSI-Target zu nutzen. Allgemeine<br />

Informationen des Gerätes<br />

zeigt ein Klick auf Systeminformationen,<br />

in dem Sie auch auf verschiedene<br />

Logs zugreifen.<br />

Um via SSH auf das NAS zuzugreifen,<br />

aktivieren Sie im Bedienfeld<br />

unter Terminal die Checkbox<br />

neben SSH-Dienst aktivieren. Ein<br />

Einstellen des Ports erlaubt die<br />

Konfiguration jedoch nicht. Möchten<br />

Sie als Root auf der Maschine<br />

arbeiten, melden Sie sich via ssh<br />

root@IP‐Adresse auf dem Server an.<br />

Als Passwort verwenden Sie jenes<br />

des Admin-Accounts. Ein su als<br />

normaler Nutzer scheitert mit<br />

dem Hinweis su: must be suid to<br />

work properly.<br />

Eine weitere Möglichkeit, Multimedia-Dateien<br />

im Netz zu teilen,<br />

A Das Synology-NAS<br />

DS110j besitzt ungefähr<br />

die Abmessungen<br />

eines Taschenbuches.<br />

B Neben dem Aufspüren<br />

angeschlossener<br />

Synology-Systeme im<br />

Netz beherbergt der<br />

Synology Assistant einen<br />

Ressourcenmonitor<br />

<strong>und</strong> einen Foto-<br />

Uploader.<br />

www.linux-user.de<br />

10 | 11 77


im test<br />

Synology DS110j<br />

C Nicht nur optisch<br />

erweckt die webbasierte<br />

Konfiguration<br />

des NAS den Anschein<br />

einer Desktopoberfläche.<br />

Auch viele Funktionen<br />

wurden daraus<br />

übernommen.<br />

bietet die Box via DLNA/ UPnP.<br />

Sofern das Empfangsgerät – sei es<br />

Rechner, Fernseher oder Smartphone<br />

– über einen geeigneten<br />

Client verfügt, ist es in der Lage,<br />

Filme, Musik <strong>und</strong> Bilder direkt<br />

wiederzugeben.<br />

Ziehen Sie es vor, Dateien aus<br />

dem Internet direkt auf das NAS<br />

zu laden, verwenden Sie dafür die<br />

integrierte Download Station, die<br />

Sie zunächst im Bedienfeld aktivieren<br />

<strong>und</strong> danach über den Programmstarter<br />

aufrufen. Das Modul<br />

unterstützt neben regulären<br />

HTTP-Downloads auch BitTorrent<br />

<strong>und</strong> Emule (Abbildung D).<br />

Der Zeitplaner ermöglicht es Ihnen<br />

festzulegen, wann das NAS<br />

mit dem Download beginnen soll.<br />

Daten sichern<br />

Eine nicht unerhebliche Rolle auf<br />

einer zentralen Sammelstelle für<br />

Daten spielt das Backup. Das<br />

Synology-NAS bietet dafür im<br />

Startmenü den Eintrag Datensicherung<br />

-<strong>und</strong> -wiederherstellung an.<br />

Als Ziel wählen Sie zwischen einer<br />

externen Festplatte <strong>und</strong> verschiedenen<br />

Sicherungsorten im<br />

Netzwerk – unter anderem Amazons<br />

S3, einem Synology- oder einem<br />

eigenen Rsync-Server. Im<br />

gut beschriebenen Konfigurationsdialog<br />

legen Sie den Zeitplan<br />

sowie die zu sichernden Verzeichnisse<br />

fest. Eine Auswahl der Backupstrategie,<br />

etwa inkrementell<br />

oder differenziell, beherrscht das<br />

Modul nicht.<br />

Das in unserem Testgerät bereits<br />

vorinstallierte Modul HiDrive<br />

Backup erlaubt das Erstellen der<br />

Datensicherung auf Stratos Online-Speicher.<br />

Daneben bietet<br />

Strato die App unter [5] zum<br />

Download an. Im Gr<strong>und</strong>e funktioniert<br />

diese wie das beschriebene<br />

generische Backup-Modul, mit<br />

dem Unterschied, dass sie <strong>ohne</strong><br />

große Mühen das Einbinden des<br />

Strato-Accounts erlaubt. Nach einem<br />

Klick auf Erstellen erscheint<br />

der Konfigurationsdialog, in dem<br />

Sie den Benutzernamen <strong>und</strong> das<br />

Passwort des HiDrive-Accounts<br />

eingeben. Darunter ermöglichen<br />

diverse Checkboxen das An- <strong>und</strong><br />

Abwählen von Features wie Übertragungsverschlüsselung<br />

aktiveren<br />

oder Es werden nur geänderte Inhalte<br />

innerhalb von Truecrypt Containern<br />

(Abbildung E).<br />

Der letzte Eintrag gestattet, die<br />

Bandbreite beim Backup zu limitieren,<br />

damit noch genug Durchsatz<br />

zum Arbeiten verbleibt. Idealerweise<br />

stellen Sie im Reiter Geplante<br />

Datensicherung eine Zeit<br />

ein, zu der das erhöhte Datenaufkommen<br />

beim Backup keine Rolle<br />

spielt. Der Backup-Planer erlaubt<br />

das Anlegen beliebig vieler Aufgaben.<br />

So sichern Sie beispielsweise<br />

wichtige Dokumente im St<strong>und</strong>entakt,<br />

weniger wichtige nur wöchentlich.<br />

Einen schnellen Überblick<br />

über die Einstellungen des<br />

jeweiligen Backup-Sets liefert Info<br />

abrufen. Möchten Sie die Sicherung<br />

außerhalb des festgelegten<br />

Zeitplans starten, klicken Sie auf<br />

Jetzt Datensicherung durchführen.<br />

Im HiDrive-Account erscheint<br />

das Backup im Verzeichnis user/<br />

Nutzername/DiskStation_Kennung/GesicherteOrdner.<br />

Da HiDrive seinerseits<br />

regelmäßig Sicherungen anlegt,<br />

besteht bei dieser Kombination<br />

nur eine minimale Gefahr<br />

von Datenverlusten, wenngleich<br />

das Prozedere kein Backup im<br />

klassischen Sinn ersetzt.<br />

D Der Downloadmanager<br />

des NAS erlaubt<br />

<strong>ohne</strong> Umwege über<br />

den Client das direkte<br />

Herunterladen von Dateien<br />

aus dem Internet.<br />

Er unterstützt dazu<br />

unter anderem Emule<br />

<strong>und</strong> BitTorrent.<br />

Erweiterte Funktionen<br />

Möchten Sie vom Internet aus auf<br />

das NAS zugreifen, müssen Sie<br />

78 10 | 11<br />

www.linux-user.de


Synology DS110j<br />

im test<br />

dazu die entsprechenden Ports<br />

auf dem Router an das Gerät weiterleiten.<br />

Das notwendige Setup<br />

übernimmt das Modul Routerkonfiguration.<br />

Aus einer Liste wählen<br />

Sie den Router aus <strong>und</strong> geben<br />

Nutzernamen <strong>und</strong> Passwort an.<br />

Via Erstellen legen Sie danach die<br />

Ports fest, die der Router an das<br />

NAS weiterleiten soll. Da in der<br />

Auswahl unterstützter Geräte die<br />

in Deutschland weitverbreiteten<br />

Modelle von AVM <strong>und</strong> Speedport<br />

fehlen, dürften viele Nutzer hierzulande<br />

allerdings nicht umhinkommen,<br />

manuell am Router<br />

Hand anzulegen.<br />

Um Einbruchsversuchen via<br />

Brute Force vorzubeugen, nutzen<br />

Sie die Automatische Blockierung.<br />

Nach einer definierten Anzahl<br />

fehlgeschlagener Login-Versuche<br />

innerhalb einer bestimmten Zeit<br />

sperrt das NAS den Zugriff. Optional<br />

legen Sie unter Ablauf der Blockierung<br />

fest, nach wie vielen Tagen<br />

das NAS die IP-Adresse wieder<br />

freischaltet. Die Sperrung betrifft<br />

nicht nur den Port, auf dem die<br />

fehlgeschlagenen Logins stattfanden,<br />

sondern greift für alle.<br />

Können oder wollen Sie nicht<br />

über die Standardschnittstellen<br />

auf die gehosteten Daten zugreifen,<br />

nutzen Sie stattdessen die File<br />

Station, die Sie über http://diskstation:7000<br />

erreichen. Im Gr<strong>und</strong>e<br />

handelt es sich dabei um einen in<br />

HTML implementierten Dateibrowser,<br />

der in der Verzeichnisliste<br />

links oben die gehosteten<br />

Shares anzeigt <strong>und</strong> darunter die<br />

Ordner des lokalen Laufwerks.<br />

Dateien <strong>und</strong> Verzeichnisse verschieben<br />

oder kopieren Sie via<br />

Drag & Drop vom lokalen Rechner<br />

in die gewünschte Freigabe. Zum<br />

Herunterladen einer Datei genügt<br />

ein Doppelklick darauf. Um ein<br />

komplettes Verzeichnis zu kopieren,<br />

klicken Sie mit der rechten<br />

Maustaste darauf <strong>und</strong> wählen Sie<br />

aus dem Kontextmenü Herunterladen,<br />

worauf die Software die<br />

Daten als ZIP-File transferiert.<br />

Um eine nette, aber nur unzureichend<br />

umgesetzte Idee handelt<br />

es sich bei der Photo Station. Nach<br />

dem Aktivieren bindet dieses Modul<br />

sämtliche in das Share photo<br />

hochgeladenen Bilddateien in ein<br />

auf Cooliris [6] basierendes Webalbum<br />

ein. Im Test dauerte das<br />

allerdings bei 26 im Schnitt<br />

400 KByte großen Bildern über<br />

eine St<strong>und</strong>e – bei einer permanenten<br />

CPU-Auslastung von<br />

knapp 100 Prozent. Ein Blick in<br />

top ergab, dass convert damit beschäftigt<br />

war, jedes Bild in vier<br />

verschieden große <strong>Vorschau</strong>bilder<br />

umzuwandeln, was die CPU über<br />

Gebühr beanspruchte.<br />

An dieser Stelle kommt der große<br />

Auftritt des eingangs erwähnten<br />

Synology Assistant: Die Funktion<br />

Foto-Uploader übernimmt<br />

nämlich das Konvertieren der Bilder<br />

bereits auf dem Client-Rechner<br />

<strong>und</strong> reduziert so sowohl den<br />

Rechenaufwand als auch die Zeit<br />

zum Anlegen des Albums drastisch.<br />

Ein Set aus etwa 100 Bildern<br />

verarbeitete der Assistent in<br />

nicht einmal zehn Minuten. Die<br />

Galerie erreichen Sie anschließend<br />

im Browser unter der URL<br />

http://diskstation/photo.<br />

Externe Geräte<br />

Von seiner besten Seite präsentiert<br />

sich die Diskstation DS110j<br />

im Umgang mit externen Geräten.<br />

USB-Massenspeicher bindet<br />

sie direkt nach dem Einstecken<br />

im Verzeichnis usbshare ins Dateisystem<br />

ein. Verwalten lassen sich<br />

die Medien über das Bedienfeld<br />

unter Externe Geräte.<br />

Um den kompletten Inhalt des<br />

externen Speichers auf das NAS<br />

zu kopieren, aktivieren Sie zunächst<br />

im Reiter USBCopy die<br />

Checkbox vor USBCopy aktivieren.<br />

Damit genügt zukünftig ein<br />

Druck auf die grün beleuchtete<br />

Taste auf der Frontseite der<br />

DS110j, um den Kopiervorgang<br />

zu starten. Nach Abschluss der<br />

Aktion hängt das NAS den Datenträger<br />

selbstständig aus, die grüne<br />

Kontrollleuchte erlischt.<br />

Möchten Sie lediglich einzelne<br />

Dateien oder Ordner auf das NAS<br />

kopieren, genügt es, sie im Dateibrowser<br />

per Drag & Drop an die<br />

gewünschte Stelle zu ziehen.<br />

Auch den im Test angeschlossenen<br />

Drucker Canon Pixma<br />

IP4600 erkannte die Diskstation<br />

anstandslos <strong>und</strong> stellte ihn via<br />

SMB im Netz zum Einsatz bereit.<br />

Fazit<br />

Das Synology-NAS DS110j machte<br />

im Test eine ausgesprochen<br />

gute Figur. Das Gerät passt nicht<br />

zuletzt wegen seines transparenten<br />

Designs <strong>und</strong> der offenen<br />

Schnittstellen perfekt in Stratos<br />

HiDrive-Portfolio.<br />

Abgesehen von der etwas langsamen<br />

Festplatte <strong>und</strong> dem mit<br />

128 MByte eher mickerig dimensionierten<br />

Hauptspeicher gab es<br />

am Gerät sowohl hard- als auch<br />

softwareseitig nichts zu bemängeln.<br />

Trotz des eingebauten Lüfters<br />

arbeitet das Gerät ausgesprochen<br />

leise. Die Konfiguration via<br />

Web-<strong>GUI</strong> wirkt bis ins Detail<br />

durchdacht, dasselbe gilt für die<br />

Strato-App zum Einbinden des<br />

HiDrive-Accounts. (tle) n<br />

E Das Modul HiDrive<br />

Backup erlaubt, in wenigen<br />

Minuten einen<br />

HiDrive-Account zur<br />

Datensicherung einzubinden.<br />

[1] Strato HiDrive: http:// www. strato. de/ online-speicher/ privat-speicher/<br />

[2] Synology DS110j: http:// www. synology. com/ products/ spec. php? product_<br />

name=DS110j& lang=deu<br />

[3] Synology DS211j: http:// www. synology. com/ products/ spec. php? product_<br />

name=DS211j& lang=deu<br />

[4] Von Synology unterstützte WLAN-Dongles:<br />

http:// www. synology. com/ support/ faq_show. php? q_id=427& lang=deu<br />

[5] Strato HiDrive Synology App: http:// strato-faq. de/ 808<br />

[6] Cooliris: http:// www. cooliris. com<br />

info<br />

www.linux-user.de<br />

10 | 11 79


netz&system<br />

Sbackup<br />

Simples Backup für Ubuntu<br />

Sichere Daten<br />

Schnell mal ein Backup einrichten? Mit Sbackup <strong>und</strong> seiner grafischen<br />

Oberfläche archivieren Sie wichtige Daten im Handumdrehen. Kristian Kißling<br />

© Domen Colja, 123RF<br />

ReaDme<br />

Sbackup 0.11.4<br />

LU/sbackup/<br />

Sbackup präsentiert<br />

sich als durchdachtes<br />

Programm zum Sichern<br />

von Benutzerdaten aller<br />

Art. Trotz einiger Inkonsistenzen<br />

in der Bedienung<br />

funktioniert<br />

Sbackup insgesamt<br />

sehr gut <strong>und</strong> erlaubt das<br />

komfortable Sichern<br />

<strong>und</strong> flexible Wiederherstellen<br />

wichtiger Dateien<br />

<strong>und</strong> Verzeichnisse.<br />

InstallatIon<br />

Ubuntu 11.04 „Natty“ führt die (zum Testzeitpunkt) aktuellste<br />

Version von Sbackup (0.11.4) bereits in seinen Repositories.<br />

Zur Installation starten Sie das Software-Center,<br />

geben oben rechts in der Suchmaske den Begriff sbackup<br />

ein <strong>und</strong> markieren die zwei Pakete sbackup <strong>und</strong> sbackupgtk<br />

zu Installation. Das Paket sbackup-plugins-fuse benötigen<br />

Sie in aller Regel nicht, da Sbackup über Gnomes GIO/<br />

GVFS bereits auf entfernte Speicherorte zugreifen kann.<br />

Möchten Sie sicher sein, stets die aktuellste Sbackup-Version<br />

zu betreiben, binden Sie das Projekt-PPA<br />

(ppa:nssbackup‐team/ppa) in die Paketquellen Ihres Ubuntu-<br />

Systems ein <strong>und</strong> installieren Sbackup von dort.<br />

Neuen Festplatten sieht man selten<br />

an, ob sie morgen oder erst in<br />

vier Jahren den Geist aufgeben.<br />

Fest steht, dass der Tag irgendwann<br />

kommt – <strong>und</strong> dann möchten<br />

Sie Ihre Daten gern in Sicherheit<br />

wissen. Diese speichern sich jedoch<br />

nicht von allein: Programme<br />

wie Sbackup [1] helfen beim Sichern<br />

der Datenflut. Die in Python<br />

geschriebene Software galt<br />

lange als Standard-Backup-Programm<br />

von Ubuntu, da sie im<br />

Rahmen von Googles „Summer of<br />

Code“ für die Distribution entwickelt<br />

wurde. Tatsächlich bringt sie<br />

gegenüber anderen etablierten<br />

Backup-Lösungen wie Rsnapshot<br />

<strong>und</strong> Rsync den Vorteil mit, eine<br />

auf Gtk+ basierende grafische<br />

Oberfläche zu besitzen. Das sollte<br />

Sie aber nicht dazu verleiten, blind<br />

auf irgendwelche Knöpfchen zu<br />

drücken. Solange Sie nicht genau<br />

wissen, wie das Programm funktioniert,<br />

sollten Sie Sbackup keine<br />

wertvollen Daten anvertrauen:<br />

Trotz der Einfachheit (das S in<br />

Sbackup steht für „simple“) birgt<br />

die Software ein paar Fallstricke.<br />

Sbackup besteht aus zwei Komponenten<br />

(Abbildung A): dem Backup-Frontend<br />

Simple Backup-Configuration<br />

<strong>und</strong> dem Wiederherstellungstool<br />

Simple Backup-Restoration.<br />

Im klassischen Gnome-Menü<br />

finden Sie beide unter Systemwerkzeuge.<br />

Über Simple Backup<br />

Config richten Sie Sbackup ein.<br />

Hier legen Sie fest, welche Daten<br />

die Software sichert, wo sie diese<br />

ablegt <strong>und</strong> wie häufig sie das tut.<br />

Über den Restoration-Teil von<br />

Sbackup stellen Sie die Sicherungen<br />

bei Bedarf wieder her.<br />

Verwenden Sie eine andere Distribution als Ubuntu, installieren<br />

Sie Sbackup aus dem Tarball [2] – es setzt Python ab<br />

Version 2.5, PyGTK ab Version 2.10, die Python-setuptools,<br />

Pygnome, Pyglade, Pynotify, Gettext, Gvfs, Gvfs-fuse sowie<br />

Gvfs-backends voraus. Wollen Sie die Fuse-Plugins betreiben,<br />

benötigen Sie zusätzlich Fuse selbst sowie Python-pexpect<br />

<strong>und</strong> Sshfs sowie Curlftpfs. Nach dem Entpacken des<br />

Tarballs wechseln Sie in das neu entstandene Verzeichnis<br />

<strong>und</strong> rufen dort make auf, dann als Root make install. Damit<br />

richten Sie Sbackup unter /usr/local ein <strong>und</strong> starten<br />

es anschließend durch den Aufruf von sbackupconfig. Zum<br />

Betrieb benötigt das Programm administrative Rechte.<br />

82 10 | 11<br />

www.linux-user.de


Sbackup<br />

netz&system<br />

Auftakt<br />

Beim Sichern der Daten machen<br />

Sie im Regelfall zunächst ein vollständiges<br />

Backup, im Anschluss<br />

folgen dann sogenannte inkrementelle<br />

Backups: Diese speichern<br />

lediglich die Dateien, die<br />

sich seit der letzten Datensicherung<br />

verändert haben. In gewissen<br />

regelmäßigen Abständen (wöchentlich,<br />

monatlich – je nach Bedarf)<br />

folgen dann wieder Volldatensicherungen.<br />

So sammeln sich<br />

dank der inkrementellen Methode<br />

keine immensen Datenmengen<br />

an. Auf jeden Fall sollten Sie<br />

im Vorfeld errechnen, wie viel<br />

Speicherplatz Sie voraussichtlich<br />

für Ihre Daten benötigen <strong>und</strong> die<br />

Sicherungszyklen dementsprechend<br />

einrichten.<br />

Um das gesamte System zu archivieren<br />

<strong>und</strong> bei Bedarf zu restaurieren,<br />

eignet sich Sbackup<br />

nicht. Sie sichern damit aber<br />

<strong>ohne</strong> Probleme die Dateien aus<br />

den Home-Verzeichnissen. Bei<br />

der Wahl des Speicherortes sollten<br />

Sie bedenken, dass auch externe<br />

Festplatte irgendwann das<br />

Zeitliche segnen. Erfreulicherweise<br />

hinterlegt die Software Daten<br />

auch auf SSH- <strong>und</strong> FTP-Servern.<br />

Alternativ kaufen Sie also Speicherplatz<br />

bei einem Webspace-<br />

Anbieter [3] <strong>und</strong> verschieben die<br />

Daten dorthin. Der Vorteil: Diese<br />

Anbieter erstellen meist selbst<br />

Backups ihrer K<strong>und</strong>endaten. Diese<br />

lassen sich also nach einem<br />

Zwischenfall im Rechenzentrum<br />

wiederherstellen. Der Nachteil:<br />

Sie sind gezwungen, die Daten zu<br />

verschlüsseln, um Ihre Privatsphäre<br />

zu schützen.<br />

Anpacken<br />

Beim ersten Aufruf beschwert<br />

sich Sbackup sofort darüber, dass<br />

es kein gültiges Backup-Profil finden<br />

kann – ein solches gilt es nun<br />

anzulegen. Damit beginnen Sie<br />

im Reiter Allgemein (Abbildung<br />

B). Hier legen Sie fest, in<br />

welchen Intervallen Sbackup statt<br />

einer inkrementellen Sicherung<br />

ein Vollbackup vornehmen soll,<br />

<strong>und</strong> bestimmen, ob <strong>und</strong> mit welcher<br />

Kompressionsmethode das<br />

Programm den Datenumfang reduziert.<br />

Außerdem weisen Sie<br />

Sbackup hier bei Bedarf an, die<br />

Sicherungsarchive in handliche<br />

Teile zu zerlegen, mit denen auch<br />

ältere Dateisysteme wie FAT16<br />

<strong>und</strong> FAT32 umgehen können.<br />

Welche Dateien Sie sichern wollen,<br />

bestimmen Sie in den Registern<br />

Zu sichernde Daten <strong>und</strong> Nicht<br />

Sichern. Die Optionen in diesen<br />

Reitern erklären sich von selbst.<br />

Über Datei hinzufügen füttern Sie<br />

die Liste auf dem Reiter Zu sichernde<br />

Daten mit entsprechenden<br />

Dateien <strong>und</strong> Verzeichnissen<br />

(Abbildung C).<br />

Unter Nicht Sichern nehmen Sie<br />

gegebenenfalls komplette Pfade<br />

oder bestimmte Dateitypen von<br />

der Sicherung aus (Abbildung D,<br />

nächste Seite). Sbackup ermittelt<br />

den Dateityp anhand der Namensendung,<br />

hier dürfen Sie auch<br />

eigene Dateitypen definieren.<br />

Caches, gelöschte Dateien,<br />

Thumbnails <strong>und</strong> ähnlich Backup-<br />

Unwürdiges schließt das Programm<br />

bereits von sich aus über<br />

Reguläre Ausdrücke von der Datensicherung<br />

aus. Weiteren Ausnahmen<br />

über selbst definierte<br />

Regexe [4] steht nichts im Weg.<br />

Unter Sonstiges unterbinden Sie<br />

das Sichern von Files, die eine<br />

bestimmte Größe überschreiten,<br />

<strong>und</strong> legen fest, ob Sbackup Symlinks<br />

folgen soll.<br />

Auf dem Reiter Zielverzeichnis<br />

definieren Sie den Ort, an dem<br />

Sbackup die Sicherungen ablegen<br />

soll. Standardmäßig sichert das<br />

Programm die Daten nach /var/<br />

backup (Standardverzeichnis ),<br />

über den zweiten Auswahlpunkt<br />

A Sbackup besteht aus<br />

einem Frontend für<br />

Konfiguration <strong>und</strong><br />

Backup sowie einem<br />

Wiederherstellungsteil.<br />

B Im Reiter Allgemein treffen Sie Gr<strong>und</strong>einstellungen für das Backup.<br />

In aller Regel könne Sie hier die Vorgaben stehen lassen.<br />

C Über das Register Zu sichernde Daten legen Sie fest, welche Dateien<br />

<strong>und</strong> Verzeichnisse Sie sichern wollen.<br />

www.linux-user.de<br />

10 | 11 83


netz&system<br />

Sbackup<br />

D Im Reiter Nicht<br />

Sichern schließen Sie<br />

unwichtige oder unerwünschte<br />

Daten von<br />

der Sicherung aus.<br />

E Sbackup akzeptiert<br />

als Zielverzeichnis sowohl<br />

lokale Medien als<br />

auch Netzwerklaufwerke.<br />

(Benutzerdefiniertes geben Sie<br />

einen anderen Ordner an. Dieser<br />

darf sich auf der lokalen Festplatte<br />

befinden, es kann sich aber auch<br />

um externe Medien oder via Netzwerk-Share<br />

eingeb<strong>und</strong>ene Laufwerke<br />

handeln (Abbildung E).<br />

Wollen Sie Ihre Daten auf einen<br />

Server im Netz sichern, nutzen<br />

Sie dazu die Option Einen entfernten<br />

Speicher verwenden. Sie geben<br />

die notwendigen Anmeldedaten<br />

entweder direkt oder Schritt für<br />

Schritt im Dialog unter Verbinde…<br />

ein <strong>und</strong> prüfen dort über Verbinden,<br />

ob die Verbindung überhaupt<br />

zustande kommt. Der Eintrag<br />

ftp://User@Server/Verzeichnis<br />

sichert mittels des Benutzerkontos<br />

User die Daten im Ordner Verzeichnis<br />

auf dem FTP-Server Server.<br />

Erfreulicherweise<br />

übernimmt der Restore-<br />

Teil von Sbackup die angegebene<br />

Adresse später<br />

automatisch: Das spart<br />

zusätzliche Tipparbeit<br />

beim Wiederherstellen<br />

der Daten.<br />

Time is on my side<br />

Im Reiter Zeitplan stellen<br />

Sie das Backup scharf<br />

(Abbildung F). Unter<br />

Einfach legen Sie über das<br />

Ausklappmenü Sicherungen<br />

erstellen fest, in welchen<br />

Intervallen Sbackup die Daten<br />

automatisch sichert, wobei<br />

die Auswahl von Täglich bis Monatlich<br />

reicht. Entscheiden Sie<br />

sich für Benutzerdefiniert eröffnet<br />

das Eingabefeld Cron-Ausdruck die<br />

Möglichkeit, einen Cron-Job für<br />

das Backup einzurichten (siehe<br />

Kasten Cron-Job). Nach einem<br />

Neustart des Systems nimmt<br />

Sbackup die Sicherungen in den<br />

von Ihnen festgelegten Intervallen<br />

vor – entweder nach eigenem<br />

Gusto oder zum via Cron festgelegten<br />

Zeitpunkt.<br />

Existieren noch keine Sicherungen<br />

am vereinbarten Ort, legt<br />

Sbackup nach dem Start über<br />

Werkzeuge | Die Sicherung jetzt<br />

durchführen ein volles Backup an,<br />

das Sie an der Endung ful erkennen.<br />

Später schiebt es dann inkrementelle<br />

Backups mit der Endung<br />

inc hinterher. Die Namen<br />

der Backups versieht es<br />

mit einem eigenen Zeitstempel,<br />

sodass Sie später<br />

wissen, von wann welche<br />

Datei stammt (Abbildung<br />

G).<br />

Bevor Sie das Programm<br />

aber über Die Sicherung<br />

jetzt durchführen<br />

den Dienst aufnehmen<br />

lassen, klicken Sie unbedingt<br />

auf das Speichern-<br />

Icon in der Menüleiste.<br />

Andernfalls übernimmt<br />

Sbackup die Änderungen<br />

nicht <strong>und</strong> bleibt bei den<br />

Standardeinstellungen.<br />

Schaufel, Besen, Protokoll<br />

Für potenziell mehr Speicherplatz<br />

auf dem Backup-Medium sorgen<br />

die Inhalte des Reiters Aufräumen<br />

im Konfigurationsdialog. Hier<br />

weisen Sie Sbackup entweder an,<br />

nach einem bestimmten Verfallsdatum<br />

– voreingestellt sind 30<br />

Tage – alte Sicherungen zu entsorgen,<br />

oder Sie greifen zur wesentlich<br />

ausgefeilteren Funktion<br />

Logarithmisches Entfernen. Es<br />

dünnt die Sicherungen der Vergangenheit<br />

umso gründlicher aus,<br />

je älter die Daten sind. So behalten<br />

Sie nur noch ein Backup pro<br />

Woche vom letzten Monat, vom<br />

letzten Jahr bleibt nur ein Backup<br />

pro Monat übrig <strong>und</strong> so weiter.<br />

Von den vorhergehenden Jahren<br />

behalten Sie am Ende lediglich jeweils<br />

ein Backup.<br />

Im Reiter Berichte konfigurieren<br />

Sie, wo <strong>und</strong> wie ausführlich<br />

Sbackup seine Aktionen protokollieren<br />

soll. Auch einen Bericht per<br />

E-Mail kann das Programm auf<br />

Wunsch bei jeder Aktion zustellen.<br />

Dazu müssen Sie lediglich<br />

den Adressaten der Nachricht angeben<br />

<strong>und</strong> die Kontaktdaten eines<br />

SMTP-Servers für den Versand<br />

eintragen (Abbildung H). Ob<br />

dieser den Transport der Nachricht<br />

auch wirklich übernehmen<br />

kann, prüfen Sie über den Schalter<br />

Testen der Mail-Einstellungen.<br />

Restauratives<br />

Meist versauern Backups ungenutzt<br />

auf einer Festplatte – <strong>und</strong><br />

das ist auch gut so. Sollten Sie<br />

CRon-Job<br />

Cron-Jobs heißen unter Linux Aufgaben,<br />

die das System mithilfe des<br />

Cron-Daemons regelmäßig ausführt<br />

[5]. Dazu definieren Sie Zeitpunkte:<br />

Die fünf Sterne in einem<br />

Cron-Ausdruck stehen – von links<br />

nach rechts – für Minute, St<strong>und</strong>e,<br />

Tag, Monat <strong>und</strong> Wochentag. Die<br />

Sbackup-Vorgabe 0 4 * * * führt zu<br />

einem Sicherungslauf täglich um<br />

vier Uhr morgens. Um jeweils am<br />

28. eines Monats um 13:52 ein<br />

Backup zu machen, hieße der Eintrag<br />

52 13 28 * *.<br />

84 10 | 11<br />

www.linux-user.de


Sbackup<br />

netz&system<br />

F Neben einigen Standardeinstellungen sichern Sie Ihre Daten auf<br />

Wunsch zu definierten Zeiten. Die stellen Sie über einen Cron­Job ein.<br />

G Im Wiederherstellungsfenster (siehe Abschnitt „Restauratives“)<br />

nehmen Sie die gesicherten Daten bei Bedarf genauer unter die Lupe.<br />

doch einmal in die Verlegenheit<br />

kommen, Dateien retten zu müssen,<br />

nutzen Sie die Simple Backup<br />

Restoration (Abbildung G).<br />

Im Bereich Sicherungsziel erscheint<br />

unter Standardziel für Profile<br />

das während der Konfiguration<br />

angegebene lokale oder entfernte<br />

Backup-Verzeichnis. Handelt<br />

es sich um eine mit Sbackup<br />

an einem anderen Speicherort erstellte<br />

Sicherung, geben Sie stattdessen<br />

unter Eigenes Ziel den entsprechenden<br />

Ordner an. Die darin<br />

aufgef<strong>und</strong>enen Backup-Dateien<br />

listet die Software unter Verfügbare<br />

Sicherung auf. Wählen Sie<br />

eine davon aus, erscheint unter<br />

Wiederherstellung rechts daneben<br />

der Verzeichnisbaum. Handelt es<br />

sich um ein volles Backup, sehen<br />

Sie dort alle zu dem Zeitpunkt gesicherten<br />

Dateien.<br />

Bei inkrementellen Sicherungen<br />

tauchen dagegen nur die seit<br />

dem letzten Backup geänderten<br />

Dateien auf. Erstellen Sie beispielsweise<br />

jeweils am Montag<br />

ein volles Backup <strong>und</strong> stellen<br />

dann am Freitag fest, dass Sie<br />

alle Änderungen seit Montag<br />

brauchen, müssen Sie alle INC-<br />

Dateien wiederherstellen, die<br />

nach dem Vollbackup am Montag<br />

hinzugekommen sind.<br />

Bei sehr vielen angelegten Backup-Dateien<br />

hilft der oberhalb von<br />

Verfügbare Sicherungen platzierte<br />

Info<br />

[1] Sbackup: https:// launchpad. net/ sbackup<br />

[2] Sbackup-Tarball:<br />

http:// sourceforge. net/ projects/ sbackup/<br />

[3] Cloud-Storage: Thomas Drilling,<br />

„Datenwolke“, LU 09/ 2011, S. 24,<br />

http:// www. linux-community. de/ 24107<br />

[4] Reguläre Ausdrücke: Frank Hofmann,<br />

„Schnipseljagd“, LU 09/ 2011, S. 84,<br />

http:// www. linux-community. de/ 24091<br />

[5] Cron-Basics: Heike Jurzik, „Punktlandung“,<br />

LU 02/ 2006, S. 94, http:// www.<br />

linux-community. de/ 9812<br />

Kalender dabei, ältere Sicherungsdaten<br />

anhand des Sicherungsdatums<br />

zu identifizieren.<br />

Die Daten, für die Schnappschüsse<br />

vorliegen, erscheinen im Kalender<br />

gefettet. Ein Klick auf das<br />

Datum listet unter Verfügbare<br />

Sicherungen nur jene des entsprechenden<br />

Tags auf.<br />

Wählen Sie das Backup unter<br />

Verfügbare Sicherungen aus <strong>und</strong><br />

klicken auf Wiederherstellen, so<br />

restauriert Sbackup die Datei am<br />

Originalschauplatz – <strong>und</strong> überschreibt<br />

dabei unter Umständen<br />

vorhandene neuere Versionen.<br />

Über Wiederherstellen unter… legen<br />

Sie die neuere Datei an anderer<br />

Stelle ab. Über Änderungen<br />

rückgängig machen rollen Sie den<br />

Stand der gesicherten Dateien auf<br />

jenen vor der aktuellen Sicherung<br />

zurück. Rückgängig machen unter…<br />

restauriert diesen zurückgerollten<br />

Stand statt an originaler<br />

Stelle an einem anderen Ort.<br />

Backup-Dateien, die Sie nicht<br />

mehr benötigen, können Sie an<br />

dieser Stelle einfach manuell über<br />

den Reiter Verwaltung von Sicherungen<br />

mithilfe des Schalters Entfernen<br />

löschen.<br />

Fazit<br />

Sbackup präsentiert sich als recht<br />

durchdachtes Programm zum<br />

Sichern von Benutzerdaten aller<br />

Art. Es eignet sich jedoch nicht<br />

dazu, das komplette System zu<br />

sichern beziehungsweise wiederherzustellen.<br />

Trotz einiger kleinerer<br />

Schwachstellen <strong>und</strong> Inkonsistenzen<br />

in der Bedienung funktioniert<br />

Sbackup insgesamt sehr gut<br />

<strong>und</strong> nimmt Ihnen die lästige Arbeit<br />

ab, Backups mitsamt Cron-<br />

Jobs über die Kommandozeile<br />

einzurichten. (kki/ jlu) n<br />

H Sbackup informiert<br />

Sie über ein ausführliches<br />

Protokoll <strong>und</strong><br />

auf Wunsch sogar per<br />

E­Mail von allen seinen<br />

Aktionen.<br />

www.linux-user.de<br />

10 | 11 85


hardware<br />

Pearl Simvalley SP-60 GPS<br />

© Eduardo Rivero, 123RF<br />

Dual-SIM-Handy mit Android 2.2<br />

Doppeldecker<br />

Zwei SIM-Karten in einem Phone sparen nicht nur beim Reisen den lästigen Wechsel,<br />

sondern auch bei Anwendern, die ein Handy privat <strong>und</strong> eines beruflich nutzen. Thomas Leichtenstern<br />

readMe<br />

Der Online-Händler<br />

Pearl bietet ein Dual-<br />

SIM-fähiges Android-<br />

Smartphone für 129<br />

Euro an. Dank des GPS-<br />

Moduls dient es gleichzeitig<br />

als Navigationssys<br />

tem, das Google<br />

Maps zur Routenplanung<br />

nutzt.<br />

A Pearls Simvalley<br />

SP-60 wirkt durchaus<br />

schick, hat aber bis auf<br />

das Verwalten von zwei<br />

SIM-Karten nicht viel<br />

zu bieten.<br />

Ein Telefon, das zwei SIM-Karten<br />

verwaltet, erleichtert das Leben<br />

in vielen Fällen ungemein: Im<br />

Ausland beispielsweise nutzen Sie<br />

zum Surfen die landeseigene Karte<br />

<strong>und</strong> bleiben mit der anderen<br />

trotzdem erreichbar. Als Nutzer<br />

eines Firmenhandys benötigen<br />

Sie nur noch ein Telefon, um auf<br />

dem privaten wie geschäftlichen<br />

Anschluss erreichbar zu sein.<br />

Der Versandanbieter Pearl Agency<br />

[1] offeriert das Dual-SIM-<br />

Phone Simvalley SP-60 [2] zum<br />

attraktiven Preis von 129 Euro.<br />

Die baugleiche Variante SP-40 [3]<br />

<strong>ohne</strong> GPS-Modul kostet 99 Euro.<br />

Wie das Gerät das Verwalten der<br />

zwei Karten auf die Reihe bekommt<br />

<strong>und</strong> was es technisch im<br />

Vergleich zu Smart phones der<br />

gleichen Preisklasse bietet, zeigt<br />

der Test.<br />

Technik<br />

Die technischen Daten des SP-60<br />

(Abbildung A) entsprechen in<br />

etwa denen der Einsteiger-<br />

Smartphones LG P 500 Optimus<br />

<strong>und</strong> Sony Ericsson Xperia X8, die<br />

Amazon in der Preiskategorie um<br />

die 150 Euro anbietet.<br />

Allerdings muss das Pearl- Phone<br />

mit einer 420-MHz-CPU auskommen,<br />

während die genannte Konkurrenz<br />

600 MHz Rechenpower<br />

mitbringt. Im Antutu-Benchmark<br />

[4] erreicht das SP-60 entsprechend<br />

magere 467 Punkte,<br />

wogegen der Konkurrent von<br />

Sony mit 767 Zählern punktet<br />

<strong>und</strong> der Rivale von LG sogar mit<br />

939. Auch beim Akku kocht das<br />

Simvalley-Smartphone mit einem<br />

1100-mAh-Akku eher auf Sparflamme:<br />

Sony <strong>und</strong> LG spendieren<br />

ihren Smartphones Energiespeicher<br />

mit 1200 respektive 1500<br />

mAh Kapazität.<br />

Ähnlich mager sieht es bei Datentransfers<br />

über das mobile<br />

Netz aus. Während die beiden<br />

Vergleichskandidaten via UMTS/<br />

HSDPA eine maximale Transferrate<br />

von 7,2 Mbit/ s anbieten, begnügt<br />

sich das Simvalley SP-60<br />

auf EDGE mit einer theoretisch<br />

möglichen maximalen Bandbreite<br />

von 473,6 kbit/ s. In der Praxis<br />

liegt die Transferrate jedoch deutlich<br />

niedriger: Ein Test im E-Plus-<br />

Netz ergab einen tatsächlichen<br />

Durchsatz von 179 kbit/ s, das<br />

entspricht 22 KByte/ s.<br />

An Speicher bietet das Pearl-<br />

Smartphone 190 MByte verfügbaren<br />

Arbeitsspeicher <strong>und</strong><br />

271 MByte Speicherplatz für<br />

Apps. Möchten Sie das Gerät auch<br />

86 10 | 11<br />

www.linux-user.de


Pearl Simvalley SP-60 GPS<br />

hardware<br />

zum Aufbewahren von Multimedia-Dateien<br />

nutzen, kommen Sie<br />

um den Einsatz einer Micro-SD-<br />

Karte (maximal 16 GByte) nicht<br />

herum. Diese gehört jedoch nicht<br />

zum Lieferumfang. Den Einschub<br />

finden Sie an der rechten Gehäuseseite,<br />

ein Wechsel im laufenden<br />

Betrieb ist möglich.<br />

Das kapazitive Display des Simvalley<br />

SP-60 besitzt eine Diagonale<br />

von 3,2 Zoll mit einer Auflösung<br />

von 320x480 Pixeln. Die integrierte<br />

Kamera erstellt Bilder<br />

bis zu 2 Megapixeln, allerdings<br />

fehlt ihr sowohl der Autofokus als<br />

auch ein LED-Blitz. Eine Zusammenfassung<br />

zeigt die Tabelle<br />

Technische Eckdaten.<br />

Doppelpack<br />

Die Einschübe für die SIM-Karten<br />

befinden sich auf der Rückseite<br />

unter dem Akku. Der mit A gekennzeichnete<br />

rechte Slot repräsentiert<br />

die erste Karte, B auf der<br />

linken die zweite. Zum Öffnen<br />

der Metallabdeckung gilt es, diese<br />

zunächst ein Stück zurückzuschieben<br />

<strong>und</strong> danach aufzuklappen<br />

(Abbildung B).<br />

Nach dem Booten erfolgt die<br />

Abfrage nach den PINs beider<br />

Karten, die das Gerät im Anschluss<br />

aktiviert. Entsprechend<br />

empfängt das Telefon Gespräche<br />

auch von beiden Karten gleichermaßen.<br />

Das Modul für abgehende<br />

Gespräche zeigt am unteren Rand<br />

zwei Buttons, mit denen Sie festlegen,<br />

über welche Karte Sie das<br />

Gespräch führen möchten (Abbildung<br />

C, nächste Seite). Die<br />

gr<strong>und</strong>legende Konfiguration der<br />

SIMs erreichen Sie in<br />

den Einstellungen unter<br />

Dual-SIM-Einstellungen<br />

(Abbildung D, nächste<br />

Seite). Hier aktivieren<br />

oder deaktivieren Sie<br />

auf Knopfdruck die<br />

Karten <strong>und</strong> legen die<br />

Standardkarte fest.<br />

Als Standard für die<br />

Datenübertragung legt<br />

das Telefon die Karte 1<br />

fest. In den Android-<br />

Einstellungen unter<br />

Drahtlos <strong>und</strong> Netzwerke | Datenverbindungs-SIM<br />

ändern Sie diese<br />

Zuordnung gegebenenfalls. Der<br />

Punkt Mobile Netzwerke enthält<br />

die Konfiguration der Zugangspunkte<br />

<strong>und</strong> des Netzbetreibers<br />

für jede Karte getrennt. Welche<br />

Karte gerade welchen Dienst anbietet,<br />

ersehen Sie aus den Ziffern<br />

in den Symbolen für Datenübertragung<br />

<strong>und</strong> Signalstärke in<br />

der Leiste oben.<br />

Ein schnelles Ab- <strong>und</strong> Umschalten<br />

der GPRS/ EDGE-Verbindung<br />

erreichen Sie im Auswahlmenü,<br />

das erscheint, wenn Sie den Ein-/<br />

Aus-Schalter oben rechts länger<br />

betätigen. Welche Alternativen es<br />

derzeit zum Einsatz von zwei<br />

SIM-Karten in einem Android-<br />

Smartphone gibt, zeigt der Kasten<br />

Alternativen.<br />

Praxistest<br />

Zum Booten benötigt das Smartphone<br />

etwa eine Minute – angesichts<br />

der eher bescheidenen<br />

CPU-Leistung ist das ein durchaus<br />

akzeptabler Wert. Beim Gebrauch<br />

fällt schnell der unpräzise<br />

alTernaTiven<br />

Androidbasierte Alternativen an Dual-<br />

SIM-Smartphones sind derzeit in<br />

Deutschland dünn gesät. Lediglich<br />

der Anbieter Viewsonic kündigt für<br />

den Oktober 2011 ein Gerät an, das<br />

allerdings mehr als 250 Euro kosten<br />

soll [5]. Die inneren Werte – eine<br />

600-MHz-CPU, 512 MByte RAM <strong>und</strong><br />

ein 3,5-Zoll-Display mit einer Auflösung<br />

von 480x320 Pixeln – überzeugen<br />

aber genauso wenig wie die des<br />

SP-60. Eine weitere Möglichkeit bieten<br />

Dual-SIM-Adapter [6]. Dabei handelt<br />

es sich um eine Pseudo-SIM-<br />

Karte, in die Sie zwei zurechtgeschnittene<br />

SIMs einpassen. Diese Technik<br />

ist jedoch nicht durchgängig in der<br />

Software des Smartphones umgesetzt,<br />

weswegen die Nutzung der zwei<br />

Karten eher umständlich ausfällt. Ferner<br />

erlaubt diese Technik nur beschränkt<br />

das gleichzeitige Nutzen beider<br />

Karten. Anrufe empfängt beispielsweise<br />

jeweils nur eine.<br />

Touchscreen unangenehm auf:<br />

Manchmal lag der vom Gerät<br />

identifizierte Berührungspunkt<br />

um einen Zentimeter neben dem<br />

tatsächlichen. Das führte dazu,<br />

dass beispielsweise falsche Menüpunkte<br />

aufgerufen wurden. Hier<br />

fehlt eine Möglichkeit, das Display<br />

nachträglich zu kalibrieren.<br />

Das Benutzen der vergleichsweise<br />

kleinen Display-Tastatur gerät<br />

deswegen ab <strong>und</strong> an zum Glücksspiel.<br />

Das in der Gr<strong>und</strong>einstellung<br />

deaktivierte haptische Feed-<br />

B Unter dem Akku finden<br />

Sie die zwei Einschübe<br />

für die SIM-<br />

Karten. Der rechte beherbergt<br />

Karte 1, der<br />

linke Karte 2.<br />

Technische eckdaTen<br />

Vertrieb<br />

Pearl Agency<br />

Modell<br />

Simvalley SP-60 GPS<br />

OS<br />

Android 2.2 „Froyo“<br />

Display<br />

3,2 Zoll, Auflösung 320x480 Pixel<br />

Speicher<br />

512 MByte ROM, 256 MByte RAM<br />

Anschlüsse<br />

Erweiterung Micro-SD bis 16 GByte<br />

Anschlüsse 3,5 mm Klinke, Micro-USB 2.0<br />

Datenaustausch WLAN 802.11b/ g, Bluetooth 2.1 EDR, EDGE<br />

Kamera<br />

Kamera<br />

2 Megapixel, <strong>ohne</strong> Blitz, Fixfokus<br />

Bildgröße<br />

max. 2048x1536 (interpoliert)<br />

Videogröße max. 720x480 / 10 fps<br />

Formate<br />

Video(1)(2) MPEG4, H.263, H.264, WMV<br />

Audio(1)<br />

MP3, MIDI, AAC, eAAC+, WMA, PCM<br />

Sonstiges<br />

GSM-Frequenzen(1) 850/ 900/ 1800/ 1900<br />

Akku<br />

1100 mAh<br />

Standzeit(1) Standby bis 200 h, Sprechen bis 4 h<br />

Maße<br />

119x57x14 mm<br />

Lieferumfang Telefon, Akku, Ladegerät, Headset, USB-<br />

Kabel, Bedienungsanleitung<br />

Preis<br />

129,90 Euro<br />

(1) Herstellerangabe; (2) im Test nicht möglich<br />

www.linux-user.de<br />

10 | 11 87


hardware<br />

Pearl Simvalley SP-60 GPS<br />

C Über welche Karte<br />

Sie ausgehende Anrufe<br />

führen, wählen Sie mit<br />

den Buttons unter dem<br />

Ziffernblock.<br />

Glossar<br />

Rolling-Shutter-Effekt:<br />

Diagonale Verzerrungen,<br />

die auftreten,<br />

wenn sich entweder das<br />

Motiv oder die Kamera<br />

bewegt. Eine gerade<br />

Linie erscheint dann<br />

beispielsweise seitlich<br />

gebogen. Der Effekt<br />

zeigt sich in erster Linie<br />

bei CMOS-Sensoren.<br />

D In den „Dual-SIM-<br />

Einstellungen“ aktivieren<br />

<strong>und</strong> deaktivieren<br />

Sie die Karten.<br />

back bei Displayberührungen<br />

sollte auch tunlichst ausgeschaltet<br />

bleiben. Die Vibration erreicht<br />

kaum die Fingerkuppen, dafür<br />

schnarrt das Telefon laut.<br />

Um halbwegs flüssig mit dem<br />

SP-60 zu arbeiten, empfiehlt es<br />

sich, sämtliche Animationen unter<br />

Einstellungen | Display zu deaktivieren.<br />

Auf Apps, die eine gewisse<br />

Performance erwarten, vor<br />

allem im grafischen Bereich, sollten<br />

Sie besser verzichten. Selbst<br />

vergleichsweise anspruchslose<br />

Spiele wie Angry Birds stellt das<br />

SP-60 nur im Zeitlupentempo dar<br />

– Sie können die einzelnen<br />

Frames mitzählen.<br />

Die vorinstallierte Google-<br />

Maps-App startet dagegen zügig<br />

<strong>und</strong> zeigt bei WLAN-Verbindung<br />

die Karten schnell an. Bei einer<br />

EDGE-Verbindung dauert der<br />

Kartenaufbau wesentlich länger:<br />

Es vergehen zuweilen 30 <strong>und</strong><br />

mehr Sek<strong>und</strong>en, bis alle Kacheln<br />

einer Karte fertig geladen sind.<br />

Ähnliches gilt für den vorinstallierten<br />

Webbrowser, der sich<br />

selbst beim Laden der schlanken<br />

Google-Startseite über 30 Sek<strong>und</strong>en<br />

Zeit lässt. Im WLAN verhält<br />

sich der Browser erwartungsgemäß<br />

deutlich agiler <strong>und</strong> stellt<br />

schlanke Seiten wie die der Wikipedia<br />

in einer ansprechenden Geschwindigkeit<br />

dar. Auch die mobile<br />

Seite von Facebook <strong>und</strong> jene<br />

des Bilderdienstes Picasaweb erscheinen<br />

flüssig.<br />

Ausgezeichnet schlug sich das<br />

Simvalley SP-60 in seiner Paradedisziplin,<br />

dem Umgang mit zwei<br />

SIM-Karten. Durch die Integration<br />

an den relevanten Stellen der<br />

Software war es mühelos möglich,<br />

die Karten nach den eigenen<br />

Wünschen einzurichten <strong>und</strong> sie<br />

zu nutzen. Allerdings verwendet<br />

das Telefon nur eine Adressdatenbank<br />

für beide Karten. Eine Trennung,<br />

beispielsweise zwischen beruflichen<br />

<strong>und</strong> privaten Adressen,<br />

klappt nicht.<br />

Von seiner weniger guten Seite<br />

präsentierte sich das Pearl-Smartphone<br />

im Bereich Multimedia.<br />

Die von der integrierten Kamera<br />

aufgenommenen Fotos <strong>und</strong> Filme<br />

genügen höchstens Dokumentationszwecken.<br />

Die Bilder wirken<br />

wie durch einen Schleier aufgenommen,<br />

unscharf, wenig kontrastreich<br />

<strong>und</strong> weisen deutliche<br />

Farbverfälschungen auf. In Videos<br />

tritt bei Kameraschwenks ein<br />

ausgeprägter Rolling-Shutter-Effekt<br />

auf.<br />

Audiodateien in den Formaten<br />

OGG <strong>und</strong> MP3 gab das Handy<br />

völlig problemlos wieder. Warum<br />

der Hersteller den Lautsprecher<br />

jedoch auf der Rückseite des Gerätes<br />

platziert, das bleibt völlig<br />

unklar. Darüber hinaus fehlt dem<br />

integrierten Audioplayer eine Dateibrowsing-Funktion,<br />

sodass<br />

sich nur Audio-Dateien öffnen<br />

lassen, die sich im Standardpfad<br />

des Players befinden.<br />

Beim Abspielen von Video-Dateien<br />

versagte das Pearl-Handy<br />

gänzlich. Mangels eines integrierten<br />

Dateibrowsers gilt es, zunächst<br />

einen solchen nachzuinstallieren,<br />

um überhaupt in der<br />

Ordnerstruktur des Speichers navigieren<br />

zu können <strong>und</strong> das Speicherverzeichnis<br />

für die Filme zu<br />

erreichen. Das Abspielen sämtlicher<br />

Testfilme (OGV, WMV, MPG,<br />

AVI) verweigerte das Simvalley<br />

SP-60 aber <strong>ohne</strong>hin mit dem lapidaren<br />

Vermerk, dass es „dieses<br />

Video leider nicht wiedergegeben“<br />

könne. Das widerspricht der Herstellerangabe,<br />

das Gerät käme mit<br />

diesen Dateitypen zurecht.<br />

Fazit<br />

Wer die Dual-Sim-Funktion des<br />

Pearl Simvalley SP-60 nur als nettes<br />

Feature <strong>und</strong> nicht als Hauptzweck<br />

das Geräts betrachtet,<br />

kauft sich besser ein anderes<br />

Smartphone. In der Preisklasse<br />

um die 150 Euro tummeln sich<br />

zwischenzeitlich einige Markengeräte,<br />

die das China-Handy von<br />

Pearl in fast jeder Hinsicht locker<br />

in den Schatten stellen.<br />

Wer jedoch vorhat, sich das<br />

Smartphone genau wegen dieser<br />

Funktion zuzulegen, liegt damit<br />

goldrichtig. Im Test funktionierte<br />

es einwandfrei <strong>und</strong> ließ eine akkurate<br />

Trennung zu, welche Verbindung<br />

über welche Karte läuft. Alternativen<br />

dazu lässt der deutsche<br />

Markt bislang weitgehend vermissen,<br />

die Dual-SIM-Adaptertechnik<br />

funktioniert vergleichsweise unzureichend.<br />

(tle) n<br />

info<br />

[1] Pearl: http:// www. pearl. de<br />

[2] Simvalley SP-60:<br />

http:// www. pearl. de/ a-PX3505-4073. shtml<br />

[3] Simvalley SP-40:<br />

http:// www. pearl. de/ a-PX3500-4073. shtml<br />

[4] Antutu-Benchmark:<br />

http:// www. antutu. com/ software. php<br />

[5] Viewsonic V350:<br />

http:// www. viewsoniceurope. com/ de/<br />

products/ v350. htm<br />

[6] Dual-SIM-Adapter Hypercard 3G:<br />

http:// www. hypercard3g. de<br />

88 10 | 11<br />

www.linux-user.de


Hier startet<br />

iHr UBUNtU!<br />

● JaHres-aBo FÜr NUr E 26,90<br />

15%<br />

sparEn<br />

●<br />

iMMer Mit aKtUeLLster<br />

UBUNtU-DistriBUtioN aUF DVD<br />

NeU:<br />

● Digitales Jahresabo<br />

im PDF-Format für<br />

nur E 24,20!<br />

Jetzt BesteLLeN<br />

Telefon: 07131 / 2707 274<br />

Fax: 07131 / 2707 78 601<br />

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

Internet: http://www.ubuntu-user.de<br />

ich möchte Ubuntu User für nur E 6,73<br />

Ja,<br />

pro Ausgabe abonnieren.<br />

Ich erhalte Ubuntu User viermal im Jahr zum Vorzugs preis von e 6,73 statt e 7,90 im Einzelverkauf,<br />

bei jährlicher Verrechnung e 26,90 (*Österreich: e 29,90, Schweiz: SFr 53,90,<br />

restliches Europa: e 33,90). Ich gehe keine langfristige Bindung ein. Möchte ich das Abo<br />

nicht länger beziehen, kann ich die Bestellung jederzeit <strong>und</strong> fristlos kündigen. Geld für bereits<br />

bezahlte, aber noch nicht gelieferte Ausgaben erhalte ich zurück. Sollten Sie noch Fragen<br />

haben, hilft Ihnen unser Abo-Service gerne weiter (089-20959127).<br />

Linux New Media AG, Putzbrunner Straße 71, 81739 München; Aufsichtsrat: Rudolf Strobl<br />

(Vorsitz), Vorstand: Brian Osborn, Hermann Plank, Handelsregister: HRB 129161 München<br />

Name, Vorname<br />

Datum<br />

Unterschrift<br />

Mein Zahlungswunsch: Bequem per Bankeinzug Gegen Rechnung<br />

Straße, Nr.<br />

BLZ<br />

Konto-Nr.<br />

PLZ<br />

Ort<br />

Bank


know-how<br />

Foto-Batch (Teil 3)<br />

Bildverarbeitung mit den Skriptsprachen Perl <strong>und</strong> Python<br />

Mehr Motorkraft<br />

Mit nur wenigen Zahlen Code korrigieren Sie das Format digitaler Bilder, passen die Metadaten<br />

an oder beschriften die Fotos für den Upload in ein Online-Album. Frank Hofmann<br />

© Slulesoj, sxc.hu<br />

Beispiel-Skripte<br />

LU/fotobatch/<br />

reAdme<br />

Zum individuellen Nachbearbeiten<br />

einer größeren<br />

Anzahl Bilder bietet<br />

sich das <strong>Automatisieren</strong><br />

mithilfe von Perl<br />

<strong>und</strong> Python an: Der Programmieraufwand<br />

hält<br />

sich in Grenzen, die Arbeit<br />

führt relativ schnell<br />

zum Erfolg.<br />

In den ersten beiden Teilen der<br />

Artikelserie ([1],[2]) kamen die<br />

beiden Werkzeuge ImageMagick<br />

[3] <strong>und</strong> GraphicsMagick [4]<br />

zum Einsatz. In kleinere Shell-<br />

Skripte integriert, leisteten Sie<br />

dort gute Dienst. Zu beiden<br />

Werkzeugen gehören mächtige<br />

Bibliotheken, für die wiederum<br />

Bindings zu verschiedenen Programmiersprachen<br />

existieren.<br />

Programmierschnittstellen<br />

Wenn Sie also statt in der Shell zu<br />

arbeiten lieber Ihre Lieblingsprogrammiersprache<br />

zum Lösen der<br />

Aufgabe einsetzen möchten, dann<br />

stehen Ihnen viele Möglichkeiten<br />

offen. Für ImageMagick <strong>und</strong> GraphicsMagick<br />

gibt es Schnittstellen<br />

unter anderem für C/ C++,<br />

Perl, Java, Python, Ruby <strong>und</strong> Tcl.<br />

Diese sind erfreulicherweise vollständig,<br />

aktuell <strong>und</strong> verständlich<br />

dokumentiert.<br />

Serie AutomAtiSche BildverArBeitung<br />

Teil 1: ImageMagick, GraphicsMagick LU 03/ 2011, S. 84<br />

Teil 2: Magick Scripting Language LU 06/ 2011, S. 84<br />

Teil 3: Bearbeiten mit Perl/ Python LU 09/ 2011, S. 90<br />

In diesem Artikel drehen sich die<br />

Beispiele um die Bildmanipulation<br />

mit den beiden Skriptsprachen<br />

Perl <strong>und</strong> Python. Beide gehören<br />

zur Kategorie der Skriptsprachen.<br />

Vor dem Ausführen transponiert<br />

ein Interpreter den Programmcode<br />

in Bytecode. Das eigentliche<br />

Übersetzen erfolgt erst zur Laufzeit,<br />

Sie brauchen im Vorfeld also<br />

nichts zu kompilieren. Das Binding<br />

für Perl heißt PerlMagick [5],<br />

das für Python PythonMagick [6].<br />

Das erste Beispiel widmet sich<br />

PerlMagick. Das dafür erforderliche<br />

Debian/ Ubuntu-Paket heißt<br />

libgraphics-magick-perl. Nach der<br />

Installation des Paketes binden Sie<br />

das Perl-Modul über die folgende<br />

Deklaration in ein Skript ein:<br />

use Graphics::Magick;<br />

Nun stehen die Klassen <strong>und</strong><br />

Funktionen aus diesem Modul<br />

bereit. Der Code aus Listing 1<br />

dient dazu, die Bildinformationen<br />

anzuzeigen. Die Namen der Dateien<br />

geben Sie dem Skript als Parameter<br />

beim Aufruf mit.<br />

Jede Datei, die Sie beim Aufruf als<br />

Parameter übergeben, berücksichtigt<br />

das Programm (Zeile 10). Geben<br />

Sie keine Dateien an, bricht<br />

das Programm vorher ab (Zeile 7).<br />

Für einen besseren Programmierstil<br />

wäre stattdessen eine Funktion<br />

usage_exit() angebracht, die<br />

den Anwender auf fehlende Argumente<br />

hinweist. Der Aufruf in<br />

Zeile 7 müsste dann so lauten:<br />

usage_exit() unless @ARGV<br />

Zeile 12 erzeugt ein neues Grafikobjekt,<br />

über dessen Methoden Sie<br />

später auf die Dateien zugreifen.<br />

In der Zeile 13 öffnen Sie die Bilddatei<br />

<strong>und</strong> bestimmen den Bildtyp,<br />

die Bildgröße <strong>und</strong> den Farbmodus.<br />

In den Zeilen 17 bis 20 erfolgt die<br />

Ausgabe der Bildwerte, in Listing<br />

2 dargestellt am Aufruf für<br />

das Polaroid-Bild aus dem ersten<br />

Teil dieser Artikelserie.<br />

Statische Beschriftung<br />

Im zweiten Beispiel für den Alltagsgebrauch<br />

erhalten die Aufnahmen<br />

einen Schriftzug. Auf die-<br />

90 10 | 11<br />

www.linux-user.de


Foto-Batch (Teil 3)<br />

know-how<br />

se Weise versehen Sie ein Bild mit<br />

dem Namen des Fotografen oder<br />

einer Beschreibung zum Motiv.<br />

Sinnvoll ist das für Bilder, die Sie<br />

über ein Online-Album oder eine<br />

Fotodatenbank im Internet bereitstellen.<br />

Hier schützt ein sichtbares<br />

Zeichen der Urheberschaft<br />

vor Missbrauch. Bei der heutzutage<br />

erzeugten Menge digitaler Aufnahmen<br />

hilft ein Kommentar dabei,<br />

später Ort <strong>und</strong> Datum der<br />

Aufnahme zuzuordnen.<br />

Beim Beschriften kommt die<br />

Methode Annotate der Magick-<br />

Klasse zum Einsatz, der Sie den<br />

Text als Parameter übergeben<br />

(Listing 3). Diese Methode akzeptiert<br />

zusätzlich als Parameter verschiedene<br />

Attribute, wie zum Beispiel<br />

Art, Größe <strong>und</strong> Farbe der<br />

Schrift. Für die Schriftart erwartet<br />

die Methode den vollständigen<br />

Pfad zur Fontdatei. Im Beispiel erfolgt<br />

die Ausgabe des Textes mittels<br />

der (fiktiven) Truetype-Datei<br />

font.ttf mit einer Schriftgröße<br />

von 40 Punkt in roter Farbe.<br />

Der Text landet auf dem Bild an<br />

einer Position, die Sie über ein<br />

Koordinatenpaar für die waagerechte<br />

X- <strong>und</strong> senkrechte Y-Achse<br />

festlegen. Der Ursprung des Koordinatensystems<br />

befindet sich in<br />

der linken oberen Bildecke. Von<br />

da aus berechnet sich die Position<br />

in Pixeln. Um das veränderte Bild<br />

zu speichern, nutzen Sie die Write-<br />

Methode des Bild-Objektes:<br />

$bild‐>Write(filename=>$dateinamU<br />

e);<br />

Der Einfachheit halber speichern<br />

Sie das Skript, dessen Aufbau im<br />

Wesentlichen jenem von Listing 1<br />

ähnelt, unter dem Namen schriftzug.pl<br />

ab (Listing 4, nächste Seite).<br />

Sie rufen es mit folgendem<br />

Kommando auf, um ein PNG-Bild<br />

mit dem Schriftzug zu versehen:<br />

$ ./schriftzug.pl foto.png<br />

Abbildung A zeigt ein Bild nach<br />

dem Bearbeiten. Es kommt problemlos<br />

mit UTF-8-codierten Umlauten<br />

<strong>und</strong> Sonderzeichen zurecht.<br />

Das Skript funktioniert<br />

auch, wenn Sie beim Aufruf eine<br />

Serie von Bildern übergeben, die<br />

Sie identisch beschriften wollen.<br />

Dabei hilft Ihnen die Art, wie Digitalkameras<br />

die Aufnahmen im<br />

Dateisystem der Speicherkarte benennen.<br />

Als Dateiname verwenden<br />

aktuelle Modelle eine Kombination<br />

aus Buchstaben <strong>und</strong> Ziffern.<br />

Während die Abfolge der<br />

Buchstaben sich je nach Hersteller<br />

unterscheidet, geben die Ziffern in<br />

aller Regel die fortlaufende Nummer<br />

an, beispielsweise IMG0176.PNG<br />

für die 176. Aufnahme. Besteht<br />

die Bildserie aus den sechs Dateien<br />

(IMG0023.PNG bis IMG0028.PNG),<br />

sieht der Aufruf wie folgt aus:<br />

$ ./schriftzug.pl IMG002[3‐8].PNG<br />

Die Shell wertet zunächst die Eingabezeile<br />

aus <strong>und</strong> findet dabei<br />

den regulären Ausdruck. Sie expandiert<br />

die Werte in den eckigen<br />

Klammern als einzelne Ziffern 3<br />

bis 8 <strong>und</strong> kombiniert diese mit<br />

dem umgebenden Text zum Dateinamen.<br />

Anschließend erhält<br />

das Skript diese als Parameter.<br />

Flexible Beschriftung<br />

Bisher stand der Schriftzug direkt<br />

im Skript. Für einen anderen Text<br />

müssten Sie dieses jedes Mal verändern<br />

oder den Text als zusätzlichen<br />

Parameter übermitteln.<br />

Mit einem kleinen Kniff gelingt<br />

es aber, den Text aus einer Datei<br />

auszulesen. Die Annotate-Methode<br />

erlaubt die Angabe eines Dateinamens<br />

– in dieser angegebenen<br />

Datei legen Sie die Zeile einfach<br />

ab. Dazu ändern Sie den Aufruf in<br />

Zeile 14 von Listing 4 wie folgt:<br />

$text = '@beschriftung.txt'<br />

$ ./bildinfo.pl polaroid.png<br />

Datei: polaroid.png<br />

Format: Portable Network<br />

Graphics<br />

Größe: 296x243<br />

Modus: RGB<br />

liSting 2<br />

Bei jedem Aufruf des Skriptes<br />

liest das Magick-Objekt die Datei<br />

beschriftung.txt <strong>und</strong> versieht das<br />

Foto mit dem dort gespeicherten<br />

Text. Um den Inhalt der Datei<br />

festzulegen, genügt ein Texteditor.<br />

Individuelle Beschriftung<br />

Manchmal möchten Sie nicht alle<br />

Bilder identisch beschriften, sondern<br />

jedes mit einem anderen<br />

Text versehen. Dafür müssen Sie<br />

aber das Perl-Skript wieder etwas<br />

verändern (Listing 5, nächste Seite).<br />

Sie erstellen zunächst eine<br />

Textdatei, in der Sie für jede Abbildung<br />

den gewünschten Text<br />

hinterlegen. Die Angaben für die<br />

jeweilige Datei legen Sie in einer<br />

eigenen Zeile ab – zuerst den Namen<br />

der Bilddatei, danach den<br />

Text. Als Trennzeichen fungiert<br />

ein Doppelpunkt, gefolgt von einem<br />

Leerzeichen:<br />

foto156.png: Berlin, Funkturm am<br />

Messegelände<br />

foto159.png: Berlin,<br />

Alexanderplatz mit Weltzeituhr<br />

...<br />

der Autor<br />

Frank Hofmann hat<br />

Informatik an der TU<br />

Chemnitz studiert.<br />

Derzeit arbeitet er in<br />

Berlin im Open-<br />

Source-Expertennetzwerk<br />

Büro 2.0 als<br />

Dienstleister mit<br />

Spezialisierung auf<br />

Druck <strong>und</strong> Satz. Er<br />

gehört zur Linux User<br />

Group Potsdam<br />

(upLUG).<br />

liSting 1<br />

01 #!/usr/bin/perl ‐w<br />

02 # bildinfo.pl ‐ Bildinformationen anzeigen<br />

03<br />

04 # GraphicsMagick‐Modul einbinden<br />

05 use Graphics::Magick;<br />

06 # Abbrechen, falls keine Dateien als Parameter<br />

übergeben wurden<br />

07 exit unless @ARGV;<br />

08<br />

09 my ($dateiname, $farbraum, $format, $hoehe, $breite);<br />

10 foreach (@ARGV) {<br />

11 $dateiname = $_;<br />

12 $bild = Graphics::Magick‐>new;<br />

13 $bild‐>Read ($dateiname);<br />

14 ($farbraum, $format, $hoehe, $breite) =<br />

$bild‐>Get('colorspace', 'format', 'height', 'width');<br />

15<br />

16 print "Datei: ", $dateiname, "\n";<br />

17 print "Format: ", $format, "\n";<br />

18 print "Größe: ", $breite, "x", $hoehe, "\n";<br />

19 print "Modus: ", $farbraum, "\n";<br />

20 print " \n";<br />

21<br />

22 }<br />

$text = 'Ostseeurlaub 2011';<br />

$bild‐>Annotate (font=>'font.ttf', pointsize=>40,<br />

fill=>'red', text=>$text, x=>100, y=>100);<br />

liSting 3<br />

www.linux-user.de<br />

10 | 11 91


know-how<br />

Foto-Batch (Teil 3)<br />

A Dank eines einfachen<br />

Perl-Skriptes<br />

versehen Sie alle Urlaubsfotos<br />

auf einen<br />

Rutsch mit einem passenden<br />

Kommentar.<br />

liSting 4<br />

Das Perl-Skript aus Listing 5 rufen<br />

Sie danach mit dem Namen<br />

der Textdatei auf:<br />

$ ./beschriftung.pl bilderliste.U<br />

txt<br />

Nach den Anweisungen zu Beginn<br />

gilt es, die Datei mit der Bilderliste<br />

zu öffnen (Zeile 13) <strong>und</strong> danach<br />

in einer Schleife zeilenweise<br />

zu verarbeiten. Jede gelesene<br />

Textzeile zerlegt das Skript mithilfe<br />

eines regulären Ausdrucks<br />

<strong>und</strong> der Funktion split am Trennzeichen<br />

: in zwei separate Teile<br />

(Zeile 16), die im Array @zeile landen.<br />

Danach gibt das Skript die<br />

Werte einmal aus, um Ihnen die<br />

01 #!/usr/bin/perl ‐w<br />

02 # schriftzug.pl ‐ Bilder statisch beschriften<br />

03<br />

04 # GraphicsMagick‐Modul einbinden<br />

05 use Graphics::Magick;<br />

06 # Abbrechen, falls keine Dateien als Parameter<br />

übergeben wurden<br />

07 exit unless @ARGV;<br />

08<br />

09 my ($dateiname, $text, $bild);<br />

10 foreach (@ARGV) {<br />

11 $dateiname = $_;<br />

12 $bild = Graphics::Magick‐>new;<br />

13 $bild‐>Read ($dateiname);<br />

14 $text = 'Albi (Tarn), Midi‐Pyrénées, 2008 ‐ Frank<br />

Hofmann';<br />

15 $bild‐>Annotate (font=>'font.ttf', pointsize=>40,<br />

fill=>'red', text=>$text, x=>100, y=>100);<br />

16 $bild‐>Write(filename=>$dateiname);<br />

17 }<br />

liSting 5<br />

01 #!/usr/bin/perl ‐w<br />

02 # beschriftung.pl ‐ Bilder<br />

flexibel beschriften<br />

03<br />

04 # graphicsmagick‐Modul<br />

einbinden<br />

05 use Graphics::Magick;<br />

06 # Abbrechen, falls keine<br />

Parameter übergeben wurden<br />

07 exit unless @ARGV;<br />

08<br />

09 my (@zeile, $dateiname,<br />

$bild);<br />

10<br />

11 $dateiname = $ARGV[0];<br />

12<br />

13 open (DATEILISTE,<br />

$dateiname);<br />

14<br />

15 while () {<br />

16 @zeile = split(/:\s+/, $_,<br />

2);<br />

17 print "Datei: $zeile[0]\n";<br />

18 print "Text: $zeile[1]\n";<br />

19<br />

20 $bild =<br />

Graphics::Magick‐>new;<br />

21 $bild‐>Annotate<br />

(font=>'font.ttf',<br />

pointsize=>40, fill=>'red',<br />

text=>$zeile[1], x=>100,<br />

y=>100);<br />

22 $bild‐>Write(filename=>$ze<br />

ile[0]);<br />

23 }<br />

24 close (DATEILISTE);<br />

Gelegenheit zu geben, diese noch<br />

einmal zu kontrollieren. In den<br />

folgenden Zeilen operiert das<br />

Skript auf der Bilddatei: Es erzeugt<br />

das Bildobjekt, liest die Datei<br />

ein, beschriftet sie mit der Annotate-Methode,<br />

schreibt die geänderte<br />

Bilddatei <strong>und</strong> schließt<br />

diese – alles wie gehabt. Zu guter<br />

Letzt schließt das Skript die Datei<br />

mit der Bilderliste wieder.<br />

Perl-Alternativen<br />

Falls Ihnen PerlMagick nicht zusagt,<br />

gibt es probate Alternativen<br />

– etwa das Modul Imager [7], das<br />

bereits zur Standardinstallation<br />

gehört <strong>und</strong> als ebenbürtig zu Perl-<br />

Magick gilt. Die GD-Library [8]<br />

erfreut sich bei PHP-Entwicklern<br />

großer Beliebtheit. Für Perl existiert<br />

ebenfalls ein Modul dazu.<br />

Dieses enthält neben vielen Routinen<br />

zum Erzeugen von Grafiken<br />

einige Methoden zum Bearbeiten<br />

von Bildern, beispielsweise zum<br />

Rotieren <strong>und</strong> zum Transponieren.<br />

Wer die Skriptsprache Python<br />

bevorzugt, dem sei zum Bearbeiten<br />

von Bildern die Python Imaging<br />

Library (PIL) ans Herz gelegt<br />

[9]. Derzeit steht die stabile<br />

Version 1.1.7 bereit (veröffentlicht<br />

im November 2009). Die Bibliothek<br />

liegt in Versionen für Python<br />

2.5 <strong>und</strong> 2.6 vor; für Python 3<br />

gibt es noch kein offizielles Release.<br />

Das Debian/ Ubuntu-Paket<br />

dazu heißt python-imaging, die Dokumentation<br />

python-imaging-doc.<br />

PIL macht es dem Entwickler<br />

vergleichsweise einfach. Das Einbinden<br />

der Bibliothek erfolgt über<br />

das Einbinden des Moduls mit der<br />

Zeile import Image im Python-<br />

Skript. Die ausführliche Dokumentation<br />

steht in drei Varianten<br />

bereit – online, als PDF-Handbuch<br />

<strong>und</strong> als Debian/ Ubuntu-Paket<br />

([10],[11]). Sie sorgt nach einer<br />

sehr kurzen Einarbeitungszeit<br />

für schnelle Erfolge. Neugierig<br />

machen die kleinen Tutorials zu<br />

PIL, die Nadia Alramli in ihrem<br />

Blog veröffentlicht [12].<br />

Vollständig unterstützt die Bibliothek<br />

beispielsweise die Formate<br />

für Rastergrafiken BMP, GIF,<br />

IM, JPEG, PDF, PNG, PPM, TIFF<br />

<strong>und</strong> XBM, Formate wie MPEG,<br />

PhotoCD, PSD <strong>und</strong> WMF nur<br />

lesend. Auf EPS-Vektorgrafiken<br />

92 10 | 11<br />

www.linux-user.de


Foto-Batch (Teil 3)<br />

know-how<br />

versteht sich PIL bisher nur mithilfe<br />

von Ghostscript – dafür aber<br />

vollständig.<br />

Bildinformationen<br />

Listing 6 gleicht von den Zielen<br />

her Listing 1. Das Skript gibt die<br />

Informationen zu einer Bilddatei<br />

auf der Standardausgabe aus (Abbildung<br />

B). Die Namen der Bilddateien<br />

erhält das Skript als Parameter<br />

im Aufruf. Nach Angabe<br />

des verwendeten Encodings in<br />

Zeile 1 (hier UTF-8) gilt es, die<br />

beiden zusätzlichen Python-Module<br />

sys <strong>und</strong> Image zu laden (Zeilen<br />

5 <strong>und</strong> 6). Danach wertet das<br />

Skript in Zeile 8 die Aufrufzeile<br />

aus. Das Konstrukt sys.argv[1:]<br />

übernimmt alle übergebenen Parameter<br />

der Aufrufzeile als Liste,<br />

mit Ausnahme des ersten Parameters:<br />

Dieser enthält den nicht<br />

benötigten Namen des Skriptes.<br />

In der For-Schleife in Zeile 10<br />

arbeitet das Skript die Liste der<br />

Parameter einzeln ab, wobei jeder<br />

Parameter den Dateinamen einer<br />

Bilddatei repräsentiert. Nach der<br />

Ausgabe des Dateinamens (Zeile<br />

11) folgt das Laden des Bildes<br />

mit der Methode open() (Zeile 13).<br />

Die Variable bild ist ein Objekt<br />

der Klasse Image mit den Attributen<br />

format (Bildformat), size (Breite<br />

<strong>und</strong> Höhe des Bildes) <strong>und</strong> mode<br />

(Farbmodus). Die Werte der Attribute<br />

liest das Skript aus der Variablen<br />

bild <strong>und</strong> gibt sie danach<br />

auf der Standardausgabe aus (Zeilen<br />

14 bis 16).<br />

Das ganze Konstrukt ist in eine<br />

Struktur eingebettet (try/except),<br />

um auftretende Fehler beim Ablauf<br />

abzufangen. Enthält die Variable<br />

dateiname beispielsweise keine<br />

Bilddatei oder vermag das Skript<br />

die angegebene Bilddatei nicht zu<br />

lesen, überspringt es die Ausgabe<br />

der Bilddetails <strong>und</strong> gibt einen<br />

Fehlerhinweis auf der Standardausgabe<br />

aus (Zeile 19).<br />

Bilder drehen<br />

Für das Drehen von Bildern beinhaltet<br />

die PIL-Klasse die beiden<br />

Methoden rotate <strong>und</strong> transpose.<br />

Während rotate das Drehen um<br />

einen beliebigen Winkel gestattet,<br />

bringt transpose feste Winkel<br />

<strong>und</strong> die Transformationen um die<br />

horizontale <strong>und</strong> vertikale Bildachse<br />

mit. In Sachen Ausführungsgeschwindigkeit<br />

<strong>und</strong> Qualität<br />

der Transformation besteht<br />

kein Unterschied zwischen beiden<br />

Methoden. Nachfolgend<br />

kommt rotate zum Einsatz.<br />

Als einzigen Parameter benötigt<br />

rotate den Drehwinkel als Fließkommazahl.<br />

Listing 7 zeigt das<br />

Drehen eines Bildes um 45 Grad<br />

im Uhrzeigersinn. Zeile 1 enthält<br />

die Instruktionen zum Öffnen<br />

der Datei in Form eines Objektes<br />

der Image-Klasse. Dieses landet<br />

in der Variable bild.<br />

Zeile 2 definiert eine Variable<br />

drehwinkel, die den Fließkommawert<br />

45.0 zugewiesen bekommt.<br />

In Zeile 3 erfolgt das Drehen des<br />

Bildes über den Aufruf der Methode<br />

rotate der Variable bild.<br />

Den gewünschten Drehwinkel<br />

übergeben Sie einfach als Parameter.<br />

In Zeile 4 landet das gedrehte<br />

Bild in der angegebenen Datei –<br />

bei der Abfolge im Beispiel in der<br />

01 # bildinfo.py<br />

liSting 6<br />

02 # ‐*‐ coding: utf‐8 ‐*‐<br />

03<br />

04 # Module System <strong>und</strong> PIL laden<br />

05 import sys<br />

06 import Image<br />

07<br />

08 kommandozeile = sys.argv[1:]<br />

09<br />

10 for dateiname in<br />

kommandozeile:<br />

11 print ("Datei: %s" %<br />

dateiname)<br />

12 try:<br />

13 bild = Image.<br />

open(dateiname)<br />

14 print ("Format: %s" %<br />

bild.format)<br />

15 print ("Größe: %s x %s" %<br />

(bild.size[0], bild.size[1]))<br />

16 print ("Modus: %s" %<br />

bild.mode)<br />

17 print (" ")<br />

18 except IOError:<br />

19 print ("Fehler: kann %s<br />

nicht lesen" % dateiname)<br />

Originaldatei. Listing 8 behebt<br />

diesen Makel <strong>und</strong> zeigt das Drehen<br />

eines Bildes in einem kompletten<br />

Python-Skript. Sie rufen<br />

es wie folgt auf:<br />

$ python bilddrehen.py Drehwinkel<br />

Eingabedatei Ausgabedatei<br />

Das Skript erwartet die Parameter<br />

exakt in dieser genannten Reihenfolge.<br />

Für das Drehen des Bildes<br />

um 45 Grad im Uhrzeigersinn<br />

sieht der Aufruf so aus:<br />

$ python bilddrehen.py 45.0 bild.<br />

png bild‐gedreht.png<br />

01 bild = Image.open(dateiname)<br />

02 drehwinkel = 45.0<br />

03 bild.rotate(drehwinkel)<br />

04 bild.save(dateiname)<br />

liSting 7<br />

B Mit nur wenigen<br />

Zeilen Python zaubern<br />

Sie Metainformationen<br />

aus Bilddateien heraus.<br />

liSting 8<br />

01 # bilddrehen.py<br />

02 # ‐*‐ coding: utf‐8 ‐*‐<br />

03<br />

04 # Module System <strong>und</strong> PIL laden<br />

05 import sys<br />

06 import Image<br />

07<br />

08 (drehwinkel, dateiname, ausgabedatei) = sys.argv[1:]<br />

09 drehwinkel = float(drehwinkel)<br />

10<br />

11 print ("Drehwinkel: %f Grad" % drehwinkel)<br />

12 print ("Datei: %s" % dateiname)<br />

13 print ("Ausgabedatei: %s" % ausgabedatei)<br />

14<br />

15 try:<br />

16 bild = Image.open(dateiname)<br />

17 neuesbild = bild.rotate(drehwinkel)<br />

18 neuesbild.save(ausgabedatei)<br />

19 except IOError:<br />

20 print ("Fehler: kann %s nicht bearbeiten." %<br />

dateiname)<br />

www.linux-user.de<br />

10 | 11 93


know-how<br />

Foto-Batch (Teil 3)<br />

C Gqview/ Geeqie stellt<br />

das Bild <strong>und</strong> dessen<br />

Exif-Daten dar.<br />

dAnkSAgung<br />

Der Autor bedankt<br />

sich bei Wolfram Eifler,<br />

Wolfram Schneider<br />

<strong>und</strong> dem Perl-<br />

Stammtisch Berlin<br />

[19] für deren kritische<br />

Anmerkungen,<br />

konstruktive Kommentare<br />

<strong>und</strong> Anregungen<br />

im Vorfeld<br />

dieses Artikels.<br />

Diese Zusatzinformationen zu den<br />

Aufnahmen stehen oft im EXIF-<br />

Format [14] bereit <strong>und</strong> beinhalten<br />

beispielsweise die Auflösung des<br />

Bildes, den Kamerahersteller <strong>und</strong><br />

das Modell, den Farbraum, die genutzten<br />

Filter <strong>und</strong> Objektive sowie<br />

die Orientierung für Hochoder<br />

Querformat [15]. Dabei unterstützen<br />

die Kameras nur die<br />

Formate JPEG, TIFF (Rev. 6) <strong>und</strong><br />

RIFF WAV, die Formate PNG <strong>und</strong><br />

GIF bleiben bislang außen vor.<br />

Viele Beispiele im Netz zeigen<br />

den erfolgreichen Zugriff auf die<br />

Exif-Daten mit dem speziellen<br />

PIL-Modul ExifTags. Diese Information<br />

scheint für aktuelle PIL-<br />

Versionen veraltet zu sein, denn<br />

das Auslesen gelang damit nicht.<br />

Die Alternative Pyexiv2 [16] lieferte<br />

hingegen Ergebnisse. Das<br />

Modul stellt eine Schnittstelle für<br />

die C++-Bibliothek Exiv2 bereit.<br />

Als vollständiges Beispiel zum<br />

Auslesen der Exif-Daten dient<br />

Listing 9: Nach dem Laden des<br />

Bildes (Zeile 14) erfolgt das Lesen<br />

der Exif-Daten mit der Methode<br />

readMetadata (Zeile 15). Eine Liste<br />

der gef<strong>und</strong>enen Metatags liefert<br />

die Methode exifKeys (Zeile 16).<br />

In Zeile 18 gibt das Skript die Liste<br />

zusammen mit den gespeicherten<br />

Metadaten aus. Es akzeptiert<br />

als einzigen Parameter eine Datei<br />

im JPG- oder TIFF-Format, etwa<br />

aufgerufen wie in Listing 10.<br />

Die Liste <strong>und</strong> Werte der Exif-<br />

Tags variieren <strong>und</strong> hängen von<br />

der Kamera selbst, deren Firmware<br />

<strong>und</strong> den Kamera-Einstellungen<br />

ab (siehe dazu das Interview<br />

mit Phil Harvey [17], dem Entwickler<br />

von Exiftool). Die Ausgabe<br />

in Listing 10 verrät, dass das Bild<br />

mit einer Canon Powershot A470<br />

am 14. September 2008 kurz nach<br />

11 Uhr aufgenommen wurde (geinfo<br />

[1] Teil 1 der Serie: Frank Hofmann, „Am laufenden Band“, LU 03/ 2011, S. 84,<br />

http:// www. linux-community. de/ 22947<br />

[2] Teil 2 der Serie: Frank Hofmann, „Fix <strong>und</strong> fertig“, LU 06/ 2011, S. 84,<br />

http:// www. linux-community. de/ 22948<br />

[3] ImageMagick: http:// www. imagemagick. org<br />

[4] GraphicsMagick: http:// www. graphicsmagick. org<br />

[5] PerlMagick: http:// www. imagemagick. org/ script/ perl-magick. php<br />

[6] PythonMagick: http:// wiki. python. org/ moin/ PythonMagick<br />

[7] Perl-Modul Imager: http:// imager. perl. org/<br />

[8] Perl-Modul für die GD-Library: http:// search. cpan. org/ ~lds/ GD/ GD. pm<br />

[9] Python Imaging Library: http:// www. pythonware. com/ products/ pil<br />

[10] PIL-Dokumentation (online):<br />

http:// www. pythonware. com/ library/ pil/ handbook/ index. htm<br />

[11] PIL-Dokumentation (PDF):<br />

http:// www. pythonware. com/ media/ data/ pil-handbook. pdf<br />

[12] PIL-Tutorial: Nadia Alramli, „From Basic to Advanced Drawing“,<br />

http:// nadiana. com/ pil-tutorial-basic-advanced-drawing<br />

[13] Geeqie-Workshop: Karsten Günther, „Ordentlich sortiert“, LU 10/ 2010, S. 58,<br />

http:// www. linux-community. de/ 21689<br />

[14] EXIF: http:// en. wikipedia. org/ wiki/ Exchangeable_image_file_format<br />

[15] EXIF-Spezifikation: http:// www. exif. org/ specifications. html<br />

[16] Pyexiv2-Projekt: http:// tilloy. net/ dev/ pyexiv2/<br />

[17] Interview mit Phil Harvey: Andreas Bohle, „Alles im Griff“, LU 09/ 2010, S. 28,<br />

http:// www. linux-community. de/ 21636<br />

[18] Exif-Daten zur Bildausrichtung:<br />

http:// www. impulseadventure. com/ photo/ exif-orientation. html<br />

[19] Perl-Stammtisch Berlin: http:// perlmongers. de/ ? BerlinPM<br />

Nach dem Python-Vorspann (Zeile<br />

1 bis 7) wertet das Skript den<br />

Aufruf aus. Zunächst liest es die<br />

Parameter aus <strong>und</strong> weist diese den<br />

drei internen Variablen drehwinkel,<br />

dateiname <strong>und</strong> ausgabedatei zu (Zeile<br />

8). Es lohnt sich sicherzustellen,<br />

dass der Drehwinkel eine<br />

Fließkommazahl ist (Zeile 9). Das<br />

geschieht, indem Sie den im Parameter<br />

übermittelten Wert für den<br />

Drehwinkel mittels float() explizit<br />

in eine Fließkommazahl umwandeln.<br />

Die Zeilen 11 bis 13 geben<br />

die Werte für die zu bearbeitende<br />

Datei, den Drehwinkel <strong>und</strong><br />

die Ausgabedatei aus.<br />

In den Zeilen 15 bis 20 erfolgt<br />

das Rotieren: Das Skript öffnet<br />

die Bilddatei (Zeile 16), dreht sie<br />

dann um den gewünschten Winkel<br />

(Zeile 17), legt anschließend<br />

das veränderte Bild in der Variable<br />

neuesbild ab <strong>und</strong> speichert das<br />

Resultat schließlich in der Ausgabedatei<br />

(Zeile 18). Eine bestehende<br />

Datei gleichen Namens überschreibt<br />

es <strong>ohne</strong> Rückfrage. Tritt<br />

beim Bearbeiten ein Ein-/ Ausgabefehler<br />

auf, greift das Try-Except-Statement,<br />

fängt den Fehler<br />

ab <strong>und</strong> gibt ihn aus (Zeile 20).<br />

Daten auslesen<br />

Mit Listing 8 steht eine generische<br />

Schnittstelle zum Rotieren<br />

von Bildern bereit, die beliebige<br />

Drehwinkel ermöglicht. Im Alltag<br />

reduziert sich das häufig auf die<br />

Notwendigkeit, Bilder korrekt im<br />

Quer- oder Hochformat anzuzeigen.<br />

Viele Programme werten<br />

dazu bereits Zusatzinformationen<br />

in den Bildern aus <strong>und</strong> stellen<br />

das Bild entsprechend gedreht<br />

dar. <strong>LinuxUser</strong> stellte dazu bereits<br />

die Möglichkeiten von<br />

Geeqie (Abbildung C) vor [13].<br />

AuSrichtungSoptionen<br />

Option Bedeutung Winkel<br />

1 Querformat, Nullpunkt oben links Drehen um 0 Grad<br />

3 Querformat, Nullpunkt unten rechts Drehen um 180 Grad<br />

6 Hochformat, Nullpunkt oben rechts Drehen um 90 Grad<br />

8 Hochformat, Nullpunkt unten links Drehen um 270 Grad<br />

94 10 | 11<br />

www.linux-user.de


Foto-Batch (Teil 3)<br />

know-how<br />

nauer: Die Kamera hat diesen Zeitstempel<br />

eingetragen). Das Bild hat<br />

eine Breite von 2048 Pixel <strong>und</strong><br />

eine Höhe von 1536 Pixeln.<br />

Die Zeile Exif.Image.Orientation<br />

mit dem Wert 1 besagt, dass die<br />

Aufnahme im Querformat vorliegt.<br />

Gemäß [18] sind auch die<br />

Werte in der Tabelle Ausrichtungsoptionen<br />

gültig. Eine Kamera ermittelt<br />

die Ausrichtung über einen<br />

Lagesensor, mittels dessen sie erkennt,<br />

ob Sie gerade im Hochoder<br />

Querformat aufnehmen.<br />

Demgemäß setzt sie den entsprechenden<br />

Wert in den Exif-Daten.<br />

Verfügt das Aufnahmegerät über<br />

keinen solchen Sensor, trägt es bei<br />

allen Aufnahmen eine 1 ein, geht<br />

also vom Querformat aus.<br />

Nach Exif-Daten drehen<br />

Als letztes Beispiel dient ein<br />

Skript, welches das Bild so dreht,<br />

wie es sich der Fotograf bei der<br />

Aufnahme gedacht hat. Die<br />

Gr<strong>und</strong>lage dazu liefern die Exif-<br />

Daten, die den notwendigen<br />

Drehwinkel verraten. Dazu kombiniert<br />

der Code in Listing 11<br />

Funktionen aus PIL <strong>und</strong> Pyexiv2.<br />

01 # exif.py<br />

liSting 9<br />

02 # ‐*‐ coding: utf‐8 ‐*‐<br />

03<br />

04 # Module System <strong>und</strong> Pyexiv2<br />

laden<br />

05 import sys<br />

06 import pyexiv2<br />

07<br />

08 kommandozeile = sys.argv[1:]<br />

09 dateiname = kommandozeile[0]<br />

10<br />

11 print ("Datei: %s" %<br />

dateiname)<br />

12<br />

13 try:<br />

14 bild = pyexiv2.<br />

Image(dateiname)<br />

15 bild.readMetadata()<br />

16 info = bild.exifKeys()<br />

17 for key in info:<br />

18 print ("%s: %s" % (key,<br />

bild[key]))<br />

19 except IOError:<br />

20 print ("Fehler: kann<br />

%s nicht bearbeiten" %<br />

dateiname)<br />

Nach dem Vorspann (Zeile 1 bis 8)<br />

<strong>und</strong> dem Auswerten der Parameter<br />

(Zeile 9 bis 13) liest das Skript<br />

die Exif-Daten aus der Bilddatei<br />

aus (Zeile 16 bis 19). Interessant<br />

ist der Eintrag Exif.Image.Orientation,<br />

dessen Wert in der Variable<br />

ausrichtung landet (Zeile 19). Zeile<br />

21 enthält eine Liste mit Einträgen,<br />

die jedem Wert der Ausrichtung<br />

den entsprechenden<br />

Drehwinkel zuordnet. Dabei fungiert<br />

der Wert der Ausrichtung<br />

als Index in der Liste.<br />

Beinhaltet die Ausrichtung einen<br />

Wert größer 1, gilt es, das<br />

Bild entsprechend zu drehen. In<br />

den Zeilen 27 bis 29 erledigt die<br />

PIL-Methode rotate das Rotieren<br />

des Bildes. Dabei gehen zunächst<br />

die Exif-Daten verloren. Deswegen<br />

überträgt das Skript diese in<br />

den Zeilen 31 bis 45 aus dem alten<br />

Bild ins neue. Dazu kopiert es<br />

die Werte des Ursprungsbildes<br />

zunächst vollständig in die Datenstruktur<br />

des neuen Bildes<br />

(Zeilen 33 bis 38).<br />

Liegt ein Bild im Hochformat<br />

vor, bedürfen alle achsenbezogenen<br />

Werte einer Korrektur, also<br />

Höhe <strong>und</strong> Breite des Bildes sowie<br />

die Auflösung <strong>und</strong> Ausrichtung.<br />

Schließlich speichert das Skript<br />

das Ergebnis in Zeile 45 in der<br />

neuen Datei.<br />

Fazit<br />

Im Gegensatz zu einfachen Skripten<br />

mittels Bash <strong>und</strong> anderen<br />

Kommandozeilen-Werkzeugen<br />

bietet das Bearbeiten von Bilddateien<br />

mit Skriptsprachen bei geringerem<br />

Aufwand sehr viel mehr<br />

liSting 10<br />

$ python exif.py IMG_0284.JPG<br />

Datei: IMG_0284.JPG<br />

Exif.Image.Make: Canon<br />

Exif.Image.Model: Canon<br />

PowerShot A470<br />

Exif.Image.Orientation: 1<br />

Exif.Image.DateTime: 2008‐09‐14<br />

11:05:50<br />

Exif.Photo.PixelXDimension: 2048<br />

Exif.Photo.PixelYDimension: 1536<br />

...<br />

Möglichkeiten. Allerdings gilt es,<br />

dazu im Zweifelsfall eine komplett<br />

neue Sprache zu lernen –<br />

aber solche Herausforderungen<br />

machen ja unter anderem den<br />

Reiz von Linux aus, oder? (agr) n<br />

liSting 11<br />

01 # exif2.py<br />

02 # ‐*‐ coding: utf‐8 ‐*‐<br />

03<br />

04 # Module System, PIL <strong>und</strong> Pyexiv2 laden<br />

05 import sys<br />

06 import pyexiv2<br />

07 import Image<br />

08<br />

09 kommandozeile = sys.argv[1:]<br />

10 dateiname = kommandozeile[0]<br />

11 ausgabedatei = kommandozeile[1]<br />

12<br />

13 print ("Datei: %s" % dateiname)<br />

14<br />

15 try:<br />

16 bild = pyexiv2.Image(dateiname)<br />

17 bild.readMetadata()<br />

18 info = bild.exifKeys()<br />

19 ausrichtung = bild['Exif.Image.Orientation']<br />

20<br />

21 zuordnung = {1: 0.0, 3: 180.0, 6: 90.0, 8: 270.0}<br />

22 drehwinkel = zuordnung[ausrichtung]<br />

23 print ("Ausrichtung: %i" % ausrichtung)<br />

24 print ("Drehwinkel: %f Grad" % drehwinkel)<br />

25<br />

26 if ausrichtung > 1:<br />

27 neuesbild = Image.open(dateiname)<br />

28 neuesbild = neuesbild.rotate(drehwinkel)<br />

29 neuesbild.save(ausgabedatei)<br />

30<br />

31 neuesbild = pyexiv2.Image(ausgabedatei)<br />

32 neuesbild.readMetadata()<br />

33 for key in info:<br />

34 try:<br />

35 neuesbild[key] = bild[key]<br />

36 except:<br />

37 print ("Konvertierungsfehler bei Eintrag %s"<br />

% key)<br />

38<br />

39 neuesbild['Exif.Image.Orientation'] = 1<br />

40 if ausrichtung > 5:<br />

41 neuesbild['Exif.Image.XResolution'] =<br />

bild['Exif.Image.YResolution']<br />

42 neuesbild['Exif.Image.YResolution'] =<br />

bild['Exif.Image.XResolution']<br />

43 neuesbild['Exif.Photo.PixelXDimension'] =<br />

bild['Exif.Photo.PixelYDimension']<br />

44 neuesbild['Exif.Photo.PixelYDimension'] =<br />

bild['Exif.Photo.PixelXDimension']<br />

45 neuesbild.writeMetadata()<br />

46 print ("Ausgabedatei: %s" % ausgabedatei)<br />

47 except IOError:<br />

48 print ("Fehler: kann %s nicht bearbeiten" %<br />

dateiname)<br />

www.linux-user.de<br />

10 | 11 95


servIce<br />

IT-Profimarkt<br />

PROFI<br />

MARKT<br />

Sie fragen sich, wo Sie maßgeschneiderte<br />

Linux-Systeme sowie kompetente Ansprechpartner<br />

zu Open-Source-Themen<br />

finden? Der IT-Profimarkt weist Ihnen<br />

hier als zuverlässiges Nachschlagewerk<br />

den Weg. Die im Folgenden gelisteten<br />

Unternehmen beschäftigen Experten auf<br />

ihrem Gebiet <strong>und</strong> bieten hochwertige<br />

Produkte <strong>und</strong> Leistungen.<br />

Die exakten Angebote jeder Firma entnehmen<br />

Sie deren Homepage. Der ersten Orientierung<br />

dienen die Kategorien Hardware,<br />

Software, Seminaranbieter, Systemhaus,<br />

Netzwerk/TK sowie Schulung/Beratung.<br />

Der IT-Profimarkt-Eintrag ist ein<br />

Service von Linux-Magazin <strong>und</strong> <strong>LinuxUser</strong>.<br />

Online-Suche<br />

Besonders komfortabel finden Sie einen<br />

Linux-Anbieter in Ihrer Nähe online über<br />

die neue Umkreis-Suche unter:<br />

[http://www.it-profimarkt.de]<br />

Weitere Informationen:<br />

Linux New Media AG<br />

Anzeigenabteilung<br />

Putzbrunner Str. 71<br />

D-81739 München<br />

Tel: +49 (0) 89 / 99 34 11-23<br />

Fax: +49 (0) 89 / 99 34 11-99<br />

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

IT-ProFImArkT (LIsTe sorTIerT nAch PosTLeITzAhL)<br />

Firma Anschrift Telefon Web 1 2 3 4 5 6<br />

Schlittermann internet & unix support 01099 Dresden, Tannenstr. 2 0351-802998-1 www.schlittermann.de 3 3 3 3<br />

imunixx GmbH UNIX consultants 01468 Moritzburg, Heinrich-Heine-Str. 4 0351-83975-0 www.imunixx.de 3 3 3 3 3<br />

future Training & Consulting GmbH Leipzig 04315 Leipzig, Kohlgartenstraße 15 0341-6804100 www.futuretrainings.com 3<br />

future Training & Consulting GmbH Halle 06116 Halle (Saale), Fiete-Schulze-Str. 13 0345-56418-20 www.futuretrainings.com 3<br />

future Training & Consulting GmbH Chemnitz 09111 Chemnitz, Bahnhofstraße 5 0371-6957730 www.futuretrainings.com 3<br />

TUXMAN Computer 10369 Berlin, Anton-Saefkow-Platz 8 030-97609773 www.tuxman.de 3 3 3 3 3<br />

Hostserver GmbH 10405 Berlin, Winsstraße 70 030-47375550 www.hostserver.de 3<br />

Compaso GmbH 10439 Berlin, Driesener Strasse 23 030-3269330 www.compaso.de 3 3 3 3 3<br />

Linux Information Systems AG Berlin 12161 Berlin, B<strong>und</strong>esallee 93 030-818686-03 www.linux-ag.com 3 3 3 3 3<br />

elego Software Solutions GmbH 13355 Berlin, Gustav-Meyer-Allee 25 030-2345869-6 www.elegosoft.com 3 3 3 3<br />

future Training & Consulting GmbH Berlin 13629 Berlin, Wernerwerkdamm 5 030-34358899 www.futuretrainings.com 3<br />

verion GmbH 16244 Altenhof, Unter den Buchen 22 e 033363-4610-0 www.verion.de 3 3 3<br />

Logic Way GmbH 19061 Schwerin, Hagenower Str. 73 0385-39934-48 www.logicway.de 3 3 3 3<br />

Sybuca GmbH 20459 Hamburg, Herrengraben 26 040-27863190 www.sybuca.de 3 3 3 3 3<br />

iTechnology GmbH c/ o C:1 Solutions GmbH 22083 Hamburg, Osterbekstr. 90 c 040-52388-0 www.itechnology.de 3 3 3 3<br />

UDS-Linux - Schulung, Beratung, Entwicklung 22087 Hamburg, Lübecker Str. 1 040-45017123 www.uds-linux.de 3 3 3 3 3 3<br />

future Training & Consulting GmbH Wismar 23966 Wismar, Lübsche Straße 22 03841-222851 www.futuretrainings.com 3<br />

Dr. Plöger & Kollegen secom consulting GmbH &<br />

Co. KG<br />

24105 Kiel, Waitzstr. 3 0431-66849700 www.secom-consulting.de 3 3 3 3 3<br />

beitco - Behrens IT-Consulting 26197 Ahlhorn, Lessingstr. 27 04435-9537330-0 www.beitco.de 3 3 3 3<br />

talicom GmbH 30169 Hannover, Calenberger Esplanade 3 0511-123599-0 www.talicom.de 3 3 3 3 3<br />

futureTraining & Consulting GmbH Hannover 30451 Hannover, Fössestr. 77 a 0511-70034616 www.futuretrainings.com 3<br />

teuto.net Netzdienste GmbH 33602 Bielefeld, Niedenstr. 26 0521-96686-0 www.teuto.net 3 3 3 3 3<br />

MarcanT GmbH 33602 Bielefeld, Ravensberger Str. 10 G 0521-95945-0 www.marcant.net 3 3 3 3 3 3<br />

1 = hardware 2 = netzwerk/Tk 3 = systemhaus 4 = seminaranbieter 5 = software 6 = schulung/Beratung (s. 96)<br />

98 10 | 11<br />

www.linux-user.de


IT-Profimarkt<br />

servIce<br />

IT-ProFImArkT (ForTSETzuNG voN S. 88)<br />

Firma Anschrift Telefon Web 1 2 3 4 5 6<br />

Hostserver GmbH 35037 Marburg, Biegenstr. 20 06421-175175-0 www.hostserver.de 3<br />

OpenIT GmbH 40599 Düsseldorf, In der Steele 33a-41 0211-239577-0 www.OpenIT.de 3 3 3 3 3<br />

Linux-Systeme GmbH 45277 Essen, Langenbergerstr. 179 0201-298830 www.linux-systeme.de 3 3 3 3 3<br />

Linuxhotel GmbH 45279 Essen, Antonienallee 1 0201-8536-600 www.linuxhotel.de 3<br />

Herstell 45888 Gelsenkirchen, Wildenbruchstr. 18 0176-20947146 www.herstell.info 3 3 3 3<br />

OpenSource Training Ralf Spenneberg 48565 Steinfurt, Am Bahnhof 3-5 02552-638755 www.opensource-training.de 3<br />

Intevation GmbH 49074 Osnabrück, Neuer Graben 17 0541-33508-30 osnabrueck.intevation.de 3 3 3 3<br />

LWsystems GmbH & Co. KG 49186 Bad Iburg, Tegelerweg 11 05403-5556 www.lw-systems.de 3 3 3 3 3 3<br />

Systemhaus SAR GmbH 52499 Baesweiler, Arnold-Sommerfeld-Ring 27 02401-9195-0 www.sar.de 3 3 3 3 3 3<br />

uib gmbh 55118 Mainz, Bonifaziusplatz 1b 06131-27561-0 www.uib.de 3 3 3 3 3<br />

LISA GmbH 55411 Bingen, Elisenhöhe 47 06721-49960 www.lisa-gmbh.de 3 3 3 3 3<br />

saveIP GmbH 64283 Darmstadt, Schleiermacherstr. 23 06151-666266 www.saveip.de 3 3 3 3 3<br />

LAMARC EDV-Schulungen u. Beratung GmbH 65193 Wiesbaden, Sonnenberger Straße 14 0611-260023 www.lamarc.com 3 3 3 3<br />

ORDIX AG 65205 Wiesbaden, Kreuzberger Ring 13 0611-77840-00 www.ordix.de 3 3 3 3 3<br />

LinuxHaus Stuttgart 70565 Stuttgart, Hessenwiesenstrasse 10 0711-2851905 www.linuxhaus.de 3 3 3 3 3<br />

com<strong>und</strong>us GmbH 71332 Waiblingen, Schüttelgrabenring 3 07151-5002850 www.com<strong>und</strong>us.com 3<br />

Veigel Linux Software Development 71723 Großbottwar, Frankenstr. 15 07148-922352 www.mvlsd.de 3 3 3 3<br />

future Training & Consulting GmbH Reutlingen 72770 Reutlingen, Auchterstraße 8 07121-14493943 www.futuretrainings.com 3<br />

Manfred Heubach EDV <strong>und</strong> Kommunikation 73728 Esslingen, Hindenburgstr. 47 0711-4904930 www.heubach-edv.de 3 3 3 3<br />

Waldmann EDV Systeme + Service 74321 Bietigheim-Bissingen, Pleidelsheimer Str. 25 07142-21516 www.waldmann-edv.de 3 3 3 3 3<br />

in-put Das Linux-Systemhaus 76133 Karlsruhe, Moltkestr. 49 0721-6803288-0 www.in-put.de 3 3 3 3 3 3<br />

Bodenseo 78224 Singen, Pomeziastr. 9 07731-1476120 www.bodenseo.de 3 3 3<br />

Linux Information Systems AG 81739 München, Putzbrunnerstr. 71 089-993412-0 www.linux-ag.com 3 3 3 3 3<br />

Synergy Systems GmbH 81829 München, Konrad-Zuse-Platz 8 089-89080500 www.synergysystems.de 3 3 3 3 3<br />

B1 Systems GmbH 85088 Vohburg, Osterfeldstrasse 7 08457-931096 www.b1-systems.de 3 3 3 3 3<br />

ATIX AG 85716 Unterschleißheim, Einsteinstr. 10 089-4523538-0 www.atix.de 3 3 3 3 3<br />

Bereos OHG 88069 Tettnang, Kalchenstraße 6 07542-9345-20 www.bereos.eu 3 3 3 3 3<br />

OSTC Open Source Training and Consulting GmbH 90425 Nürnberg, Delsenbachweg 32 0911-3474544 www.ostc.de 3 3 3 3 3 3<br />

Dipl.-Ing. Christoph Stockmayer GmbH 90571 Schwaig, Dreihöhenstr. 1 0911-505241 www.stockmayer.de 3 3 3<br />

fidu.de IT KG 95448 Bayreuth, Ritter-v.-Eitzenb.-Str. 19 09208-657638 www.linux-onlineshop.de 3 3 3 3<br />

Computersysteme Gmeiner 95643 Tirschenreuth, Fischerhüttenweg 4 09631-7000-0 www.gmeiner.de 3 3 3 3 3<br />

RealStuff Informatik AG CH-3007 Bern, Chutzenstrasse 24 0041-31-3824444 www.realstuff.ch 3 3 3<br />

CATATEC CH-3013 Bern, Dammweg 43 0041-31-3302630 www.catatec.ch 3 3 3<br />

EBP Gasser CH-4208 Nunningen, Winkel 6 0041-61793-0099 www.ebp-gasser.ch 3 3 3 3 3<br />

Syscon Systemberatungs AG CH-8003 Zürich, Zweierstrasse 129 0041-44-4542010 www.syscon.ch 3 3 3 3 3<br />

Helvetica IT AG CH-8890 Flums, Bahnhofstrasse 15 0041-817331567 www.helvetica-it.com 3 3 3<br />

1 = hardware 2 = netzwerk/Tk 3 = systemhaus 4 = seminaranbieter 5 = software 6 = schulung/Beratung <br />

www.linux-user.de<br />

10 | 11 99


servIce<br />

10 | 11<br />

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

Usergroups<br />

Aachen<br />

AachenerLinux-Usergroup<br />

(ALUG)<br />

http://www.alug.de<br />

Aachen<br />

Computer-ClubanderRWTH<br />

Aachene.V.(CCAC)<br />

http://www.ccac.rwth-aachen.<br />

de<br />

Ahaus<br />

Linux-UsergroupAhaus(LUGAH)<br />

http://www.lugah.de<br />

Ahlen/Westfalen<br />

LUGAhlen<br />

http://linuxahlen.li.funpic.de/<br />

Ahrtal<br />

Linux-UsergroupAhrtal(Ahrlug)<br />

http://www.ahrlug.de<br />

Aichach<br />

Linux-UsergroupAichach<br />

http://www.lug-aichach.de<br />

Allershausen<br />

Linux-UsergroupAmpertal<br />

(LUGA)<br />

http://www.luga.net<br />

Altdorf/<br />

Nürnberg<br />

GNU/<strong>LinuxUser</strong>GroupAltdorf<br />

(GLUGA)<br />

http://www.gluga.de<br />

Amberg<br />

Open-Source-Stammtisch<br />

Amberg(amTuxTisch)<br />

http://www.amtuxtisch.de/<br />

Ansbach<br />

Linux-UsergroupAnsbach<br />

(LUGAN)<br />

http://www.lug-an.de<br />

Aschaffenburg<br />

Linux-UsergroupAschaffenburg<br />

(LUGAB)<br />

http://www.lugab.de<br />

Augsburg<br />

Linux-UsergroupAugsburg<br />

(LUGA)<br />

http://www.luga.de<br />

Backnang<br />

Linux-UsergroupBacknang<br />

http://www.lug-bk.de<br />

BadBrückenau<br />

Linux-UsergroupBadBrückenau<br />

BrunoZehe@web.de<br />

BadDriburg<br />

Linux-UsergroupBadDriburg<br />

http://www.bdpeng.de.vu<br />

BadHersfeld<br />

Linux-UsergroupHersfeld<br />

http://www.lugh.de<br />

BadWildungen<br />

Linux-UsergroupBadWildungen<br />

http://linuxheaven.cjb.net<br />

Bamberg<br />

Linux-UsergroupBamberg<br />

(GLUGBA)<br />

http://www.lug-bamberg.de<br />

Basel(CH)<br />

Linux-UsergroupBasel(BLUG)<br />

http://www.blug.ch<br />

Bautzen<br />

Linux-UsergroupBautzen<br />

http://www.lug-bz.de<br />

Bayreuth<br />

Linux-UsergroupBayreuth<br />

http://www.linux-bayreuth.de<br />

Bergisch<br />

Gladbach<br />

BergischeLinux-<strong>und</strong>Unix-<br />

Enthusiastenu.-Fre<strong>und</strong>e<br />

(BLUEFROGS)<br />

http://www.bluefrogs.de<br />

Berlin<br />

Linux-UsergroupBerlin(BeLUG)<br />

http://www.belug.de<br />

Berlin<br />

UbuntuBerlin<br />

http://www.ubuntu-berlin.de<br />

Berlin/<br />

Friedrichshain-<br />

Kreuzberg<br />

LinuxWorks!<br />

http://friedrichshain.homelinux.<br />

org<br />

Berlin/<br />

Lichtenrade<br />

Linux-UsergroupLichtenrade<br />

(LUGL)<br />

http://www.lugl.net<br />

Berlin/Marzahn-<br />

Hellersdorf<br />

Open-Source-Fan-Group<br />

Marzahn-Hellersdorf(OSFanG)<br />

http://www.osfang.de<br />

Bern(CH)<br />

Linux-UsergroupBern(LUGBE)<br />

http://www.lugbe.ch<br />

Biel/Bienne/<br />

Seeland(CH)<br />

Linux-UsergroupSeeland<br />

(LugSeeland)<br />

http://www.lugseeland.ch<br />

Bielefeld<br />

<strong>LinuxUser</strong>groupOstwestfalen-<br />

Lippe<br />

http://lug-owl.de/Lokales/<br />

Bielefeld/<br />

Bitburg-Prüm<br />

Linux-UsergruppeSchneifeltux<br />

http://www.schneifeltux.de<br />

Bocholt<br />

Linux-UsergroupBocholt(BLUG)<br />

http://www.blug.de<br />

Bochum<br />

Linux-UsergroupBochum<br />

(BGLUG)<br />

http://www.bglug.de<br />

Bonn<br />

BonnerLinux-Usergroup<br />

(BOLUG)<br />

http://www.bonn.linux.de/<br />

Bonn<br />

Linux/UnixUsergroupSankt<br />

Augustin(LUUSA)<br />

http://www.luusa.org<br />

Bozen(Südtirol)<br />

Linux-UsergroupBozen(LUGBZ)<br />

http://www.lugbz.org<br />

Brandenburg<br />

Brandenburger<strong>LinuxUser</strong>Group<br />

e.V.(BraLUG)<br />

http://www.bralug.de<br />

Bremen<br />

Linux-StammtischBremen<br />

http://lug-bremen.info<br />

Bremerhaven<br />

Linux-StammtischBremerhaven<br />

http://www.lug-bhv.de/<br />

Bretten<br />

BrettenerLinux-Usergroup<br />

(BRELUG)<br />

http://www.brelug.de<br />

Bruchsal<br />

Linux-UsergroupBruchsal<br />

http://www.lug-bruchsal.de<br />

Buchholz<br />

Nordheide<br />

Linux-UsergroupBuchholz<br />

Nordheide<br />

http://www.lug-buchholznordheide.de<br />

Burghausen<br />

Linux-UsergroupBurghausen<br />

http://www.lug-burghausen.org<br />

Böblingen/<br />

Sindelfingen<br />

Linux-UsergroupBöblingen/<br />

Sindelfingen(LUGBB)<br />

http://www.lugbb.org<br />

Celle<br />

LUGCelle<br />

http://www.lug-celle.de<br />

Cham<br />

Linux-UsergroupOberpfalz<br />

(LUGO)<br />

http://lugo.signum-media.de<br />

Chemnitz<br />

Linux-UsergroupChemnitz<br />

(CLUG)<br />

http://www.clug.de<br />

Coesfeld<br />

Linux-UsergroupCoesfeld<br />

http://www.lug-coesfeld.de<br />

Cottbus<br />

CottbuserLinux-Usergroup<br />

(COLUG)<br />

http://www.colug.de/<br />

Damme<br />

UsersofLinuxDamme(ULD)<br />

http://www.damme.de<br />

Darmstadt<br />

<strong>LinuxUser</strong>GroupDarmstadt<br />

(DaLUG)<br />

http://www.dalug.org<br />

Datteln<br />

Linux-UsergroupDatteln(LUGD)<br />

http://www.lug-datteln.de<br />

Delitzsch<br />

(Sachsen)<br />

Linux-UsergroupDelitzsch<br />

http://www.lug-delitzsch.de<br />

Detmold<br />

Linux-UsergroupOstwestfalen-<br />

Lippe(LUGOWL)<br />

http://lug-owl.de/Lokales/<br />

Detmold/<br />

Dorfen<br />

Linux-UsergroupDorfen(LUGD)<br />

http://www.dolug.de<br />

Dormagen<br />

PinguinPower(PP)<br />

http://www.dorlug.de<br />

Dortm<strong>und</strong><br />

Linux-UsergroupDortm<strong>und</strong><br />

(LUGRUDO)<br />

http://www.outerspace.de/<br />

lugrudo/<br />

Dresden<br />

Linux-UsergroupDresden<br />

http://lug-dd.schlittermann.de/<br />

Duisburg<br />

DuisburgerLinux-Usergroup<br />

(DULUG)<br />

http://www.dulug.de<br />

Duisburg<br />

Linux-UsergroupDuisburg<br />

(LUG-DUI)<br />

http://lugdui.ihg.uni-duisburg.de<br />

Düsseldorf<br />

Linux-UsergroupDüsseldorf<br />

(DLUG)<br />

http://www.dlug.de<br />

Ebstorf<br />

EbstorferLinux-Stammtisch<br />

(ELST)<br />

support@konqi-werkstatt.de<br />

Eggenfelden<br />

EggenfeldenerLinux-Usergroup<br />

(EgLUG)<br />

http://www.lug-eggenfelden.org<br />

Eichsfeld<br />

Eichsfelder<strong>LinuxUser</strong>Group<br />

(EICLUG)<br />

http://linux.eichsfeld.net<br />

Eisenach<br />

Linux-UsergroupEisenach<br />

http://lug-eisenach.de/<br />

Elmshorn<br />

ComputerclubElmshorne.V.<br />

http://www.cceev.de/<br />

Erding<br />

Linux-UsergroupErding<br />

http://www.lug-erding.de<br />

Erkelenz<br />

Linux-UsergroupErkelenz<br />

http://www.lug-erkelenz.de<br />

Erlangen<br />

ErlangerLinux-Usergroup<br />

(ERLUG)<br />

http://www.erlug.de<br />

Essen<br />

EssenerLinux-Fre<strong>und</strong>e(ELiF)<br />

http://www.linuxstammtisch.de<br />

Essen<br />

EssenerLinux-Stammtisch<br />

(ELiSta)<br />

http://members.tripod.de/elista<br />

Essen<br />

EssenerLinux-Usergroup(ELUG)<br />

http://www.elug.de<br />

Essen<br />

PerlMongersimRuhrgebiet<br />

(Ruhr.pm)<br />

http://ruhr.pm.org/<br />

Esslingen<br />

Linux-UsergroupEsslingen<br />

http://rhlx01.rz.fht-esslingen.<br />

de/lug/<br />

Ettlingen/Albtal<br />

LUGAlbtal<br />

http://www.lug-albtal.de<br />

Fischbachtal<br />

<strong>LinuxUser</strong>groupFischbachtal<br />

(FIBALUG)<br />

http://fibalug.de<br />

Flensburg<br />

Linux-UsergroupFlensburg<br />

(LUGFL)<br />

http://www.lugfl.de<br />

Frammersbach<br />

FrammersbacherLUG<br />

kke@gmx.net<br />

Frankfurt<br />

Linux-UsergroupFrankfurt<br />

http://www.lugfrankfurt.de<br />

Freiburg<br />

FreiburgerLinux-Usergroup<br />

(FLUG)<br />

http://www.freiburg.linux.de<br />

Freiburg<br />

LUGderStudentensiedlung<br />

Freiburg(StuSieLUG)<br />

http://linux.studentensiedlung.<br />

de<br />

Freising<br />

Linux-UsergroupFreising<br />

(LUGFS)<br />

http://www.lug-fs.de<br />

Friedrichshafen<br />

Yetanother<strong>LinuxUser</strong>Group<br />

(YALUG)<br />

http://yalug.de<br />

Fulda<br />

Linux-UsergroupFulda<br />

http://lug.rhoen.de<br />

Fürstenfeldbruck<br />

LUGdesBürgernetzesLandkreis<br />

Fürstenfeldbruck(LUGFFB)<br />

http://lug.ffb.org/<br />

Fürth<br />

FürtherLinux-Usergroup(FLUG)<br />

http://www.fen-net.de/flug<br />

Gießen<br />

Linux-UsergroupGießen(LUGG)<br />

http://lugg.tg.fh-giessen.de<br />

Gießen<br />

LUGderLiebig-SchuleGießen<br />

(LioLUG)<br />

http://liolug.liebigschulegiessen.de/<br />

Grafing<br />

Linux-UsergroupGrafing(LUGG)<br />

http://www.lug-grafing.org<br />

Greifswald<br />

Linux-UsergroupGreifswald<br />

http://www.lug-hgw.de/<br />

Groß-Gerau<br />

Linux-UsergroupGroß-Gerau<br />

(LUGGG)<br />

http://www.luggg.de<br />

Groß-Zimmern<br />

Linux-UsergroupGroß-Zimmern<br />

(GROZILUG)<br />

http://www.grozilug.de<br />

Gummersbach<br />

GummersbacherLinux-<br />

Usergroup(GULUG)<br />

http://www.gulug.de<br />

Guntersblum<br />

GuntersblumerLinux-Usergroup<br />

(GLUG)<br />

http://www.ghks.de/glug/<br />

Gunzenhausen<br />

GunzenhauserLinux-Usergroup<br />

(LUGGUU)<br />

http://www.gunnet.de/linux<br />

Gütersloh<br />

Linux-UsergroupOstwestfalen-<br />

Lippe(LUGOWL)<br />

http://lug-owl.de/Lokales/<br />

Guetersloh/<br />

Göppingen<br />

Linux-UsergroupFilstal<br />

http://lug.fto.de/<br />

Göttingen<br />

Göttinger<strong>LinuxUser</strong>Group<br />

(GOELUG)<br />

http://www.goelug.de/<br />

Göttingen<br />

GöttingerUnix/Linux-<br />

Anwendergruppe(GULAG)<br />

http://gulag.de<br />

Haiger<br />

Linux-UsergroupLahn-Dill-Kreis<br />

(LDK/LUG)<br />

http://www.ldknet.org/lug/<br />

Halberstadt<br />

Linux-UsergroupHalberstadt<br />

http://www.lug-hbs.de<br />

Halle<br />

HallescheLinux-Usergroup<br />

(HALIX)<br />

http://www.halix.info<br />

Hamburg<br />

LUG-BalistaHamburge.V.(LUG-<br />

Balista)<br />

http://www.lug-balista.de<br />

Hamburg<br />

Unix-GruppederHamburger<br />

MHe.V.<br />

http://www.hmh-ev.de<br />

Hameln<br />

Linux-UsergroupWeserbergland<br />

(LBW)<br />

http://tux.hm<br />

Hanau<br />

HanauerLinux-Usergroup<br />

(HULUG)<br />

http://www.hulug.de/<br />

Hannover<br />

Linux-UsergroupHannover<br />

(LUGH)<br />

http://lug-hannover.de<br />

Hatten<br />

Linux-UsergroupOldenburg-<br />

Land(LUGOLand)<br />

http://www.lugoland.de<br />

Hattingen<br />

HattingerLinux-Usergroup<br />

(HatLug)<br />

http://www.hatlug.de<br />

Hegau<br />

Hegau<strong>LinuxUser</strong>Gruppe<br />

(HegauLUG)<br />

http://www.linuxag.hegau.org<br />

Heidenheim<br />

<strong>LinuxUser</strong>GroupHeidenheim<br />

http://www.lug-hdh.de<br />

Heilbad<br />

Heiligenstadt<br />

Linux-StammtischLinuxNode<br />

Eichsfeld<br />

http://linuxnode.eichsfeld.net<br />

Heilbronn<br />

Linux-UsergroupHeilbronn<br />

(LUUGHN)<br />

http://www.luug-hn.org<br />

LInux.usergrouPs<br />

ImFolgendendieListederunsbekanntenLinux-UsergroupsimdeutschsprachigenRauminKurzfassung.Änderungen<strong>und</strong>UpdatesbittederRedaktion(usergroups@linuxnewmedia.de)mitteilen(Name,Beschreibung,<br />

Treffpunkt,Adresse,Ansprechpartner,Homepage,E-Mail,Telefon,Fax,Mitgliederzahl...).


Usergroups<br />

servIce<br />

LInux.usergrouPs<br />

Herford<br />

Herrenberg<br />

Hesel<br />

Hildesheim<br />

Holzminden<br />

Horrheim<br />

Hoyerswerda<br />

Idstein(Taunus)<br />

Ingolstadt<br />

Iserlohn<br />

Itzehoe<br />

Jena<br />

Jever<br />

GNU/<strong>LinuxUser</strong>groupHerford<br />

(GLUGHF)<br />

http://lug-owl.de/LugWiki/<br />

GLUGHF<br />

Linux-StammtischimGäu<br />

(LiStiG)<br />

http://www.listig.org<br />

CCOstfriesland-Linux-Gruppe<br />

http://www.cco-online.de/linux<br />

HildesheimerLinux-Usergroup<br />

(NG)(HiLUG-NG)<br />

http://www.hilug-ng.de<br />

ComputerclubHochsollinge.V.<br />

http://www.cch-holzminden.de/<br />

Linux-UsergroupVaihingen/<br />

Enz(VLUG)<br />

http://www.vlug.de<br />

Linux-UsergroupHoyerswerda<br />

(HOYLUG)<br />

http://linux.griebel-web.eu/<br />

Linux-UsergroupTaunus(LUG-<br />

Taunus)<br />

http://www.lug-taunus.org<br />

Linux-UsergroupIngolstadte.V.<br />

http://www.lug-in.de<br />

Linux-UsergroupIserlohn<br />

http://area51.fh-swf.de/<br />

ComputerClubItzehoee.V.<br />

(CCIZ)<br />

http://www.cc-itzehoe.de<br />

Linux-UsergroupJena(LUG<br />

Jena)<br />

http://www.lug-jena.de<br />

FriesischeLinux-Usergroup<br />

(FriLUG)<br />

http://www.frilug.de<br />

Kaarst<br />

Kaiserslautern<br />

Kaiserslautern<br />

Karlsruhe<br />

Kassel<br />

Kiel<br />

Kierspe-<br />

Meinerzhagen<br />

Koblenz<br />

Koblenz<br />

Konstanz<br />

Konz<br />

Krefeld<br />

Kreuzlingen(CH)<br />

KaarsterLinux-Usergroup<br />

(KAALUG)<br />

http://www.kaalug.de<br />

Linux-UsergroupKaiserslautern<br />

(LUG-KL)<br />

http://www.lug-kl.de<br />

UniversitätKaiserslautern<br />

(UNIX-AG)<br />

http://www.unix-ag.uni-kl.<br />

de/~linux/<br />

KarlsruherLinux-Usergroup<br />

(KaLUG)<br />

http://www.karlsruhe.linux.de<br />

Linux-UsergroupKassel(LUGK)<br />

http://www.lug-kassel.de<br />

LUGKiel<br />

http://www.lug-kiel.de<br />

Linux-UsergroupMärkischer<br />

Kreis(LUGMK)<br />

linuxusergroupmk@netscape.net<br />

<strong>LinuxUser</strong>GroupMayen-<br />

Koblenz(LUG-MYK)<br />

http://www.lug-myk.de/<br />

LUGderUniversitätKoblenz<br />

http://www.colix.org<br />

Linux-UsergroupBodensee<br />

(LLUGB)<br />

http://llugb.amsee.de/<br />

Linux-UsergroupKonz(TRILUG)<br />

http://www.trilug.fh-trier.de<br />

Linux-UsergroupKrefeld<br />

(LUG-KR)<br />

http://www.lug-kr.de<br />

Linux-UsergroupKreuzlingen<br />

http://linuxtreff.ch/<br />

Kronach<br />

Köln<br />

Köln<br />

Landau<br />

Landshut<br />

Langen(Hessen)<br />

/Dreieich/<br />

Egelsbach<br />

Langenfeld<br />

Laufander<br />

Pegnitz<br />

Leipzig<br />

Lenningen<br />

Lindenberg<br />

Lingen/Rheine<br />

Linz(A)<br />

Lippstadt/Soest<br />

/Erwitte<br />

Linux-UsergroupKronach<br />

http://www.lug-kronach.de<br />

KölnerGentoo<strong>LinuxUser</strong>Group<br />

(KGLUG)<br />

http://www.kglug.de<br />

Linux-WorkshopKöln(LiWoK)<br />

http://www.uni-koeln.de/<br />

themen/linux/<br />

Linux-UsergroupLandau(LUG-<br />

Landau)<br />

http://www.lug-ld.de<br />

Linux-UsergroupLandshut<br />

http://www.lalug.de<br />

LangenerLinux-Usergroup<br />

(LaLUG)<br />

http://www.lalug.net<br />

LangenfelderLinux-Usergroup<br />

(LANLUG)<br />

http://www.lanlug.org<br />

Linux-UsergroupLaufa.d.<br />

Pegnitz(LUGLAUF)<br />

http://www.lug-lauf.de<br />

LeipzigerLinux-Stammtisch<br />

http://www.gaos.org/lug-l/<br />

<strong>LinuxUser</strong>GroupLenningen<br />

http://linuxusergrouplenningen.<br />

de.vu<br />

Linux-UsergroupLindau(LugLi)<br />

http://www.allgaeu.org/lugli<br />

Linux-UsergroupSpelle<br />

http://www.spelle.net/lugs<br />

Linux-UsergroupLinz(LUGL)<br />

http://www.lugl.at<br />

<strong>LinuxUser</strong>groupErwitte<br />

http://www.lug-erwitte.de<br />

Lohr<br />

Loitsche<br />

Ludwigsburg<br />

Luxembourg<br />

Lübeck<br />

Lüneburg<br />

Lünen<br />

Lörrach<br />

Lörrach<br />

Magdeburg<br />

Mainz<br />

Marburg<br />

Marktredwitz<br />

Marl<br />

Linux-UsergroupLohr(LUGLohr)<br />

http://lug.lohr-am-main.de<br />

Linux-StammtischLoitsche(LSL)<br />

http://www.t-online.de/home/<br />

mumumu/<br />

Linux-UsergroupRaum<br />

Ludwigsburg(LuLUG)<br />

http://www.lulug.de<br />

LinuxLuxembourg(LiLux)<br />

http://www.linux.lu<br />

Linux-UsergroupLübeck<br />

http://www.linuxuser-luebeck.<br />

de<br />

Linux-UsergroupLüneburg<br />

(LueneLUG)<br />

http://luene-lug.org<br />

LUGLünen<br />

http://www.lug-luenen.de<br />

Linux-UsergroupLörrach<br />

(LUGLOE)<br />

http://www.lug-loerrach.de<br />

Lörracher<strong>LinuxUser</strong>group<br />

(LÖLUG)<br />

http://www.loelug.de<br />

Magdeburger<strong>LinuxUser</strong>Group<br />

e.V.(MDLUG)<br />

http://www.mdlug.de<br />

Linux-UsergroupMainz(UFO)<br />

http://www.ufo.uni-mainz.de<br />

MarburgerLinux-Usergroup<br />

(MRLUG)<br />

http://www.mr-lug.de<br />

Linux-GruppeMarktredwitz<br />

ststroes@tirnet.de<br />

Linux-UsergroupMarl<br />

http://www.lug-marl.de<br />

s. 102<br />

MAGAZIN<br />

SondErAkTion<br />

Testen Sie jetzt<br />

3 Ausgaben<br />

für 3 Euro!<br />

nUr<br />

MiT dVd!<br />

Coupon senden an: Linux-Magazin Leser-Service A.B.O.<br />

Postfach 1165, 74001 Heilbronn<br />

JA,<br />

ich möchte die nächsten 3 Linux-Magazin-Ausgaben für nur E 3*, statt<br />

E 17,40*, testen. Wenn mich das Linux-Magazin überzeugt <strong>und</strong> ich 14 Tage<br />

nach Erhalt der dritten Ausgabe nicht schriftlich abbestelle, erhalte ich das Linux-Magazin jeden<br />

Monat zum Vorzugspreis von nur E 5,13* statt E 5,80* im Einzelverkauf, bei jährlicher Verrechnung.<br />

Ich gehe keine langfristige Verpflichtung ein. Möchte ich das Linux-Magazin nicht mehr beziehen,<br />

kann ich jederzeit schriftlich kündigen. Mit der Geld-zurück-Garantie für bereits bezahlte,<br />

aber nicht gelieferte Ausgaben.<br />

Name, Vorname<br />

Straße, Nr.<br />

PLZ<br />

Ort<br />

Datum<br />

Unterschrift<br />

Gleich bestellen, am besten mit dem Coupon<br />

oder per<br />

• Telefon: 07131 / 2707 274 • Fax 07131 / 2707 78 601<br />

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

Mit großem Gewinnspiel (Infos unter: www.linux-magazin.de/probeabo)<br />

*Preis gilt für Deutschland<br />

Mein Zahlungswunsch: Bequem per Bankeinzug Gegen Rechnung<br />

BLZ<br />

Konto-Nr.<br />

Bank<br />

Beliefern Sie mich bitte ab der Ausgabe Nr.<br />

LM1124M


servIce<br />

10 | 11<br />

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

Usergroups<br />

LInux.usergrouPs (ForTSETzuNG voN S. 101)<br />

Memmingen<br />

Linux-UsergroupAllgäu(LUGAL)<br />

http://www.lugal.de<br />

Meppen<br />

Linux-UsergroupMeppen<br />

http://www.lug-meppen.de<br />

Metelen<br />

Linux-StammtischMetelen<br />

http://www.linuxdu.de<br />

Mitterteich<br />

Linux-UsergroupMitterteich<br />

http://www.linux-mitterteich.de<br />

Moers<br />

Linux-UsertreffeninMoers<br />

opers@syrinx1.du.gtn.com<br />

Mosbach<br />

Linux-UsergroupMosbach<br />

(LUGMOS)<br />

http://linuxwiki.de/LugMosbach<br />

Mühlheima.d.<br />

Ruhr<br />

Penguinshour-Workshops<strong>und</strong><br />

Selbsthilfegruppe(Penhour)<br />

http://www.az-muelheim.de/<br />

penhour/<br />

München<br />

BSDSocialEventMünchen(BSE)<br />

http://bse.42.org<br />

München<br />

BSD-UsergroupinMünchen<br />

(BIM)<br />

http://berklix.org/bim/<br />

München<br />

MünchnerGentoo<strong>LinuxUser</strong><br />

Group(MGLUG)<br />

http://www.mglug.de<br />

München<br />

MünchnerLinux-Usergroup<br />

(MUC-LUG)<br />

http://www.muc-lug.de<br />

MünchenSüd-Ost<br />

/Ottobrunn<br />

Linux-UsergroupOttobrunn<br />

(LUGOTT)<br />

http://www.lug-ottobrunn.de<br />

MünchenSüd-<br />

West<br />

Linux-UsergroupWürmtal<br />

(WLUG)<br />

http://wlug.acos.net<br />

Münster<br />

Linux-StammtischMünster<br />

(MueSLI)<br />

http://www.mueslihq.de<br />

Mönchengladbach<br />

Linux-Usergroup<br />

Mönchengladbach(LUGMOE)<br />

http://www.lugmoe.de<br />

Mörfelden-<br />

Walldorf<br />

<strong>LinuxUser</strong>groupMörfelden-<br />

Walldorf(MöWa-LUG)<br />

http://www.moewa-lug.de<br />

Naumburg<br />

<strong>LinuxUser</strong>GroupNaumburg<br />

(LUGNMB)<br />

http://lugnmb.dyndns.org<br />

Neubrandenburg<br />

Linux-Usergroup<br />

Neubrandenburge.V.(LUG-NB)<br />

http://www.lug-nb.de<br />

Neuburgander<br />

Donau<br />

LUGNeuburganderDonau<br />

(LUGND)<br />

http://www.lug-nd.de<br />

Neuenburg<br />

Linux-UsergroupNeuenburg<br />

http://w3-net.ri-web.de/cont/<br />

lugnbg/index.php<br />

Nieder-Olm<br />

RheinhessenerLinux-<br />

Gemeinschaft<br />

info@kkcs.de<br />

Niederrhein<br />

NiederrheinischeLinuxUnix<br />

UserGroup(NLUUG)<br />

http://www.nluug.de<br />

Nienburg<br />

Linux-UsergroupNienburg<br />

(NILUG)<br />

http://ni-linux.de<br />

Norderstedt<br />

Linux-UsergroupNorderstedt<br />

(LUGN)<br />

http://www.lug-norderstedt.de<br />

Nordheide<br />

LUUGNordheide<br />

http://www.luug-nordheide.de<br />

Nußdorf/Aiging<br />

Linux-UsergroupTraunstein<br />

(LUGTra)<br />

http://www.lug-ts.de<br />

Nürnberg<br />

Linux-UsergroupNürnberg<br />

(LUGNü)<br />

http://www.align.de/<br />

Oberhausen<br />

Linux-UsergroupOberhausen<br />

(LUGOR)<br />

http://www.linuxob.de<br />

Oberkirchen<br />

LUGRenchtal-Tuxe<br />

http://tuxe.renchtal.com<br />

Oberpfalz<br />

Linux-UsergroupOberpfalz<br />

http://www.cham.baynet.<br />

de/lugo/<br />

Oberwallis(CH)<br />

Linux-UsergroupOberwallis<br />

(LUGO)<br />

http://www.lugo.ch<br />

Offenburg<br />

Linux-UsergroupOffenburg<br />

(LUGOG)<br />

http://www.lugog.de<br />

Oldenburg<br />

Linux-UsergroupOldenburg<br />

(LUGO)<br />

http://oldenburg.linux.de<br />

Olpe<br />

Linux-UsergroupOlpe<br />

http://www.lug-raum-olpe.<br />

de.vu<br />

Osnabrück<br />

Linux-UsergroupOsnabrück<br />

http://www.lugo.de<br />

Ostwestfalen-<br />

Lippe<br />

Linux-UsergroupOstwestfalen-<br />

Lippe(LUG-OWL)<br />

http://www.lug-owl.de<br />

Paderborn<br />

Linux-UsergroupOstwestfalen-<br />

Lippe(LUG-OWL)<br />

http://lug-owl.de/Lokales/<br />

Paderborn/<br />

Passau<br />

Linux-/Unix-UsergroupPassau<br />

(LUGP)<br />

http://www.fmi.uni-passau.<br />

de/~lug/<br />

Peine<br />

Linux-UsergroupPeine(LUGP)<br />

http://www.lug-peine.org<br />

Pfaffenhofen<br />

(Ilm)<br />

Hallertuxe.V.<br />

http://www.hallertux.de<br />

Pforzheim<br />

Linux-UsergroupPforzheim<br />

(LUGP)<br />

http://www.pf-lug.de<br />

Pirmasens<br />

Linux-StammtischPirmasens<br />

http://www.ic.pirmasens.de<br />

Potsdam<br />

PotsdamerLinux-Usergroup<br />

(UPLUG)<br />

http://www.uplug.de<br />

Preetz<br />

(Schleswig-<br />

Holstein)<br />

<strong>LinuxUser</strong>groupPreetz<br />

(PreetzLUG)<br />

http://preetzlug.de<br />

Prerow<br />

Linux-UsergroupPrerow<br />

c.dittmann@magrathea.de<br />

Quedlinburg<br />

Linux-UsergroupQuedlinburg<br />

(LUGQLB)<br />

http://www.lug-qlb.de<br />

Quickborn<br />

QuickbornerLinux-Usergroup<br />

(QLUG)<br />

http://www.qlug.net<br />

Rathenow<br />

Linux-StammtischRathenow<br />

http://linux.php4u.org<br />

Ravensberg<br />

Linux-UsergroupRavensberg<br />

(LUGRAV)<br />

http://www.lugrav.de<br />

Ravensburg<br />

Informatik-<strong>und</strong>Netzwerkverein<br />

Ravensburge.V(LUGRA)<br />

http://www.infnet.verein.de/<br />

linux/<br />

Ravensburg<br />

Linux-UsergroupRavensburg<br />

(LUG)<br />

http://www.yalug.de<br />

Regensburg<br />

Linux-UsergroupRegensburg<br />

http://www.lugr.de<br />

Regensburg<br />

RegensburgerLinux-Usergroup<br />

(R-LUG)<br />

http://www.regensburg.franken.<br />

de/rlug/<br />

Reutlingen<br />

Linux-UsergroupReutlingen<br />

http://www.lug-reutlingen.de<br />

Rheda-<br />

Wiedenbrück<br />

Linux-UsergroupRheda-<br />

Wiedenbrück(LUG-RHWD)<br />

http://www.lug-rhwd.de<br />

Rhein-Neckar<br />

UnixUsergroupRhein-Neckar<br />

e.V.(UUGRN)<br />

http://www.uugrn.org<br />

Rosenheim<br />

Linux-UsergroupRosenheim<br />

http://www.lug-rosenheim.org<br />

Rostock<br />

RostockerLinux-Usergroup<br />

http://linux.baltic.net<br />

Rotenburg<br />

ComputervereinRotenburg<br />

(CVR)<br />

http://www.cvr.de/linux<br />

Rotenburga.d.<br />

Fulda<br />

init4-DieLinux-Enthusiasten<br />

(init4)<br />

http://www.init4.de<br />

Rothenburgo.d.<br />

Tauber<br />

Linux-UsergroupRothenburg<br />

(LUGROT)<br />

http://lugrot.de<br />

Römerberg/<br />

Speyer<br />

LUGRömerberg/Speyer<br />

http://linuxwiki.de/<br />

LugRoemerbergSpeyer<br />

Saalfeld<br />

LUGSlf/Ru<br />

http://lug-slf.de<br />

Saarland<br />

<strong>LinuxUser</strong>GroupSaare.V.<br />

(LUGSaar)<br />

http://www.lug-saar.de<br />

Salem<br />

Linux-UsergroupSalem<br />

http://www.lug-salem.de<br />

Salzburg(A)<br />

Linux-UsergroupSalzburg<br />

http://www.salzburg.luga.or.at<br />

Sauerland<br />

Linux-UsergroupSauerland<br />

http://www.lug-sauerland.de<br />

Schaumburg<br />

Linux-UsergroupSchaumburg<br />

http://www.lug-schaumburg.de<br />

Schwabach<br />

<strong>LinuxUser</strong>Schwabache.V.<br />

(LUSC)<br />

http://www.lusc.de<br />

Schweinfurt<br />

Linux-UsergroupSchweinfurt<br />

http://www.lug-sw.de<br />

Schweiz(CH)<br />

Linux-UsergroupSwitzerland<br />

http://www.lugs.ch<br />

Schwerin<br />

West-MecklenburgerLinux-<br />

Usergroup(WEMELUG)<br />

http://www.wemelug.de<br />

Schwäbisch<br />

Gmünd<br />

Linux-StammtischSchwäbisch<br />

Gmünd(LSSG)<br />

http://www.uliweb.de/lssg<br />

Seeheim-<br />

Jugenheim<br />

Linux-UsergroupDarmstadt<br />

http://www.mathematik.tudarmstadt.de/dalug/<br />

Senftenberg<br />

Linux-UsergroupSenftenberg<br />

(LUGSE)<br />

http://www.lugse.de<br />

Siegen<br />

UNIX-AGSiegen(Uni-GHSie)<br />

http://www.si.unix-ag.org<br />

Sindelfingen/<br />

Böblingen<br />

Böblingen-ClubLinux-User-<br />

Gruppe(SinLUG)<br />

http://www.mefia.org<br />

Sinsheim<br />

Linux-UsergroupSinsheim<br />

(SiLUG)<br />

http://www.linuxwiki.de/<br />

LugSinsheim<br />

Speyer<br />

Linux-UsergroupKetsch<br />

http://www.lug-ketsch.de<br />

St.Pölten(A)<br />

Linux-UsergroupSt.Pölten<br />

(LUGSP)<br />

http://www.lugsp.at<br />

Stormarn<br />

Linux-UsergroupStormarn<br />

http://www.lug-stormarn.de<br />

Stuttgart<br />

Linux-UsergroupStuttgart<br />

(LUGS)<br />

http://www.lug-s.org/<br />

Taubertal<br />

TaubertälerLinux-Usergroup<br />

(TaLUG)<br />

http://www.talug.de/<br />

Thüringen<br />

ThüringerLinux-Usergroup<br />

(TLUG)<br />

http://www.tlug.de/<br />

Tirol(A)<br />

Tiroler<strong>LinuxUser</strong>group(LUGT)<br />

http://www.lugt.at<br />

Traunstein<br />

Linux-UsergroupTraunstein<br />

(LUGTS)<br />

http://www.lug-ts.de<br />

Trier<br />

<strong>LinuxUser</strong>GroupTrier(LUG<br />

Trier)<br />

http://www.lug-trier.de<br />

Troisdorf/<br />

Siegburg/Spich<br />

TroisdorferLinux-Usergroup<br />

(TroLUG)<br />

http://www.trolug.de<br />

Tuttlingen<br />

Linux-UsergroupTuttlingen<br />

http://lug.intuttlingen.de/<br />

Tübingen<br />

Linux-UsergroupTübingen<br />

(LUGT)<br />

http://tuebingen.linux.de<br />

Ulm<br />

Linux-UsergroupUlm(LUGU)<br />

http://lugulm.de<br />

Untermain<br />

Linux-UsergroupUntermain<br />

(LUGU)<br />

http://www.lug-untermain.de<br />

Viersen<br />

Linux-UsergroupViersen(LUGV)<br />

http://www.lug-viersen.de<br />

Villingen-<br />

Schwenningen<br />

<strong>LinuxUser</strong>GroupVillingen-<br />

Schwenningene.V.(LUG-VSe.V.)<br />

http://www.lug-vs.de<br />

Voralpen(A)<br />

Linux-UsergroupVoralpen<br />

(VALUG)<br />

http://www.valug.at<br />

Vorarlberg(A)<br />

Linux-UsergroupVorarlberg<br />

(LUGV)<br />

http://www.lugv.at<br />

Waiblingen<br />

ComputerclubWaiblingene.V.<br />

http://www.ccwn.org<br />

Waldkraiburg<br />

Linux-UsergroupWaldkraiburg<br />

http://www.lug-waldkraiburg.org<br />

Walsrode<br />

Linux-UsergroupWalsrode<br />

http://www.lug-walsrode.de/<br />

Wedel<br />

Linux-UsergroupWedel(LUG<br />

Wedel)<br />

http://www.lug-wedel.de<br />

Weinheim<br />

Computer-ClubWeinheime.V.<br />

(CCW)<br />

http://ccw.iscool.net<br />

Weißenbrunn<br />

Linux-UsergroupKronach<br />

(LUGKR)<br />

http://www.kronachonline.de<br />

Wernigerode<br />

Linux-UsergroupWernigerode<br />

(LUGWR)<br />

http://www.lug-wr.de<br />

Westerwald<br />

Linux-UsergroupWesterwald<br />

http://www.lug-westerwald.de<br />

Wien(A)<br />

<strong>LinuxUser</strong>groupWien<br />

http://www.viennalinux.at<br />

Wien(A)<br />

Linux-UsergroupAustria(LUGA)<br />

http://www.luga.or.at<br />

Wien(A)<br />

Linux-UsergroupTUWien(LLL)<br />

lll@radawana.cg.tuwien.ac.at<br />

Wiesbaden<br />

Linux-UsergroupWiesbaden<br />

PenguinUsergroup<br />

http://www.pug.org<br />

Wilhelmshaven<br />

Linux-UsergroupWilhelmshaven<br />

(LUG-WHV)<br />

http://www.lug-whv.de<br />

Witten<br />

WittenerLinux-Usergroup<br />

(WitLUG)<br />

http://www.witlug.de<br />

Wolfsburg<br />

WolfsburgerLinux-Usergroup<br />

(WOBLUG)<br />

http://www.lug.wolfsburg.de<br />

Wolfsburg<br />

WolfsburgerUnix-Usergroup<br />

(WUUG)<br />

http://www.unix.necoac.de<br />

Worms<br />

Wormser<strong>LinuxUser</strong>Group<br />

(WoLUG)<br />

http://www.wolug.de<br />

Wuppertal<br />

WuppertalerLinux-Usergroup<br />

(WupLUG)<br />

http://www.wuplug.org<br />

Würmtal<br />

WürmtalerLinux-Usergroup<br />

(WLUG)<br />

http://www.wlug.de<br />

Würzburg<br />

Linux-UsergroupWürzburg<br />

(LUGWUE)<br />

http://www.lugwue.de<br />

Würzburg<br />

Linux-UsergroupWürzburg<br />

(WÜLUG)<br />

http://www.wuelug.de<br />

Zweibrücken<br />

Linux-UsergroupZweibrücken<br />

http://www.lug-zw.de<br />

Zwickau<br />

Linux-UsergroupZwickau(ZLUG)<br />

http://www.zlug.org


Seminare<br />

servIce<br />

batt für<br />

enten<br />

Linux-Magazin<br />

ACADEMY<br />

Online-Training<br />

Erfolgreicher Einstieg in<br />

WordPress 3<br />

mit Hans-Georg Esser, Chefredakteur EasyLinux<br />

Ansprechende Webseiten, Blogs <strong>und</strong><br />

Shops einfach selber erstellen<br />

❚ Installation in 5 Minuten<br />

❚ Designs ändern<br />

❚ Optimieren für Suchmaschinen<br />

❚ Funktionen erweitern<br />

❚ Benutzerrechte festlegen<br />

❚ Geld verdienen mit Werbung<br />

❚ Besucher analysieren<br />

❚ Sicherheit <strong>und</strong> Spam-Schutz<br />

20%<br />

Treue-Rabatt für<br />

Abonnenten<br />

Linux-Magazin<br />

ACADEMY<br />

Online-Training<br />

Prüfungsvorbereitung<br />

für LPIC 1 & 2<br />

Besorgen Sie sich Brief <strong>und</strong><br />

Siegel für Ihr Linux-<br />

Knowhow mit der<br />

LPI-Zertifizierung.<br />

- Training für die Prüfungen<br />

LPI 101 <strong>und</strong> 102<br />

- Training für die Prüfungen<br />

LPI 201 <strong>und</strong> 202<br />

Sparen Sie mit<br />

paketpreiSen!<br />

20%<br />

Treue-Rabatt für<br />

Abonnenten<br />

OpenSource Training Ralf Spenneberg<br />

Schulungen direkt vom Autor<br />

Wege aus der Lizenzfalle mit Samba 4<br />

3 Tage 04.10. ­ 06.10.2011<br />

Spam Lösungen<br />

3 Tage 04.10. ­ 06.10.2011<br />

OpenVPN ­ Die IPsec Alternative<br />

3 Tage 04.10. ­ 06.10.2011<br />

Linux Storage Lösungen<br />

2 Tage 10.10. ­ 11.10.2011<br />

High Availability and Load Balancing mit Linux<br />

2 Tage 12.10. ­ 13.10.2011<br />

Sourcefire 3D System<br />

4 Tage 18.10. ­ 21.10.2011<br />

Apache 2.x Webserver Administration<br />

4 Tage 17.10. ­ 20.10.2011<br />

Modsecurity<br />

3 Tage 17.10. ­ 19.10.2011<br />

SELinux Administration<br />

2 Tage 24.10. ­ 25.10.2011<br />

Freie Distributionswahl:<br />

Opensuse, Fedora, Debian Squeeze,<br />

CentOS oder Ubuntu LTS<br />

Ergonomische Arbeitsplätze<br />

Umfangreiche Schulungsunterlagen mit<br />

Übungen<br />

Informationen <strong>und</strong> Anmeldung unter:<br />

academy.linux-magazin.de/wordpress<br />

Informationen <strong>und</strong> Anmeldung unter:<br />

academy.linux-magazin.de/lpic<br />

Am Bahnhof 3­5<br />

48565 Steinfurt<br />

Tel.: 02552 638755<br />

Fax: 02552 638757<br />

Weitere Informationen unter www.os­t.de<br />

DiD you<br />

know?<br />

1-9h_Anzeige_wordpress_v02.indd 1<br />

Linux-Magazin<br />

ACADEMY<br />

18.04.2011 LM-Academy_1-9h_Anzeige_LPIC-Mike.indd 11:18:15 Uhr<br />

1<br />

18.04.2011 11:05:38 Uhr<br />

Online-Training<br />

Monitoring mit Nagios<br />

mit Michael Streb von Netways<br />

Netzwerk überwachen<br />

leicht gemacht (Auszug):<br />

20%<br />

❚ das Webfrontend<br />

❚ Überwachung von<br />

Windows/Linux/Unix<br />

❚ Strukturieren der Konfiguration<br />

❚ Überwachen von<br />

SNMP-Komponenten<br />

❚ Addons Nagvis,<br />

Grapher V2, NDO2DB Mit vielen<br />

Treue-Rabatt für<br />

Abonnenten<br />

Praxisbeispielen<br />

Informationen <strong>und</strong> Anmeldung unter:<br />

academy.linux-magazin.de/nagios<br />

UNIX-C-C++ Java<br />

Seminare<br />

in Nürnberg<br />

(oder inhouse)<br />

UNIX/Linux<br />

UNIX/Linux-Aufbau<br />

C, C-Aufbau<br />

C++<br />

OOA/OOD (mit UML)<br />

Java<br />

Perl, XML<br />

weitere Kurse auf Anfrage, Telephonhotline<br />

Dipl.-Ing.<br />

Christoph Stockmayer GmbH<br />

90571 Schwaig/Nbg • Dreihöhenstraße 1<br />

Tel.: 0911/505241 • Fax 0911/5009584<br />

EMail: sto@stockmayer.de<br />

http://www.stockmayer.de<br />

WusstEn siE’s?<br />

Linux-Magazin <strong>und</strong> <strong>LinuxUser</strong> haben<br />

ein englisches Schwester magazin!<br />

Am besten, Sie informieren gleich<br />

Ihre Linux-Fre<strong>und</strong>e in aller Welt...<br />

Linux-Magazin<br />

LM_Anzeige_1-9h_Anzeige_Nagios-Mike.indd 1<br />

©mipan, fotolia<br />

ACADEMY<br />

20%<br />

Treue-Rabatt für<br />

Abonnenten<br />

Online-Training<br />

IT-Sicherheit<br />

Gr<strong>und</strong>lagen<br />

mit Tobias Eggendorfer<br />

14.04.2011 11:58:43 Uhr<br />

Themen:<br />

- physikalische Sicherheit<br />

- logische Sicherheit<br />

• Betriebssystem<br />

• Netzwerk<br />

- Sicherheitskonzepte<br />

- Sicherheitsprüfung<br />

Inklusive Benutzer- <strong>und</strong><br />

Rechteverwaltung, Authentifizierung,<br />

ACLs sowie wichtige<br />

Netzwerkprotokolle <strong>und</strong> mehr!<br />

Linux-Magazin<br />

ACADEMY<br />

Online-Training<br />

mit Hans-Georg Esser, Chefredakteur EasyLinux<br />

OpenOffice -<br />

Arbeiten mit Vorlagen<br />

Erleichtern Sie sich Ihre<br />

tägliche Arbeit mit (Auszug):<br />

❚ einheitlichen Dokumentenvorlagen<br />

❚ automatischen Formatierungen<br />

❚ generierten Inhaltsverzeichnissen<br />

20%<br />

Treue-Rabatt für<br />

Abonnenten<br />

Mit vielen<br />

Praxisbeispielen<br />

www.linux-magazine.com<br />

Informationen <strong>und</strong> Anmeldung unter:<br />

academy.linux-magazin.de/sicherheit<br />

Informationen <strong>und</strong> Anmeldung unter:<br />

academy.linux-magazin.de/openoffice<br />

LMI_german_2-9h_black_2308-2011.indd 1<br />

LM-Academy_1-9h_Security-Mike.indd 1<br />

26.08.2011 14:40:14 Uhr www.linux-user.de<br />

12.04.2011<br />

LM_Academy_1-9h_Anzeige_openoffice-Mike.indd<br />

14:00:35 Uhr<br />

1<br />

12.04.2011 15:08:54 Uhr<br />

10 | 11 103


servIce<br />

Veranstaltungen / Autoren / Inserenten<br />

verAnsTALTungen<br />

23.-24.09.2011<br />

master software Libre: Jornadas Abiertas (3)<br />

Vigo, Spanien<br />

http://www.mastersoftwarelibre.com/2011/08/05/<br />

jornadas-abiertas-de-septiembre-2011/<br />

23.-24.09.2011<br />

open source hardware conference 2011<br />

Madrid, Spanien<br />

http://oshwcon.org/es<br />

29.09.2011<br />

expo Tecnología Bolivar 2011<br />

Puerto Ordaz, Venezuela<br />

http://www.facebook.com/event.php?eid=259469494072<br />

327&ref=notif&notif_t=event_invite<br />

04.-09.10.2011<br />

Pycon De 2011<br />

Leipziger KUBUS<br />

Permoserstraße 15<br />

04318 Leipzig<br />

http://de.pycon.org<br />

06.-07.10.2011<br />

Droidcon London 2011<br />

London, Großbritannien<br />

http://uk.droidcon.com/<br />

12.-15.10.2011<br />

Libreoffice conference 2011<br />

Paris, Frankreich<br />

http://conference.libreoffice.org/<br />

14.-16.10.2011<br />

ubucon 2011<br />

Leipzig<br />

http://ubucon.de<br />

17.10.2011<br />

eclipse embedded Day spanien 2011<br />

Zamudio, Spanien<br />

http://www.tecnalia.com/en/divisions/ict-europeansoftware-institute/software-systems-engineering/ev<br />

20.-21.10.2011<br />

6th International Workshop on Plan 9<br />

Madrid, Spanien<br />

http://iwp9.org/<br />

21.-27.10.2011<br />

hacker halted usA 2011<br />

Miami, FL, USA<br />

http://www.hackerhalted.com/2011<br />

23.-25.10.2011<br />

Linux kernel summit 2011<br />

Prag, Tschechien<br />

http://events.linuxfo<strong>und</strong>ation.org/events/linux-kernelsummit<br />

26.-28.10.2011<br />

Linuxcon europe<br />

Prag, Tschechien<br />

http://events.linuxfo<strong>und</strong>ation.org/events/<br />

05.11.2011<br />

Brandenburger Linux-Infotag 2011<br />

Institut für Informatik der Uni Potsdam<br />

Campus Griebnitzsee, Haus 6<br />

Prof.-Dr.-Helmert-Straße<br />

14482 Potsdam<br />

http://blit.org<br />

07.-11.11.2011<br />

Apachecon nA 2011<br />

Vancouver, BC, Canada<br />

http://na11.apachecon.com/<br />

09.-10.11.2011<br />

Libre software World conference 2011<br />

Zaragoza, Spanien<br />

http://www.asolif.es/?page=fechas_lswc_2011<br />

11.-13.11.2011<br />

Fscons 2011<br />

Göteborg, Schweden<br />

http://fscons.org/<br />

12.-13.11.2011<br />

openrheinruhr 2011<br />

RIM Oberhausen<br />

Hansastraße 20<br />

46049 Oberhausen<br />

http://www.openrheinruhr.de<br />

12.-18.11.2011<br />

sc11: supercomputing 2011<br />

Seattle, WA, USA<br />

http://sc11.supercomputing.org/<br />

16.-18.11.2011<br />

open source Developers conference 2011<br />

Canberra, Australien<br />

http://osdc.com.au<br />

26.11.2011<br />

Linuxday vorarlberg 2011<br />

Dornbirn, Österreich<br />

http://www.linuxday.at<br />

04.-09.12.2011<br />

LIsA ’11<br />

Boston, MA, USA<br />

http://www.usenix.org/events/<br />

AuToren<br />

Falko Benthin Sammlungen verwalten mit GCStar (60)<br />

Andreas Bohle Neues auf den Heft-DVDs (10),<br />

<strong>Vorschau</strong> <strong>LinuxUser</strong> 11/2011 (106)<br />

Joe „Zonker“ Brockmeier CLI-Tools zur Fehlersuche im Netzwerk (38),<br />

Benutzer <strong>und</strong> Gruppen verwalten am Prompt (46)<br />

Florian Effenberger So<strong>und</strong>editor Audacity für Newbies <strong>und</strong> Profis (56)<br />

Æleen Frisch Einführung in die Bash-Programmierung (20)<br />

Karsten Günther Fotos effektiv verwalten mit Digikam (72)<br />

Frank Hofmann Einstieg in den Standard-Editor Vim (32),<br />

Fotos verarbeiten mit Perl <strong>und</strong> Python (90)<br />

Kristian Kißling Komfortable Datensicherung mit Sbackup (82)<br />

Thomas Leichtenstern Neues r<strong>und</strong> um Linux – IFA-News (14),<br />

Flashcard-basiertes Lernen mit Anki (64),<br />

NAS Synology DS110j <strong>und</strong> Strato HiDrive (76),<br />

Dual-SIM-Handy Pearl Simvalley SP-60 GPS (86)<br />

Jörg Luther Editorial (3), Neues r<strong>und</strong> um Linux (14),<br />

Komfortable Datensicherung mit Sbackup (82)<br />

James Mohr CLI-Tools zur Fehlersuche im Netzwerk (38)<br />

Dr. Udo Seidel Report: Linux im Amadeus-Rechenzentrum (6)<br />

Matt Simmons Benutzer <strong>und</strong> Gruppen verwalten am Prompt (46)<br />

Vincze-Aron Szabo Animierte Dia-Schauen mit Imagination (68)<br />

Uwe Vollbracht Aktuelle Software im Kurztest (12)<br />

Nathan Willis Dateisysteme pflegen auf der Kommandozeile (42)<br />

InserenTen<br />

1&1 Internet AG www.eins<strong>und</strong>eins.de 9<br />

Android User GY www.androiduser.de 41, 49<br />

Bibliograph. Institut AG www.bifab.de 29<br />

Bodenseo www.bodenseo.de 35<br />

Cso<strong>und</strong>-Konferenz www.cs-conf.de 105<br />

EasyLinux www.easylinux.de 67<br />

Fernschule Weber GmbH www.fernschule-weber.de 13<br />

Galileo Press www.galileo-press.de 53<br />

Hetzner Online AG www.hetzner.de 108<br />

Linux Magazine www.linux-magazine.com 103<br />

Linux-Community www.linux-community.de 53<br />

Linux-Hotel www.linuxhotel.de 19<br />

Linux-Magazin www.linux-magazin.de 101<br />

Linux-Magazin Academy www.academy.linux-magazin.de 103<br />

<strong>LinuxUser</strong> www.linuxuser.de 11<br />

Netclusive GmbH www.netclusive.de 15<br />

OpenRheinRuhr www.openrheinruhr.de 71<br />

OVH GmbH www.ovh.de/ 30<br />

PlusServer AG www.plusserver.de 36, 54, 80, 96<br />

Spenneberg Training www.spenneberg.com 103<br />

Stockmayer GmbH www.stockmayer.de 103<br />

Strato AG www.strato.de 2, 23, 25<br />

Ubuntu User www.ubuntu-user.de 89<br />

Verion GmbH www.verion.de 107<br />

ZEDOnet GmbH www.turboprint.de 17<br />

104 10 | 11<br />

www.linux-user.de


Impressum<br />

service<br />

Anschrift<br />

Homepage<br />

Artikel <strong>und</strong> Foren<br />

Abo/Nachbestellung<br />

E-Mail (Leserbriefe)<br />

Abo-Service<br />

Pressemitteilungen<br />

<strong>LinuxUser</strong> ist eine Monatspublikation der Linux New Media AG.<br />

Putzbrunner Str. 71, 81739 München<br />

Telefon: (089) 99 34 11-0, Fax: (089) 99 34 11-99<br />

http://www.linux-user.de<br />

http://www.linux-community.de<br />

http://www.linux-user.de/bestellen/<br />

<br />

<br />

<br />

Chefredakteur Jörg Luther (v. i. S. d. P.) (jlu)<br />

Stellv. Chefredakteur Andreas Bohle (agr)<br />

Redaktion<br />

Linux-Community<br />

Datenträger<br />

Ständige Mitarbeiter<br />

Grafik<br />

Sprachlektorat<br />

Produktion<br />

Druck<br />

Geschäftsleitung<br />

Mediaberatung<br />

D / A / CH<br />

UK / Ireland<br />

USA<br />

Marcel Hilzinger (mhi)<br />

Thomas Leichtenstern (tle)<br />

Marcel Hilzinger (mhi)<br />

Thomas Leichtenstern (tle)<br />

Mirko Albrecht, Erik Bärwaldt, Falko Benthin, Florian Effenberger,<br />

Karsten Günther, Frank Hofmann, Christoph Langer, Tim Schürmann,<br />

Martin Steigerwald, Vince-Áron Szabó, Uwe Vollbracht<br />

Elgin Grabe (Titel <strong>und</strong> Layout)<br />

Bildnachweis: Stock.xchng, 123rf.com, Fotolia.de <strong>und</strong> andere<br />

Astrid Hillmer-Bruer, Elke Knitter<br />

Christian Ullrich <br />

Vogel Druck <strong>und</strong> Medienservice GmbH & Co. KG, 97204 Höchberg<br />

Brian Osborn (Vorstand) <br />

Hermann Plank (Vorstand) <br />

Petra Jaser <br />

Tel.: +49 (0)89 / 99 34 11 24<br />

Fax: +49 (0)89 / 99 34 11 99<br />

Penny Wilby <br />

Tel.: +44 (0)1787 211 100<br />

National Sales Director<br />

Ann Jesse <br />

Tel.: +1 785 841 88 34<br />

National Account Manager<br />

Eric Henry <br />

Tel.: +1 785 917 09 90<br />

Es gilt die Anzeigenpreisliste vom 01.01.2011.<br />

Pressevertrieb<br />

Abonnentenservice<br />

D / A / CH<br />

MZV Moderner Zeitschriften Vertrieb GmbH & Co. KG<br />

Ohmstraße 1, 85716 Unterschleißheim<br />

Tel.: (089) 3 19 06-0, Fax: (089) 3 19 06-113<br />

Lea-Maria Schmitt <br />

Postfach 1165, 74001 Heilbronn<br />

Telefon: +49 (0)7131 27 07-274<br />

Telefax: +49 (0)7131 27 07 -78-601<br />

impressum<br />

Abo-Preise Deutschland Österreich Schweiz Ausland EU<br />

No-Media-Ausgabe € 5,50 € 6,30 Sfr 11,00 (siehe Titel)<br />

DVD-Ausgabe € 8,50 € 9,35 Sfr 17,00 (siehe Titel)<br />

Jahres-DVD (Einzelpreis) € 14,95 € 14,95 Sfr 18,90 € 14,95<br />

Jahres-DVD (zum Abo 1 ) € 6,70 € 6,70 Sfr 8,50 € 6,70<br />

Mini-Abo (3 Ausgaben) € 3,00 € 3,00 Sfr 4,50 € 3,00<br />

Jahresabo No Media € 56,10 € 64,60 Sfr 92,40 € 71,60<br />

Jahresabo DVD € 86,70 € 95,00 Sfr 142,80 € 99,00<br />

Preise Digital Deutschland Österreich Schweiz Ausland EU<br />

Heft-PDF Einzelausgabe € 5,50 € 5,50 Sfr 7,15 € 5,50<br />

DigiSub (12 Ausgaben) € 56,10 € 56,10 Sfr 72,90 € 56,10<br />

DigiSub (zum Abo 1 ) € 12,00 € 12,00 Sfr 12,00 € 12,00<br />

HTML-Archiv (zum Abo 1 ) € 12,00 € 12,00 Sfr 12,00 € 12,00<br />

Preise Kombi-Abos Deutschland Österreich Schweiz Ausland EU<br />

Mega-Kombi-Abo 2 € 143,40 € 163,90 Sfr 199,90 € 173,90<br />

(1) nur erhältlich in Verbindung mit einem Jahresabo Print oder Digital<br />

(2) mit <strong>LinuxUser</strong>-Abo (DVD) <strong>und</strong> beiden Jahres-DVDs, inkl. DELUG-Mitgliedschaft<br />

(monatl. DELUG-DVD)<br />

Schüler- <strong>und</strong> Studentenermäßigung: 20 Prozent gegen Vorlage eines Schülerausweises<br />

oder einer aktuellen Immatrikulationsbescheinigung. Der aktuelle Nachweis ist bei Verlängerung<br />

neu zu erbringen. Informationen zu anderen Abo-Formen, Ermäßigungen im Ausland<br />

etc. unter http://shop.linuxnewmedia.de.<br />

Adressänderungen bitte umgehend mitteilen, da Nachsendeaufträge bei der Post nicht<br />

für Zeitschriften gelten.<br />

Linux ist ein eingetragenes Warenzeichen von Linus Torvalds <strong>und</strong> wird von uns mit seiner<br />

fre<strong>und</strong>lichen Genehmigung verwendet. »Unix« wird als Sammelbegriff für die Gruppe der<br />

Unix-ähnlichen Betriebssysteme (wie beispielsweise HP/UX, FreeBSD, Solaris) verwendet,<br />

nicht als Bezeichnung für das Trademark (»UNIX«) der Open Group. Der Linux-Pinguin<br />

wurde von Larry Ewing mit dem Grafikprogramm »The GIMP« erstellt.<br />

Eine Haftung für die Richtigkeit von Veröffentlichungen kann – trotz sorgfältiger Prüfung<br />

durch die Redaktion – vom Verlag nicht übernommen werden. Mit der Einsendung von<br />

Manuskripten oder Leserbriefen gibt der Verfasser seine Einwilligung zur Veröffent lich ung<br />

in einer Publikation der Linux New Media AG. Für unverlangt eingesandte Manuskripte<br />

oder Beiträge übernehmen Redaktion <strong>und</strong> Verlag keinerlei Haftung.<br />

Autoreninfos: http://www.linux-user.de/Autorenhinweise. Die Redaktion behält sich vor,<br />

Einsendungen zu kürzen <strong>und</strong> zu überarbeiten. Das exklusive Urheber- <strong>und</strong> Verwertungsrecht<br />

für angenommene Manus kripte liegt beim Verlag. Es darf kein Teil des Inhalts <strong>ohne</strong> schriftliche<br />

Genehmigung des Verlags in irgendeiner Form vervielfältigt oder verbreitet werden.<br />

Copyright © 1999 - 2011 Linux New Media AG ISSN: 1615-4444<br />

Victor Lazzarini<br />

Ian McCurdy<br />

Michael Gogins<br />

Internationale Cso<strong>und</strong>-Konferenz<br />

30. September – 2. Oktober 2011<br />

Hochschule für Musik, Theater <strong>und</strong> Medien Hannover<br />

Emmichplatz 1<br />

Eintritt frei<br />

John ffitch<br />

Richard Boulanger<br />

Andrés Cabrera<br />

<strong>und</strong> viele andere…<br />

Steven Yi<br />

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

105


VORSCHAU<br />

Das nächste Heft: 11/2011<br />

Ausgabe 11/2011 erscheint am 20. Oktober 2011<br />

© Linusb4, sxc.hu<br />

Sicherheit <strong>und</strong> Privatsphäre<br />

Niemand lässt sich gerne über die Schulter<br />

schauen, schon gar nicht bei der Arbeit am PC. In<br />

der realen Welt merken Sie schnell, wenn der<br />

Atem des Spions im Nacken kitzelt. Entlang der<br />

digitalen Pfade lauern jedoch zahlreiche gesichtslose<br />

Spitzel, die Sie häufig erst bemerken, wenn es<br />

zu spät ist. Mit starker Kryptographie <strong>und</strong> Hilfsprogrammen<br />

sichern Sie Ihre Kommunikation<br />

über das Netz sowie die Daten auf Ihrem Rechner<br />

gegen unerwünschte Zugriffe. Wir zeigen, wie Sie<br />

dabei Tools wie GnuPG, Tor <strong>und</strong> Privoxy zu einer<br />

nahtlosen Abwehrstrategie verzahnen.<br />

Rauf aufs Velo<br />

Alternatives Betriebssystem hilft<br />

alternativem Transportmittel:<br />

Die Software mit dem ungewöhnlichen<br />

Namen Lugdulo’V unterstützt<br />

Sie bei der Suche nach einem<br />

Mietfahrrad in vielen Städten<br />

Deutschlands sowie in vielen<br />

Ländern der Welt. Und natürlich<br />

gibt es – entsprechend dem<br />

Open-Source-Prinzip – für jeden<br />

die Möglichkeit, beim Projekt<br />

mitzumachen.<br />

Vom Foto zum Film<br />

Die Diashow hat ausgedient:<br />

Dank Photofilmstrip zaubern Sie<br />

mit wenigen Mausklicks aus einer<br />

Sammlung von Fotos ein Video,<br />

das Erinnerungen an Familienfeiern<br />

oder Urlaube in fremden Ländern<br />

in ein stimmungsvolles <strong>und</strong><br />

bewegtes Moment komplett mit<br />

Ken-Burns-Effekt verwandelt.<br />

Notebook liebt Ubuntu<br />

Das Rockiger Satchbook, das in der stattung mit einem Intel Core i5 (2,3 GHz)<br />

sowie 500-GByte-SATA-Platte daherkommt,<br />

hat laut Hersteller nur Komponenten<br />

verbaut, die mit Ubuntu Linux<br />

Gr<strong>und</strong>aus-<br />

ausgezeichnet harmonieren.<br />

Ob das in der Praxis wirklich<br />

klappt, zeigt ein Test in<br />

der kommenden Ausgabe.<br />

© Rockiger<br />

Ausgabe 04/2011 erscheint am 10. Oktober 2011<br />

© PKruger, 123RF<br />

Dampf machen<br />

Der PC wirkt langsam, obwohl<br />

eine aktuelle CPU darin werkelt?<br />

Wir zeigen, wie Sie viele Dinge<br />

unter Linux deutlich beschleunigen<br />

können. So vermeiden Sie<br />

Wartezeiten. Weitere Themen<br />

sind flinke Dateimanager, Tools,<br />

zum <strong>Automatisieren</strong> <strong>und</strong> ein Ausflug<br />

in die Linux-Shell.<br />

Moderne Desktops<br />

KDE 4, Gnome 3, Unity <strong>und</strong> viele<br />

mehr: Die Auswahl bei den grafischen<br />

Oberflächen für Linux ist<br />

größer geworden, <strong>und</strong> viele langjährige<br />

KDE-Anwender fragen<br />

sich, ob ein Wechsel sinnvoll ist.<br />

Wir schauen, für wen sich der<br />

Umstieg auf einen der Alternativdesktops<br />

lohnt.<br />

Verschlüsselt <strong>und</strong> signiert<br />

Mails wandern oft unverschlüsselt<br />

durchs Netz. Wenn Sie sicherstellen<br />

wollen, dass außer dem<br />

Empfänger niemand einen Blick<br />

darauf werfen kann, setzen Sie<br />

GnuPG ein. Wir erklären die<br />

Gr<strong>und</strong>lagen, stellen Tools vor <strong>und</strong><br />

verraten, wie Sie Kontakte mit<br />

Windows-Mailern einbeziehen.<br />

MAGAZIN<br />

© Kheng Ho Toha, 123RF<br />

Ausgabe 10/2011 erscheint am 08. September 2011<br />

Für alle Plattformen Booten im Vertrauen Pferdefußnoten<br />

Das nächste Magazin hilft Programmierern,<br />

sich aus der Plattform-Falle<br />

zu befreien, zum Beispiel<br />

mit Python im Duo mit Qt<br />

oder GTK+. Andere Artikel im<br />

Schwerpunkt zeigen, dass <strong>und</strong><br />

wie Mono, Java oder HTML5 für<br />

Flexibilität sorgen.<br />

Mit einem TPM-Chip, Trusted<br />

Grub, Kernel 2.6.30, den Linux<br />

Security Module Hooks <strong>und</strong> speziellen<br />

Mandatory-Access-Erweiterungen<br />

von SE Linux. Richtig<br />

zusammengefügt, entsteht ein<br />

System, das nahtlos seine Integrität<br />

beweisen kann.<br />

Manch smarter Politiker vergisst<br />

beim Zitieren gern die Quelle der<br />

Erkenntnis. Die Bitparade in der<br />

kommenden Ausgabe hilft <strong>und</strong><br />

vergleicht Programme wider die<br />

Vergesslichkeit, die auch Systemarchitekten,<br />

Entwicklern <strong>und</strong> anderen<br />

von Nutzen sind.<br />

106<br />

10 | 11<br />

Die Redaktion behält sich vor, Themen aus aktuellem Anlass zu ändern oder zu streichen.

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!