Rheinwerk Computing < openbook > Rheinwerk Computing - Professionelle Bücher. Auch für Einsteiger.
Professionelle Bücher. Auch für Einsteiger.

Inhaltsverzeichnis
Vorwort
1 Einleitung
TEIL I: Einstieg in Linux
2 Die Installation
3 Erste Schritte
4 Linux als Workstation für Einsteiger
TEIL II: Grundlagen
5 Kernel
6 Grundlagen aus Anwendersicht
TEIL III: Die Shell
7 Die Shell
8 Reguläre Ausdrücke
9 Konsolentools
10 Die Editoren
11 Shellskriptprogrammierung mit der bash
12 Die C-Shell
TEIL IV: System- & Netzwerkadministration
13 Benutzerverwaltung
14 Grundlegende Verwaltungsaufgaben
15 Netzwerkgrundlagen
16 Anwendersoftware für das Netzwerk
17 Netzwerkdienste
18 Mailserver unter Linux
19 LAMP & Co.
20 DNS-Server
21 Secure Shell
TEIL V: Die grafische Oberfläche
22 Die grafische Oberfläche
23 Window-Manager und Desktops
24 X11-Programme
25 Multimedia und Spiele
TEIL VI: Systeminterna
26 Prozesse und IPC
27 Bootstrap und Shutdown
28 Dateisysteme
29 Virtualisierung und Emulatoren
TEIL VII: Programmierung und Sicherheit
30 Softwareentwicklung
31 Crashkurs in C und Perl
32 Einführung in Computersicherheit
33 Netzwerksicherheit überwachen
TEIL VIII: Anhang
A Lösungen zu den einzelnen Aufgaben
B Kommandoreferenz
C X11-InputDevices
D MBR
E Buch-DVDs
F Glossar
G Literatur
Stichwort
Ihre Meinung?

Spacer
Linux von Johannes Plötner, Steffen Wendzel
Das umfassende Handbuch
Buch: Linux

Linux
Rheinwerk Computing
1282 S., 5., aktualisierte Auflage 2012, geb., mit 2 DVDs
49,90 Euro, ISBN 978-3-8362-1822-1
Pfeil 28 Dateisysteme
Pfeil 28.1 Aufbau von Speichermedien
Pfeil 28.1.1 Physische Struktur
Pfeil 28.1.2 Logische Struktur
Pfeil 28.1.3 Integration ins VFS
Pfeil 28.2 Dateisysteme
Pfeil 28.2.1 ext2, ext3, ext4 und reiserfs
Pfeil 28.2.2 btrfs und ZFS
Pfeil 28.2.3 FUSE – Filesystem in Userspace
Pfeil 28.2.4 FFS und UFS/UFS2
Pfeil 28.2.5 ISO 9660
Pfeil 28.2.6 Loop-Device und Ramdisk
Pfeil 28.2.7 Swap
Pfeil 28.2.8 DevFS und udev
Pfeil 28.2.9 ProcFS
Pfeil 28.2.10 NFS
Pfeil 28.2.11 Ecryptfs
Pfeil 28.2.12 Weitere Dateisysteme
Pfeil 28.3 Dateitypen
Pfeil 28.3.1 Reguläre Dateien
Pfeil 28.3.2 Verzeichnisse
Pfeil 28.3.3 Links
Pfeil 28.3.4 Sockets
Pfeil 28.3.5 Named Pipes
Pfeil 28.3.6 Gerätedateien
Pfeil 28.4 Inodes
Pfeil 28.4.1 Metadaten
Pfeil 28.4.2 Alternative Konzepte
Pfeil 28.5 Administration
Pfeil 28.5.1 QtParted und GParted
Pfeil 28.5.2 palimpsest
Pfeil 28.5.3 disklabel
Pfeil 28.5.4 hdparm
Pfeil 28.5.5 fdisk und cfdisk
Pfeil 28.5.6 cfdisk
Pfeil 28.5.7 mkfs
Pfeil 28.5.8 tune2fs
Pfeil 28.5.9 fsck
Pfeil 28.6 Neue Festplatten integrieren
Pfeil 28.6.1 Formatieren
Pfeil 28.6.2 Mountpoint festlegen
Pfeil 28.7 USB-Sticks und -Platten, Digitalkameras und Co.
Pfeil 28.8 Zusammenfassung
Pfeil 28.9 Aufgaben

