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

Inhaltsverzeichnis
Vorwort
Über die Autoren
Über dieses Buch
Linux vs. BSD
1 Der Kernel
2 Die Grundlagen aus Anwendersicht
3 Die Shell
4 Reguläre Ausdrücke
5 Tools zur Dateibearbeitung
6 Die Editoren
7 Shellskriptprogrammierung
8 Benutzerverwaltung
9 Grundlegende Verwaltungsaufgaben
10 Netzwerk-Grundlagen
11 Anwendersoftware für das Netzwerk
12 Netzwerkdienste
13 Mailserver unter Linux
14 LAMP
15 DNS-Server
16 Secure Shell
17 Die grafische Oberfläche
18 Window-Manager und Desktops
19 X11-Programme
20 Multimedia und Spiele
21 Softwareentwicklung
22 Crashkurs in C und Perl
23 Sicherheit
24 Prozesse und IPC
25 Bootstrap und Shutdown
26 Dateisysteme
27 Virtualisierung und Emulatoren
A Die Installation
B Lösungen zu den einzelnen Aufgaben
C Kommandoreferenz
D X11-InputDevices
E MBR
F Die Buch-DVDs
G Glossar
H Literatur

Download:
- ZIP, ca. 6,3 MB
Buch bestellen
Ihre Meinung?

Spacer
 <<   zurück
Linux von Johannes Plötner, Steffen Wendzel
Das distributionsunabhängige Handbuch
Buch: Linux

Linux
2., aktualisierte und erweiterte Auflage
1119 S., 39,90 Euro
Galileo Computing
ISBN 978-3-8362-1090-4
gp 26 Dateisysteme
  gp 26.1 Der Aufbau von Speichermedien
    gp 26.1.1 Die physikalische Struktur
    gp 26.1.2 Die logische Struktur
    gp 26.1.3 Integration ins VFS
  gp 26.2 Dateisysteme
    gp 26.2.1 ext2, ext3 und reiserfs
    gp 26.2.2 FFS und UFS/UFS2
    gp 26.2.3 ISO 9660
    gp 26.2.4 Loop Device und Ramdisk
    gp 26.2.5 Swap
    gp 26.2.6 DevFS
    gp 26.2.7 ProcFS
    gp 26.2.8 NFS
    gp 26.2.9 Ecryptfs
    gp 26.2.10 Weitere Dateisysteme
  gp 26.3 Dateitypen
    gp 26.3.1 Reguläre Dateien
    gp 26.3.2 Verzeichnisse
    gp 26.3.3 Links
    gp 26.3.4 Sockets
    gp 26.3.5 Named Pipes
    gp 26.3.6 Gerätedateien
  gp 26.4 Inodes
    gp 26.4.1 Die Metadaten
    gp 26.4.2 Alternative Konzepte
  gp 26.5 Administration
    gp 26.5.1 qtparted und gparted
    gp 26.5.2 disklabel
    gp 26.5.3 hdparm
    gp 26.5.4 fdisk und cfdisk
    gp 26.5.5 Das Tool cfdisk
    gp 26.5.6 mkfs
    gp 26.5.7 tune2fs
    gp 26.5.8 fsck
  gp 26.6 Praktische Beispiele
    gp 26.6.1 ZIP-Laufwerke
    gp 26.6.2 Neue Festplatten integrieren
    gp 26.6.3 Eine Datei als Dateisystem: Loop Device
    gp 26.6.4 USB-Sticks und -Platten, Digitalkameras und Co.
    gp 26.6.5 Das Device ansprechen
  gp 26.7 Zusammenfassung
  gp 26.8 Aufgaben


Galileo Computing

26.6 Praktische Beispiele  downtop


Galileo Computing

26.6.1 ZIP-Laufwerke  downtop

ZIP-Laufwerke sind – nicht zuletzt aus Kostengründen, bei denen CD-RW, DVD-RW und USB-Medien unschlagbar sind – nicht allzu sehr verbreitet, stellen aber dennoch ein gutes Backup-Medium dar. ZIP-Disketten sind immer praktisch, wenn es darum geht, etwas größere Datenmengen von A nach B zu transportieren oder eben zu sichern, da sie immer wieder beschrieben werden können.

