GNU/Linux >> Tutoriales Linux >  >> Linux

Copie archivos entre Linux y FreeDOS

Ejecuto Linux como mi sistema operativo principal e inicio FreeDOS en una máquina virtual. La mayor parte del tiempo, uso QEMU como mi emulador de PC, pero a veces realizo otros experimentos con GNOME Boxes (que usa QEMU como una máquina virtual de back-end) o con VirtualBox.

Más recursos de Linux

  • Hoja de trucos de los comandos de Linux
  • Hoja de trucos de comandos avanzados de Linux
  • Curso en línea gratuito:Descripción general técnica de RHEL
  • Hoja de trucos de red de Linux
  • Hoja de trucos de SELinux
  • Hoja de trucos de los comandos comunes de Linux
  • ¿Qué son los contenedores de Linux?
  • Nuestros últimos artículos sobre Linux

Me gusta jugar juegos clásicos de DOS y, a veces, mostraré una aplicación de DOS favorita. Enseño una clase de Sistemas de información de gestión (MIS) en la que hablo sobre la historia de la informática y, a veces, grabo una demostración usando FreeDOS y una aplicación heredada de DOS, como As-Easy-As (mi hoja de cálculo de DOS favorita, una vez lanzada). como "shareware" pero ahora disponible de forma gratuita a través de TRIUS, Inc).

Pero usar FreeDOS de esta manera significa que necesito transferir archivos entre mi máquina virtual FreeDOS y mi sistema de escritorio Linux. Déjame mostrarte cómo lo hago.

Acceso a la imagen con guestmount

Solía ​​​​acceder a la imagen de mi disco virtual calculando el desplazamiento de la primera partición de DOS y luego llamando a Linux mount Comando con la combinación correcta de opciones para que coincida con ese desplazamiento. Esto siempre fue propenso a errores y no muy flexible. Afortunadamente, hay una manera más fácil de hacerlo. El guestmount El programa del paquete libguestfs-tools le permite acceder o montar la imagen del disco virtual de Linux. Puede instalar libguestfs-tools usando este comando en Fedora:

$ yum install libguestfs-tools libguestfs

Usando guestmount no es tan fácil como hacer doble clic en el archivo desde el administrador de archivos de GNOME, pero la línea de comandos no es demasiado difícil de usar. El uso básico de guestmount es:

$ guestmount -a image -m device mountpoint

En este uso, imagen es la imagen de disco virtual a utilizar. En mi sistema, creé mi imagen de disco virtual QEMU con qemu-img dominio. El guestmount El programa puede leer este formato de imagen de disco, así como el formato de imagen QCOW2 usado por GNOME Boxes, o el formato de imagen VDI usado en VirtualBox.

El dispositivo La opción indica la partición en el disco virtual. Imagine usar este disco virtual como un disco duro real. Accedería a la primera partición como /dev/sda1 , la segunda partición como /dev/sda2 , y así. Esa es la sintaxis para guestmount . De forma predeterminada, FreeDOS 1.3 RC4 crea una partición en un disco vacío, así que acceda a esa partición como /dev/sda1 .

punto de montaje es la ubicación para "montar" el sistema de archivos DOS en su sistema Linux local. Por lo general, crearé un directorio temporal para trabajar. Solo necesita el punto de montaje mientras accede al disco virtual.

Poniendo todo eso junto, uso este conjunto de comandos para acceder a mi imagen de disco virtual FreeDOS desde Linux:

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

Después de eso, puedo acceder a mis archivos FreeDOS a través de /tmp/freedos directorio, usando herramientas normales en Linux. Podría usar ls /tmp/freedos en la línea de comando, o abre el /tmp/freedos punto de montaje usando el administrador de archivos de escritorio.

$ 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

Por ejemplo, para copiar varios archivos fuente C de mis projects de Linux directorio en C:\SRC en la imagen del disco virtual, para poder usar los archivos bajo FreeDOS más tarde, puedo usar Linux cp comando:

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

Los archivos y directorios de la unidad virtual son técnicamente insensibles a mayúsculas y minúsculas , para que puedas referirte a ellos usando letras mayúsculas o minúsculas. Sin embargo, me resulta más natural escribir archivos y directorios de DOS en mayúsculas.

$ 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

Desmontar con guestmount

Siempre debe desmontar la imagen del disco virtual antes de volver a usarla en su máquina virtual. Si deja la imagen montada mientras ejecuta QEMU o VirtualBox, corre el riesgo de estropear sus archivos.

El comando complementario a guestmount es guestunmount , para desmontar la imagen de disco. Simplemente proporcione el punto de montaje que desea desmontar:

$ guestunmount /tmp/freedos

Tenga en cuenta que este comando se escribe de forma ligeramente diferente a Linux umount comando del sistema.


Linux
  1. Copiar archivos y directorios en Linux

  2. Cómo copiar archivos de forma segura entre hosts Linux utilizando SCP y SFTP

  3. Linux:¿compartir archivos entre el host de Linux y el invitado de Windows?

  4. Linux Eliminar archivos y directorios

  5. Buscar y copiar archivos

Comando Cp en Linux (Copiar archivos)

Instale Dropbox para compartir archivos entre Linux y Windows

Cómo compartir archivos de juegos de Steam entre Linux y Windows

Cómo copiar archivos y directorios en la terminal de Linux

Cómo copiar archivos entre el host y el contenedor Docker

Compartir archivos entre Linux Mint y Windows 10