Detailed Walkthrough: Install Ubuntu 20.04 on Hyper-V with Enhanced Session

Utilizar el modo de sesión mejorada en Microsoft Hyper-V Manager es una forma más cómoda de gestionar VMs que el modo de sesión básico en VMConnect. El modo de sesión mejorado utiliza el Protocolo de Escritorio Remoto (RDP) para permitirle adjuntar recursos de la máquina host (unidades, dispositivos USB, impresoras, etc.) a las máquinas virtuales. Cuando se utiliza este modo, ciertas acciones se vuelven disponibles para usted como la capacidad de cambiar el tamaño de la pantalla de una máquina virtual, copiar y pegar texto de un host a un invitado, y al revés, etc.

Activar el modo de sesión mejorada es sencillo en Windows ejecutándose como sistema operativo invitado en Hyper-V, ya que Windows viene con la función de Escritorio Remoto. Sin embargo, para las distribuciones Linux que se ejecutan como sistemas operativos invitados en Hyper-V, el escritorio remoto no está preconfigurado. Ubuntu 20.04 LTS, que es bastante popular en estos días, a menudo se implementa en máquinas virtuales Hyper-V, en particular, cuando no se puede instalar Linux como sistema operativo anfitrión. Sigue leyendo para aprender a utilizar Hyper-V en el modo de sesión mejorada para ejecutar Ubuntu en Windows.

NAKIVO for Hyper-V Backup

NAKIVO for Hyper-V Backup

Agentless, application-aware backups for Hyper-V. Anti-ransomware protection, instant VM boot from backup, other virtual/physical platform support and more.

Creación y configuración de una máquina virtual

Vamos a ver cómo crear y configurar un Ubuntu 20.04 VM desde cero en Hyper-V. En esta entrada de blog, estoy usando Windows 10 Pro versión 20H2 con Hyper-V instalado. El nombre de host de mi máquina host Windows 10 es home-pc. Tienes que habilitar Hyper-V antes de poder ejecutar la máquina virtual de Ubuntu. Si no tiene Hyper-V instalado en su host Windows, lea cómo instalar Hyper-V en Windows 10 y Windows Server 2019.

Para crear una nueva máquina virtual en Hyper-V, abra Hyper-V Manager, haga clic con el botón derecho en el nombre de su máquina host y, en el menú contextual, haga clic en Nueva máquina virtual > .

Creating a new VM to install Ubuntu on Hyper-V

Se abre el Asistente para nueva máquina virtual. Puede omitir el paso Antes de empezar.

Especifique el nombre y la ubicación. Introduzca un nombre de máquina virtual, por ejemplo, Ubuntu Hyper-V. Seleccione la casilla Almacenar la máquina virtual en una ubicación diferente, y seleccione la carpeta donde desea almacenar los archivos de la VM, por ejemplo, E:\VMs\. Pulse Siguiente en cada paso del asistente para continuar.

Hyper-V Manager Windows 10 – creating a new VM

Especificar Generación. Seleccione la generación de la nueva máquina virtual. Es mejor elegir la Generación 2 porque dispone de más funciones y los límites son más altos. Las máquinas virtuales de segunda generación utilizan UEFI. Más información sobre las máquinas virtuales Hyper-V de Generación 1 y Generación 2.

How to run Ubuntu on Windows 10 – creating a new Gen2 VM

Asignar memoria. Especifica la cantidad de memoria disponible para la máquina virtual. Selecciono 4096 MB, que es suficiente para ejecutar Ubuntu sin realizar tareas pesadas. Seleccione la casilla de verificación Utilizar memoria dinámica para esta máquina virtual. Cuanta más memoria asignes a la máquina virtual, más cómodo será el trabajo. No asigne toda la memoria de su ordenador a la máquina virtual; deje memoria para el sistema operativo anfitrión. Si ejecutas otras VMs simultáneamente con esta VM Linux, recuerda que las otras VMs también necesitan memoria.

Ubuntu on Hyper-V – configuring virtual memory

Configurar la red. Seleccione un conmutador virtual al que se conectará el adaptador de red virtual de la máquina virtual. Si no ha creado ningún conmutador virtual, puede hacerlo más tarde y editar la configuración de la máquina virtual.

Selecting a virtual switch for VM network connection

Conectar disco duro virtual. Haga clic en Crear un disco duro virtual. Introduzca el nombre del disco virtual, por ejemplo, Ubuntu Hyper-V.vhdx. Defina la ubicación del archivo del disco virtual. Debe seleccionar la ubicación en su directorio utilizada para almacenar las máquinas virtuales Hyper-V. En mi caso, el directorio seleccionado es E:\VMs\Ubuntu Hyper-V\Discos duros virtuales\. Ajuste el tamaño del disco virtual. Selecciono 15 GB para mi Ubuntu 20.04 VM utilizado para fines de prueba.

Creating a new virtual disk for the Ubuntu Hyper-V VM