Je nach Laufwerk ist man in der Lage, eine oder mehrere der drei Größen (100 MB, 250 MB und 750 MB) zu lesen. Ein 100er-Laufwerk kann beispielsweise nur 100er- Disketten lesen, ein 250er aber sowohl 100- als eben auch 250-MB-Medien.

Medien mounten

Die Disketten können ganz einfach über das mount-Kommando in das Dateisystem eingehängt werden. Der Dateisystemtyp ist, wenn er nicht verändert wurde, FAT32 oder FAT16. Mit dem Tool eject wird das Medium aus dem Laufwerk gestoßen.

eject funktioniert übrigens auch bei CD- und DVD-Laufwerken.

# mount -t vfat /dev/sd* /mnt/zip 
# umount /mnt/zip 
# eject /dev/sd*

Listing 26.23    Ein ZIP-Medium mounten, unmounten und ejecten

Wenn Sie die Unterstützung für die Laufwerke im Kernel aktiviert haben, wird ein entsprechendes Device – sofern vorhanden – beim Booten erkannt. Erinnern Sie sich im Zweifelsfall einfach an den dmesg-Befehl, und suchen Sie etwa nach folgendem Inhalt:

# dmesg | grep ZIP 
hdc: IOMEGA ZIP 100 ATAPI, ATAPI FLOPPY drive

Listing 26.24    Erkennen des Laufwerks in den Boot-Meldungen

Hier wurde ein internes am IDE-Bus hängendes ZIP-Laufwerk erkannt. USB-Geräte hingegen werden wie entsprechende SCSI-Laufwerke als sd* erkannt.


Galileo Computing

26.6.2 Neue Festplatten integrieren  downtop

Wie Sie bereits wissen, werden Speichermedien mit dem (c)fdisk-Programm partitioniert.

Gesetzt den Fall, in Ihrem Rechner ist bisher nur eine Platte (/dev/hda) integriert, dann wird die neu integrierte Platte wahrscheinlich die Bezeichnung /dev/hdb tragen. <Oder /dev/hdc oder /dev/hdd, was von den Jumper-Settings und dem verwendeten IDE-Port im Rechner abhängig ist.>

Formatieren

Die Formatierung wird mit dem für zukünftige Dateisysteme angemessenen Programm erledigt, also etwa mke2fs für das Standard-Dateisystem ext2 oder mkreiserfs für das Reiser-Dateisystem.

# mkreiserfs /dev/hdb1

Listing 26.25    Formatierung einer Partition

Mountpoint festlegen

Nun muss lediglich noch der Mountpoint für die neue Platte erstellt werden.

Eventuell sollte eine dauerhafte Mount-Zeile in der fstab-Datei angelegt werden. <Mehr zum Thema fstab-Datei erfahren Sie in Kapitel 9, »Grundlegende Verwaltungsaufgaben«.>

# mkdir /var/www/htdocs/pub 
# mount /dev/hdb1 /var/www/htdocs/pub

Listing 26.26    Einbinden der neuen Partition


Galileo Computing

26.6.3 Eine Datei als Dateisystem: Loop Device  downtop

Ein Loop Device bezeichnet eine spezielle Gerätedatei /dev/loop*, die das Mounten von als Dateien vorliegenden Dateisystemen erlaubt. Das ist notwendig, da mount nur auf Gerätedateien operieren kann.

Sinnvoll wird das Ganze bei aus dem Netz geladenen CD-Images, die man zum Beispiel vor dem Brennen kontrollieren möchte. Man kann aber auch alle möglichen anderen Dateien über so ein Loop Device mounten.

Doch wie erstellt man selbst eine solche Datei? Im Prinzip ist dies relativ einfach:

Zuerst erstellen wir mit dem dd-Programm eine Datei beliebiger Größe.

