Archivos de la categoría: Virtualizacion

Android x86 colgado en la linea de comandos

Hola Mundo:

Este post es sobre un laboratorio que estoy haciendo. El desarrollo de éste requiere de trabajar con Android en una máquina virtual. En este caso, estoy usando Oracle Virtualbox.

Al momento de instalar Android, que lo puedes conseguir desde aqui: https://www.android-x86.org, en una máquina virtual, el proceso es bien simple. Lo importante es que en el proceso de particionado de disco, marques la partición como Boot.

El problema se presenta al arrancar. Al parecer el proceso parte bien, pero se queda pegado en la línea de comandos:

El motivo de este problema, es que no cuenta la máquina virtual con la configuración de la controladora gráfica. Tiene que quedar con el adaptador VBoxVGA y con la aceleración 3D activada.
Con esto el sistema iniciará de forma normal.
Espero que les sirva.

Soporte para USB en VM sobre Virtualbox

Hola Mundo:

Esto me trajo muchos problemas por meses. El problema consistía en que la máquina virtual con Windows 7 Pro x64 corriendo sobre Virtualbox en Mac OS X no reconocía los dispositivos que les conectaba por USB.
Mismo escenario con Windows 10, pero con Windows XP Pro x86 funcionaba sin problemas. Podía conectar dispositivos y funcionaba de 10.

Investigando en Internet, llegué a la plataforma de bug tracker de Virtualbox y encontré que un problema parecido había sido solucionado hace años.

Necesitaba trabajar con los USB en mi VM y estuve meses con una carpetita de paso en el host físico para hacer ahí el intercambio de los archivos a las unidades de almacenamiento.
Era bien molesto, porque necesitaba hacer otras cosas con otro tipo de dispositivos que en Mac no podía hacer.

Se me ocurrió hacer lo siguiente: En el apartado de puertos  USB me aseguré que la máquina tuviera soporte para USB y seleccioné la opción de USB 2.0 (EHCI) Controller y habilité un filtro para cada dispositivo USB que necesitaba usar en el momento. El resultado quedó así:

Maravillosamente funcionó. Windows 7 fue capaz de instalar los controladores que necesitaba para hacer funcionar el dispositivo.

¡Espero que le sea de utilidad!

Chau

LTSP en Debian

Hola Mundo:

 Es complicado ser profe. Se los digo, porque tienes que inventar actividades para hacer que los alumnos se
entusiasmen, se diviertan y aprendan. Encuentro que no hay nada mejor que aprender metiendo las manos.

Uno de mis cursos es un taller de hardware, donde se les enseña a los alumnos las partes del computador, como armar y desarmar y otras clases de dispositivos. El problema está en que ellos ya conocen del tema (y bastante)  y resulta difícil enseñarles algo que ellos dominan bastante bien.

Materiales no teníamos mucho en la sala de clases. Teníamos un puñado de computadores antiguos, en los que no teníamos la certera de que funcionaran. No sabíamos en qué estado estaban, ni mucho menos si encendían o no.

Realizaron pruebas y de todos, lograron hacer funcionar unos cuantos. Durante el armado de los computadores, nos dimos cuenta que todos los discos duros estaban malos o se los habían llevado otros alumnos.

No fue dificil revolver la cabeza y acordarse del píngüino. Les conté que existía una solución llamaba LTSP y que consistía levantar un sistema, escritorio, funcional con una administración centralizada y todo se hacía a través de la red, inclusive el booteo.

Mi distribución favorita es Debian, asi que decidí instalar el sistemita ahí.

Creación de la máquina virtual
Para el propósito usé una máquina virtual sobre Virtualbox con los siguientes recursos:

  • Memoria: 1024 MB
  • Disco Duro: 10 GB
  • Procesador: 1
  • Interfaces de red: 1
Lo importante está en que la interfaz de red estaba conectado a la red interna. La red interna funciona como un switch virtual. Es donde pueden conversar las máquinas virtuales de forma aislada de la red física. Se pueden crear distintas “redes internas” con la herramienta.
Para hacer pruebas, creé una máquina virtual que simulaba ser un cliente tontorrón:
  • Memoria: 512 MB
  • Procesador: 1
  • Interfaces de red: 1
