This grep has been enhanced in an upwards-compatible way to provide the exact functionality of the historical egrep and fgrep commands as well. It was the clear intention of the standard developers to consolidate the three greps into a single command. - https://pubs.opengroup.org/onlinepubs/9699919799/utilities/grep.html
205 lines
6.1 KiB
Markdown
205 lines
6.1 KiB
Markdown
Author: Jesús E.
|
|
Category: Tutorial
|
|
Date: 2020-05-03 03:12
|
|
Image: 2020/05/virt-manager.jpg
|
|
Lang: es
|
|
Slug: instalar-un-gestor-de-maquinas-virtuales-en-hyperbola-gnulinux-libre
|
|
Tags: maquinas virtuales, tutorial
|
|
Title: Instalar un gestor de máquinas virtuales en Hyperbola GNU/Linux-libre
|
|
|
|
Tu sistema principal puede ser Hyperbola GNU/Linux-libre de arquitectura
|
|
x86_64, por ejemplo, pero con suficiente memoria y poder de procesamiento
|
|
usted pordría ejecutar
|
|
[Trisquel][trisquel]{:target="_blank" rel="noopener noreferrer"} y
|
|
[Dragora][dragora]{:target="_blank" rel="noopener noreferrer"}
|
|
al mismo tiempo, dentro de la misma máquina.
|
|
|
|
## ¿Qué es un máquina virtual?
|
|
|
|
Una máquina virtual es un software que simula un sistema de computación
|
|
y puede ejecutar programas como si fuese una computadora real.
|
|
Este software en un principio fue definido como
|
|
"un duplicado eficiente y aislado de una máquina física".
|
|
|
|
## ¿Qué programas me permiten ejecutar un máquina virtual?
|
|
|
|
En los sistemas operativos totalmente libres existe un
|
|
programa llamado `qemu` que nos permite virtualizar.
|
|
|
|
[Qemu][qemu]{:target="_blank" rel="noopener noreferrer"}
|
|
funciona a través de línea de comandos, pero también
|
|
existen GUI, que como su nombre indica son interfaces
|
|
gráficas para el usuario.
|
|
|
|
En esta guía explicamos cómo instalar
|
|
[Virtual Machine Manager][vm]{:target="_blank" rel="noopener noreferrer"}
|
|
el cual es muy completo al momento de virtualizar sistemas operativos.
|
|
|
|
## Instalación de Virtual Machine Manager
|
|
|
|
### Revisar si su PC soporta virtualización
|
|
|
|
$ LC_ALL=C lscpu | grep Virtualization
|
|
|
|
o ejecutar el comando:
|
|
|
|
$ lsmod | grep kvm
|
|
|
|
Si su computadora admite virtualización, debería ver
|
|
la salida como `Virtualización: VT-x` o `Virtualización: AMD-V`,
|
|
caso contrario su ordenador no es capaz de virtualizar.
|
|
|
|
### Instalando Virtual Machine Manager
|
|
|
|
# pacman -Sy
|
|
|
|
# pacman -S virt-manager qemu vde2 dnsmasq bridge-utils openbsd-netcat libvirt firewalld
|
|
|
|
# gpasswd -a <tu-usuario> kvm
|
|
|
|
# gpasswd -a <tu-usuario> libvirt
|
|
|
|
### Revisar el grupo kvm
|
|
|
|
# grep -E 'group="kvm"|group="78"' /etc/libvirt/qemu.conf
|
|
|
|
Comprobar si existe `group="kvm"` o `group="78"`
|
|
|
|
### Habilitar módulos del kernel para virtualización
|
|
|
|
- Módulo kvm_intel (procesadores Intel)
|
|
|
|
# modprobe kvm_intel
|
|
|
|
- Módulo kvm_amd (prcesadores AMD)
|
|
|
|
# modprobe kvm_amd
|
|
|
|
### Verifique que la máquina virtual este configurada correctamente
|
|
|
|
$ virt-host-validate
|
|
|
|
### Servicios
|
|
|
|
Virt-Manager depende de los servicios `libvirtd` y
|
|
`firewalld` para funcionar.
|
|
|
|
A continuación le explicamos cómo inciar esos servicios:
|
|
|
|
#### Iniciar libvirtd
|
|
|
|
# rc-service libvirtd start
|
|
|
|
#### Agregar libvirtd por defecto
|
|
|
|
# rc-update add libvirtd default
|
|
|
|
#### Iniciar firewalld
|
|
|
|
# rc-service firewalld start
|
|
|
|
#### Agregar firewalld por defecto
|
|
|
|
# rc-update add firewalld default
|
|
|
|
#### Quitar Servicios
|
|
|
|
Si desea quitar los servicios e iniciar solo cuando
|
|
usted desee, ejecute:
|
|
|
|
# rc-update del libvirtd default
|
|
|
|
# rc-update del firewalld default
|
|
|
|
### Habilitar la virtualización anidada en KVM
|
|
|
|
La virtualización anidada le permite ejecutar una máquina virtual (VM)
|
|
dentro de otra VM mientras sigue utilizando la aceleración de hardware
|
|
del host.
|
|
|
|
#### Comprobando si la virtualización anidada es compatible
|
|
|
|
Para los procesadores Intel, verifique el archivo
|
|
`/sys/module/kvm_intel/parameters/nested`.
|
|
Para procesadores AMD, verifique el archivo
|
|
`/sys/module/kvm_amd/parameters/nested`.
|
|
Si ve `1` o `Y`, se admite la virtualización anidada;
|
|
si ve `0` o `N`, la virtualización anidada no es compatible.
|
|
|
|
Por ejemplo:
|
|
|
|
$ cat /sys/module/kvm_intel/parameters/nested
|
|
Y
|
|
|
|
#### Habilitar la virtualización anidada para procesadores Intel:
|
|
|
|
1. Apague todas las máquinas virtuales en ejecución y recargue el módulo `kvm_intel`:
|
|
|
|
# modprobe -r kvm_intel
|
|
|
|
2. Activa la función de anidamiento
|
|
|
|
# modprobe kvm_intel nested=1
|
|
|
|
3. La virtualización anidada se habilita hasta que se reinicia el host.
|
|
Para habilitarlo permanentemente, agregue la siguiente línea al
|
|
archivo `/etc/modprobe.d/kvm.conf`:
|
|
|
|
# nano -w /etc/modprobe.d/kvm.conf
|
|
----------------------------------
|
|
options kvm_intel nested=1
|
|
|
|
#### Habilitar la virtualización anidada para procesadores AMD:
|
|
|
|
1. Apague todas las máquinas virtuales en ejecución y recargue el módulo `kvm_amd`:
|
|
|
|
# modprobe -r kvm_amd
|
|
|
|
2. Activa la función de anidamiento
|
|
|
|
# modprobe kvm_amd nested=1
|
|
|
|
3. La virtualización anidada se habilita hasta que se reinicia el host.
|
|
Para habilitarlo permanentemente, agregue la siguiente línea al
|
|
archivo `/etc/modprobe.d/kvm.conf`:
|
|
|
|
# nano -w /etc/modprobe.d/kvm.conf
|
|
----------------------------------
|
|
options kvm_amd nested=1
|
|
|
|
### Capturas de pantalla de Virtual Machine Manager
|
|
|
|
<figure>
|
|
<a href="{static}/wp-content/uploads/article/images/2020/05/vm-dragora.png">
|
|
<img src="{static}/wp-content/uploads/article/images/2020/05/vm-dragora.png" alt="Dragora en Virtual Machine Manager">
|
|
</a>
|
|
<figcaption>Captura de pantalla de Dragora GNU/Linux en Virtual Machine Manager</figcaption>
|
|
</figure>
|
|
|
|
<figure>
|
|
<a href="{static}/wp-content/uploads/article/images/2020/05/vm-trisquel.png">
|
|
<img src="{static}/wp-content/uploads/article/images/2020/05/vm-trisquel.png" alt="Trisquel en Virtual Machine Manager">
|
|
</a>
|
|
<figcaption>Captura de pantalla de Trisquel GNU/Linux en Virtual Machine Manager</figcaption>
|
|
</figure>
|
|
|
|
### Módulos con problemas de seguridad
|
|
|
|
El módulo `vhost_net` tiene problemas de seguridad
|
|
[CVE-2018-3646][spectre]{:target="_blank" rel="noopener noreferrer"}
|
|
que es un error de CPU L1TF y SMT con posible fuga
|
|
de datos. Lo recomendable es desactivarlo de la
|
|
siguiente manera:
|
|
|
|
# modprobe -r vhost_net
|
|
|
|
Si estás en Hyperbola GNU/Linux-libre este módulo
|
|
viene desactivado.
|
|
|
|
[dragora]: https://dragora.org
|
|
[trisquel]: https://trisquel.info
|
|
[qemu]: https://wiki.qemu.org/Main_Page
|
|
[spectre]: https://www.kernel.org/doc/html/latest/admin-guide/hw-vuln/l1tf.html
|
|
[vm]: https://virt-manager.org/
|
|
*[GUI]: Graphical user interface
|