Im folgenden Beispiel entscheiden wir uns für eine 30 MB große Datei. Als Eingabequelle wird /dev/zero verwendet, um unser Image mit binären Nullen zu füllen – irgendeinen initialen Inhalt brauchen wir schließlich.

# dd if=/dev/zero of=filefs.img bs=1M count=30 
30+0 records in 
30+0 records out 
# ls -l filefs.img 
-rw-r--r-- 1 root wh 31457280 Jan 9 16:28 filefs.img

Listing 26.27    Erzeugen der Raw-Datei

Dateisystem!erzeugen

Auf dieser Datei wird anschließend ein Dateisystem – in unserem Fall ext2 – erzeugt. Dabei werden 1024 Bytes pro Inode (-i) bei einer Blockgröße von 1024 Bytes pro Block verwaltet. Eine Inode entspricht nun also genau einem Block, was vor allem bei kleineren Dateisystemen Sinn macht.

Zudem entscheiden wir uns, 3 Prozent <Der Standardwert ist fünf Prozent.> der Partitionsgröße als für root reservierten Speicher zu verwenden (-m). Die Frage, ob das Dateisystem erstellt werden soll, obwohl es sich nicht um ein dafür vorgesehenes Gerät handelt, kann in unserem Fall mit y (yes) beantwortet bzw. mit dem -F-Parameter unterdrückt werden.

# mke2fs -i 1024 -b 1024 -m 3 -v filefs.img 
mke2fs 1.22, 22-Jun-2001 for EXT2 FS 0.5b, 95/08/09 
filefs.img 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) 
30720 inodes, 30720 blocks 
921 blocks (3.00%) reserved for super user 
First data block=1 
4 block groups 
8192 blocks per group, 8192 fragments per group 
7680 inodex per group 
Superblock backups stored on blocks: 
        8193, 24577 
 
Writing inode tables: done 
Writing superblocks and filesystem accounting 
information: done 
 
This filesystem will be automatically checked 
every 22 mounts or 180 days, whichever comes 
first. Use tune2fs -c or -i to override.

Listing 26.28    Dateisystem erzeugen

Fertig! Jetzt müssen wir noch die Datei mittels losetup an ein Loop Device binden und dieses dann mounten:

# mkdir /loop 
# losetup /dev/loop0 filefs.img 
# mount -t ext2 /dev/loop0 /loop

Listing 26.29    losetup und mount

Alternativ kann man auch mount die Arbeit mit losetup überlassen, wenn man die loop-Option nicht vergisst:

# mount -t ext2 filefs.img /loop -o loop 
# cat /dev/zero > /loop/file  # Testdatei mit Inhalt 
^C 
# df -h 
Filesystem       Size Used Avail Use% Mounted on 
/dev/hda1        3.7G 1.5G  2.1G  30% / 
/root/filefs.img  26M  13M   13M  48% /loop

Listing 26.30    Eine Datei direkt mounten

Und das Ganze mit dem RAM

Ein Dateisystem können Sie auch im Hauptspeicher anlegen, zum Beispiel um für zeitkritische Anwendungen Perfomanceverluste wegen langer Plattenzugriffe zu vermeiden. Das Ganze nennt sich dann »Ramdisk« und läuft über /dev/ram*:

# mke2fs /dev/ram0 
mke2fs 1.22, 22-Jun-2001 for EXT2 FS 0.5b, 95/08/09 
Filesystem label= 
OS type: Linux 
Block size=1024 (log=0) 
Fragment size=1024 (log=0) 
1944 inodes, 7777 blocks 
…{} 
…{} 
# mount /dev/ram0 /mnt/ramdisk 
# df -h 
Filesystem       Size Used Avail Use% Mounted on 
/dev/hda1        3.7G 1.5G  2.1G  30% / 
/dev/ram0        7.4M  13k  6.9M   1% /mnt/ramdisk

Listing 26.31    RAM-Device


Galileo Computing

26.6.4 USB-Sticks und -Platten, Digitalkameras und Co.  downtop

