====== Instalar um administrador de maquinas virtuais ====== O sistema principal utilizado pode ser Hyperbola GNU/Linux-libre de arquitectura x86_64, por exemplo, mas com suficiente memoria e poder de processamento podera utilizar [[https://trisquel.info|Trisquel]] e [[https://dragora.org|Dragora]] ao mesmo tempo, dentro do mesma sistema. ===== O que e uma maquina virtual? ===== Uma maquina virtual e um software que simula un sistema de computação e que pode executar programas como se fosse um sistema real. Este software em principio definido como "uma copia eficiente e isolado de una máquina física". ===== Que programas me permite uma maquina virtual, executar? ===== Nos sistemas operativos totalmente livres existe um programa chamado qemu que nos permite virtualizar. [[https://wiki.qemu.org/Main_Page|Qemu]] funciona através de linha de comandos, mas tambem existem GUI, que como o seu nome indica são interfaces gráficas para o utilizador. Neste guia explicamos como instalar [[https://virt-manager.org/|Virtual Machine Manager]] que e bastante completo no que diz respeito a virtualização de sistemas operativos. ====== Instalação de Virtual Machine Manager ====== ===== Verificar se o seu PC suporta virtualização ===== $ LC_ALL=C lscpu | grep Virtualization execute este comando: $ lsmod | grep kvm Se o seu computador admite virtualização, devera ver o output como Virtualización: VT-x ou Virtualización: AMD-V, caso contrario o seu computador não e capaz de virtualizar. ===== Instalação de Virtual Machine Manager ===== # pacman -Sy # pacman -S virt-manager qemu vde2 dnsmasq bridge-utils libvirt # gpasswd -a kvm # gpasswd -a libvirt ===== Revisão do grupo kvm ===== # grep -E 'group="kvm"|group="78"' /etc/libvirt/qemu.conf Comprovar se existe group="kvm" ou group="78" ===== Abilitar modulos do kernel para virtualização ===== * Modulo kvm_intel (processadores Intel) # modprobe kvm_intel * Modulo kvm_amd (processadores AMD) # modprobe kvm_amd ===== Verifique que a maquina virtual esta configurada correctamente ===== $ virt-host-validate ===== Serviço ===== Virt-Manager depende deste serviço libvirtd para funcionar. Por seguida lhe explicaremos como iniciar o mesmo: ==== Inicializar libvirtd ==== # rc-service libvirtd start ==== Adicionar libvirtd ao sistema de Initialização ==== # rc-update add libvirtd default ==== Remover Serviço ==== Se desejar remover o serviço e iniciar so quando desejar, execute: # rc-update del libvirtd default ===== Abilitar a virtualização aninhada em KVM ===== A virtualização aninhada permite-lhe executar uma maquina virtual (VM) dentro de outra, equanto esta a utilizar a aceleração de hardware do host. ===== Verificar se a virtualização aninhada e suportada ===== Para os processadores Intel, verifique o ficheiro /sys/module/kvm_intel/parameters/nested. Para processadores AMD, verifique o ficheiro /sys/module/kvm_amd/parameters/nested. Se vir 1 ou Y, a virtualização aninhada e suportada; se vir 0 ou N, a virtualização aninhada não e suportada. Exemplo: $ cat /sys/module/kvm_intel/parameters/nested Devolve Y ===== Abilitar a virtualização anidada para processadores Intel: ===== 1. Apague todas as maquinas virtuais em execução e recaregue o modulo kvm_intel: # modprobe -r kvm_intel 2. Active a função de aninhamento # modprobe kvm_intel nested=1 3. A abilidade de criar maquinas virtuais aninhadas sera permanente ate reniciar o host. Para abilitar-lo permanentemente, adicione a seguinte linha ao ficheiro /etc/modprobe.d/kvm.conf: # nano -w /etc/modprobe.d/kvm.conf ---------------------------------- options kvm_intel nested=1 ===== Abilitar a virtualização aninhada para processadores AMD ===== 1. Apague todas as maquinas virtuais em execução e recaregue o modulo kvm_amd: # modprobe -r kvm_amd 2. Active a função de aninhamento # modprobe kvm_amd nested=1 3. A abilidade de criar maquinas virtuais aninhadas sera permanente ate reniciar o host. Para abilitar-lo permanentemente, adicione a seguinte linha ao ficheiro /etc/modprobe.d/kvm.conf: # nano -w /etc/modprobe.d/kvm.conf ---------------------------------- options kvm_amd nested=1 ===== Modulos com problemas de segurança ===== O modulo vhost_net tem problemas de segurança [[https://www.kernel.org/doc/html/latest/admin-guide/hw-vuln/l1tf.html|CVE-2018-3646]] que e um error de CPU L1TF y SMT con possivel fuga de dados. Recomendamos que o desactive da seguinte maneira: # modprobe -r vhost_net Se está a utilizar Hyperbola GNU/Linux-libre este modulo vem desactivado.