Opciones de instalación. Seleccione Instalar un sistema operativo desde un archivo de imagen de arranque. Haga clic en Examinar y seleccione la ubicación de la imagen de instalación ISO de Ubuntu 20.04. La versión de Ubuntu que voy a instalar es la 20.04.2. Puede descargar la imagen de instalación desde el sitio web oficial de Ubuntu.

Selecting the installation image of Ubuntu 20.04

Resumen. Compruebe el resumen de configuración y haga clic en Finalizar para terminar la creación de la nueva máquina virtual.

Checking the configuration summary of the new Ubuntu Hyper-V virtual machine

Abra los ajustes de la máquina virtual Ubuntu Hyper-V que ya ha creado. Haga clic con el botón derecho en la máquina virtual Hyper-V de Ubuntu en Hyper-V Manager y, en el menú contextual, pulse Ajustes.

Using Hyper-V Manager Windows 10 – editing the virtual machine settings of the Ubuntu VM

En el panel de navegación, seleccione Seguridad en la sección Hardware y anule la selección de la casilla Activar arranque seguro. El arranque seguro no es necesario para esta máquina virtual. Puede comprobar y editar otros ajustes de la máquina virtual si es necesario. Pulse OK para guardar los ajustes y cerrar esta ventana.

Secure Boot must be disabled

Instalación de Ubuntu 20.04 en una máquina virtual

Una vez creada la nueva máquina virtual, debe instalar Ubuntu 20.04 como sistema operativo invitado en esta VM. Encienda la máquina virtual, el instalador de Ubuntu 20.04 debería arrancar desde la imagen de instalación ISO adjunta. El proceso de instalación de Ubuntu Linux se explica en detalle en la entrada del blog sobre la instalación de Linux en Hyper-V.

Me centraré sólo en dos pasos de las instalaciones. En este ejemplo, selecciono Instalación normal con la opción Descargar actualizaciones mientras instalo Ubuntu 20.04.

How to install Ubuntu on Hyper-V – updates and other software options

La opción importante que debes seleccionar es requerir la contraseña para iniciar sesión en el paso «¿Quién eres?» de la instalación. El uso del modo de sesión mejorado para la máquina virtual Ubuntu en Hyper-V no está disponible si se selecciona la opción Iniciar sesión automáticamente.

You should require your password to log in when installing Ubuntu on Hyper-V

Los servicios de integración de Hyper-V de Ubuntu forman parte de la distribución de Linux, por lo que no es necesario instalar manualmente el paquete descargado proporcionado por Microsoft.

Configuración posterior a la instalación en Ubuntu

Hay cosas importantes que hacer después de instalar Ubuntu 20.0. Tienes que descargar y ejecutar el script para configurar Ubuntu 20.04 instalado en una máquina virtual Hyper-V como sistema operativo invitado para que funcione el modo de sesión mejorado.

Abra la consola (terminal) en Ubuntu 20.04.

Vaya al directorio de descargas:

cd ~/Downloads/

Descargue el script actualizado para Ubuntu 20.04:

wget https://raw.githubusercontent.com/Hinara/linux-vm-tools/ubuntu20-04/ubuntu/20.04/install.sh 

Añade permisos de ejecución al archivo de script install.sh descargado:

sudo chmod +x install.sh

Ejecuta el script con privilegios de root:

sudo ./install.sh

Downloading and running the configuration script to use the enhanced session

Cuando finalice la ejecución del script, se le pedirá que reinicie Ubuntu 20.04 y ejecute el script de nuevo tras el reinicio.

Running the script in the Linux VM to enable using the enhanced session mode in Hyper-V

Reinicie la máquina Linux:

init 6

Después de reiniciar, abra el terminal, vaya al directorio donde se encuentra el script, y ejecute el script una vez más:

cd ~/Downloads/

sudo ./install.sh

Reinicie su máquina virtual Ubuntu cuando finalice la ejecución del script.

The second running of the configuration script on Ubuntu

Configuración en el equipo host Windows que ejecuta Hyper-V

Debe permitir el modo de sesión mejorado en los ajustes generales de Hyper-V. De lo contrario, el icono del modo de sesión mejorado estará inactivo en la ventana VM. Abra Hyper-V Manager, haga clic con el botón derecho del ratón en el nombre del equipo host Windows en el que está instalado Hyper-V y, en el menú contextual, haga clic en Ajustes de Hyper-V.

Opening Hyper-V Settings

Seleccione la Política de modo de sesión mejorado en el panel de navegación y, a continuación, active la casilla de verificación Permitir modo de sesión mejorado. Pulse Aceptar para guardar los ajustes de Hyper-V y cierre la ventana.

Allowing the enhanced session mode in Hyper-V settings

Ahora debe configurar Hyper-V para habilitar el modo de sesión mejorada utilizando el HvSocket para la VM «Ubuntu Hyper-V» en la que está instalado Ubuntu 20.04.

Ejecute este comando en PowerShell (como administrador) en la máquina host Windows que ejecuta Hyper-V:

Set-VM -VMName <your_vm_name>  -EnhancedSessionTransportType HvSocket

Utilice cuotas dobles si el nombre de la máquina virtual contiene espacios. En mi caso el comando es:

