Hola ¿Cómo han estado?
Espero que se encuentren bien pese a los huracanes y a los terremotos que hemos estado sufriendo estos últimos días. En esta ocasión sólo tendremos un breve aviso parroquial y el cual es que finalmente nos hemos librado de las garras de Dropbox y de 4shared.
En el pasado empecé a utilizar los servicios de 4shared ya que me parecía un servicio muy cómodo y fácil de administrar. Con el paso del tiempo cambiaron sus políticas y obligaron a registrarse para poder descargar los archivos alojados en sus servidores. A pesar de ello me parece que brindan un excelente servicio, pero sólo para almacenamiento personal en la nube y no para compartir archivos con terceros. También me parece que tener una cuenta de 4shared es muy conveniente, pues es un servicio donde se pueden hallar algunos archivos poco convencionales (como firmwares de celulares muy viejos).
A la vista de esos inconvenientes procedí a utilizar Dropbox. A pesar de que Dropbox brinda un espacio de almacenamiento ridículo y un ancho de banda risible, permitía compartir de una forma muy fácil y cómoda los archivos. Además contaba con la ventaja de que permitía la ejecución remota de scripts flash como el Dewplayer y se podían emplear los archivos MP3 alojados en Dropbox como fuente de datos remota.
Desgraciadamente Dropbox cambió sus políticas este 2017, lo que le hizo perder las únicas ventajas que brindaba sobre otros servicios, además de que ese cambio de políticas provocó que se rompieran todos los enlaces previos que había puesto en el blog (pues cambiaron las direcciones a los archivos y los hicieron privados).
Así pues, decidí pasar todos los datos a Google, por lo que en estos momentos el blog se encuentra alojado íntegramente en los servidores de Google (las entradas del blog, todas las imágenes y ahora también todos los archivos y enlaces).
Espero que este cambio sea para mejorar, pues ha sido una labor bastante ardua la revisión de cada una de las entradas del blog para corroborar que todos los enlaces se encuentren funcionales. Además me pude percatar que algunas de las páginas a las que llegué a hacer referencia ya no existen más, por lo que esos enlaces han sido removidos o cambiados por enlaces a la Wayback Machine.
Que tengan un excelente inicio de semana. ¡Estamos en contact!
domingo, 10 de septiembre de 2017
martes, 5 de septiembre de 2017
Peashy Master Race (Virtual Memphis Edition)
Hola, ¿Cómo están?
Espero que se encuentren bien. En esta ocasión volvemos a las dosis de debraye dándole continuidad a la entrada anterior y para ello vamos a crear una máquina virtual en la cual instalaremos y ejecutaremos Windows 98 SE. Esto es debido a que muchas veces requerimos de utilizar software que funcionaba en Windows 9x pero no utilizamos puertos, rutinas o periféricos especiales, por lo que una máquina virtual sería una forma cómoda y rápida de poder ejecutar esos programas.
Advertencia 1: Esta entrada es aún más aburrida que la entrada anterior. Así que si lo que buscan es diversión, les recomiendo que acudan a los blogs de mis amigos, donde podrán obtener un poco de esparcimiento n_n.
Advertencia 2: Esta entrada se encuentra plagada de imágenes, así que si se encuentra visualizando este blog en un navegador chafa, o en un dispositivo con pocos recursos (o sea, también chafa) puede sufrir relentizaciones. Si está visualizando este blog con un navegador en modo texto, esta entrada le parecerá insufrible (y chafa).
Ingredientes.
Para nuestra máquina virtual utilizaremos los siguientes ingredientes:
- Una computadora real, no virtual (seguro que ésta no se la esperaban n_n).
- VirtualBox. Usaremos la versión para simples mortales, que tiene interfaz gráfica y se ejecuta sobre el sistema operativo anfitrión. Si usted emplea la versión para sistemas "headless" con administración web o montada sobre interfaces de virtualización más robustas y no simple paravirtualización, definitivamente esta entrada le parecerá perfectamente aburrida y sin información valiosa, pues esta información es nivel "principiante" (referirse a la Advertencia 1 n_n).
- Una imagen de disco de instalación de Windows 98SE (cortesía de Nostalgia Nerd X_x).
- Un sistema operativo funcional que utilizaremos como anfitrión.
- Espacio suficiente para crear una unidad de almacenamiento para la maquina virtual. Puede ser en una unidad de disco, aunque en este ejemplo optaré por utilizar un disco RAM (porque me sobra RAM y hay que usarla en algo n_n).
Primero nos aseguramos de tener todos los ingredientes, instalar VirtualBox, tener a la mano el instalador de Windows 98 SE y su clave de instalación.
Creando la máquina virtual.
Arrancamos VirtualBox y creamos una nueva máquina virtual (en este caso la llamaremos Win98).
Un nombre sumamente original n_n. |
¡Imagínense tener 512 MB de memoria PC100! |
- Abrimos una terminal y nos desplazamos al directorio donde alojaremos el disco virtual.
- Para este ejemplo haremos un disco virtual llamado "image.img" de 1GB de capacidad (1024MB). Tecleamos el siguiente comando: "dd if=/dev/zero of=image.img iflag=fullblock bs=1M count=1024 && sync"
- El comando anterior hace lo siguiente:
- dd (dataset definition) es el comando que nos creará nuestro disco virtual.
- if=/dev/zero (input file) indica que nuestro archivo de entrada serán "ceros".
- of=image.img (output file) indica que nuestro archivo de salida será la imagen de disco.
- iflag=fullblock (input flag) nos sirve para que el parámetro count sea interpretado como la cantidad de bloques que se leerán del archivo de entrada.
- bs=1M (block size, no "bullshit" n_n) indica el tamaño de los bloques que utilizaremos tanto para leer del archivo de entrada, como los que se escribirán en el archivo de salida.
- count=1024 (contador) copiará 1024 bloques del archivo de entrada al archivo de salida. Si no se especifica, crearemos un archivo que llenará el medio de almacenamiento con el que estemos trabajando, así que mucho cuidado en no omitir este parámetro.
Le ha demorado 2 segundos hacer el archivo. Y presumimos el modelo de la netbook X_x. |
Al terminar la ejecución de dd se ejecuta el comando sync, con la finalidad de que el disco creado se escriba en el medio de almacenamiento y (que en mi caso es también memoria) no se mantenga en memoria. Esto es debido a que Linux prefiere mantener la información en memoria RAM para evitar en la medida de lo posible accesos a los discos (que son más lentos que la RAM).
Una vez creada la imagen del disco virtual, debemos montarla en la máquina host. Para ello primero teclearemos el comando losetup para ver qué unidades loop tenemos en uso. Si al utilizar el comando losetup no ocurre nada, quiere decir que no estamos empleando unidades loop y podemos emplear el valor loop0 para montar el disco virtual. En caso de que nos muestre información de unidades loop, emplearemos la primer unidad loop disponible (loop1, loop2, etc.). Para montar el disco virtual en el loop0 tecleamos el comando: "losetup loop0 image.img"
En caso se que el comando anterior muestre algún error de permisos, podemos ya sea ejecutarlo como superusuario o agregar nuestro usuario al grupo "disk".
Una vez montado nuestro disco podemos verificar que se ha montado la unidad ejecutando el comando: file -s /dev/loop0 y nos debe devolver "/dev/loop0: data". Si nos devuelve "/dev/loop0: empty" nos indica que no se ha montado la unidad loop.
Una vez que esté montada la unidad loop tenemos que crear el archivo VMDK que le permitirá a VirtualBox acceder al disco. Para este ejemplo crearé un archivo VMDK llamado ramloop00.vmdk (el nombre puede ser el que sea) en mi directorio de usuario. Para ello tecleamos el comando: "VBoxManage internalcommands createrawvmdk -filename /home/raven/ramloop00.vmdk -rawdisk /dev/loop0". Recuerden ajustar el comando a los nombres y rutas que empleen en sus computadoras.
Una vez creado el archivo VMDK, volvemos a VirtualBox y seleccionamos ese archivo como nuestra imagen de disco duro.
Nos debe detectar el tamaño del disco y no nos tiene que mostrar errores. |
Preparando la instalación.
Montamos el ISO del disco de instalación de Windows 98 en la unidad de CD virtual y arrancamos la máquina virtual.
En el primer menú seleccionamos "Boot from CD-ROM".
Opción 2. |
De nuevo opción 2. |
1GB era considerado un disco ENORME!! |
En el menú principal seleccionamos la primera opción (Create a DOS partition or Logical DOS Drive).
Opción 1. |
Se me había olvidado poner esta imagen X_x. |
En la siguiente ventana seleccionamos la opción Y.
"Y" de YEAHHH!!! |
No olvidemos reiniciar. |
Opción 2... De nuevo. |
Deja Vu! |
Después tecleamos "cd win98" y presionamos ENTER.
Tecleamos "format c:" y presionamos ENTER. Nos pedirá que confirmemos si deseamos continuar, a lo que respondemos "Y" (y ENTER), al terminar de formatear nos pedirá la etiqueta del volumen creado, la cual podemos dejar en blanco.
Notemos el serial, es 1C19-14F8 |
Luego tecleamos "md win98" y presionamos ENTER.
Posteriormente tecleamos "cd win98" y presionamos ENTER.
Tecleamos "d:" y presionamos ENTER.
Tecleamos "copy *.* c:" y presionamos ENTER.
Una vez que termine de copiar los archivos tecleamos "c:" y presionamos ENTER.
Comenzando la instalación.
Iniciaremos (por fin n_n) la instalación de Windows 98, para ello tecleamos "setup /p j" (para forzar la instalación de ACPI) y presionamos ENTER.
Los parámetros mágicos, son muy importantes. |
Comienza la diversión. |
El tradicional directorio Windows. |
Para sentirnos "Usuarios Avanzados" n_n, |
¿De donde rayos sacará esos nombres tan raros? |
Hasta este punto hemos tecleado ":" con la tecla "Ñ" X_x |
Olvidamos hacer un disquete virtual X_x. |
A continuar con la instalación. |
Sólo nos falta media hora más X_x. |
Mientras podemos disfrutar de los anuncios que acompañan la instalación y maravillarnos con las increíbles posibilidades que este sistema operativo nos brindará, para arrancar el nuevo milenio como unos verdaderos amos de la tecnología y del internet.
¿Se podían enlazar varios modems? A buena hora me entero X_x. |
¿Alguna vez alguien hizo "streaming" con el Windows Media Player? |
La promesa que hacen todos los Windows... Y que nunca cumplen X_x. |
¡A sacarle jugo a ese hardware gamer! |
A reiniciar se ha dicho. |
Soy el encargado de comprar los pudding n_n. |
¿Dónde firmo? |
Favor de no usar esta clave, ya que aunque es válida se muestra sólo como un ejemplo (guiño, guiño) |
Al instalar Windows 98 en computadoras reales modernas, si no se pasa el parámetro "/p i" a la instalación nos trabaremos en este punto. |
Compatible con el horario de verano n_n. |
¡Ya casi! |
¿Y ese "flickering"? |
No olviden deshabilitar esta pantalla de bienvenida. |
Llegados a este punto y tal como la gran mayoría de los tutoriales que hay en internet concluimos el debraye, pues se ha logrado el objetivo de "instalar" el sistema operativo.
Estamos en contact!
¿El fin?
Mmmm...
Ejem...
¡No es cierto! Aún quedan algunas cosas por hacer antes de que esta máquina virtual sea siquiera de utilidad.
Notaremos de inmediato que la máquina virtual se mueve con la agilidad de un perezoso entrado en sueño X_x. Esto es debido a que la emulación del modo de video de 4 bits le resulta sumamente demandante a VirtualBox. Para resolver este inconveniente tenemos que instalar un driver de video, el cual dependerá del tipo de procesador que tenga nuestra computadora anfitrión. Quizás leer lo anterior le sorprenda, pero es la realidad y le costó un poco de trabajo a su servidor darse cuenta de ello, ya que asumimos que al ser una máquina virtual los dispositivos son virtuales y por lo tanto "independientes" al hardware real. El asumir lo anterior le llevó a su servidor perder una gran cantidad de tiempo que espero, usted amable lector se pueda ahorrar.
Si tenemos un procesador Intel tendremos que emplear el "Display Doctor" de Scitech. Si por otra parte contamos con un procesador AMD tendremos que utilizar los "Universal VESA/VBE Video Display Driver" de BearWindows. Si tratamos de emplear los drivers universales con procesadores Intel todo funcionará bien (en teoría), pero si tratamos de emplear el Display Doctor con un procesador AMD tendremos unos errores relacionados a los dispositivos virtuales del controlador de video y al reiniciar Windows no arrancará (marcará error de protección y se quedará en bucle infinito).
Para facilitarnos la vida un poco he decidido poner cada uno de los drivers de video dentro de una imagen ISO que se deberá montar en el CD-ROM de la máquina virtual.
Los de Display Doctor están acá.
Los de Universal VESA/VBE están acá.
Si nuestro procesador es Intel (equipo azul de los campeones).
Para instalar el driver de video de Scitech tenemos que descargar, descomprimir y montar la imagen ISO en la máquina virtual.
¿Qué información contendrá ese archivo de texto misterioso? |
Esperemos que pronto salga una versión "Final". |
Tendremos 21 días antes de decidirnos a comprarlo. |
Nótese el patrón para simular el degradado azul. |
¿Que sería de una instalación sin una BSOD n_n? |
La ventana de la utilería no cabe en la pantalla X_x. |
Y la interfaz tampoco es de lo más intuitiva, |
En las opciones que se abren tenemos que seleccionar "Scitech Nucleus Driver", presionar en el botón a la derecha que dice "Apply" y reiniciar.
Queremos máximo rendimiento y confiabilidad n_n. |
¡A reiniciar se ha dicho! |
Se los advertí X_x. |
Si nuestro procesador es AMD (porque no nos alcanzó para uno Intel X_x).
Para instalar los drivers de Bearwindows tenemos que montar la imagen con los drivers en la máquina virtual.
Dar click derecho sobre el ícono de "My Computer" y seleccionar "Properties".
O teclear Win+Pause |
Tampoco tenemos drivers para el USB X_x. |
Seleccionamos la pestaña de "Driver" y presionamos el botón "Update Driver".
M$ y sus claras explicaciones n_n. |
¡Siguiente! |
¡Siguiente!¡Siguiente! |
¿Se imaginan tener una tarjeta con 32MB de video RAM en 1999? |
¡Siguiente!¡Siguiente!¡Siguiente! |
¿Que aparato es el que se encuentra a la izquierda de la computadora de la imagen? |
¿Acaso será un disco externo de 4TB? |
¡Mucho mejor! |
Por fin se ve decente. |
Y... ¿Cómo transferimos archivos entre la máquina virtual y la máquina real?
Esta es una cuestión un tanto curiosa y podemos emplear diversas técnicas, las cuales dependerán de nuestras necesidades, entorno de uso y porqué no decirlo, de nuestras habilidades. La forma favorita de transferir datos en los tutoriales que hay en internet (si es que abarcan este tópico) es a través de la conexión de red, mapeando una carpeta del sistema anfitrión como unidad de red en el sistema huésped y por medio de SMB o FTP intercambiar los archivos. Este método tiene la ventaja de que se puede modificar el contenido de la carpeta compartida en vivo, sin necesidad de apagar la máquina virtual. Sin embargo tenemos que lidiar con crear usuarios en el SMB, establecer la dirección correcta de conexión, los permisos de los usuarios y también los permisos que se le asignan a los archivos.
Para este debraye emplearemos el método de apagar la máquina virtual y montar el disco virtual en la máquina anfitrión para poder hacer la manipulación de archivos.
Si nuestro anfitrión es Windows (7 en adelante) podemos montar el archivo VHD del disco virtual desde el Administrador de Discos. Si el anfitrión es OSX tendremos que usar el programa “Paragon VMDK Mounter" (requiere registro pero es gratuito) para montar el archivo VHD. Si usamos Linux es posible montar los discos con guestfs, pero en mi caso este método no me ha funcionado, es por ello que recurrí a utilizar un disco virtual en un formato RAW que me permita manipularlo con más libertad.
Para poder acceder al contenido del disco virtual desde Linux primero tenemos que apagar la máquina virtual y desmontar la unidad loop con el comando: "losetup -d /dev/loop0" (o el número de dispositivo loop que esté empleando el disco virtual).
Posteriormente tendremos que montar el sistema de archivos (ojo, que es distinto a montar el disco virtual) en la máquina anfitrión. Para ello necesitamos conocer el "offset" en el que se encuentra el inicio del sistema de archivos que deseamos montar.
Utilizaremos el comando fdisk (el de Linux, no el de Windows/DOS que se llama igual y empleamos casi al principio X_x) con los siguientes parámetros: "fdisk -lu image.img"
Esto nos devolverá para el disco virtual (image.img) empleado en el ejemplo la siguiente información:
Disk image.img: 1 GiB, 1073741824 bytes, 2097152 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x00000000
Disposit. Inicio Start Final Sectores Size Id Tipo
image.img1 * 63 2096639 2096577 1023.7M b W95 FAT32
Como podemos apreciar, nos indica que el tamaño de los sectores en el disco es de 512 bytes (resaltado en verde) y que el sistema de archivos FAT32 donde se encuentra instalado el Windows 98 inicia en el sector 63 (resaltado en rojo).
Con estos datos podemos montar el sistema de archivos en una unidad loop con el siguiente comando: "losetup /dev/loop0 image.img -o $((63 * 512))". El parámetro "-o" nos sirve para especificar el offset donde se encuentra el sistema de archivos y podemos pasarle el parámetro como una operación para no tener que hacer la multiplicación a mano (por si no nos alcanzan los dedos para hacer la operación n_n).
Si pasamos los parámetros de forma correcta podremos abrir el sistema de archivos como si se tratase de una carpeta en el sistema anfitrión y podremos manipular los archivos que deseemos (crear, mover, copiar, borrar o editar). Al terminar de manipular los archivos de la unidad virtual bastará con desmontar el sistema de archivos y aplicar el comando "losetup -d /dev/loop0" para desmontar el dispositivo loop.
Nótese el número de serie con el que se monta el sistema de archivos, el mismo que nos entregó "format c:" (1C19-14F8). |
Otra ventaja que nos da el emplear un disco virtual en formato RAW es que podemos manipularlo con una gran cantidad de herramientas, podremos convertirlo al formato que deseemos e incluso usarlo con otros programas de virtualización o directamente con emuladores. Y si somos realmente osados, podemos escribir directamente la imagen RAW en un dispositivo real.
Ahora sí tenemos una máquina virtual funcional. Por lo cual sólo queda empezar a sacarle provecho. Les recomiendo que una vez que quede bien configurada su máquina virtual hagan un respaldo del archivo del disco duro para evitarse la faena en futuras ocasiones o quedar a salvo en caso se corrupción de archivos, pues recordemos que Windows 9x era célebre por "pudrirse" con el uso cotidiano.
¡Bonus stage!
¿Y si lo único que nos interesa de Windows 98 es su "look and feel" y no su inestabilidad, sus BSOD, sus problemas con el hardware ni sus drivers obsoletos?
En ese caso podemos recurrir a descargar e instalar Plus 98! (acá está un copia local) que nos permitirá tener los temas de escritorio que se incluían en Windows 98 junto con sus cursores y sonidos. Además instala los clásicos protectores de pantalla, entre los cuales se encuentra el favorito de su servidor, el "Laberinto 3D".
Sin embargo, a este paquete le faltan los sonidos de inicio que empleaban los sistemas Windows 9x, en especial el "The Microsoft Sound" (compuesto por Bryan Eno), el cual sin lugar a dudas es uno de los rasgos más característicos de los Windows de aquella época.
Éste es el Microsoft Sound de Windows 95.
Y éste es el Microsoft Sound de Windows 98.
¡Bonus stage 2!
¿Y si queremos hacer una imagen de floppy virtual para usarla con la máquina virtual?
En este caso podemos emplear el comando siguiente:
dd bs=512 count=2880 if=/dev/zero of=floppy.img
El cual nos generará una imagen de floppy 3.5 pulgadas 2HD vacía, que incluso podremos grabar en un floppy real. Una de las grandes virtudes de trabajar con hardware virtual es que no nos cuesta nada, más que unos cuantos segundos, crear los consumibles que necesitemos.
Les acerco una imagen de floppy preformateado y arrancable aquí.
¡Bonus stage 3!
¿Y si lo que necesitamos es hacer imágenes de CD que contengan información que queramos introducir a la máquina virtual? (Tal como hizo su servidor para introducir los drivers de video usados en esta entrada).Para ello podemos meter todos los archivos que nos interese meter en la imagen dentro de un directorio y ejecutamos el comando siguiente:
mkisofs -o imagen.iso ruta_del_directorio
Esto nos generará una imagen ISO que podemos montar en la máquina virtual o incluso grabar en un CD/DVD/BRD real.
Estamos en contact!!!
Suscribirse a:
Entradas (Atom)
¡Feliz 2021! El retorno del debraye pandémico (Edición "Rompemuros").
Hola, ¿Cómo han estado? Espero que estén con bien, con buena salud y con muchas ganas de aburrirse una vez más con una ronda de debrayes. Es...
-
Hola que tal, ¿Cómo están? Espero que se encuentren bien, sobreviviendo a la pandemia y a la nueva normalidad. Por mi parte las cosas han id...
-
Hola, ¿Cómo están? Como siempre, espero que estén bien. Por fin he podido hacer un poco de espacio en la vida real para dedicarle un poco ...
-
Hola ¿Que tal? En esta entrada no estoy colocando descargas (buuu) ni nada. Simplemente estoy colocando los cheats que encontré para el jueg...