Advertisements

Dateien zwischen Linux und FreeDOS kopieren

Ich verwende Linux als mein primäres Betriebssystem und starte FreeDOS in einer virtuellen Maschine. Die meiste Zeit verwende ich QEMU als PC-Emulator, aber manchmal führe ich andere Experimente mit GNOME-Boxen (die QEMU als virtuelle Back-End-Maschine verwendet) oder mit VirtualBox durch.

Weitere Linux-Ressourcen

Ich spiele gerne klassische DOS-Spiele, und manchmal rufe ich eine Lieblings-DOS-Anwendung auf. Ich unterrichte einen Kurs für Management-Informationssysteme (MIS), in dem ich über die Geschichte des Computers spreche, und ich zeichne manchmal eine Demonstration mit FreeDOS und einer älteren DOS-Anwendung wie As-Easy-As (meine Lieblings-DOS-Tabelle – nach der Veröffentlichung) auf als “Shareware”, aber jetzt kostenlos bei TRIUS, Inc. erhältlich).

Aber wenn ich FreeDOS auf diese Weise verwende, muss ich Dateien zwischen meiner virtuellen FreeDOS-Maschine und meinem Linux-Desktop-System übertragen. Lassen Sie mich Ihnen zeigen, wie ich das mache.

Zugriff auf das Image mit guestmount

Früher habe ich auf mein virtuelles Festplatten-Image zugegriffen, indem ich den Offset zur ersten DOS-Partition berechnet und dann das Linux aufgerufen habe mount Befehl mit der richtigen Mischung von Optionen, um diesem Offset zu entsprechen. Das war immer fehleranfällig und wenig flexibel. Glücklicherweise gibt es einen einfacheren Weg. Die guestmount Programm aus dem libguestfs-tools-Paket ermöglicht den Zugriff auf oder montieren das virtuelle Festplatten-Image von Linux. Sie können installieren libguestfs-tools Verwenden Sie diesen Befehl auf Fedora:

$ yum install libguestfs-tools libguestfs

Verwenden von guestmount ist nicht so einfach wie ein Doppelklick auf die Datei im GNOME-Dateimanager, aber die Befehlszeile ist nicht allzu schwierig zu verwenden. Die grundlegende Verwendung von guestmount ist:

$ guestmount -a image -m device mountpoint

Bei dieser Verwendung Bild ist das zu verwendende virtuelle Festplatten-Image. Auf meinem System habe ich mein virtuelles QEMU-Festplattenimage mit dem . erstellt qemu-img Befehl. Das guestmount Programm kann dieses Disk-Image-Format sowie das von GNOME-Boxen verwendete QCOW2-Image-Format oder das in VirtualBox verwendete VDI-Image-Format lesen.

Die Gerät Option gibt die Partition auf der virtuellen Festplatte an. Stellen Sie sich vor, Sie verwenden diese virtuelle Festplatte als echte Festplatte. Sie würden auf die erste Partition zugreifen als /dev/sda1, die zweite Partition als /dev/sda2, und so weiter. Das ist die Syntax für guestmount. Standardmäßig erstellt FreeDOS 1.3 RC4 eine Partition auf einem leeren Laufwerk, greifen Sie also auf diese Partition wie /dev/sda1.

Und Einhängepunkt ist der Ort zum “mounten” des DOS-Dateisystems auf Ihrem lokalen Linux-System. Normalerweise erstelle ich ein temporäres Verzeichnis, mit dem ich arbeiten kann. Sie benötigen den Bereitstellungspunkt nur, während Sie auf die virtuelle Festplatte zugreifen.

Zusammenfassend verwende ich diesen Befehlssatz, um von Linux aus auf mein virtuelles FreeDOS-Festplattenimage zuzugreifen:

$ mkdir /tmp/freedos
$ guestmount -a freedos.img -m /dev/sda1 /tmp/freedos

Danach kann ich über das auf meine FreeDOS-Dateien zugreifen /tmp/freedos Verzeichnis mit normalen Tools unter Linux. könnte ich verwenden ls /tmp/freedos in der Befehlszeile oder öffnen Sie das /tmp/freedos Mount-Punkt mit dem Desktop-Dateimanager.

$ ls -l /tmp/freedos
total 216
drwxr-xr-x.  5 root root  8192 May 10 15:53 APPS
-rwxr-xr-x.  1 root root 85048 Apr 30 07:54 COMMAND.COM
-rwxr-xr-x.  1 root root   103 May 13 15:48 CONFIG.SYS
drwxr-xr-x.  5 root root  8192 May 15 16:52 DEVEL
drwxr-xr-x.  2 root root  8192 May 15 13:36 EDLIN
-rwxr-xr-x.  1 root root  1821 May 10 15:57 FDAUTO.BAT
-rwxr-xr-x.  1 root root   740 May 13 15:47 FDCONFIG.SYS
drwxr-xr-x. 10 root root  8192 May 10 15:49 FDOS
-rwxr-xr-x.  1 root root 46685 Apr 30 07:54 KERNEL.SYS
drwxr-xr-x.  2 root root  8192 May 10 15:57 SRC
-rwxr-xr-x.  1 root root  3190 May 16 08:34 SRC.ZIP
drwxr-xr-x.  3 root root  8192 May 11 18:33 TEMP

gnome-file-manager.png

Verwenden des GNOME-Dateimanagers für den Zugriff auf die virtuelle Festplatte
(Jim Halle, CC-BY SA 4.0)

Um zum Beispiel mehrere C-Quelldateien von meinem Linux zu kopieren projects Verzeichnis in C:SRC auf dem virtuellen Disk-Image, damit ich die Dateien später unter FreeDOS verwenden kann, kann ich das Linux verwenden cp Befehl:

$ cp /home/jhall/projects/*.c /tmp/freedos/SRC

Die Dateien und Verzeichnisse auf dem virtuellen Laufwerk sind technisch Groß-/Kleinschreibung nicht beachten, sodass Sie mit Groß- oder Kleinbuchstaben darauf verweisen können. Ich finde es jedoch natürlicher, DOS-Dateien und -Verzeichnisse in Großbuchstaben einzugeben.

$ ls /tmp/freedos
APPS         CONFIG.SYS  EDLIN       FDCONFIG.SYS  KERNEL.SYS  SRC.ZIP
COMMAND.COM  DEVEL       FDAUTO.BAT  FDOS          SRC         TEMP

$ ls /tmp/freedos/EDLIN
EDLIN.EXE  MAKEFILE.OW

$ ls /tmp/freedos/edlin
EDLIN.EXE  MAKEFILE.OW

Abhängen mit guestmount

Du solltest immer abmontieren das Image der virtuellen Festplatte, bevor Sie es erneut in Ihrer virtuellen Maschine verwenden. Wenn Sie das Image gemountet lassen, während Sie QEMU oder VirtualBox ausführen, riskieren Sie, dass Ihre Dateien durcheinander gebracht werden.

Der Companion-Befehl zu guestmount ist guestunmount, um das Disk-Image auszuhängen. Geben Sie einfach den Mountpunkt an, den Sie aushängen möchten:

$ guestunmount /tmp/freedos

Beachten Sie, dass dieser Befehl etwas anders geschrieben ist als der von Linux umount Systembefehl.

Dateien zwischen Linux und FreeDOS kopieren

Leave a Reply

Your email address will not be published. Required fields are marked *

Scroll to top