Cómo administrar máquinas virtuales Oracle VirtualBox desde la línea de comandos

Descripción general

Hoy en día, la virtualización es un componente importante de la industria de TI. Podemos ver que la virtualización está ganando popularidad en los dominios de servidores, redes y almacenamiento. Para satisfacer las necesidades de los usuarios, surgieron muchas soluciones de virtualización de código abierto y Oracle VirtualBox es una de ellas.

En este artículo, discutiremos la utilidad VBoxManage que se usa para administrar VirtualBox desde la interfaz de línea de comandos. A continuación se muestra la sintaxis de la utilidad VBoxManage

$ VBoxManage [<general option>] <command>

En el comando anterior, la opción general puede ser el modo detallado, suprimir el logotipo, el archivo de respuesta, etc. El comando puede ser varias acciones como: crear vm, enumerar vm, mostrar información de vm, etc.

Crear VM usando VBoxManage

Para crear una VM, debemos usar el comando createvm con la utilidad VBoxManage. A continuación se muestra la sintaxis de la misma:

createvm     --name <name>
              [--groups <group>, ...]
              [--ostype <ostype>]
              [--register]
              [--basefolder <path>]
              [--uuid <uuid>]

Podemos enumerar los tipos de sistemas operativos compatibles con el siguiente comando:

$ VBoxManage list ostypes

Vamos a crear Ubuntu-64 vm desde CLI:

$ VBoxManage createvm --name ubuntu-server --ostype Ubuntu_64 --register

Cuando ejecute el comando anterior, generará el siguiente resultado:

Virtual machine 'ubuntu-server' is created and registered.
UUID: 7433725a-f314-44c7-8625-91d61cc6125d
Settings file: '/home/linux-techi/VirtualBox VMs/ubuntu-server/ubuntu-server.vbox'

Ahora podemos ver la VM recién creada en VirtualBox Manager

VirtualBox-Manager-Ubuntu-Linux

Actualizar máquina virtual

Hemos creado con éxito VM desde CLI. Pero esta VM no se puede usar en este momento, podemos hacerla usable asignando NIC, asignando memoria y adjuntando un disco.

Crear red a través de VBoxManage

Para crear una red puenteada, ejecute los siguientes dos comandos:

$ VBoxManage modifyvm ubuntu-server --bridgeadapter1 vmnet1
$ VBoxManage modifyvm ubuntu-server --nic1 bridged

En el ejemplo anterior, he usado la red vmnet1. Se crea de forma predeterminada cuando se instala Oracle VirtualBox.

Asignar memoria

Para asignar memoria, ejecute el siguiente comando:

$ VBoxManage modifyvm ubuntu-server --memory 2048

Crear disco duro

Para crear un disco duro, ejecute el siguiente comando:

$ VBoxManage createhd --filename VirtualBox VMs/ubuntu-server/ubuntu-server.vdi --size 10000 --format VDI

Cuando ejecuta el comando anterior, generará el siguiente resultado:

0%...10%...20%...30%...40%...50%...60%...70%...80%...90%...100%
Medium created. UUID: 5f530d25-da57-4030-bf56-32d5a29c91b5

Este comando creará un disco duro virtual. Actualmente no está asociado a ninguna VM.

Agregar controlador SATA

En la sección anterior hemos creado un disco duro virtual. Necesitamos un controlador SATA para conectar ese disco. El siguiente comando crea un controlador SATA.

$ VBoxManage storagectl ubuntu-server --name "SATA Controller" --add sata --controller IntelAhci

Adjuntar almacenamiento

Ahora tenemos el controlador SATA y el disco duro virtual en un lugar. Adjuntemos el disco virtual al controlador SATA usando el siguiente comando:

$ VBoxManage storageattach ubuntu-server --storagectl "SATA Controller" --port 0 --device 0 --type hdd --medium VirtualBox VMs/ubuntu-server/ubuntu-server.vdi

Agregar controlador IDE para ISO

Estamos creando una máquina virtual nueva, por lo tanto, necesitamos instalar el sistema operativo desde la imagen ISO. Entonces, agreguemos el controlador IDE usando el siguiente comando:

$ VBoxManage storagectl ubuntu-server --name "IDE Controller" --add ide --controller PIIX4

Adjuntar imagen ISO al controlador IDE

Para adjuntar una imagen ISO al controlador IDE, ejecute el siguiente comando:

$ VBoxManage storageattach ubuntu-server --storagectl "IDE Controller" --port 1 --device 0 --type dvddrive --medium /home/linux-techi/ubuntu-18.04-desktop-amd64.iso

Iniciar máquina virtual

Ahora la máquina virtual está configurada y lista para la instalación. Comencemos VM usando el siguiente comando

$ VBoxManage startvm ubuntu-server

Este comando abrirá VirtualBox Manager desde donde se puede realizar la instalación del sistema operativo.

Trabajar con instantáneas

La instantánea es una copia puntual de la máquina virtual. Podemos tomar una instantánea usando el siguiente comando:

$ VBoxManage snapshot ubuntu-server take "first-snapshot"

Cuando ejecuta el comando anterior, generará el siguiente resultado:

0%...10%...20%...30%...40%...50%...60%...70%...80%...90%...100%
Snapshot taken. UUID: cd5dadc1-dd8f-427e-a6b8-5a3e93307ef9

Podemos ver esta instantánea en el administrador de VirtualBox:

VirtualBox-VM-Snapshot-Linux

Para volver a la instantánea, ejecute el siguiente comando:

$ VBoxManage snapshot ubuntu-server restore "first-snapshot"

Cuando ejecuta el comando anterior, generará el siguiente resultado:

Restoring snapshot ' first-snapshot' (cd5dadc1-dd8f-427e-a6b8-5a3e93307ef9)
0%...10%...20%...30%...40%...50%...60%...70%...80%...90%...100%

Eliminar máquina virtual

Para eliminar VM, ejecute el siguiente comando:

$ VBoxManage unregistervm ubuntu-server --delete

Cuando ejecute el comando anterior, generará el siguiente resultado:

0%...10%...20%...30%...40%...50%...60%...70%...80%...90%...100%

Tenga en cuenta que este comando eliminará todos los archivos de la máquina virtual (archivos de configuración y discos duros virtuales) del sistema.

Conclusión

Este tutorial es un buen punto de partida para la utilidad VBoxManage. Cubrir todos y cada uno de los detalles al respecto está más allá del alcance de este tutorial. Para obtener detalles adicionales, consulte el documento oficial de aquí

Leer también : Cómo instalar VirtualBox en Arch Linux

Leer también : Cómo habilitar la virtualización anidada en VirtualBox en Linux

Entradas relacionadas

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *