5.9. Red Hat Enterprise Linux-spezifische Informationen

Abhängig von Ihrer bisherigen Erfahrung als Systemadministrator ist Ihnen das Verwalten von Speicher unter Red Hat Enterprise Linux entweder weitgehend bekannt oder vollständig unbekannt. Dieser Abschnitt beschreibt Red Hat Enterprise Linux-spezifische Aspekte der Speicherverwaltung.

5.9.1. Gerätenamen-Konventionen

Wie bei allen Linux-ähnlichen Betriebssystemen verwendet Red Hat Enterprise Linux Gerätedateien zum Zugriff auf die gesamte Hardware (inklusive Festplatten). Namenskonventionen für angehängte Speichergeräte variieren jedoch zwischen den verschiedenen Linux- und Linux-ähnlichen Systemen. Im folgenden werden die Benennungen für Gerätedateien unter Red Hat Enterprise Linux beschrieben.

AnmerkungAnmerkung
 

Gerätenamen unter Red Hat Enterprise Linux werden zum Bootzeitpunkt festgelegt.

Aus diesem Grund können Änderungen an der Systemhardware in einer Änderung der Gerätenamen resultieren, wenn das System neu bootet. Hierdurch können Probleme entstehen, wenn Referenzen zu Gerätenamen in der Systemkonfiguration nicht angemessen aktualisiert werden.

5.9.1.1. Gerätedateien

Unter Red Hat Enterprise Linux erscheinen die Gerätedateien für Festplatten im Verzeichnis /dev/. Das Format für jeden Dateinamen hängt von mehreren Aspekten der eigentlichen Hardware und deren Konfiguration ab. Die wichtigsten Punkte sind folgende:

  • Gerätetyp

  • Unit

  • Partition

5.9.1.1.1. Gerätetyp

Die ersten beiden Buchstaben der Gerätedatei beziehen sich auf den speziellen Typ des Geräts. Bei Festplatten gibt es zwei Gerätetypen, die am häufigsten verwendet werden:

  • sd — Das Gerät ist SCSI-basiert

  • hd — Das Gerät ist ATA-basiert

Weitere Informationen zu ATA und SCSI finden Sie unter Abschnitt 5.3.2.

5.9.1.1.2. Unit

Die zwei Buchstaben für den Gerätetyp werden gefolgt von einem oder zwei Buchstaben für die jeweilige Unit. Diese Unit-Kennung beginnt mit "a" für die erste Unit, "b" für die zweite und so weiter. Die erste Festplatte auf Ihrem System erscheint daher z.B. als hda oder sda.

TippTipp
 

Die Fähigkeit von SCSI, eine große Zahl von Geräten anzusprechen erfordert zusätzlich einen zweites Unit-Kennzeichen, um Systeme zu unterstützen, die mehr als 26 SCSI-Geräte besitzen. Die ersten 26 SCSI-Festplatten würden daher sda bis sdz benannt und die nächsten 26 dann sdaa bis sdaz.

5.9.1.1.3. Partition

Der letzte Teil des Gerätedateinamens ist eine Ziffer, die eine bestimmte Partition auf dem Gerät angibt, beginnend mit "1". Diese Zahl kann eine oder zwei Ziffern haben, abhängig von der Anzahl der Partitionen auf diesem Gerät. Wenn Sie das Format für die Gerätedateinamen kennen, ist es leicht zu verstehen, worauf diese sich beziehen. Hier einige Beispiele:

  • /dev/hda1 — Die erste Partition auf dem ersten ATA-Laufwerk

  • /dev/sdb12 — Die zwölfte Partition auf dem zweiten SCSI-Laufwerk

  • /dev/sdad4 — Die vierte Partition auf dem dreißigsten SCSI-Laufwerk

5.9.1.1.4. Zugriff zum Gesamt-Gerät

Es kann vorkommen, dass Sie auf das gesamte Laufwerk zugreifen müssen und nicht nur auf eine bestimmte Partition. Dies geschieht normalerweise, wenn das Laufwerk nicht partitioniert ist oder keine Standard-Partitionen unterstützt (wie zum Beispiel ein CD-ROM-Laufwerk). In diesen Fällen wird die Partitionsnummer weggelassen:

  • /dev/hdc — Das gesamte dritte ATA-Gerät

  • /dev/sdb — Das gesamte zweite SCSI-Gerät

Die meisten Festplatten verwenden jedoch Partitionen (weitere Informationen zur Partitionierung unter Red Hat Enterprise Linux finden Sie unter Abschnitt 5.9.6.1).

5.9.1.2. Alternativen zu Gerätedateinamen

Da das Hinzufügen oder Entfernen von Massenspeichergeräten in Änderungen an den Gerätedateinamen für bestehende Geräte resultieren kann, besteht das Risiko, dass der Speicher nicht zur Verfügung steht, wenn das System neu startet. Hier ist ein Beispiel einer Abfolge von Ereignissen, die zu diesem Problem führen:

  1. Der Systemadministrator fügt einen neuen SCSI-Controller hinzu, sodass zwei neue SCSI-Festplatten an das System angeschlossen werden können (der bestehende SCSI-Bus ist bereits voll)

  2. Die ursprünglichen SCSI-Festplatten (inklusive der ersten Festplatte auf dem Bus: /dev/sda) werden nicht geändert

  3. Das System wir neu gebootet

  4. Die SCSI-Festplatte, die bisher als /dev/sda bekannt war, hat nun einen neuen Namen, da die erste SCSI-Festplatte auf dem neuen Controller jetzt /dev/sda ist

Theoretisch hört sich dies nach einem großen Problem an. Praktisch gesehen ist es dies jedoch aus folgenden Gründen nur selten ein Problem. Als erstes werden Hardware-Konfigurationen dieses Typs nur selten durchgeführt. Zweitens ist es wahrscheinlich, dass der Systemadministrator Downtime geplant hat, um die nötigen Änderungen durchzuführen. Diese benötigen sorgfältige Planung, um sicherzustellen, dass die durchzuführenden Arbeiten nicht länger als die zugewiesene Zeit benötigen. Die Planung hat den positiven Nebeneffekt, dass jegliche Probleme mit den Gerätenamensänderungen ans Licht gebracht werden.

Einige Unternehmen und Systemkonfigurationen werden diesem Problem eventuell begegnen. Unternehmen, die häufig Neukonfigurationen des Speichers benötigen, um deren Anforderungen an Hardware zu erfüllen, verwenden häufig Hardward, die ohne Downtime rekonfiguriert werden kann. Derartige hotpluggable Hardware erleichtert das Hinzufügen oder Löschen von Speicher. Unter diesen Umständen kann jedoch das Benennen von Geräten zu einem Problem werden. Glücklicherweise enthält Red Hat Enterprise Linux jedoch Features, die das Ändern von Gerätenamen zu einem kleineren Problem werden lassen.

5.9.1.2.1. Dateisystemkennungen

Einige Dateisysteme (die im Abschnitt Abschnitt 5.9.2 genauer behandelt werden), haben die Möglichkeit, ein Label (Kennung) zu speichern — eine Zeichenkette, die die Daten, die das Dateisystem enthält, eindeutig identifiziert. Diese Kennungen können beim Mounten des Dateisystems verwendet werden, was die Verwendung des Gerätenamens umgeht.

Dateisystem-Kennungen funktionieren sehr gut; diese Kennungen müssen jedoch über das gesamte System eindeutig sein. Gibt es mehr als ein Dateisystem mit dem gleichen Label, können Sie unter Umständen nicht auf das Dateisystem zugreifen. Beachten Sie auch, dass Systemkonfigurationen, die keine Dateisysteme verwenden (z.B. einige Datenbanken) nicht die Vorteile von Dateisystemkennungen in Anspruch nehmen können.

5.9.1.2.2. Verwenden von devlabel

Die devlabel-Software versucht das Gerätenamenproblem anders als Dateisystemkennungen anzusprechen. Die devlabel-Software wird von Red Hat Enterprise Linux ausgeführt, wenn das System neu bootet (und wann immer hotpluggable Geräte angeschlossen oder entfernt werden).

Wenn devlabel ausgeführt wird, liest es die Konfigurationsdatei (/etc/sysconfig/devlabel), um eine Liste der dafür zuständigen Geräte zu erhalten. Für jedes Gerät auf der Liste gibt es einen symbolischen Link (vom Systemadministrator gewählt) und den UUID des Geräts (Universal Unique IDentifier).

Der devlabel-Befehl stellt sicher, dass der symbolische Link immer auf das ursprünglich angegebene Gerät weist — auch wenn sich der Gerätename geändert hat. So kann ein Systemadministrator ein System konfigurieren, das z.B. auf /dev/projdisk anstelle von /dev/sda12 weist.

Da die UUID direkt vom Gerät erhalten wird, kann devlabel das System nur auf passende UUID durchsuchen und den symbolischen Link anpassen.

Weitere Informationen zu devlabel finden Sie im Red Hat Enterprise Linux Handbuch zur System-Administration.

5.9.2. Grundlagen zum Dateisystem

Red Hat Enterprise Linux umfasst Support für viele bekannte Dateisysteme, was den Zugriff auf Dateisysteme unter anderen Betriebssystemen erleichtert.

Dies ist insbesondere nützlich für Dual-Boot-Szenarien und wenn Dateien von einem Betriebssystem zu einem anderen migriert werden sollen.

Die unterstützten Dateisysteme umfassen folgende (diese Liste ist nicht vollständig):

In den folgenden Abschnitten werden diese Dateisysteme in größerem Detail beschrieben.

5.9.2.1. EXT2

Bis vor Kurzem war das ext2-Dateisystem der Standard für Linux. Als solches hat es umfassendes Testing erfahren und wird als eines der robusteren Dateisysteme angesehen.

Ein perfektes Dateisystem gibt es jedoch nicht, und ext2 stellt hier keine Ausnahme dar. Ein häufig berichtetes Problem ist, dass ext2 einer langwierigen Integritätsprüfung unterzogen werden muss, wenn das System nicht ordnungsgemäß heruntergefahren wurde. Während dies nicht nur auf ext2 zutrifft, bedeutete jedoch die Beliebtheit von ext2 in Verbindung mit größeren Festplatten, dass diese Checks immer länger und länger andauerten. Da musste etwas geschehen.

Im nächsten Abschnitt werden die Ansätze zur Problemlösung unter Red Hat Enterprise Linux beschrieben.

5.9.2.2. EXT3

Das ext3-Dateisystem baut auf ext2 auf, indem Journaling-Fähigkeiten zur bereits bewährten ext2-Codebase hinzugefügt wurden. Als Journaling-Dateisystem eliminiert ext3 den Bedarf an langwierigen Dateisystemprüfungen.

Dies geschieht, indem alle Änderungen am Dateisystem in einem Journal auf der Festplatte verzeichnet werden, was dann regelmäßig geflusht wird. Nach einem unvorhergesehenen Systemvorfall (wie einem Stromausfall oder Systemabsturz) müssen nur die Inhalte des Journals verarbeitet werden, bevor das Dateisystem verfügbar gemacht wird; in den meisten Fällen dauert dies circa eine Sekunde.

Da das Datenformat von ext3 auf ext2 basiert, ist es möglich, auf ein ext3-System von jedem System aus zuzugreifen, das ein ext2-System lesen bzw. schreiben kann (ohne Journaling). Dies kann ein großer Vorteil für Unternehmen sein, in denen einige Systeme ext3 und andere wiederum ext2 verwenden.

5.9.2.3. ISO 9660

In 1987 gab die "International Organization for Standardization" (bekannt als ISO) die Norm 9660 heraus. ISO 9660 legt fest, wie Dateien auf CD-ROMs dargestellt werden. Red Hat Enterprise Linux Systemadministratoren sehen höchstwahrscheinlich ISO 9660 formatierte Daten wahrscheinlich an zwei Orten:

  • CD-ROMs

  • Dateien (häufig als ISO-Images bezeichnet), die vollständige ISO 9660-Dateisysteme enthalten, die auf CD-R oder CD-RW geschrieben werden sollen

Der grundlegende ISO 9660-Standard ist in seiner Funktionalität eher begrenzt, insbesondere im Vergleich zu moderneren Dateisystemen. Dateinamen dürfen maximal 8 Zeichen lang sein und eine Erweiterung von nicht mehr als drei Zeichen haben. Es wurden jedoch verschiedene Erweiterungen zu diesem Standard in den letzten Jahren immer beliebter, unter anderem:

  • Rock Ridge — Verwendet einige Felder, die nicht in ISO 9660 definiert sind, um Support für Features wie lange, gemischte Dateinamen, symbolische Links und vernestete Verzeichnisse (mit anderen Worten Verzeichnisse, die wiederum andere Verzeichnisse enthalten) bieten

  • Joliet — Eine Erweiterung der ISO 9660-Norm, entwickelt von Microsoft um CD-ROMs ermöglichen zu können, lange Dateinamen mit Hilfe des Unicode-Zeichensatzes zu verwenden

Red Hat Enterprise Linux kann ISO 9660-Dateisysteme, die Rock Ridge und Joliet verwenden, korrekt interpretieren.

5.9.2.4. MSDOS

Red Hat Enterprise Linux unterstützt auch Dateisysteme anderer Betriebssysteme. Wie der Name des msdos-Dateisystems impliziert, war das ursprüngliche Betriebssystem, das diese Dateisystem unterstützt, Microsofts MS-DOS®. Wie in MS-DOS ist ein Red Hat Enterprise Linux-System, das auf ein msdos-Dateisystem zugreift, auf 8.3 Dateinamen beschränkt. Andere Dateiattribute wie Berechtigungen und Besitzer können nicht geändert werden. Vom Standpunkt des Dateiaustausches reicht jedoch das msdos-Dateisystem aus, um die Arbeit zu erledigen.

5.9.2.5. VFAT

Das vfat-Dateisystem wurde zuerst von Microsoft Betriebssystem Windows® 95 verwendet. Als eine Verbesserung des msdos-Dateisystems können Dateinamen auf vfat länger sein als die 8.3 von msdos. Berechtigungen sowie Besitzer können jedoch weiterhin nicht geändert werden.

5.9.3. Dateisysteme mounten

Um auf ein Dateisystem zuzugreifen, muss dies erst gemountet werden. In dem Sie ein Dateisystem mounten, weisen Sie Red Hat Enterprise Linux an, eine bestimmte Partition (auf einem bestimmten Gerät) dem System zur Verfügung zu stellen. Wird der Zugriff zu diesem Dateisystem nicht länger benötigt, müssen Sie dieses unmounten.

Um ein Dateisystem zu mounten, müssen zwei Informationen gegeben werden:

Im folgenden Abschnitt werden Mount-Punkte weitergehend beschrieben.

5.9.3.1. Mount-Punkte

Wenn Sie noch nicht mit Linux (oder Linux-ähnlichen) Betriebssystemen vertraut sind, erscheint das Konzept der Mount-Punkte eventuell ungewöhnlich. Es ist jedoch eine der leistungsstärksten und flexibelsten Methoden für das Verwalten von Dateisystemen. Bei vielen anderen Betriebssystemen enthält eine vollständige Dateispezifikation den Dateinamen, eine Methode zur genauen Angabe des bestimmten Verzeichnisses in dem sich die Datei befindet und eine Methode zur Identifikation des Geräts auf dem die Datei gefunden werden kann.

Red Hat Enterprise Linux verwendet einen leicht abgeänderten Ansatz. Wie bei anderen Betriebssystemen auch beinhaltet eine vollständige Spezifikation den Dateinamen und das Verzeichnis, in welchem sich die Datei befindet. Es gibt jedoch keine eindeutige Geräteangabe.

Der Grund hierfür ist der Mount-Punkt. Auf anderen Betriebssystemen gibt es eine Verzeichnishierarchie für jede Partition. Bei Linux-ähnlichen Systemen gibt es jedoch nur eine systemweite Verzeichnishierarchie, die mehrere Partitionen umfassen kann. Der Schlüssel hierzu ist der Mount-Punkt. Wenn ein Dateisystem gemounted ist, wird das Dateisystem als Satz an Unterverzeichnissen unter dem bestimmten Mount-Punkt zur Verfügung gestellt.

Dieser anscheinende Nachteil ist in Wirklichkeit seine Stärke. Es bedeutet, dass eine nahtlose Erweiterung eines Linux-Dateisystems möglich ist, bei der jedes Verzeichnis als Mount-Punkt für zusätzlichen Festplattenplatz agiert.

Nehmen wir beispielsweise an, dass ein Red Hat Enterprise Linux-System ein Verzeichnis foo in seinem Root-Verzeichnis enthält; der vollständige Pfad zu diesem Verzeichnis wäre dann /foo/. Nehmen wir als nächstes an, dass dieses System eine Partition besitzt, die gemountet werden soll, und das der Mount-Punkt dieser Partition /foo/ sein soll. Besitzt diese Partition eine Datei mit dem Namen bar.txt im obersten Verzeichnis, können Sie mit der folgenden vollständigen Dateiangabe auf die Datei zugreifen, nach dem die Partition gemountet wurde:

/foo/bar.txt

Mit anderen Worten, wenn die Partition gemountet wurde, kann jede Datei, die irgendwo im Verzeichnis /foo/ gelesen oder geschrieben werden kann, von dieser Partition gelesen oder geschrieben werden.

Ein häufig-verwendeter Mount-Punkt auf vielen Red Hat Enterprise Linux-Systemen ist /home/ — aus dem Grund, dass sich die Anmeldeverzeichnisse für alle Benutzeraccounts normalerweise unter /home/ befinden. Wenn /home/ als Mount-Punkt verwendet wird, werden alle Benutzerdateien auf eine bestimmte Partition geschrieben und füllen nicht das Dateisystem des Betriebssystems.

TippTipp
 

Da ein Mount-Punkt nur ein normales Verzeichnis ist, können Dateien in ein Verzeichnis geschrieben werden, das später als Mount-Punkt verwendet werden soll. Was passiert in diesem Fall mit den Dateien, die sich ursprünglich in diesem Verzeichnis befanden?

Solange die Partition auf diesem Verzeichnis gemountet ist, sind die Dateien nicht zugreifbar (das gemountete Dateisystem erscheint anstelle der Verzeichnisinhalte). Die Dateien werden jedoch nicht beschädigt und könnten nach dem Unmounten der Partition wieder verwendet werden.

5.9.3.2. Anzeigen, was gemountet ist

Zusätzlich zum Mounten und Unmounten von Festplattenplatz können Sie sich anzeigen lassen, was gemountet ist. Es gibt hierfür verschiedene Methoden:

  • /etc/mtab ansehen

  • /proc/mounts ansehen

  • Den Befehl df eingeben

5.9.3.2.1. /etc/mtab ansehen

Die Datei /etc/mtab ist eine normale Datei, die vom mount-Programm aktualisiert wird, wenn Dateisysteme gemountet oder unmountet werden. Hier ein Beispiel für /etc/mtab:

/dev/sda3 / ext3 rw 0 0
none /proc proc rw 0 0
usbdevfs /proc/bus/usb usbdevfs rw 0 0
/dev/sda1 /boot ext3 rw 0 0
none /dev/pts devpts rw,gid=5,mode=620 0 0
/dev/sda4 /home ext3 rw 0 0
none /dev/shm tmpfs rw 0 0
none /proc/sys/fs/binfmt_misc binfmt_misc rw 0 0

AnmerkungAnmerkung
 

Die Datei /etc/mtab ist nur für das Anzeigen des Status zur Zeit gemounteter Dateisysteme gedacht. Sie sollte nicht manuell geändert werden.

Jede Zeile steht für ein Dateisystem, das zur Zeit gemountet ist, und enthält die folgenden Felder (von links nach rechts):

  • Gerätespezifikation

  • Mount-Punkt

  • Dateisystemtyp

  • Ob das Dateisystem als nur-lesbar (ro) oder lese-/schreibbar (rw) gemountet ist, zusammen mit weiteren Mount-Optionen

  • Zwei ungenutzte Felder mit Nullen (für Kompatibilität mit /etc/fstab[1])

5.9.3.2.2. /proc/mounts ansehen

Die Datei /proc/mounts ist Teil des Proc-Virtuellen Dateisystems. Wie bei anderen Dateien unter /proc/ existiert die mounts "Datei" auf keiner Festplatte auf Ihrem Red Hat Enterprise Linux-System.

Dies ist eigentlich auch gar keine Datei, sondern eine Repräsentation des Systemstatus, der in Datei-Form (vom Linux-Kernel) zur Verfügung gestellt wird.

Mit dem Befehl cat /proc/mounts können wir den Status aller gemounteten Dateisysteme betrachten:

rootfs / rootfs rw 0 0
/dev/root / ext3 rw 0 0
/proc /proc proc rw 0 0
usbdevfs /proc/bus/usb usbdevfs rw 0 0
/dev/sda1 /boot ext3 rw 0 0
none /dev/pts devpts rw 0 0
/dev/sda4 /home ext3 rw 0 0
none /dev/shm tmpfs rw 0 0
none /proc/sys/fs/binfmt_misc binfmt_misc rw 0 0

Wie Sie im obigen Beispiel sehen können, ist das Format von /proc/mounts ähnlich dem des /etc/mtab. Es sind eine Reihe von Dateisystemen gemountet, die nichts mit den Festplatten zu tun haben. Unter diesen befinden sich die Dateisysteme /proc/ (zusammen mit zwei anderen Dateisystemen, die unter /proc/ gemountet sind), pseudo-ttys und Shared-Memory.

Während das Format zugegebenerweise nicht sehr benutzerfreundlich ist, ist das Anzeigen von /proc/mounts der beste Weg, 100% sicherzustellen, das alles, was auf Ihrem Red Hat Enterprise Linux-System gemountet ist angezeigt wird, da diese Informationen vom Kernel bereitgestellt werden. Andere Methoden können unter seltenen Umständen ungenau sein.