Rheinwerk Computing - Zum Seitenanfang

28.5 AdministrationZur nächsten Überschrift

Im Folgenden werden wir uns mit der Administration der Dateisysteme befassen. Grundlegende Verwaltungsaufgaben wie das Setzen von Quotas oder Tools wie du und df wurden bereits in Kapitel 14 besprochen. In diesem Abschnitt wollen wir die Administration besprechen, die die Festplatte beziehungsweise das Dateisystem an sich betrifft.


Rheinwerk Computing - Zum Seitenanfang

28.5.1 QtParted und GPartedZur nächsten ÜberschriftZur vorigen Überschrift

Zunächst stellen wir zwei sehr einfach zu benutzende Tools vor, die Ihnen bei der Partitionierung von

Dateisystemen helfen.

Abbildung

Abbildung 28.2 QtParted

Das erste Tool nennt sich QtParted, wurde in C++ geschrieben und basiert auf Qt. Das zweite Tool, GParted, ist eine praktisch gleichwertige Lösung für GNOME-User (mit der Ausnahme, dass es derzeit keine Formatierungen durchführen kann).

Abbildung

Abbildung 28.3 GParted

Im Folgenden werden wir nun diverse Konsolentools zur Administration des Dateisystems vorstellen.


Rheinwerk Computing - Zum Seitenanfang

28.5.2 palimpsestZur nächsten ÜberschriftZur vorigen Überschrift

Mit palimpsest gibt es ein sehr umfangreiches Programm zur Administration und Überwachung von Laufwerken. palimpsest kann nicht nur Partitionierungen vornehmen, Datenträger formatieren und Dateisysteme überprüfen, sondern auch SMART-Werte auslesen und darstellen. Sie können dem Programm beim Starten die gewünschte Platte als Parameter übergeben (palimpsest --show-drive=/dev/sda), aber das ist nicht notwendig, da Sie sie auch in der Oberfläche selektieren können.

Abbildung

Abbildung 28.4 palimpsest


Rheinwerk Computing - Zum Seitenanfang

28.5.3 disklabelZur nächsten ÜberschriftZur vorigen Überschrift

disklabel ist ein BSD-Tool, um die konfigurierten Eigenschaften einer Festplatte auszulesen und zu editieren. Es liefert Informationen über die Festplatte, zum Beispiel deren Größe und Typ.

Übergibt man disklabel das Device einer Platte, so bekommt man Informationen über

  • den Plattentyp (type),
  • die Datenträgerbezeichnung (label),
  • die Anzahl der Bytes pro Sektor,
  • die Anzahl der Sektoren pro Track,
  • die Anzahl der Tracks pro Zylinder,
  • die Anzahl der Sektoren pro Zylinder,
  • die Gesamtzahl der Zylinder,
  • die Gesamtzahl der Sektoren,
  • technische Details (etwa die Umdrehungen des Laufwerks pro Minute (rpm) [Fn. In diesem Beispiel wird der Wert von »3600« angezeigt, was recht gering ist.] oder die Interleave-Aktivierung [Fn. Bei Interleave handelt es sich um eine Technik, die den Zugriff auf die Sektoren der Festplatte verbessert. Dabei werden aufeinanderfolgende Sektoren in einer bestimmten Reihenfolge angeordnet.]) und
  • die Partitionstabelle.

Führen wir disklabel also einmal unter OpenBSD aus:

Listing 28.20 Informationen über die Disk 'wd0' unter OpenBSD

# disklabel wd0
# using MBR partition 3: type A6 off 63 (0x3f) size
39102147 (0x254a6c3)
# /dev/rwd0c:
type: ESDI
disk: ESDI/IDE disk
label: WDC WD200BB-00DE
flags:
bytes/sector: 512
sectors/track: 63
tracks/cylinder: 16
sectors/cylinder: 1008
cylinders: 16383
total sectors: 39102336
rpm: 3600
interleave: 1
trackskew: 0
cylinderskew: 0
headswitch: 0 # microseconds
track-to-track seek: 0 # microseconds
drivedata: 0

16 partitions:
# size offset fstype [fsize bsize cpg]
a: 39102273 63 4.2BSD 2048 16384 328# Cyl 0*- 38791
c: 39102336 0 unused 0 0 # Cyl 0 – 38791

