DosEmu: Un emulador de DOS en Linux | Algo de Linux

miércoles, 21 de mayo de 2014

DosEmu: Un emulador de DOS en Linux

Aunque parezca que ya nadie trabaja en DOS, todavía somos unos cuantos los que lo hacemos. No penséis que es por nostalgia, no; sino porque en algunas ocasiones nuestro trabajo lo requiere. Si bien es verdad que nos sentimos muy cómodos en un entorno en el que en su día echamos muchas horas y que quizás sea lo que nos ha llevado a sentirnos aún más cómodos en la línea de comandos de Linux.

DosEmu es un emulador de DOS en Linux que suelo usar con cierta frecuencia para preparar imágenes de diskette de arranque que me permitan flashear la BIOS de equipos desde un pendrive o desde CDROM si el equipo no arranca desde pendrive o incluso a través de la red.


Instalarlo es muy fácil porque se encuentra en los repositorios de Debian:
# apt-get install dosemu

Una vez instalado, se nos creará un acceso directo en el menú, aunque naturalmente, también podremos lanzarlo desde un terminal.

La primera vez que lo ejecutamos, se crea un directorio .dosemu en el HOME del usuario donde se guardarán todos sus archivos. Podéis comprobarlo:
ldap:~# tree .dosemu/
.dosemu/
├── boot.log
├── disclaimer
├── drive_c
│   ├── autoexec.bat
│   ├── config.sys
│   └── tmp
├── drives
│   ├── c -> /root/.dosemu/drive_c
│   └── d -> /usr/lib/dosemu/drive_z
└── run
    └── dosemu-midi

6 directories, 5 files

Si os fijáis en la imagen de más arriba, se configuran las siguientes unidades virtuales:
  • A: Para la unidad de disquete (si existe).
  • C: Apunta a la unidad C virtual que hay dentro del home del usuario, dentro del directorio ~/.dosemu/drive_c
  • D: Apunta al directorio HOME del usuario que ha iniciado DosEmu.
  • E: Apunta a la unidad de CDROM. 
  • Z: Apunta al directorio del sistema. Este directorio es de sólo lectura.
Si queréis crear alguna unidad virtual más que apunte a algún determinado lugar del sistema de archivos, podéis usar el comando LREDIR de DosEmu. Y si queréis que la unidad virtual se cree cada vez que arranquéis DosEmu, añadís el comando al archivo c:\autoexec.bat, por ejemplo.

Para reinstalar DOS en vuestro HOME, no tenéis más que iniciar dosemu con el parámetro -i:
$ dosemu -i

Os ofrecerá diferentes opciones de instalación, como instalar el sistema con un FreeDOS en modo de escritura, sólo lectura, instalarlo en otro directorio distinto del directorio por defecto, etc...

Como ya os decía al principio, suelo utilizar DosEmu para crear/modificar imágenes de disquete que luego voy a poder arrancar desde un dispositivo USB, CD o a través de la red. Veamos un ejemplo:

Supongamos que tengo una imagen de un disquete de arranque: dosdisk144.img y quiero modificarla para añadirle una imagen de la bios de un equipo para actualizarlo.

Creo un directorio dentro del HOME de root:
# mkdir /root/floppy
Monto la imagen del Floppy en dicho directorio:
# mount -o loop /root/floppies/dosdisk144.img /root/floppy
E inicio DosEmu:
# dosemu
Se iniciará DosEmu en la unidad C:\>
Recordad que hemos montado la imagen del disquete en /root/floppy y el directorio HOME es la unidad D:\>
Por lo tanto, en la ventana de DosEmu tendremos que cambiar a la unidad D:\> y entrar dentro del directorio floppy para modificar, copiar archivos y todo lo que queramos.
Cuando terminemos, cerramos la ventana de DosEmu y desmontamos la imagen del Floppy:
# umount /root/floppy

Luego ya tan sólo será cuestión de copiar la imagen al USB, al CD o al directorio tftp y realizar los ajustes necesarios para poder arrancarla.

Publicado por primera vez en http://enavas.blogspot.com.es