Meistens werden Sie jedoch einen Befehl verwenden, der ein leichter lesbares (und daher nützlicheres) Output liefert. Im nächsten Abschnitt wird dieser Befehl beschrieben.

5.9.3.2.3. Den Befehl df eingeben

Während das Verwenden von /etc/mtab oder /proc/mounts Ihnen anzeigt, welche Dateisystemen zur Zeit gemountet sind, tut es darüberhinaus wenig. Meistens sind Sie eher an bestimmten Aspekten eines Dateisystems, das gerade gemountet ist, interessiert — dem freien Speicherplatz auf diesem.

Hierfür können wir den Befehl df verwenden. Hier eine Beispielausgabe von df:

Filesystem           1k-blocks      Used Available Use% Mounted on
/dev/sda3              8428196   4280980   3719084  54% /
/dev/sda1               124427     18815     99188  16% /boot
/dev/sda4              8428196   4094232   3905832  52% /home
none                    644600         0    644600   0% /dev/shm

Es sind einige Unterschiede zwischen /etc/mtab und /proc/mount erkennbar:

  • Ein leicht lesbarer Header wird angezeigt

  • Mit der Ausnahme des Shared-Speichersystems werden nur Festplatten-basierte Dateisysteme angezeigt

  • Gesamtgröße, belegter Speicherplatz, freier Speicherplatz und prozentuelle Nutzungszahlen werden angezeigt

Der letzte Punkt ist der wahrscheinlich Wichtigste, da jeder Systemadministrator irgendwann mit einem System zu tun hat, das keinen freien Festplattenplatz mehr hat. Mit df können Sie leicht erkennen, wo genau das Problem liegt.

5.9.4. Netzwerk-zugänglicher Speicher unter Red Hat Enterprise Linux

Es gibt zwei Haupttechnologien für das Implementieren von netzwerk-zugänglichem Speicher unter Red Hat Enterprise Linux:

Die folgenden Abschnitte beschreiben diese Technologien.

5.9.4.1. NFS

Wie der Name besagt, ist das Network File System (NFS; Netzwerk-Dateisystem) ein Dateisystem, auf das über das Netzwerk zugegriffen werden kann. Bei anderen Dateisystemen muss das Speichergerät direkt an das lokale System angeschlossen sein. Bei NFS ist dies jedoch nicht nötig, was eine Vielzahl von Konfigurationen, von zentralisierten Dateisystem-Servern bis zu CD- und Diskettenlosen Computersystemen, ermöglicht.

Im Gegensatz zu anderen Dateisystemen schreibt NFS kein spezifisches Dateiformat vor. Stattdessen verlässt es sich auf den nativen Dateisystemsupport des Server-Betriebssystems, um den eigentlichen I/O auf die lokale Festplatte zu steuern. NFS stellt dann das Dateisystem für alle anderen Betriebssysteme, die einen kompatiblen NFS-Client verwenden, zur Verfügung.

Während dies hauptsächlich eine Linux und UNIX-Technologie ist, ist es erwähnenswert, dass NFS Client Implementierungen auch für andere Betriebssysteme erhältlich sind, was NFS zu einer guten Methode zum Verwenden von Dateien über eine Anzahl verschiedener Plattformen macht.

Das Dateisystem, das ein NFS-Server seinen Clients zur Verfügung stellt, wird durch die Konfigurationsdatei /etc/exports gesteuert. Weitere Informationen finden Sie auf den man-Seiten zu exports(5) und im Red Hat Enterprise Linux Handbuch zur System-Administration.

5.9.4.2. SMB

SMB steht für Server Message Block (Server-Nachrichten-Block) und ist der Name für das Kommunikationsprotokoll, das von verschiedenen, von Microsoft hergestellten Betriebssystemen verwendet wird. SMB ermöglicht es, Speicher über das Netzwerk gemeinsam zu verwenden. Moderne Implementierungen verwenden häufig TCP/IP als zugrundeliegenden Transport; vorher war dies NetBEUI.

Red Hat Enterprise Linux unterstützt SMB über das Samba Serverprogramm. Das Red Hat Enterprise Linux Handbuch zur System-Administration enthält Informationen zur Konfiguration von Samba.

5.9.5. Dateisysteme automatisch mit /etc/fstab mounten

Wenn ein Red Hat Enterprise Linux-System neu installiert wird und dabei alle Festplattenpartitionen erstellt oder definiert wurden, so werden diese dahingehend konfiguriert, dass diese automatisch gemountet werden, wenn das System bootet. Was passiert jedoch, wenn Festplatten hinzugefügt werden, nachdem die Installation abgeschlossen ist? Die Antwort ist "nichts", da das System nicht konfiguriert wurde, diese automatisch zu mounten. Dies kann jedoch leicht geändert werden.

Die Antwort liegt in der /etc/fstab-Datei. Diese Datei wird zur Kontrolle, welche Dateisysteme gemountet sind wenn das System bootet, verwendet sowie für das Bereitstellen von Standardwerten für andere Dateisysteme, die eventuell manuell gemountet werden. Hier ein Beispiel für /etc/fstab:

LABEL=/              /                    ext3    defaults        1 1
/dev/sda1            /boot                ext3    defaults        1 2
/dev/cdrom           /mnt/cdrom           iso9660 noauto,owner,kudzu,ro 0 0
/dev/homedisk        /home                ext3    defaults        1 2
/dev/sda2            swap                 swap    defaults        0 0

Jede Zeile repräsentiert ein Dateisystem und enthält die folgenden Felder:

5.9.6. Speicher hinzufügen/löschen

Während die meisten dieser Schritte, die für das Hinzufügen oder Entfernen von Speicher nötig sind, eher von der Systemhardware als der Systemsoftware abhängen, gibt es dennoch Aspekte dieser Vorgänge, die für die jeweilige Betriebsumgebung spezifisch sind. In diesem Abschnitt werden die Schritte für das Hinzufügen und Entfernen von Speicher behandelt, die auf Red Hat Enterprise Linux zugeschnitten sind.

5.9.6.1. Speicher hinzufügen

Das Hinzufügen von Speicher zu einem Red Hat Enterprise Linux-System ist relativ einfach. Hier die Schritte, die für Red Hat Enterprise Linux spezifisch sind:

  • Partitionieren

  • Partitionen formatieren

  • /etc/fstab aktualisieren

Die folgenden Abschnitte erklären jeden Schritt im Detail.

5.9.6.1.1. Partitionieren

Sobald die Festplatte installiert wurde, ist es nötig, eine oder mehr Partitionen zu erstellen, um den Speicherplatz für Red Hat Enterprise Linux zur Verfügung zu stellen.

Es gibt hierfür mehr als einen Weg:

  • Mit dem Befehlszeilen-basierten fdisk Utility-Programm

  • Mittels parted, ein weiteres Befehlszeilen-basiertes Utility-Programm