Konfiguration: Der harte Weg

Um diese Konfiguration nun aber zu verändern, ruft man disklabel -e [Device] (für edit) auf. Daraufhin wird der Editor, der in der Variable EDITOR angegeben ist, mit der Konfiguration geladen. Falls Sie die Partitionstabelle etwas komfortabler verändern möchten, wird Ihnen das Tool, das wir als Nächstes besprechen, sicher zusagen.

Listing 28.21 EDITOR-Variable setzen

$ export EDITOR=vi

Konfiguration: Der einfache Weg

Wenn man disklabel nicht mit dem Parameter -e, sondern mit -E aufruft, erscheint ein menübasiertes Konfigurationssystem ähnlich dem von fdisk. Jeder, der einmal OpenBSD installiert hat, hat dieses Menü beim Installationsabschnitt der Partitionskonfiguration schon einmal gesehen.

Listing 28.22 disklabel im Einsatz

#  disklabel -E wd0
# using MBR partition 3: type A6 off 63 (0x3f) size
39102147 (0x254a6c3)

Treating sectors 63-39102336 as the OpenBSD portion
of the disk.
You can use the 'b' command to change this.

Initial label editor (enter '?' for help at any prompt)
> ?
Available commands:
? [cmnd] – this message or command specific
help.
a [part] – add new partition.
b – set OpenBSD disk boundaries.
c [part] – change partition size.
D – set label to default.
d [part] – delete partition.
e – edit drive parameters.
g [b|d|u] – use [b]ios, [d]isk or [u]ser
geometry.
M – show entire OpenBSD man page for
disklabel.
m [part] – modify existing partition.
n [part] – set the mount point for a
partition.
p [unit] – print label.
q – quit and save changes.
r – recalculate free space.
s [path] – save label to file.
u – undo last change.
w – write label to disk.
X – toggle expert mode.
x – exit without saving changes.
z – zero out partition table.
Numeric parameters may use suffixes to indicate units:
'b' for bytes, 'c' for cylinders, 'k' for kilobytes,
'm' for megabytes, 'g' for gigabytes or no suffix
for sectors (usually 512 bytes).
'\%' for percent of total disk size,
'&' for percent of free space. Non-sector units
will be rounded to the nearest cylinder.
Entering '?' at most prompts will give you (simple) context
sensitive help.
> p
device: /dev/rwd0c
type: ESDI
disk: ESDI/IDE disk
label: WDC WD200BB-00DE
bytes/sector: 512
sectors/track: 63
tracks/cylinder: 16
sectors/cylinder: 1008
cylinders: 16383
total sectors: 39102336
free sectors: 0
rpm: 3600

Rheinwerk Computing - Zum Seitenanfang

28.5.4 hdparmZur nächsten ÜberschriftZur vorigen Überschrift

Möchte man Festplatten »tunen«, ist hdparm das Tool der Wahl. Um Parameter wie den DMA-Modus oder den Readahead anzeigen lassen, braucht man hdparm nur mit der betreffenden Festplatte als Parameter aufzurufen:

Listing 28.23 Festplattenparameter mit hdparm anzeigen

# hdparm /dev/sda

/dev/sda:
multcount = 0 (off)
IO_support = 1 (32-bit)
unmaskirq = 1 (on)
using_dma = 1 (on)
keepsettings = 0 (off)
readonly = 0 (off)
readahead = 256 (on)
geometry = 65535/16/63, sectors = 156301488,
start = 0

Natürlich können Sie mit hdparm diese Parameter auch verstellen. Dazu können Sie zusätzlich zur Angabe der Festplatte unter anderem folgende Flags verwenden: [Fn. Die ausführliche Liste mit Parametern gibt es natürlich auf der Manpage. ;-)]

  • -a <Wert>
    Mit diesem Parameter verändern Sie den readahead-Wert. Dieser Wert legt fest, wie viele Sektoren die Festplatte bei einer Leseanfrage bereits im Voraus in ihren Cache lesen soll – nachfolgende Anfragen nach exakt diesen Blöcken können dann sehr schnell beantwortet werden. Hohe Werte bringen also vor allem beim Lesen großer, zusammenhängender Dateien einen Geschwindigkeitsvorteil, können jedoch beim Lesen kleiner Dateien störend sein – schließlich werden unnütze Daten eingelesen.
  • -d 1
    Mit dieser Option bringt man die Festplatte dazu, den DMA-Modus zu nutzen. In diesem Modus kümmert sich der Prozessor nicht selbst darum, Daten von der Festplatte in den Hauptspeicher zu kopieren. Stattdessen wird diese Arbeit vom DMA-Controller erledigt, der den Prozessor, der zwischenzeitlich sinnvollerweise mit anderen Aufgaben/Prozessen beschäftigt ist, erst nach erfolgter Arbeit wieder unterbricht.
  • -c 1
    Mit diesem Wert kann man die (E)IDE-32-Bit Übertragung aktivieren – generell eine gute Idee.

