mtools

`[Zur Übersicht]`

`In dieser Lektion benötigen Sie eine formatierte, leere, nicht schreibgeschützte Diskette.`

# Datenübertragung von/zu Windows via Diskette mit den mtools

Die mtools sind eine Sammlung von Befehlen zum Bearbeiten von Daten auf Disketten (vergleichbar z.B. mit den DOS-Befehlen COPY, DEL, DIR usw.).

Legen Sie eine formatierte, leere, nicht schreibgeschützte Diskette in das Diskettenlaufwerk ein.

Öffnen Sie eine Root Shell:

| Klicken Sie auf dem Knoppix-KDE-Desktop unten links mit der linken Maustaste auf das Symbol das den Buchstaben "K" in einem Zahnrad darstellt (dieses Symbol ist z.B. vergleichbar mit dem <Start>-Symbol unter Windows 98).

| Klicken Sie im sich öffnenden Menü mit der linken Maustaste auf den Eintrag "KNOPPIX".

| Klicken Sie im sich öffnenden Unter-Menü mit der linken Maustaste auf den Eintrag "Root Shell". Es öffnet sich ein "Root"-Fenster.

In dem "Root"-Fenster, können Sie nun einzelne mtools-Befehle über die Tastatur eingeben.

Einige Beispiele:

Erklärung einiger Beispiele:

`mformat a:` | Formatiert die im Diskettenlaufwerk A: liegende Diskette. Alle Daten auf der Diskette gehen verloren.
`mcopy /bin/date a:` | Kopiert die Datei date aus dem Verzeichnis /bin auf die im Diskettenlaufwerk A: liegende Diskette.
`mdir a:` | Zeigt die Dateien auf der im Diskettenlaufwerk A: liegenden Diskette an.
`mcopy a:\ausflug.jpg /home/knoppix` | Kopiert die Datei ausflug.jpg von der im Diskettenlaufwerk A: liegenden Diskette in das Verzeichnis /home/knoppix.
`mdel a:\ausflug.jpg` | Löscht die Datei ausflug.jpg auf der im Diskettenlaufwerk A: liegenden Diskette.
`mcopy -t a:\liesmich.txt /tmp/README` | Kopiert die Datei liesmich.txt von der im Diskettenlaufwerk A: liegenden Diskette in das Verzeichnis /tmp unter dem neuen Namen README. Wegen der Option "-t" wird beim Kopieren in der Datei jedes CR und LF Zeichenpaar an einem Zeilenende in ein LF-Zeichen umgewandelt (siehe dazu den Exkurs weiter unten).
`mcopy -t /etc/motd a:\motd.txt` | Kopiert die Datei motd aus dem Verzeichnis /etc auf die im Diskettenlaufwerk A: liegende Diskette unter dem neuen Namen motd.txt. Wegen der Option "-t" wird beim Kopieren in der Datei jedes LF-Zeichen an einem Zeilenende in die beiden Zeichen CR und LF umgewandelt (siehe dazu den Exkurs weiter unten).

Faustregeln:

- Bei Verwendung von Dateinamen auf der Linux Seite das Zeichen Slash "/" als Trenner zwischen Verzeichnis- und Dateinamen verwenden und stets mit einem Slash beginnen (also z.B. /bin/date).
- Bei Verwendung von Dateinamen auf der Diskette das Zeichen Backslash "\" als Trenner verwenden und stets mit a: beginnen (also z.B. a:\ausflug.jpg).
- Nur bei Dateien, die Sie mit einfachen Texteditoren wie notepad unter Windows oder vi unter knoppix erstellt haben oder später damit bearbeiten wollen, verwenden Sie die Option "-t".

Weitere Informationen liefern Ihnen die Handbuchseiten zu den mtools, die Sie mit den Befehlen "`man mtools`", "`man mcopy`", "`man mdel`" usw. in einem Befehlsfenster (einer Konsole, z.B. --> --> ) lesen können. (Blättern in den Handbuchseiten können Sie mit Betätigen der Taste <Leerzeichen>. Die Anzeige einer Handbuchseite beenden Sie durch Betätigen der Taste <q> für quit.)

[Zurück zum Seitenanfang]