Auch wenn sich die Tools unterscheiden, sind die grundlegenden Schritte die gleichen. Das folgende Beispiel enthält die Befehle, die für das Ausführen der Schritte mit fdisk nötig sind:

  1. Wählen Sie die neue Festplatte (der name der Festplatte kann durch die Namenskonventionen wie in Abschnitt 5.9.1 beschrieben herausgefunden werden). Mit fdisk geschieht dies, indem Sie den Gerätenamen angeben, wenn Sie fdisk starten:

    fdisk /dev/hda
                    
  2. Sehen Sie sich die Partitionstabelle der Festplatte an, um sicherzustellen, dass das zu partitionierende Gerät auch wirklich das Richtige ist. In unserem Beispiel zeigt fdisk die Partitionstabelle mittelsdem Befehl p an:

    Command (m for help): p
    
    Disk /dev/hda: 255 heads, 63 sectors, 1244 cylinders
    Units = cylinders of 16065 * 512 bytes
    
       Device Boot    Start       End    Blocks   Id  System
    /dev/hda1   *         1        17    136521   83  Linux
    /dev/hda2            18        83    530145   82  Linux swap
    /dev/hda3            84       475   3148740   83  Linux
    /dev/hda4           476      1244   6176992+  83  Linux
                    
  3. Löschen Sie alle unerwünschten Partitionen, die eventuell bereits auf der neuen Festplatte vorhanden sind. Verwenden Sie hierfür den Befehl d infdisk:

    Command (m for help): d
    Partition number (1-4): 1

    Dieser Vorgang muss für alle nicht benötigten Partitionen auf der Festplatte wiederholt werden.

  4. Erstellen Sie die neue Partition, geben Sie die gewünschte Größe und den Dateisystemtyp an. Mit fdisk umfasst dies zwei Schritte — Erstens das Erstellen der Partition (mit dem Befehl n):

    Command (m for help): n
    Command action
       e   extended
       p   primary partition (1-4)
    
    p 
    
    Partition number (1-4): 1
    First cylinder (1-767): 1
    Last cylinder or +size or +sizeM or +sizeK: +512M 
                    

    Zweitens das Einstellen des Dateisystemtyps (mit dem Befehl t):

    Command (m for help): t
    Partition number (1-4): 1
    Hex code (type L to list codes): 82
                    

    Partitionstyp 82 stellt eine Linux Swap-Partition dar.

  5. Speichern Sie Ihre Änderungen und verlassen Sie das Partitionierungs-Programm. Unter fdisk geschieht dies mit dem Befehl w:

    Command (m for help): w
                    

WarnungAchtung
 

Bei der Partitionierung einer neuen Festplatte ist es wichtig, dass Sie sicher sind, das Sie die richtige Festplatte partitionieren. Ansonsten laufen Sie Gefahr, eine Festplatte zu partitionieren, die bereits verwendet wird, was in Datenverlust endet.

Stellen Sie auch sicher, dass Sie die beste Partitionsgröße gewählt haben. Überlegen Sie sich dies gut, denn ein nachträgliches Ändern ist wesentlich schwieriger als sich jetzt ein bisschen Zeit zu nehmen um dies zu durchdenken.

5.9.6.1.2. Partitionen formatieren

Das Formatieren von Partitionen unter Red Hat Enterprise Linux geschieht mit dem mkfs Utility-Programm. mkfs schreibt jedoch nicht die eigentlichen Dateisystem-spezifischen Informationen auf die Festplatte, sondern gibt die Kontrolle an eines von mehreren anderen Programmen weiter, die dann das Dateisystem erstellen.

Lesen Sie nun die mkfs.<fstype> man-Seite für das von Ihnen gewählte Dateisystem. Betrachten Sie zum Beispiel die mkfs.ext3 man-Seite für die Optionen beim Erstellen eines neuen ext3-Dateisystems. Im Allgemeinen bietet das mkfs.<fstype>-Programm gute Standardwerte für die meisten Konfigurationen. Es gibt jedoch Optionen, die häufig von Systemadministratoren geändert werden:

  • Das Einstellen eines Volumen-Labels für spätere Verwendung in /etc/fstab

  • Das Einstellen eines geringeren Prozentsatzes an reserviertem Speicherplatz für den Super-User auf sehr großen Festplatten

  • Das Einstellen einer nicht-standardmäßigen Blockgröße und/oder Bytes pro Inode für Konfigurationen, die entweder sehr große oder sehr kleine Dateien unterstützen müssen

  • Das Prüfen auf defekte Blöcke vor dem Formatieren

Wenn die Dateisysteme für alle jeweiligen Partitionen erstellt wurden, ist die Festplatte richtig für den Einsatz konfiguriert.

Als nächstes sollten Sie grundsätzlich nocheinmal Ihre Arbeit prüfen, indem Sie die Partitionen manuell mounten und sicherstellen, dass alles funktioniert. Ist alles in Ordnung, können Sie nun Ihr Red Hat Enterprise Linux-System so konfigurieren, dass die neuen Dateisysteme automatisch gemountet werden , wenn das System bootet.

5.9.6.1.3. /etc/fstab aktualisieren

Wie unter Abschnitt 5.9.5 beschrieben, müssen Sie die nötigen Zeilen zu /etc/fstab hinzufügen, im sicherzustellen, dass die neuen Dateisysteme beim Booten des Systems gemountet werden. Sobald Sie /etc/fstab aktualisiert haben, testen Sie dies, in dem Sie einen "unvollständigen" mount ausführen, bei dem Sie nur das Gerät oder Mount-Punkt angeben. Einer der folgenden Befehle reicht aus:

mount /home
mount /dev/hda3

(Ersetzen Sie /home oder /dev/hda3 mit dem Mount-Punkt oder Gerät für Ihre Situation.)

Ist der jeweilige /etc/fstab-Eintrag richtig, findet mount die fehlenden Informationen und schließt den Mount-Vorgang ab.

Sie können jetzt ziemlich sicher sein, dass /etc/fstab richtig konfiguriert ist, um den neuen Speicher beim Booten des Systems zu mounten (wenn Sie Zeit für einen schnellen Neustart haben, ist dies sicher nicht verkehrt — nur um sicher zu gehen).

5.9.6.2. Speicher entfernen

Das Entfernen von Speicher von einem Red Hat Enterprise Linux-System ist relativ einfach. Hier die Schritte spezifisch für Red Hat Enterprise Linux:

  • Entfernen Sie die Festplatten-Partitionen von /etc/fstab

  • Unmounten Sie die aktiven Partitionen der Festplatte

  • Löschen Sie den Inhalt der Festplatte

Die folgenden Abschnitte beschreiben diesen Vorgang näher.

5.9.6.2.1. Entfernen Sie die Partitionen von /etc/fstab

Entfernen Sie in einem Texteditor Ihrer Wahl die Zeilen für die Festplattenpartitionen in der Datei /etc/fstab. Sie finden die richtigen Zeilen mit einer der folgenden Methoden:

  • Vergleichen Sie den Mount-Punkt der Partition mit dem Verzeichnis in der zweiten Spalte von /etc/fstab

  • Vergleichen Sie den Gerätedateinamen mit den Dateinamen in der ersten Spalte von /etc/fstab

TippTipp
 

Suchen Sie alle Zeilen in /etc/fstab, die Swap-Partitionen auf der zu entfernenden Festplatte angeben; diese können leicht übersehen werden.

5.9.6.2.2. Zugriff mit umount beenden

Beenden Sie jeglichen Zugriff zu der Festplatte. Für Partitionen mit aktiven Dateisystemen verwenden Sie den Befehl umount. Gibt es auf der Festplatte eine Swap-Partition, muss diese entweder mit dem Befehl swapoff deaktiviert oder das System neu gebootet werden.

Das Unmounten der Partitionen mit dem Befehl umount erfordert, dass Sie entweder den Gerätedateinamen oder den Mount-Punkt der Partition angeben:

umount /dev/hda2
umount /home
            