Wir wollen jedoch festhalten, dass es grundsätzlich nicht notwendig ist, an diesen Parametern etwas umzustellen. Allerdings kann man bei dedizierten Rechnern wie beispielsweise Datenbankservern durch geschicktes Experimentieren mit diesen Parametern durchaus bessere Ergebnisse erzielen.


Rheinwerk Computing - Zum Seitenanfang

28.5.5 fdisk und cfdiskZur nächsten ÜberschriftZur vorigen Überschrift

Die Partitionierung

Das Tool fdisk dient zur Partitionierung von Festplatten. Unter den meisten Linux-Distributionen existiert zudem noch cfdisk, das eine leichtere, intuitive Konfiguration von Festplatten zulässt. Oftmals trifft man auch distributionsspezifische Tools an, wie yast2 unter openSUSE, die einem die Konfiguration nochmals deutlich erleichtern. Greifen Sie, wenn möglich, auf diese einfachen Tools zurück.

Zunächst übergeben wir dem Tool fdisk die zu partitionierende Festplatte als Argument: Es erscheint nun die Aufforderung zur Eingabe eines fdisk-Befehls. Dieser besteht aus einem einzigen Buchstaben. Eine Liste der verfügbaren Kommandos erhalten Sie durch Eingabe von »m«.

Listing 28.24 Aufruf von fdisk

# fdisk /dev/sda

Command (m for help): m
Command action
a toggle a bootable flag
b edit bsd disklabel
c toggle the dos compatibility flag
d delete a partition
l list known partition types
m print this menu
n add a new partition
o create a new empty DOS partition table
p print the partition table
q quit without saving changes
s create a new empty Sun disklabel
t change a partition's system id
u change display/entry units
v verify the partition table
w write table to disk and exit
x extra functionality (experts only)
Eine Partition löschen

Falls Ihre Festplatte bereits partitioniert ist (zum Beispiel mit einer Windows-Partition) und diese Partition gelöscht werden soll, um Speicher zu schaffen, sollten Sie den Buchstaben »d« eingeben.

Anschließend werden Sie nach der zu löschenden Partitionsnummer gefragt. Die Nummer der Zielpartition findet man heraus, indem man im Kommandomenü (p) print the partition table auswählt und die Partitionsliste von oben abzählt.

Eine Partition erstellen

Eine neue Partition wird mit n erstellt, wobei zunächst angegeben werden muss, ob es sich um eine logische oder eine primäre Partition handelt. Anschließend sind die Größe und der Typ der Partition festzulegen.

In fdisk können Sie sich alle gängigen Partitionstypen durch Eingabe des Kommandos l anzeigen lassen. In der Regel gilt für eine Linux-Partition die ID 83h und für eine Swap-Partition die ID 82h.

Das Bootflag wird für die zu bootende Partition gesetzt. Möchten Sie alternativ von einer Windows-Partition booten? Dann setzen Sie mit a die aktive Partition auf die Nummer jener Partition. Eine Windows-Installation legt in der Regel großen Wert auf das Bootflag; Linux oder anderen Unix-Systemen ist es dagegen vollkommen egal, ob Sie das Flag setzen oder nicht. Ausschlaggebend ist am Ende nur der Bootmanager wie beispielsweise GRUB, der das betreffende Betriebssystem dann startet.

Die Partitionstabelle betrachten

Durch Eingabe von p im Kommandomenü erhalten Sie eine Liste der Partitionen Ihrer Festplatte wie diese hier:

Listing 28.25 Die Beispielpartitionstabelle

   Device Boot  Start  End  Blocks   Id  System