Set-VM -VMName "Ubuntu Hyper-V" -EnhancedSessionTransportType HvSocket

Enabling the enhanced session mode for Ubuntu on Hyper-V by using PowerShell on the Windows host

Es posible que vea el siguiente error:

Set-VM : No se puede encontrar un parámetro que coincida con el nombre del parámetro ‘EnhancedSessionTransportType’.

At line:1 char:30

+ Set-VM -VMName «Ubuntu20-04» -EnhancedSessionTransportType HvSocket

+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

+ CategoryInfo : InvalidArgument: (:) [Set-VM], ParameterBindingException

+ FullyQualifiedErrorId : NamedParameterNotFound,Microsoft.HyperV.PowerShell.Commands.SetVM

Este error puede producirse si se utiliza la versión antigua de PowerShell, que no es compatible con los nuevos cmdlets y parámetros.

The error message in PowerShell displays that a parameter cannot be found

En este caso, siga esta recomendación: Intente actualizar el sistema operativo Windows del host a Windows Server 2019, Windows 10 1803 o una versión más reciente. Si no puede actualizar el sistema operativo, actualice Windows PowerShell a una versión más reciente que incluya los cmdlets y funciones necesarios.

Es posible que tenga que reiniciar el host Hyper-V (no olvide ejecutar el último comando para habilitar el modo de sesión mejorado para Ubuntu 20.04 para Hyper-V en PowerShell). Detener e iniciar la máquina virtual Linux. Cuando arranque Ubuntu, debería ver una ventana con la configuración de la pantalla de la máquina virtual y otras opciones del modo de sesión mejorado. Haga clic en Mostrar opciones y seleccione los recursos necesarios en la pestaña Recursos locales para conectar los recursos del host al SO invitado (Ubuntu 20.04 en nuestro caso) de la máquina virtual. Se recomienda desmarcar las impresoras por primera vez para reducir la probabilidad de problemas.

Connecting to the Ubuntu VM by using the enhanced session mode in Hyper-V

Introduzca el nombre de usuario y la contraseña de su usuario de Ubuntu en la ventana de inicio de sesión de Xorg. Observe que el botón de modo de sesión mejorado está ahora activo en la ventana de la máquina virtual.

Ubuntu on Hyper-V – the enhanced session is enabled and you should enter credentials to open the Xorg session

Ahora debería ver la GUI (interfaz gráfica de usuario) y el Escritorio de Ubuntu 20.04. Intenta utilizar el portapapeles compartido y otras funciones de uso compartido, y cambiar la resolución de pantalla en la VM.

Connection to Ubuntu on Hyper-V is established in the enhanced session mode

Si ve una pantalla negra después de introducir sus credenciales, la razón puede ser la siguiente: Un usuario ya ha iniciado sesión en la sesión de escritorio de Ubuntu. Cerrar la sesión del usuario y finalizar esa sesión. A continuación, intente conectarse a Ubuntu utilizando el modo de sesión mejorada y Xrdp en Hyper-V. Puede reiniciar la máquina virtual de Ubuntu y conectarse a Ubuntu con el modo de sesión mejorado.

Si la opción de sesión mejorada no está disponible para su invitado Ubuntu 20.04 en Hyper-V, intente editar el archivo de configuración xrdp.ini ubicado en /etc/xrdp. Debe editar el archivo con privilegios de root. Edite dos líneas en el archivo xrdp.ini.

Cambia estos parámetros:

port=3389 to port=vsock://-1:3389

use_vsock=true to use_vsock=false

Este problema debería estar solucionado para Ubuntu 20.04.1.

Lea también la entrada del blog sobre la configuración de RDP en Linux para aprender más sobre la configuración manual.

Conclusión

Ubuntu Linux es un gran sistema operativo, cómodo, fiable y muy utilizado en todo el mundo. Si utiliza Windows instalado en su ordenador como sistema operativo anfitrión, puede ejecutar Ubuntu en una máquina virtual Hyper-V. Esta entrada del blog ha explicado cómo habilitar el modo de sesión mejorada para una máquina virtual que ejecuta Ubuntu 20.04 en Hyper-V. En este tutorial se utiliza Windows 10 20H2 como máquina anfitriona. Puede realizar la misma configuración en Windows Server 2019. El modo de sesión mejorado le ofrece funciones adicionales para trabajar con la máquina virtual de forma más cómoda. El punto principal de la configuración es ejecutar el script de configuración en el invitado de Ubuntu.

Si utiliza máquinas virtuales Hyper-V, no olvide hacer backups de Hyper-V para proteger los datos de sus máquinas virtuales. Descargue la edición gratuita de NAKIVO Backup & Replication, y haga backups de las máquinas virtuales en sus hosts Hyper-V.

1 Year of Free Data Protection: NAKIVO Backup & Replication

1 Year of Free Data Protection: NAKIVO Backup & Replication

Deploy in 2 minutes and protect virtual, cloud, physical and SaaS data. Backup, replication, instant recovery options.

Artículos recomendados