Eine Partition kann nur ungemountet werden, wenn diese zur Zeit nicht verwendet wird. Kann die Partition im normalen Runlevel nicht ungemountet werden, booten Sie in den Rettungsmodus und entfernen Sie den Eintrag für die Partition in der /etc/fstab-Datei.

Wenn Sie swapoff für das Deaktivieren des Swapping zu einer Partition verwenden, müssen Sie den Gerätedateinamen, der die Swap-Partition darstellt, angeben:

swapoff /dev/hda4
            

Kann das Swapping zu einer Partition über swapoff nicht deaktiviert werden, booten Sie in den Rettungsmodus und entfernen Sie den Eintrag in /etc/fstab.

5.9.6.2.3. Inhalte der Festplatte löschen

Das Löschen des Festplatteninhalts unter Red Hat Enterprise Linux ist einfach.

Nachdem Sie alle Partitionen der Festplatte ungemountet haben, geben Sie als root den folgenden Befehl ein:

badblocks -ws <device-name>

<device-name> steht für den Dateinamen der Festplatte, die Sie löschen möchten, exklusive der Partitionsnummer. Zum Beispiel /dev/hdb für die zweite ATA-Festplatte.

Die folgende Ausgabe wird angezeigt, während badblocks läuft:

Writing pattern 0xaaaaaaaa: done                        
Reading and comparing: done                        
Writing pattern 0x55555555: done                        
Reading and comparing: done                        
Writing pattern 0xffffffff: done                        
Reading and comparing: done                        
Writing pattern 0x00000000: done                        
Reading and comparing: done                        

Denken Sie daran, dass badblocks vier verschiedene Datenmuster auf jeden Block auf der Festplatte schreibt. Bei großen Festplatten kann dies dauern — häufig mehrere Stunden.

WichtigWichtig
 

Viele Unternehmen (und Behörden) haben spezielle Methoden für das Löschen von Daten auf Festplatten und anderen Speichermedien. Sie sollten immer sicherstellen, dass Sie diese Anforderungen verstehen und diese befolgen. In vielen Fällen gibt es rechtliche Auswirkungen, wenn Sie dies nicht tun. Das obige Beispiel sollten keinesfalls als die einzige Methode zum Löschen einer Festplatte betrachtet werden.

Es ist jedoch wesentlich effektiver als der rm-Befehl. Beim Löschen einer Datei mit dem rm-Befehl wird die Datei als gelöscht markiert — der Inhalt der Datei wird jedoch nicht gelöscht.

5.9.7. Festplattenquoten implementieren

Red Hat Enterprise Linux kann durch den Einsatz von Festplattenquoten die Verwendung von Festplattenplatz auf Benutzer- und Gruppen-Basis prüfen. Der folgende Abschnitt bietet einen Überblick über die Festplattenquoten-Funktionen unter Red Hat Enterprise Linux.

5.9.7.1. Hintergrund zu Festplattenquoten

Festplattenquoten unter Red Hat Enterprise Linux haben die folgenden Eigenschaften:

  • Pro-Dateisystem Implementierung

  • Haushaltung des verfügbaren Speicherplatzes pro Benutzer

  • Haushaltung des verfügbaren Speicherplatzes pro Gruppe

  • Blocknutzung der Festplatte aufzeichnen

  • Inode-Nutzung der Festplatte aufzeichnen

  • Feste Grenzen

  • Weiche Grenzen

  • Gnadenfristen

Die folgenden Abschnitte beschrieben jede dieser Eigenschaften näher.

5.9.7.1.1. Pro-Dateisystem Implementierung

Festplattenquoten unter Red Hat Enterprise Linux können auf einer Pro-Dateisystem-Basis eingesetzt werden. In anderen Worten können Festplattenquoten individuell für jedes einzelen Dateisystem aktiviert oder deaktiviert werden.

Dies bietet dem Systemadministrator sehr viel Flexibilität. Wenn sich zum Beispiel das /home/-Verzeichnis auf einem eigenen Dateisystem befindet, können hier Festplattenquoten aktiviert werden, was eine gleichmäßige Verwendung des Platzes von allen Benutzern ermöglicht. Das root-Dateisystem könnte jedoch ohne Festplattenquoten belassen werden, was die Komplexität der Wartung von Quoten auf einem Dateisystem, auf dem sich nur das Betriebssystem befindet, eliminiert.

5.9.7.1.2. Haushaltung des verfügbaren Speicherplatzes pro Benutzer

Festplattenquoten können die Haushaltung verfügbaren Speicherplatzes auf einer Pro-Benutzer-Basis regeln. Dies bedeutet, dass die Verwendung des Platzes pro Benutzer individuell verwaltet wird. Dies bedeutet auch, dass jegliche Einschränkungen (die in späteren Abschnitten beschrieben werden) auch auf Benutzer-Basis verwaltet werden.

Die Flexibilität des Verfolgens und Erzwingens von Festplattenverwendung pro Benutzer ermöglicht es Systemadministratoren, verschiedene Grenzen für individuelle Benutzer, gemäß deren Verantwortung und Speicherbedarf, zu vergeben.

5.9.7.1.3. Haushaltung des verfügbaren Speicherplatzes pro Gruppe

Festplattenquoten können die Festplattenverwendung auch auf Gruppen-Basis verfolgen. Dies ist ideal für Unternehmen, die Gruppen als Kombination verschiedener Benutzer für eine einzige, projektweite Ressource einsetzen.

Indem Gruppen-weite Festplattenquoten festgelegt werden, können Administratoren die Speicherverwendung genau verwalten, indem einzelnen Benutzern nur die Quote für deren persönliche Verwendung zugewiesen wird, während größere Quoten, die für Multi-Benutzer-Projekte geeigneter sind, gesetzt werden können. Dies ist ein großer Vorteil für Unternehmen, die einen "Chargeback"-Mechanismus verwenden, bei dem die Datenzentrum-Kosten den Abteilungen und Teams auf Basis der Verwendung von Ressourcen zugeteilt werden.

5.9.7.1.4. Blocknutzung der Festplatte aufzeichnen

Festplattenquoten dienen zum Nachverfolgen der Verwendung von Festplattenblöcken. Da alle Daten auf einem Dateisystem in Blöcken gespeichert werden, können Festplattenquoten die erstellten und gelöschten Dateien auf einem Dateisystem in direktem Bezug setzen mit der Größe des Speichers, den die Dateien in Anspruch nehmen.

5.9.7.1.5. Inode-Nutzung der Festplatte aufzeichnen

Zusätzlich dazu können Festplattenquoten auch die Inode-Verwendung verfolgen. Unter Red Hat Enterprise Linux speichern Inodes verschiedene Teile des Dateisystems. Am wichtigsten ist jedoch die Tatsache, dass Inodes die Informationen für jede Datei halten. Durch das Verfolgen (und Steuern) der Inode-Verwendung ist es möglich, die Erstellung neuer Dateien zu kontrollieren.

5.9.7.1.6. "Harte" Grenzen

Eine harte Grenze ist die maximale Anzahl an Festplattenblöcken (oder Inodes), die temporär von einem Benutzer (oder einer Gruppe) verwendet werden kann. Jeglicher Versuch, auch nur einen Block über der harten Grenze zu verwenden, schlägt fehl.

5.9.7.1.7. "Weiche" Grenzen

Eine weiche Grenze ist die maximale Anzahl von Festplattenblöcken, die von einem Benutzer (oder Gruppe) permanent verwendet werden kann.