/dev/sda1 * 1 535 4044568+ 83 Linux native
/dev/sda2 536 559 181440 82 Linux swap

Die erste Spalte gibt die Gerätebezeichnungen für die Partitionen der Platte an und die zweite Spalte das eventuell vorhandene Bootflag.

Da eine Festplatte in Zylinder aufgeteilt ist (die Platte /dev/sda2 aus dem obigen Listing verfügt über 559 dieser Zylinder), werden die Partitionen durch diese abgegrenzt. Start und End geben jeweils den Anfangs- und Endzylinder einer Partition an.

Die Blocks-Spalte gibt die Größe der Festplatte in Blockeinheiten an, Id gibt die Partitions-ID und System die Bezeichnung des Partitionstyps an.

Speichern der Konfiguration

Die Konfiguration wird mit der Taste W in die Partitionstabelle geschrieben, und mit Q wird fdisk beendet. Wurden einige alte MS-DOS-Partitionen modifiziert, so muss zunächst ein Neustart erfolgen, bevor es weitergeht.


Rheinwerk Computing - Zum Seitenanfang

28.5.6 cfdiskZur nächsten ÜberschriftZur vorigen Überschrift

Ist Ihnen fdisk zu kryptisch? Kein Problem: Das Programm cfdisk bietet eine konsolenbasierte grafische Oberfläche und kann mit den Cursor-Tasten bedient werden, wobei die Tasten Nach oben und Nach unten zur Auswahl der Partition und die Tasten Nach links und Nach rechts zur Auswahl der Menüoption dienen.

Abbildung

Abbildung 28.5 cfdisk

Die Bedienung von cfdisk ist selbsterklärend und einfacher als bei fdisk. Darüber hinaus wird die Nutzung durch bestimmte Details vereinfacht. So ist zum Beispiel die Größe der Partitionen in Megabyte dargestellt.


Rheinwerk Computing - Zum Seitenanfang

28.5.7 mkfsZur nächsten ÜberschriftZur vorigen Überschrift

Nachdem man eine Partition erstellt hat, möchte man sie in der Regel noch mit dem richtigen Dateisystem versehen. Dazu gibt es unter Linux das Tool mkfs. Anzugeben sind das zu formatierende Device sowie der Typ des gewünschten Dateisystems. Je nach Wahl sind dann auch noch weitere, spezifische Dateisystem-Optionen möglich.

Das Dateisystem kann bei mkfs nach dem Parameter -t übergeben werden, alternativ kann man auch gleich das entsprechende Pendant benutzen, dem man nur noch das zu formatierende Device übergeben muss: mkfs.ext2, mkfs.ext3, mkfs.ext4, mkfs.vfat.

Listing 28.26 Anlegen eines ext4-Dateisystems in einer Datei

swendzel$ dd if=/dev/zero bs=1M count=10 of=file.fs
10+0 records in
10+0 records out
10485760 bytes (10 MB) copied, 0.0449227 s, 233 MB/s
swendzel$ mkfs.ext4 file.fs
mke2fs 1.41.4 (27-Jan-2009)
file.fs is not a block special device.
Proceed anyway? (y,n) y
Filesystem label=
OS type: Linux
Block size=1024 (log=0)
Fragment size=1024 (log=0)
2560 inodes, 10240 blocks
512 blocks (5.00 %) reserved for the super user
First data block=1
Maximum filesystem blocks=10485760
2 block groups
8192 blocks per group, 8192 fragments per group
1280 inodes per group
Superblock backups stored on blocks:
8193

Writing inode tables: done
Creating journal (1024 blocks): done
Writing superblocks and filesystem accounting information: done

This filesystem will be automatically checked every 31 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to
override.

Rheinwerk Computing - Zum Seitenanfang

28.5.8 tune2fsZur nächsten ÜberschriftZur vorigen Überschrift

