14.7 Dateisystem-Kommandos
Bei den Kommandos zu den Dateisystemen handelt es sich häufig um Kommandos für Linux-Systeme, welche zumeist auch nur als root ausführbar sind. Aus Erfahrung weiß ich aber, dass man schnell gern mit root-Rechten spielt, um mit solchen Kommandos zu experimentieren. Hiervor möchte ich Sie aber warnen, sofern Sie nicht sicher sind, was Sie da tun. Mit zahlreichen dieser Kommandos verlieren Sie häufig nicht nur ein paar Daten, sondern können z. T. ein ganzes Dateisystem korrumpieren – was sich so weit auswirken kann, dass Ihr Betriebssystem nicht mehr startet.
badblocks – überprüft, ob ein Datenträger defekte Sektoren hat
Mit dem Kommando badblocks testen Sie den physischen Zustand eines Datenträgers. Dabei sucht badblocks auf einer Diskette oder Festplatte nach defekten Blöcken.
# badblocks -s -o block.log /dev/fd0 1440
Hier wird z. B. bei einer Diskette (1,44 MB) nach defekten Blöcken gesucht. Das Fortschreiten der Überprüfung wird durch die Option –s simuliert. Mit –o schreiben Sie das Ergebnis defekter Blöcke in die Datei block.log, welche wiederum von anderen Programmen verwendet werden kann, damit diese beschädigten Blöcke nicht mehr genutzt werden. Die Syntax sieht somit wie folgt aus:
badblocks [-optionen] gerätedatei [startblock]
Die »gerätedatei« ist der Pfad zum entsprechenden Speichermedium (bspw. /dev/hda1 = erste Festplatte). Es kann außerdem auch optional der »startblock« festgelegt werden, von dem mit dem Testen angefangen werden soll. Die Ausführung dieses Kommandos bleibt selbstverständlich nur dem Superuser überlassen.
cfdisk – Partitionieren von Festplatten
Mit cfdisk teilen Sie eine formatierte Festplatte in verschiedene Partitionen ein. Natürlich kann man auch eine bestehende Partition löschen oder eine vorhandene verändern (bspw. eine andere Systemkennung geben). Man kann mit cfdisk allerdings auch eine »rohe«, ganze Festplatte bearbeiten (nicht nur einzelne Partitionen). Die Gerätedatei ist also /dev/hda für die erste IDE-Festplatte, /dev/hdb für die zweite Festplatte, /dev/sda für die erste SCSI-Festplatte, /dev/sdb für die zweite SCSI-Festplatte ... usw.
Starten Sie cfdisk, werden alle gefundene Partitionen mitsamt deren Größe angezeigt. Mit den Pfeiltasten »nach-oben« und »nach-unten« können Sie sich hierbei eine Partition auswählen und mit den Pfeiltasten »nach-rechts« bzw. »nach-links« ein Kommando. Mit (Q) können Sie cfdisk beenden.
Achtung Selbstverständlich ist cfdisk nur als root ausführbar. Sollten Sie solche Rechte haben und ohne Vorwissen mit cfdisk herumspielen, ist Ihnen mindestens ein Datenverlust sicher. Wenn Sie Ihre Festplatte wirklich »zerschneiden« wollen, so sollten Sie vor dem Partitionieren die alte Partitionstabelle sichern. Im Fall eines Missgeschicks kann so die alte Partitionstabelle wieder hergestellt werden, wodurch auf die Daten dann noch zugegriffen werden kann.
|
dd – Datenblöcke zwischen Device (Low Level) kopieren (und konvertieren)
Mit dd können Sie eine Datei lesen und den Inhalt in einer bestimmten Blockgröße mit verschiedenen Konvertierungen zwischen verschiedenen Speichermedien (Festplatte, Diskette usw.) übertragen. Damit lassen sich neben einfachen Dateien auch ganze Festplattenpartitionen kopieren. Ein komplettes Backup kann mit diesem Kommando realisiert werden. Ein Beispiel:
# dd if=/dev/hda bs=512 count=1
Damit geben Sie den Bootsektor (nur als root möglich) auf dem Bildschirm aus. Wollen Sie jetzt auch noch ein Backup des Bootsektors auf einer Diskette sichern, dann gehen Sie folgendermaßen vor:
# dd if=/dev/hda of=/dev/fd0 bs=512 count=1
Bevor Sie jetzt noch weitere Beispiele zum mächtigen Werkzeug dd sehen werden, müssen Sie sich zunächst mit den Optionen vertraut machen – im Beispiel mit if, of, bs und count verwendet.
Tabelle 14.12
Optionen zur Steuerung des Kommandos dd
Option
|
Bedeutung
|
if=Datei
|
(input file) Hier gibt man den Namen der Eingabedatei (Quelldatei) an – ohne Angaben wird die Standardeingabe verwendet.
|
of=Datei
|
(output file) Hier kommt der Name der Ausgabedatei (Zieldatei) hin – ohne Angabe wird hier die Standardausgabe verwendet.
|
ibs=Schritt
|
(input block size) Hier wird die Blockgröße der Eingabedatei angegeben.
|
obs=Schritt
|
(output block size) Hier wird die Blockgröße der Ausgabedatei angegeben.
|
bs=Schritt
|
(block size) Hier legt man die Blockgröße für Ein- und Ausgabedatei fest.
|
cbs=Schritt
|
(conversion block size) Die Blockgröße für die Konvertierung wird bestimmt.
|
skip=Blocks
|
Hier können Sie eine Anzahl Blocks angeben, die von der Eingabe zu Beginn ignoriert werden sollen.
|
seek=Blocks
|
Hier können Sie eine Anzahl Blocks angeben, die von der Ausgabe am Anfang ignoriert werden sollen; unterdrückt am Anfang die Ausgabe der angegebenen Anzahl Blocks.
|
count=Blocks
|
Hier wird angegeben, wie viele Blöcke kopiert werden sollen.
|
Eine spezielle Option steht Ihnen mit conv=Konvertierung zur Verfügung. Folgende Konvertierungen sind dabei möglich:
Tabelle 14.13
Spezielle Optionen für Konvertierungen mit dem Kommando dd
Option
|
Konvertierung
|
conv=ascii
|
EBCDIC nach ASCII
|
conv=ebcdic
|
ASCII nach EBCDIC
|
conv=ibm
|
ASCII nach big blue special EBCDIC
|
conv=block
|
Es werden Zeilen in Felder mit der Größe cbs geschrieben und das Zeilenende wird durch Leerzeichen ersetzt. Der Rest des Feldes wird mit Leerzeichen aufgefüllt.
|
conv=unblock
|
Abschließende Leerzeichen eines Blocks der Größe cbs werden durch ein Zeilenende ersetzt.
|
conv=lcase
|
Großbuchstaben in Kleinbuchstaben
|
conv=ucase
|
Kleinbuchstaben in Großbuchstaben
|
conv=swab
|
Vertauscht je zwei Bytes der Eingabe. Ist die Anzahl der gelesenen Bytes ungerade, wird das letzte Byte einfach kopiert.
|
conv=noerror
|
Lesefehler werden ignoriert.
|
conv=sync
|
Füllt Eingabeblöcke bis zur Größe von ibs mit Nullen
|
Jetzt noch einige interessante Beispiel zu dd:
# dd if=/vmlinuz of=/dev/fd0
Damit kopieren Sie den Kernel (hier in »vmlinuz« – bitte anpassen) in den ersten Sektor der Diskette, welche als Bootdiskette verwendet werden kann.
# dd if=/dev/hda of=/dev/hdc
Mächtig, hiermit klonen Sie praktisch in einem Schritt die erste Festplatte am Master IDE-Kontroller auf die Festplatte am zweiten Master-Anschluss. Somit haben Sie auf /dev/hdc denselben Inhalt wie auf /dev/hda. Natürlich kann die Ausgabedatei auch ganz woanders hingeschrieben werden, bspw. auf einen DVD-Brenner, eine Festplatte am USB-Anschluss oder in eine Datei.
Achtung Zwar ist dd ein mächtigeres Werkzeug, als es hier vielleicht den Anschein hat, doch trotzdem sollten Sie gewarnt sein vor wirren dd-Aufrufen. Der Datensalat ist auch hier schneller entstanden als sonstwo. Daher benötigt man wieder die allmächtigen root-Rechte. Falls Sie größere Datenmengen mit dd kopieren, können Sie dem Programm von einer anderen Konsole aus mittels kill das Signal SIGUSR1 senden, um dd zu veranlassen, den aktuellen Fortschritt auszugeben.
|
dd_rescue – fehlertolerantes Kopieren von Dateiblöcken
Falls Sie z. B. eine defekte Festplatte – oder eine Partition auf derselben – kopieren wollen, stößt dd schnell an seine Grenzen. Zudem ist beim Retten von Daten eines defekten Speichermediums die Geschwindigkeit wichtig, da das Medium weitere Fehler verursachen kann und somit weitere Dateien korrumpiert werden können. Ein Fehlversuch mit dd kann hier also fatale Folgen haben.
An dieser Stelle bietet sich dd_rescue an, welches inzwischen bei allen gängigen Linux-Distributionen mitgeliefert wird. Sie können damit – ähnlich wie mit dd – Dateiblöcke auf Low-Level-Basis auf ein anderes Medium kopieren. Als Zielort ist eine Datei auf einem anderen Speichermedium sinnvoll. Von diesem Abbild der defekten Festplatte können Sie eine Kopie erstellen, um das ursprüngliche Abbild nicht zu verändern, und in einem der Abbilder versuchen, das Dateisystem mittels fsck wieder zu reparieren. Ist dies gelungen, können Sie das Abbild wieder mit dd_rescue auf eine neue Festplatte kopieren.
Ein Beispiel:
# dd_rescue -v /dev/hda1 /mnt/rescue/hda1.img
In dem Beispiel wird die Partition /dev/hda1 in die Abbilddatei /mnt/rescue/hda1.img kopiert.
dumpe2fs – zeigt Informationen über ein ext2/ext3-Dateisystem an
dumpe2fs gibt eine Menge interne Informationen zum Superblock und anderen Block-Gruppen zu einem ext2/ext3-Dateisystem aus (vorausgesetzt, dieses Dateisystem wird auch verwendet – logisch), zum Beispiel:
# dumpe2fs -b /dev/hda6
Mit der Option –b werden alle Blöcke von /dev/hda6 auf die Konsole ausgegeben, die als »schlecht« markiert wurden.
e2fsck – repariert ein ext2/ext3-Dateisystem
e2fsck überprüft ein ext2/ext3 Dateisystem und repariert den Fehler. Damit e2fsck verwendet werden kann, muss fsck.ext2 installiert sein, welches das eigentliche Programm ist. e2fsck ist nur ein »Frontend« dafür.
e2fsck Gerätedatei
Mit der »Gerätedatei« geben Sie die Partition an, auf der das Dateisystem überprüft werden soll (was selbstverständlich wieder ein ext2/ext3-Dateisystem sein muss). Bei den Dateien, bei denen die Inodes in keinem Verzeichnis notiert sind, werden sie von e2fsck im Verzeichnis lost+found eingetragen und können so repariert werden. e2fsck gibt beim Überprüfen einen Exit-Code zurück, den Sie mit echo $? abfragen können. Folgende wichtigen Exit-Codes und deren Bedeutung können dabei zurückgegeben werden:
Tabelle 14.14
Exit-Codes des Kommandos e2fsck
Exit-Code
|
Bedeutung
|
0
|
Kein Fehler im Dateisystem
|
1
|
Einen Fehler im Dateisystem gefunden und repariert
|
2
|
Schweren Fehler im Dateisystem gefunden und korregiert. Allerdings sollte das System neu gestartet werden.
|
4
|
Fehler im Dateisystem gefunden, aber nicht korregiert
|
8
|
Fehler bei der Kommandoausführung von e2fsck
|
16
|
Falsche Verwendung von e2fsck
|
128
|
Fehler in den Shared-Libraries
|
Wichtige Optionen, die Sie mit e2fsck angeben können, sind:
Tabelle 14.15
Optionen für das Kommando e2fsck
Option
|
Bedeutung
|
–p
|
Alle Fehler automatisch reparieren ohne Rückfragen
|
–c
|
Durchsucht das Dateisystem nach schlechten Blöcken
|
–f
|
Erzwingt eine Überprüfung des Dateisystems, auch wenn der Kernel das System für OK befunden hat (valid-Flag gesetzt)
|
Hinweis Einige fsck-Versionen fragen nach, ob das Kommando wirklich ausgeführt werden soll. Bei der Antwort genügt der Anfangsbuchstabe »j« oder »y« als Antwort nicht, sondern es muss »yes« oder »ja« (je nach Fragestellung) eingegeben werden. Ansonsten bricht fsck an dieser Stelle kommentarlos ab.
|
fdformat – formatiert eine Diskette
Auch wenn viele Rechner mittlerweile ohne Diskettenlaufwerk ausgeliefert werden, wird das Diskettenlaufwerk immer wieder einmal benötigt (bspw. für eine Rettungsdiskette mit einem Mini-Linux). Mit dem Kommando fdformat formatieren Sie eine Diskette. Das Format wird dabei anhand vom Kernel gespeicherten Parametern erzeugt. Beachten Sie allerdings, dass die Diskette nur mit leeren Blöcken beschrieben wird und nicht mit einem Dateisystem. Zum Erstellen von Dateisystemen stehen Ihnen die Kommandos mkfs, mk2fs oder mkreiserfs für Linux-Systeme zur Verfügung.
fdformat Gerätedatei
fdisk – Partitionieren von Speichermedien
fdisk ist die etwas unkomfortablere Alternative gegenüber cfdisk, eine Festplatte in verschiedene Partitionen aufzuteilen, zu löschen oder gegebenenfalls zu ändern. Im Gegensatz zu cfisk können Sie hier nicht mit den Pfeiltasten navigieren und müssen einzelne Tastenkürzel verwenden. Allerdings hat fdisk den Vorteil, fast überall und immer präsent zu sein.
Noch ein Vorzug ist, dass fdisk nicht interaktiv läuft. Man kann es z. B. benutzen, um einen ganzen Schlag Festplatten automatisch zu formatieren. Das ist ganz praktisch, wenn man ein System identisch auf einer ganzen Anzahl Rechner installieren muss. Man installiert nur auf einem, erzeugt mit dd ein Image, erstellt sich ein kleines Script, bootet die anderen Rechner z. B. von »damnsmall-Linux« (eine Mini-Distribution für u. a. den USB-Stick) und führt das Script aus, das dann per fdisk formatiert und per dd das Image des Prototypen installiert. Danach muss man nur noch die IP-Adresse und den Hostname anpassen, was Sie auch scriptgesteuert vornehmen können.
Einen komfortablen Überblick zu allen Partitionen auf allen Festplatten können Sie sich mit der Option –l anzeigen lassen:
linux:/home/you # fdisk -l
Platte /dev/hda: 30.0 GByte, 30005821440 Byte
16 Köpfe, 63 Sektoren/Spuren, 58140 Zylinder
Einheiten = Zylinder von 1008 * 512 = 516096 Bytes
Gerät Boot Start End Blocks Id System
/dev/hda1 1 26313 13261626 7 HPFS/NTFS
/dev/hda2 26314 58140 16040808 f W95 Ext'd (LBA)
/dev/hda5 26314 27329 512032+ 82 Linux Swap
/dev/hda6 27330 58140 15528712+ 83 Linux
Zum Partitionieren starten müssen Sie fdisk mit der Angabe der Gerätedatei:
# fdisk /dev/hda
Die wichtigsten Tastenkürzel zur Partitionierung selbst sind:
Tabelle 14.16
Tastenkürzel zur Verwendung von fdisk
Taste
|
Bedeutung
|
(b)
|
»bsd disklabel« bearbeiten
|
(d)
|
Eine Partition löschen
|
(l)
|
Die bekannten Dateisystemtypen anzeigen (Sie benötigen die Nummer)
|
(m)
|
Ein Menü mit allen Befehlen anzeigen
|
(n)
|
Eine neue Partition anlegen
|
(p)
|
Die Partitionstabelle anzeigen
|
(q)
|
Ende ohne Speichern der Änderungen
|
(s)
|
Einen neuen leeren »Sun disklabel« anlegen
|
(t)
|
Den Dateisystemtyp einer Partition ändern
|
(u)
|
Die Einheit für die Anzeige/Eingabe ändern
|
(v)
|
Die Partitionstabelle überprüfen
|
(W)
|
Die Tabelle auf die Festplatte schreiben und das Programm beenden
|
(X)
|
Zusätzliche Funktionen (nur für Experten)
|
Ansonsten gilt auch hier, Finger weg, wenn Sie nicht sicher sind, was Sie hier genau tun, es sei denn, Sie probieren dies alles an einem Testsystem aus.
fsck – Reparieren und Überprüfen von Dateisystemen
fsck ist ein unabhängiges Frontend zum Prüfen und Reparieren der Dateisystem-Struktur. fsck ruft gewöhnlich je nach Dateisystem das entsprechende Programm auf. Bei ext2/ext3 ist dies bspw. fsck.ext2, bei einem Minix-System fsck.minix, bei ReiserFS reiserfsck usw. Die Zuordnung des entsprechenden Dateisystems nimmt fsck anhand der Partitionstabelle oder durch eine Kommandozeilenoption vor. Die meisten dieser Programme unterstützen die Optionen –a, –A, –l, –r, –s und –v. Meistens wird hierbei die Option –a –A verwendet. Mit –a veranlassen Sie eine automatische Reparatur, sofern dies möglich ist, und mit –A geben Sie an, alle Dateisysteme zu testen, die in /etc/fstab eingetragen sind.
fsck gibt beim Überprüfen einen Exit-Code zurück, den Sie mit echo $? abfragen können. Folgende wichtigen Exit-Codes und deren Bedeutung können dabei zurückgegeben werden:
Tabelle 14.17
Exit-Codes von fsck und ihre Bedeutung
Exit-Code
|
Bedeutung
|
0
|
Kein Fehler im Dateisystem
|
1
|
Einen Fehler im Dateisystem gefunden und repariert
|
2
|
Schweren Fehler im Dateisystem gefunden und korregiert. Allerdings sollte das System neu gestartet werden.
|
4
|
Fehler im Dateisystem gefunden, aber nicht korregiert
|
8
|
Fehler bei der Kommandoausführung von fsck
|
16
|
Falsche Verwendung von fsck
|
128
|
Fehler in den Shared-Libraries
|
Ganz wichtig ist es auch, fsck immer auf nicht eingebundene bzw. nur im readonly-Modus eingebundene Dateisysteme anzuwenden. Denn fsck kann sonst eventuell ein Dateisystem verändern (reparieren), ohne dass das System dies zu realisieren vermag. Ein Systemabsturz ist dann vorprogrammiert. Gewöhnlich wird fsck oder reiserfsck beim Systemstart automatisch ausgeführt, wenn eine Partition nicht sauber ausgebunden wurde oder nach jedem n-ten Booten. Wer mit einem ext2/ext3-Dateisystem arbeitet, kennt das wohl zu genüge, wenn fsck nach einem Systemabsturz beim Starten des Systems zunächst das komplette Dateisystem überprüft (Kaffee holen war angesagt).
mkfs – Dateisystem einrichten
Mit mkfs können Sie auf einer zuvor formatierten Festplatte bzw. Diskette ein Dateisystem anlegen. Wie schon fsck ist mkfs ein unabhängiges Frontend, das die Erzeugung des Dateisystems nicht selbst übernimmt, sondern auch hier das spezifische Programm zur Erzeugung des entsprechenden Dateisystems verwendet. Auch hierbei richtet sich mkfs wieder nach den Dateisystemen, die in der Partitionstabelle aufgelistet sind, oder gegebenenfalls nach der Kommandozeilenoption.
Abhängig vom Dateisystemtyp ruft mkfs dann das Kommando mkfs.minix (für Minix), mk2fs (für ext2/ext3), mkreiserfs (für ReiserFS) usw. auf.
mkfs [option] Gerätedatei [blöcke]
Für die »Gerätedatei« müssen Sie den entsprechenden Pfad angeben (bspw. /dev/hda1). Es kann außerdem auch die Anzahl von Blöcken angegeben werden, die das Dateisystem belegen soll. Auch mkfs gibt einen Exit-Code über den Verlauf der Kommandoausführung zurück, den Sie mit echo $? auswerten können.
Tabelle 14.18
Exit-Codes von mkfs und ihre Bedeutung
Exit-Code
|
Bedeutung
|
0
|
Alles erfolgreich durchgeführt
|
8
|
Ein Fehler bei der Programmausführung
|
16
|
Ein Fehler in der Kommandozeile
|
Interessant ist auch noch die Option –t, womit Sie den Dateisystemtyp des zu erzeugenden Dateisystems selbst festlegen können. Ohne –t würde hier wieder versucht, das Dateisystem anhand der Partitionstabelle zu bestimmen. So erzeugen Sie bspw. mit
mkfs -f xiafs /dev/hda7
auf der Partition /dev/hda7 ein Dateisystem xiafs (alternativ zu ext2).
mkswap – eine Swap-Partition einrichten
Mit mkswap legen Sie eine Swap-Partition an. Diese können Sie z. B. dazu verwenden, schlafende Prozesse, die auf das Ende von anderen Prozessen warten, in die Swap-Partition der Festplatte auszulagern. So halten Sie Platz im Arbeitsspeicher für andere laufende Prozesse frei. Sofern Sie nicht schon bei der Installation die (gewöhnlich) vorgeschlagene Swap-Partiton eingerichtet haben (je nach Distribution), können Sie dies nachträglich mit dem Kommando mkswap vornehmen. Zum Aktivieren einer Swap-Partition müssen Sie das Kommando swapon aufrufen.
Ist Ihr Arbeitsspeicher wieder ausgelastet, können Sie auch kurzfristig solch einen Swap-Speicher einrichten. Ein Beispiel:
# dd bs=1024 if=/dev/zero of=/tmp/myswap count=4096
4096+0 Datensätze ein
4096+0 Datensätze aus
# mkswap -c /tmp/myswap 4096
Swapbereich Version 1 wird angelegt, Größe 4190 KBytes
# sync
# swapon /tmp/myswap
Zuerst legen Sie mit dd einen leere Swapdatei mit 4 Megabytes Größe mit Null-Bytes an. Anschließend verwenden Sie diesen Bereich als Swap-Datei. Nach einem Aufruf von sync müssen Sie nur noch den Swap-Speicher aktivieren. Wie dieser Swap-Bereich allerdings verwendet wird, haben Sie nicht in der Hand, sondern wird vom Kernel mit dem »Paging« gesteuert.
Hinweis Eine Datei, die als Swap-Bereich eingebunden wird, sollte nur genutzt werden, wenn keine Partition dafür zur Verfügung steht, da die Methode erheblich langsamer ist als eine Swap-Partition.
|
mount, umount – An- bzw. Abhängen eines Dateisystems
mount hängt einzelne Dateisysteme mit den verschiedensten Medien (Festplatte, CD-ROM, Diskette ...) an einen einzigen Dateisystembaum an. Die einzelnen Partitionen werden dabei als Gerätedateien im Ordner /dev angezeigt. Rufen Sie mount ohne irgendwelche Argumente auf, werden alle »gemounteten« Dateisysteme aus /etc/mtab aufgelistet. Auch hier bleibt es wieder root überlassen, ob ein Benutzer ein bestimmtes Dateisystem einbinden kann oder nicht. Hierzu muss nur ein entsprechender Eintrag in /etc/fstab vorgenommen werden.
Einige Beispiele, wie verschiedene Dateisysteme eingehängt werden können:
Tabelle 14.19
Anwendungsbeispiele des Kommandos mount
Verwendung
|
Bedeutung
|
mount /dev/fd0
|
Hängt das Diskettenlaufwerk ein
|
mount /dev/hda9 /home/you
|
Hier wird das Dateisystem /dev/hda9 an der Verzeichnis /home/you gemountet.
|
mount goliath:/progs /home/progs
|
Mountet ein Dateisystem per NFS von einem Rechner namens »goliath« und hängt diesen an das lokale Verzeichnis /home/progs
|
Wollen Sie ein Dateisystem wieder aushängen, egal ob jetzt lokale oder entfernte Partitionen, dann nehmen Sie dies mit umount vor:
umount /dev/fd0
Hier wird das Diskettenlaufwerk aus dem Dateisystem ausgehängt.
Hinweis Wenn ein Eintrag für ein Dateisystem in der /etc/fstab besteht, reicht es aus, mount mit dem Device oder dem Mountpoint als Argument aufzurufen: »mount /dev/fd0«.
|
parted – Partitionen anlegen, verschieben, vergrößern oder verkleinern
Mit parted können Sie nicht nur – wie mit fdisk bzw. cfdisk – Partitionen anlegen oder löschen, sondern auch vergrößern, verkleinern, kopieren und verschieben. parted wird gern verwendet, wenn man Platz auf der Festplatte schaffen will für ein neues Betriebssystem oder alle Daten einer Festplatte auf eine neue kopieren will. Mehr hierzu entnehmen Sie bitte der Manual-Seite von parted.
prtvtoc – Partitionstabellen ausgeben
Mit prtvtoc können Sie ähnlich wie unter Linux mit fdisk die Partitionstabelle einer Festplatte ausgeben. Dieses Kommando ist bspw. unter Solaris vorhanden.
swapon, swapoff – Swap-Datei oder Partition (de)aktivieren
Wenn Sie auf dem System eine Swap-Partition eingerichtet haben (siehe mkswap), existiert diese zwar, muss aber noch mit dem Kommando swapon aktiviert werden. Den so aktivierten Bereich können Sie jederzeit mit swapoff wieder aus dem laufenden System deaktivieren.
sync – alle gepufferten Schreiboperationen ausführen
Normalerweise verwendet Linux einen Puffer (Cache) im Arbeitsspeicher, worin sich ganze Datenblöcke eines Massenspeichers befinden. So werden Daten häufig temporär erst im Arbeitsspeicher verwaltet, da sich ein dauernd schreibender Prozess äußerst negativ auf die Performance des Systems auswirken würde. Stellen Sie sich das einmal bei 100 Prozessen vor! Gewöhnlich übernimmt ein Daemon die Arbeit und entscheidet, wann die veränderten Datenblöcke auf die Festplatte geschrieben werden.
Mit dem Kommando sync können Sie nun veranlassen, dass veränderte Daten sofort auf die Festplatte (oder auch jeden anderen Massenspeicher) geschrieben werden. Dies kann häufig der letzte Rettungsanker sein, wenn das System sich nicht mehr richtig beenden lässt. Können Sie hierbei noch schnell ein sync ausführen, werden alle Daten zuvor nochmals gesichert und der Datenverlust kann eventuell ganz verhindert werden.
Ihre Meinung
Wie hat Ihnen das Openbook gefallen? Wir freuen uns immer über Ihre Rückmeldung. Schreiben Sie uns gerne Ihr Feedback als E-Mail an kommunikation@rheinwerk-verlag.de.
|