Exkurs: Textdateien unter Windows und UNIX: Zwei Welten stoßen aufeinander!
Sind Sie so alt, dass Sie noch einfache, mechanische Schreibmaschinen kennen und sogar darauf geschrieben haben? Vielleicht haben Sie ja sogar noch so ein gutes Stück auf dem Dachboden...
Wenn bei einer solchen Schreibmaschine das Ende der Zeile erreicht war, musste links am Wagen ein Hebel nach rechts gedrückt werden. Dabei passierten *zwei* Dinge:
*Zuerst* bewegte sich nur der Hebel in zwei bis drei kleinen Schritten. Diese Bewegung drehte die Rolle und damit das Papier *hoch* auf eine neue Zeile. Das ist der s.g. Zeilenvorschub (Englisch linefeed, Abkürzung LF).
*Dann* wurde mit dem Hebel der ganze Wagen *nach rechts* bis zum Anfang des eingespannten Blattes bewegt. Das ist der s.g. Wagenrücklauf (Englisch: carriage return, Abkürzung CR).
Im PC auf der Festplatte sind Dateien eine Aufeinanderfolge von einzelnen Bytes. Um in einfachen ASCII-Textdateien festzulegen, wann in einer solchen Folge von Zeichen eine Zeile endet und eine neue Zeile beginnt, ist es erforderlich, das "irgendwie" zu kennzeichnen.
Die EntwicklerInnen von Windows griffen einfach zu dem, was sie von den mechanischen Schreibmaschinen her kannten und kennzeichneten das Ende einer Zeile durch die Sonderzeichen CR und LF.
Wenn wir z.B. unter Windows mit dem Editor notepad eine ASCII-Textdatei bearbeiten, dann sehen wir diese Sonderzeichen aber nicht, denn wenn der Editor z.B. "abcCRLFdef" einliest, dann zeigt er das an als
abc
def
Der Editor notepad setzt die Sonderzeichen CRLF also richtig um, indem er "def" nicht direkt hinter "abc" anzeigt, sondern am Anfang einer neuen Zeile. So soll es sein.
Die EntwicklerInnen von UNIX sagten sich, dass eigentlich *ein* Zeichen ausreicht, um das Ende der einen und den Beginn der anderen Zeile zu kennzeichnen. Darum wird unter UNIX dafür nur das Zeichen LF verwendet. Wenn unter UNIX der Editor vi z.B. "abcLFdef" einliest, dann zeigt er das an als
abc
def
Das große Kuddelmuddel beginnt dann, wenn UNIX-Textdateien unter Windows oder Windows-Textdateien unter UNIX bearbeitet werden sollen.
Liest der Editor notepad eine UNIX-Textdatei, in der "abcLFdefLFghi" steht, dann zeigt er das an als

    abc
       def
          ghi

Er macht immer nur einen Zeilenvorschub (LF) aber keinen Wagenrücklauf (an den Anfang der Zeile), da das Sonderzeichen CR fehlt.
Liest der Editor vi eine Windows-Textdatei, in der "abcCRLFdefCRLFghi" steht, dann zeigt er das an als
abc^M
def^M
ghi
Er stellt das Sonderzeichen CR, mit dem er nichts anzufangen weiss, stets als "normales" Zeichen (^M) dar und beginnt dann wegen dem Sonderzeichen LF am Anfang einer neuen Zeile.
Soll dieses Kuddelmuddel vermieden werden, ist es notwendig, bei UNIX-Textdateien, die unter Windows bearbeitet werden sollen, jedes LF durch CRLF zu ersetzen und bei Windows-Textdateien, die unter UNIX bearbeitet werden sollen, ist jedes CRLF durch LF zu ersetzen.

[Zurück zum Seitenanfang]

`[Zur Übersicht]`

`Dieses Dokument beschreibt Knoppix Version 3.4 CeBit 2004 Edition.`
Copyright (c) 2004-04-19 Karl Schock. (Dank an alle, die zu diesem Dokument etwas beitrugen.)
Es wird die Erlaubnis gegeben, dieses Dokument zu kopieren, zu verteilen und/oder zu verändern unter den Bedingungen der GNU Free Documentation License.
`DIE BENUTZUNG ERFOLGT AUF EIGENE GEFAHR.` Der Autor kann in keiner Weise für aus der Benutzung entstandene direkte oder indirekte Schäden haftbar gemacht werden.