Wie Sie sicherlich bemerkt haben, besitzt ein ext-Dateisystem mehrere Parameter, wie beispielsweise den Zeitraum beziehungsweise die maximale Anzahl von Mounts, nach dem bzw. der eine Partition spätestens durch fsck überprüft wird. Solche Parameter kann man über das Tool tune2fs mit dem entsprechenden Argument ändern. Die wichtigsten Parameter sind hier zusammengefasst:

  • -c max_mounts_count
    Mit diesem Parameter ändern Sie die Anzahl der Mounts, nach denen das Dateisystem spätestens neu überprüft wird.
  • -C mount_count
    Hier können Sie einstellen, wie oft das Dateisystem schon gemountet wurde, ohne überprüft zu werden.
  • -m reserved_blocks_percent
    Wie viele Prozent des Plattenplatzes sollen für den Superuser reserviert bleiben? Achtung: Diesen Wert sollten Sie nicht auf Null setzen, um bei Problemen mit einer vollen Platte zumindest als root noch alles ins Reine bringen zu können.
  • -i interval(d|m|w)
    Mit diesem Parameter legen Sie die maximale Zeit zwischen zwei Checks des Dateisystems fest. Dieser Parameter »konkurriert« mit der Anzahl der maximalen Mounts darum, das Dateisystem zu einem Check zu zwingen.

Natürlich muss man beim Aufruf von tune2fs noch das entsprechende Device angeben, auf das die Operation ausgeführt werden soll. Ein Beispiel erwartet Sie in den Aufgaben am Ende des Kapitels.


Rheinwerk Computing - Zum Seitenanfang

28.5.9 fsckZur vorigen Überschrift

Wenn man das Dateisystem nicht ordentlich herunterführt, wird beim nächsten Booten das fsck-Tool für die entsprechende Partition gestartet. Natürlich können Sie das Programm auch von Hand starten und Ihr Dateisystem auf Inkonsistenzen prüfen. Dies ist jedoch nur sehr selten notwendig, beispielsweise wenn Sie einen produktiven Server mit großer Uptime laufen haben und auf Nummer sicher gehen wollen.

Des Weiteren wird bei den meisten Distributionen automatisch – etwa nach 30 Bootvorgängen – eine Überprüfung des Dateisystems durchgeführt.

Rückgabewert

Den Erfolg von fsck können Sie übrigens auch über Shellskripte prüfen, da der Rückgabewert dieses Programms vom Resultat der Überprüfung abhängig ist. Dieser Rückgabewert wird dabei aus der Summe von verschiedenen Meldungen gebildet: »0« steht für eine erfolgreiche Überprüfung, »1« besagt, dass Dateisystemfehler bereinigt wurden, »2«, dass das System rebootet werden sollte, und »4« weist auf nicht korrigierte Fehler hin. Weitere Werte sind »8« (Fehler während der Ausführung), »16« (Bedienungsfehler, zum Beispiel bei Übergabe falscher Parameter), »32« (das Programm wurde durch den Benutzer unterbrochen) und »128« (Fehler durch eine Bibliothek). Falls mehrere Dateisysteme gleichzeitig überprüft werden, werden die Rückgabewerte durch ein bitweises ODER verknüpft.



Ihr Kommentar

Wie hat Ihnen das <openbook> gefallen? Wir freuen uns immer über Ihre freundlichen und kritischen Rückmeldungen.

>> Zum Feedback-Formular
<< zurück
 Ihre Meinung?
Wie hat Ihnen das <openbook> gefallen?
Ihre Meinung

 Buchempfehlungen
Zum Katalog: Linux Handbuch






 Linux Handbuch


Zum Katalog: Linux Server






 Linux Server


Zum Katalog: Raspberry Pi






 Raspberry Pi


Zum Katalog: Ubuntu 14.04 LTS






 Ubuntu 14.04 LTS


Zum Katalog: Roboter bauen mit Arduino






 Roboter bauen
 mit Arduino


 Shopping
Versandkostenfrei bestellen in Deutschland und Österreich
InfoInfo




Copyright © Rheinwerk Verlag GmbH 2012
Für Ihren privaten Gebrauch dürfen Sie die Online-Version natürlich ausdrucken. Ansonsten unterliegt das <openbook> denselben Bestimmungen, wie die gebundene Ausgabe: Das Werk einschließlich aller seiner Teile ist urheberrechtlich geschützt. Alle Rechte vorbehalten einschließlich der Vervielfältigung, Übersetzung, Mikroverfilmung sowie Einspeicherung und Verarbeitung in elektronischen Systemen.


Nutzungsbestimmungen | Datenschutz | Impressum

Rheinwerk Verlag GmbH, Rheinwerkallee 4, 53227 Bonn, Tel.: 0228.42150.0, Fax 0228.42150.77, service@rheinwerk-verlag.de