USB-Speichermedien (dazu zählen beispielsweise Digitalkameras, MP3-Player, USB-Sticks und USB-Festplatten) sind zurzeit sehr beliebt. Auch für größere Datenmengen sind diese Platzwunder schon recht brauchbar. Aus diesem Grund wollen wir Ihnen nun die Linux-Nutzung dieser Hardware näher erläutern.

USB-Treiber

Um diese Sticks nutzen zu können, brauchen wir notwendigerweise einen PC mit einem Mainboard, das USB unterstützt. Meistens wird der entprechende Support schon bei der Installation erkannt, und die entsprechenden Module werden geladen:

# lsmod | grep usb 
…

Listing 26.32    USB-Support im Kernel?

Findet man dann Ausgaben wie ohci-hcd oder usb-ohci, wird zumindest bereits der Controller unterstützt. Wenn nicht, muss man eventuell ein entsprechendes Modul nachladen. Für Kernel 2.4 heißt das Modul usb-ohci oder je nach Mainboard auch usb-uhci, ab Kernel 2.6 eben ohci-hcd bzw. uhci-hcd oder ähnlich.

Als Nächstes braucht man – falls es nicht bereits eingebunden ist – nun das Modul, das den USB-Stick als Speichermedium ansprechen kann. Dazu muss man – falls dies nicht bereits automatisch geschehen ist – das Modul usb-storage laden.

# modprobe usb-storage 
# mkdir /mnt/usb

Listing 26.33    Kernel-Modul laden


Galileo Computing

26.6.5 Das Device ansprechen  toptop

Bei der Gelegenheit haben wir gleich einen Mountpoint für den Stick unter

/mnt/usb angelegt. Der Stick wird später als SCSI-Festplatte erkannt werden, <Wir benötigen also SCSI-Support im Kernel!> und es wird dann, da im Normalfall keine weiteren Platten installiert sein werden, das entsprechende Device als /dev/sda bezeichnet sein.

Dort sprechen wir dann die erste Partition als /dev/sda1 an.

Um das Mounten und Unmounten später zu vereinfachen, fügen wir folgende Zeile in die /etc/fstab ein:

/dev/sda1  /mnt/usb  vfat  rw,noauto,owner,user  0 0

Listing 26.34    Der USB-Stick in der fstab

Jetzt können wir den Stick ganz einfach mit mount /mnt/usb mounten. Ganz wichtig: Vor dem Ausziehen des Sticks müssen wir denselben wieder unmounten!

Ohne entsprechenden Eintrag in der fstab-Datei lässt sich ein USB-Stick natürlich auch mounten.

Entweder man gibt keine Partition an und verwendet den Dateisystem-Typ »usbfs« (mount -t usbfs /dev/sdb /mnt/usb), oder aber man gibt die Partition sowie deren Dateisystem-Typ wie in der obigen fstab direkt an (mount -t vfat /dev/sdb1 /mnt/usb).



Ihr Kommentar

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






 <<   zurück
  
  Zum Katalog
Zum Katalog: Linux






 Linux
Jetzt bestellen


 Ihre Meinung?
Wie hat Ihnen das <openbook> gefallen?
Ihre Meinung

 Buchtipps
Zum Katalog: IT-Handbuch für Fachinformatiker






 IT-Handbuch für
 Fachinformatiker


Zum Katalog: Einstieg in Linux






 Einstieg in Linux


Zum Katalog: Debian GNU/Linux






 Debian GNU/Linux


Zum Katalog: Ubuntu GNU/Linux






 Ubuntu GNU/Linux


Zum Katalog: Shell-Programmierung






 Shell-Programmierung


Zum Katalog: Linux-UNIX-Programmierung






 Linux-UNIX-
 Programmierung


Zum Katalog: Praxisbuch Netzwerk-Sicherheit






 Praxisbuch
 Netzwerk-Sicherheit


 Shopping
Versandkostenfrei bestellen in Deutschland und Österreich
InfoInfo




Copyright © Galileo Press 2008
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.


[Galileo Computing]

Galileo Press, Rheinwerkallee 4, 53227 Bonn, Tel.: 0228.42150.0, Fax 0228.42150.77, info@galileo-press.de