Es imperante que esta máquina tenga el arranque por red habilitado y que sea prioridad,
Instalación del sistema
No hablaré sobre la instalación de Debian. Hay muchos artículos que hablan en internet sobre eso. En todo caso, la instalación es super intuitiva y no requiere de mucho trabajo. Nada más deben asegurarse que están instalando el entorno gráfico.
Una vez que el sistema está instalado, tienen que abrir una consola y como root ejecutar
apt-get install ltsp-server-standalone

Descargará una serie de paquetes. Este proceso toma poco tiempo.

Construcción del cliente
Lo importante es construir una imagen que es que le copiará por TFTP a los clientes que se conecten.
Existen diversos parámetros que los pueden revisar en esta página.
Lo más sencillo es ejecutar:


ltsp-build-client

Y santo remedio. Comenzará a construir y empaquetar una imagen para cliente. La imagen la cream a partir de la configuración que tengan en su computador. Es posible personalizarla, pero escapa de este tutorial.

Configuración servidor DHCP
La configuracion que viene por defecto no funciona. De hecho, se podrán dar cuenta que al arrancar el servicio da un mensaje de error en rojo.
En una rápida configuración, editaremos el archivo /etc/dhcpd/dhcpd.conf  y agregaremos al final del archivo la siguiente linea:

include "/etc/ltsp/dhcpd.conf"

Este cambio agregará la configuración que debiera tener el servidor DHCP para permitir que los clientes reciban una imagen por TFTP. El archivo incluye la dirección del servidor TFTP.
Si no quieres realizar muchos cambios a los archivos de configuración, te recomiendo que configures tu tarjeta de red con la dirección 192.168.67.1 /24.

Retoques en la configuración
Es necesario realizar pequeñas ediciones en la configuración de algunos componentes para asegurarnos que el servicio funcionará como reloj. Lo primero es agregar la siguiente línea al archivo /etc/exports

/opt/ltsp *(ro,no_root_squash,async,no_subtree_check)

Luego, asegúrense que el servicio de TFTP inicia por si solo. Para esto tienen que editar el archivo /etc/default/tftpd-hpa y agregar la línea:

RUN_DAEMON="yes"

Después que ya realizaron el cambio, tienen que comentar,  en el archivo /etc/inetd.conf, la línea:

#tftp           dgram   udp     wait    root  /usr/sbin/in.tftpd /usr/sbin/in.tftpd -s /var/lib/tftpboot

y reinician los servicios:

invoke-rc.d openbsd-inetd restart
invoke-rc.d tftpd-hpa restart

Final
Teniendo todo listo, ya están en condiciones de hacer funcionar el sistema. Tienen que conectar a la red a un computador que soporte arranque por red.
Al final de la implementación debieran llegar a algo así:

El curso completo con los que hicimos la implementación real:

Eso. Chau

Agrandar disco virtual con Virtualbox

Hola Mundo. Una de las cosas que me enferma de Virtualbox, es que en la ventana principal de la aplicación no aparecen todas las opciones para trabajar con los distintos medios virtuales. Por ejemplo, no existe ninguna opcion para hacer un resize del disco duro virtual.

No todo es tan malo, ya que existe una herramienta llamada VBoxManage que funciona bajo la linea de comandos y que se encarga de las tareas un poco más complejas.

Hay que iniciar el cmd con permisos de administrador y navegar hacia la carpeta de Virtualbox (En mi caso es C:Program FilesOracleVirtualbox) e invocamos a la herramienta. La sintaxis es:

vboxmanage modifyhd "rutaalvdi" --resize tamaño_en_MB
Por ejemplo:
Si quiero dejar en 50 GB el VDI de mi VM tengo que hacerlo asi
vboxmanage modifyhd "disco.vdi" --resize 50000
Y mostrará el porcentaje de completación.

Sencillo, ¿no?