Die weiche Grenze liegt unter der harten Grenze, Dies ermöglicht Benutzern, deren weiche Grenze temporär zu überschreiten, was diesen ermöglicht, deren Arbeit fertigzustellen und deren Dateien durchzusehen und die Verwendung wieder unterhalb der weichen Grenze zu bringen.

5.9.7.1.8. Gnadenfristen

Wie schon erwähnt ist die Festplattenverwendung überhalb der weichen Grenze temporär. Es ist die Gnadenfrist, die festlegt, wie lange ein Benutzer (oder eine Gruppe) die Verwendung von Speicher überhalb der weichen Grenze bis hin zur harten Grenze fortsetzen kann.

Verwendet ein Benutzer dauerhaft mehr Speicher, als durch die weiche Grenze festgelegt und die Gnadenfrist läuft ab, wird solange kein weiterer Speicher zur Verfügung gestellt, bis der Benutzer (oder Gruppe) dessen/deren Verwendung auf ein Maß unterhalb der weichen Grenze reduziert hat.

Die Gnadenfrist kann in Sekunden, Minuten, Stunden, Tagen, Wochen oder Monaten ausgesprochen werden, was dem Systemadministrator eine gewisse Freiheit in der Festlegung der der Zeiträume gibt.

5.9.7.2. Festplattenquoten aktivieren

AnmerkungAnmerkung
 

Im folgenden Abschnitt werden die nötigen Schritte für das Aktivieren von Festplattenquoten unter Red Hat Enterprise Linux kurz beschrieben. Eine tiefergehende Beschreibung dieses Themas finden Sie im Kapitel über Festplattenquoten im Red Hat Enterprise Linux Handbuch zur System-Administration.

Um Festplattenquoten nutzen zu können, müssen Sie diese aktivieren. Dies umfasst mehrere Schritte:

  1. /etc/fstab ändern

  2. Dateisysteme erneut mounten

  3. quotacheck ausführen

  4. Quoten zuweisen

Die Datei /etc/fstab kontrolliert das Mounten von Dateisystemen unter Red Hat Enterprise Linux. Da Festplattenquoten auf einer Pro-Dateisystem-Basis vergeben werden, gibt es zwei Optionen — usrquota und grpquota — die zu der Datei hinzugefügt werden müssen, um Festplatten zu aktivieren.

Die Option usrquota aktiviert Benutzer-basierte Festplattenquoten, während grpquota Gruppen-basierte Quoten aktiviert. Es können eine oder beide dieser Optionen aktiviert werden, indem diese in das Optionsfeld für das gewünschte Dateisystem eingetragen werden.

Die betroffenen Dateisysteme müssen dann ungemountet und neu gemountet werden, damit die Festplatten-bezogenen Optionen wirksam werden.

Als nächstes wird der Befehl quotacheck verwendet, um die Festplattenquotendateien zu erstellen und die aktuellen Verwendungsdaten von bereits bestehenden Dateien zu sammeln. Die Festplattenquotendateien (aquota.user und aquota.group für Benutzer- und Gruppen-basierte Quoten) enthalten die nötigen Quoten-bezogenen Informationen und befinden sich im root-Verzeichnis des Systems.

Um Festplattenquoten zuzuweisen, verwenden Sie den Befehl edquota.

Dieses Utility-Programm verwendet einen Texteditor für das Anzeigen der Quoteninformationen für den Benutzer oder die Gruppe als Teil des edquota Befehls. Hier ein Beispiel:

 Disk quotas for user matt (uid 500):
  Filesystem      blocks       soft       hard     inodes     soft     hard
  /dev/md3       6618000          0          0      17397        0        0

Dies zeigt, dass der Benutzer "matt" über 6 GB Festplattenplatz und mehr als 17 000 Inodes verwendet. Es wurde bisher keine Quote (weich oder hart) für Festplattenblöcke oder Inodes gesetzt, was bedeutet, dass es keine Grenze für den Festplattenplatz und Inodes, die dieser Benutzer verwenden kann, gibt.

Mit dem Texteditor, der die Festplattenquoten-Informationen anzeigt, kann der Systemadministrator nun die weichen und harten Grenzen nach Belieben einstellen:

Disk quotas for user matt (uid 500):
  Filesystem      blocks       soft       hard     inodes     soft     hard
  /dev/md3       6618000    6900000    7000000      17397        0        0

In diesem Beispiel wurde dem Benutzer "matt" eine weiche Grenze von 6,9 GB und eine harte Grenze von 7 GB zugewiesen. Es wurden keine weichen oder harten Grenzen für die Inodes gesetzt.

TippTipp
 

Das edquota-Programm kann auch zum Einstellen der pro-Datei Gnadenfrist mittels der Option -t genutzt werden.

5.9.7.3. Festplattenquoten verwalten

Es bedarf nur wenig Verwaltung für die Unterstützung von Festplattenquoten unter Red Hat Enterprise Linux. Im Grunde ist alles, was benötigt wird:

  • Das Generieren von Verwendungsberichten in regelmäßigen Abständen (und die Absprache mit Benutzern, die anscheinend Probleme haben, den ihnen zugewiesenen Festplattenplatz zu verwalten)

  • Das Sicherstellen, dass die Festplattenquoten genau bleiben

Das Erstellen eines Verwendungsberichts erfordert das Ausführen des Utility-Programms repquota. Der Befehl repquota /home produziert folgende Ausgabe:

*** Report for user quotas on device /dev/md3
Block grace time: 7days; Inode grace time: 7days
                        Block limits                File limits
User            used    soft    hard  grace    used  soft  hard  grace
----------------------------------------------------------------------
root      --   32836       0       0              4     0     0       
matt      -- 6618000 6900000 7000000          17397     0     0       

Weitere Informationen zu repquota finden Sie im Red Hat Enterprise Linux Handbuch zur System-Administration im Kapitel zu den Festplattenquoten.

Wenn ein Dateisystem nicht ordnungsgemäß ungemountet wird (z.B. durch einen Systemabsturz), ist es notwendig, quotacheck auszuführen. Viele Systemadministratoren empfehlen jedoch das Ausführen von quotacheck auf regelmäßiger Basis, auch wenn das System nicht abgestürzt ist.

Dieser Vorgang ist ähnlich der anfänglichen Verwendung von quotacheck, wenn Festplattenquoten aktiviert werden.

Hier ein Beispielbefehl für quotacheck:

quotacheck -avug

Am einfachsten wird quotacheck auf regelmäßiger Basis mitcron ausgeführt. Die meisten Systemadministratoren führen quotacheck einmal pro Woche aus. Sie können jedoch auch ganz nach Bedarf und entsprechend den Umständen längere oder kürzere Intervalle auswählen.

5.9.8. RAID-Arrays erstellen

Zusätzlich zur Unterstützung von Hardware-RAID-Lösungen unterstützt Red Hat Enterprise Linux Software RAID. Ein Software-RAID kann auf zwei Arten erstellt werden:

Die folgenden Abschnitte stellen diese beiden Methoden vor.

5.9.8.1. Während der Installation von Red Hat Enterprise Linux

Während des normalen Red Hat Enterprise Linux Installationsvorgangs kann ein RAID-Array erstellt werden. Dies wird während des Festplatten-Partitionierungsphase der Installation ausgeführt.

Sie müssen zuerst Ihre Festplatten manuell mit Disk Druid partitionieren. Sie müssen eine neue Partition des Typs "Software RAID" erstellen. Dann wählen Sie die Festplatten, die Teil des RAID-Arrays sein sollen, aus dem Feld zulässige Festplatten aus. Wählen Sie dann die gewünschte Größe und ob diese Partition eine Primärpartition sein soll.

Wenn Sie alle Partitionen, die für das RAID-Array benötigt werden, erstellt haben, müssen Sie über den Button RAID die eigentlichen Arrays erstellen. Sie erhalten dann ein Dialogfeld, in dem Sie die Mount-Punkte, Dateisystemtypen, RAID-Gerätenamen, und die "Software RAID" Partitionen, auf denen das RAID-Array basiert, festlegen können.

Sobald die gewünschten Arrays erstellt wurden, wird der Installationsprozess wie gewohnt fortgeführt.

TippTipp
 

Weitere Informationen zur Erstellung von Software RAID-Arrays während der Installation von Red Hat Enterprise Linux finden Sie im Red Hat Enterprise Linux Handbuch zur System-Administration.

5.9.8.2. Nach der Installation von Red Hat Enterprise Linux

Das Erstellen eines RAID-Array nachdem Red Hat Enterprise Linux installiert wurde, ist etwas komplexer. Wie beim Hinzufügen von Speicher muss die nötige Hardware erst installiert und richtig konfiguriert werden.

Das Partitionieren ist auch anders für RAID als für einzelne Festplatten. Anstelle einer Partition des Typs "Linux" (Typ 83) oder "Linux swap" (Typ 82) müssen alle Partitionen, die Teil eines RAID-Arrays sind, auf "Linux raid auto" (Typ fd) gesetzt werden.

Als nächstes muss die Datei /etc/raidtab erstellt werden. Diese Datei ist verantwortlich für die richtige Konfiguration aller RAID Arrays auf Ihrem System. Das Dateiformat (das auf der raidtab(5) man-Seite dokumentiert ist) ist relativ einfach. Hier ein Beispieleintrag in /etc/raidtab für ein RAID 1-Array:

raiddev             /dev/md0
raid-level                  1
nr-raid-disks               2
chunk-size                  64k
persistent-superblock       1
nr-spare-disks              0
    device          /dev/hda2
    raid-disk     0
    device          /dev/hdc2
    raid-disk     1

Einige der erwähnenswerteren Abschnitte in diesem Eintrag sind:

  • raiddev — Zeigt den Gerätedateinamen für das RAID-Array[2]

  • raid-level — Definiert den RAID-Level, der von diesem RAID-Array verwendet werden soll

  • nr-raid-disks — Zeigt an, wieviele physikalische Festplattenpartitionen Teil dieses Arrays sein sollen

  • nr-spare-disks — Software-RAID unter Red Hat Enterprise Linux ermöglicht die Definition einer oder mehrerer Ersatz-Partitionen; diese Partitionen können automatisch den Platz einer fehlerhaften Festplatte einnehmen

  • device, raid-disk — Zusammen definieren diese die physikalischen Festplattenpartitionen, aus denen das RAID-Array besteht

Als nächstes müssen Sie das eigentliche RAID-Array erstellen. Dies geschieht mit dem Programm mkraid. In unserem Beispiel /etc/raidtab würden wir das /dev/md0 RAID-Array mit dem folgenden Befehl erstellen:

mkraid /dev/md0

Das RAID-Array /dev/md0 kann jetzt formatiert und gemountet werden. Der Vorgang unterscheidet sich nicht vom Formatieren und Mounten einer einzelnen Festplatte.

5.9.9. Tägliche Verwaltung des RAID-Arrays

Es gibt wenig, was zum Betrieb eines RAID-Arrays notwendig ist. Solange keine Hardware-Probleme auftreten, sollte das Array wie eine einzelne physikalische Festplatte funktionieren. Wie ein Systemadministrator jedoch den Status aller Festplatten im System prüfen sollte, muss auch der Status des RAID-Arrays geprüft werden.

5.9.9.1. Array-Status prüfen mit /proc/mdstat

Die Datei /proc/mdstat bietet die einfachste Methode, den Status aller RAID-Arrays auf einem bestimmten System zu prüfen. Hier ein Beispiel-mdstat (Anzeige über den Befehl cat /proc/mdstat):

Personalities : [raid1] 
read_ahead 1024 sectors
md1 : active raid1 hda3[0] hdc3[1]
      522048 blocks [2/2] [UU]
      
md0 : active raid1 hda2[0] hdc2[1]
      4192896 blocks [2/2] [UU]
      
md2 : active raid1 hda1[0] hdc1[1]
      128384 blocks [2/2] [UU]
      
unused devices: <none>

Auf diesem System befinden sich drei RAID-Arrays (alle RAID 1). Jedes RAID-Array hat seinen eigenen Abschnitt in /proc/mdstat und enthält folgende Informationen:

  • Den RAID-Array-Gerätenamen (nicht im /dev/-Teil enthalten)

  • Der Status des RAID-Arrays

  • Der RAID-Level des RAID-Arrays

  • Die physikalischen Partitionen, aus denen das Array besteht (gefolgt von der Unit-Nummer des Arrays der Partition)

  • Die Größe des Arrays

  • Die Anzahl der konfigurierten Geräte gegen die Anzahl der funktionstüchtigen Geräte im Array

  • Den Status jedes konfigurierten Gerätes im Array (U bedeutet das Gerät ist OK und _ zeigt einen Fehler an)

5.9.9.2. RAID Array mit raidhotadd neu erstellen

Sollte /proc/mdstat anzeigen, dass ein Problem mit einem der RAID-Arrays besteht, sollte das Utility Programm raidhotadd zum Neubau des Arrays verwendet werden. Hier die Schritte, die dann ausgeführt werden müssen:

  1. Stellen Sie fest, welche Festplatte die ausgefallene Partition enthält

  2. Beheben Sie das Problem, das den Ausfall verursacht hat (wahrscheinlich durch Austausch des Geräts)

  3. Partitionieren Sie die neue Festplatte, sodass die Partitionen hierauf identisch mit denen auf der anderen Festplatte im Array sind

  4. Geben Sie den folgenden Befehl ein:

    raidhotadd <raid-device> <disk-partition>
  5. Überwachen Sie /proc/mdstat, ob das Rebuild stattfindet

TippTipp
 

Hier ein Befehl, mit dem Sie den Neuaufbau ansehen können:

watch -n1 cat /proc/mdstat

Dieser Befehl zeigt den Inhalt von /proc/mdstat an und aktualisiert diesen jede Sekunde.

5.9.10. Logical Volume Management (LVM)

Red Hat Enterprise Linux enthält Support für LVM. LVM kann konfiguriert werden, während Red Hat Enterprise Linux installiert wird oder nachdem die Installation abgeschlossen ist. LVM unter Red Hat Enterprise Linux unterstützt die Gruppierung von physikalischem Speicher, Größenänderung der logischen Volumen und die Migration von Daten von einem bestimmten physikalischen Volumen.

Weitere Informationen zu LVM finden Sie unter Red Hat Enterprise Linux Handbuch zur System-Administration.

Fußnoten

[1]

Siehe Abschnitt 5.9.5 für weiter Informationen.

[2]

Bitte beachten Sie, dass der Gerätedateiname des RAID-Arrays nicht Informationen des Partitions-Levels wiederspiegelt, da das RAID-Array aus partitioniertem Festplattenplatz besteht.