{"id":816,"date":"2021-08-20T19:38:00","date_gmt":"2021-08-20T17:38:00","guid":{"rendered":"https:\/\/www.pinguytaz.net\/?p=816"},"modified":"2021-08-06T19:38:46","modified_gmt":"2021-08-06T17:38:46","slug":"usando-qemu-kvm-con-libvirt-5-6-hardware-y-dispositivos","status":"publish","type":"post","link":"https:\/\/www.pinguytaz.net\/index.php\/2021\/08\/20\/usando-qemu-kvm-con-libvirt-5-6-hardware-y-dispositivos\/","title":{"rendered":"Usando QEMU\/KVM con LibVirt (5\/6) Hardware y dispositivos"},"content":{"rendered":"\n<p>En la consola de la maquina podremos acceder al hardware de la maquina virtual con la opci\u00f3n \u201cVista\u2192Detalles\u201d. Al pulsar el bot\u00f3n \u201cAgregar Hardware\u201d podremos a\u00f1adir nuevos dispositivos, como discos, y otras opciones a nuestra maquina.<\/p>\n\n\n\n<p>Por regla general usaremos los modelos de dispositivo virtio en Windows y linux al tener drivers para ellos y estar optimizados para la virtualizaci\u00f3n.<\/p>\n\n\n\n<p><a href=\"https:\/\/fedorapeople.org\/groups\/virt\/virtio-win\/direct-downloads\/stable-virtio\/virtio-win.iso\">DRIVERS VIRTIO<\/a><\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"alignleft size-large is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.pinguytaz.net\/wp-content\/uploads\/2021\/08\/image-8-543x1024.png\" alt=\"\" class=\"wp-image-856\" width=\"234\" height=\"443\"\/><\/figure><\/div>\n\n\n\n<p>Desde esta secci\u00f3n se pueden definir el comportamiento y recursos de la maquina virtual, como:<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>Nombre de la maquina virtual, vCPUs (incluida su topologia, sockets, hilos) RAM, opciones de arranque de los discos<\/li><li><strong>Almacenamiento<\/strong>: Nos permite a\u00f1adir discos duros virtuales, CDROM, Disquetes. Se podr\u00e1 crear imagenes o utilizar alguna de los depositos definidos, asi como asignarle particiones de disco si hemos creado un deposito de disco o bloques por ejemplo.<\/li><li><strong>Controladores<\/strong>: SCSI, USB, Serial, SATA No debemos confundir con los redirectores de USB que nos permitir\u00e1 redirigir un dispositivo conectado en la maquina f\u00edsica a la virtual (desde la consola de la maquina virtual \u201cMaquinaVirtual\u2192Redirigir USB\u201d) siempre que en la maquina f\u00edsica tengamos instalado el cliente SPICE. La redirecci\u00f3n es ideal para conexiones remotas a maquinas virtuales con dispositivos USB de nuestra maquina local.<\/li><li><strong>Dispositivos PCI, USB, serial<\/strong><\/li><li><strong>Interfaz de red<\/strong> Definiremos los vNIC de la maquina invitada y a la red Virtual, que antes habremos definido, a la que se conecta. Tambi\u00e9n se podr\u00e1 conectar a un dispositivo puente definido a un dispositivo MacTAP. Ademas del punto de red al que se conecta se definir\u00e1 la MAC y el tipo de tarjeta de red que para maquinas Windows y Linux usaremos normalmente virtio.<\/li><li><strong>Sistemas de entrada<\/strong>: Raton, Tableta, teclado.<\/li><li><strong>Monitor<\/strong> definimos el m\u00e9todo de acceso desde nuestro host a la parte grafica y puede ser: VNC o SPICE (el que recomendamos)<\/li><li><strong>Tarjetas de video<\/strong>, se dispone de multitud de ellas como son: VGA, QXL(paravirtual compatible con VGA y recomendada a utilizar instalando los drivers en la maquina invitada \u201chttps:\/\/www.spice-space.org\/download.html\u201d)<\/li><li><strong>Sonido<\/strong> Dispositivos de sonido, definiendo el modelo que emulara la virtualizaci\u00f3n.<\/li><li><strong>Canales<\/strong> que permiten la comunicaci\u00f3n entre el host y la maquina virtual<ul><li><em>canal <strong>spice<\/strong><\/em> <em>com.redhat.spice.0<\/em> y tipo <em>spicevmc<\/em>: Nos permite una mejor integraci\u00f3n con las aplicaciones graficas como son el Copy&amp;Paste, ajuste automatico en la resoluci\u00f3n de la pantalla. Despu\u00e9s en las maquinas invitada deberemos instalar \u201cqemu-guest-agent\u201d y en windows el ejecutable <a href=\"htps:\/\/www.stpice-space.org\/download\/windows\/spice-guest-tools\/spice-guest-tools-latest.exe\">spice-guest-tools-latest.exe<\/a><\/li><li><em>canal <strong>qemu-ga<\/strong><\/em>: <em>org.qemu.guest_agent.0 tipo unix<\/em>:  Ayuda a la administraci\u00f3n de la maquina invitada en funciones como suspensi\u00f3n, congelaci\u00f3n del sistema de archivos, snapshot, etc.<\/li><li>canal <em>Webdav<\/em> <em>org.spice-space.webdav.0<\/em> Nos permite compartir carpeta debiendo instalar en el invitado el servicio.<\/li><\/ul><\/li><li><strong>Sistema de ficheros compartidos<\/strong> Montamos en la invitada un disco del anfitrion mediante protocolo <strong><em>9P<\/em><\/strong>.<\/li><\/ul>\n\n\n\n<p>Es recomendable ver las diversas soluciones de comunicaci\u00f3n (canales) que nos ofrece el <a href=\"https:\/\/www.spice-space.org\/index.html\">proyecto \u201cSPICE\u201d<\/a><\/p>\n\n\n\n<p><\/p>\n\n\n\n<p>La forma m\u00e1s sencilla compartir un disco invitado de windows es mediante SMB (Samba) o NFS se pueden compartir archivos con otros sistemas.<\/p>\n\n\n\n<p><strong>Compartir una carpeta del anfitri\u00f3n Linux a una invitada Linux<\/strong><\/p>\n\n\n\n<p>Lo realizaremos montando el disco en la maquina invitada con el protocolo 9P. El protocolo <em>9P<\/em> nos permite exponer directorios de la maquina anfitrion a las maquinas invitadas que se conectaran a estas mediante el protocolo <em>9P<\/em>, permitiendo que varios invitados se conecten a este recurso.<\/p>\n\n\n\n<p>1.- Creamos en Hardware un <strong>Sistema de ficheros compartidos<\/strong> <\/p>\n\n\n\n<ul class=\"wp-block-list\"><li><em>Tipo<\/em>: mount <\/li><li><em>Modo<\/em> mapeado <\/li><li>Otra opci\u00f3n es <strong>Passthrough<\/strong> para que los archivos se almacenen con las mismas credenciales que el invitado, pero en este caso es necesario ser root. <\/li><li><em>Carpeta<\/em> Origen <\/li><li><em>Ruta<\/em>: nombre con el que se montara en la maquina invitada.<\/li><\/ul>\n\n\n\n<p>2.- La maquina invitada en linux se conectara a este recurso, montando simplemente este mediante protocolo 9P. <\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">mount -t 9p -o trans=virtio &lt;Ruta&gt; &lt;Punto de montaje&gt; <\/pre>\n\n\n\n<p>Otras opciones de montaje que se definir\u00edan -o &lt;opciones&gt;<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li><strong>version<\/strong> 9p2000.L | 9p2000.u \/\/ Esta ultima la de por defecto en principio y que permite el soporte uid y gid<\/li><li>Modo de acceso \u201c<strong>access<\/strong>\u201d<ul><li>user: Modo por defecto<\/li><li>&lt;uid&gt;: Solo permite el usuario indicado en UID acceso a los ficheros<\/li><li>any: Permite a todos los usuarios acceso.<\/li><li>client: Obtiene los valores de la lista de control de acceso del servidor y realiza una verificaci\u00f3n de acceso en el cliente.<\/li><\/ul><\/li><\/ul>\n\n\n\n<p><strong><em>NOTAS<\/em><\/strong><\/p>\n\n\n\n<p>Ya que los recursos que creemos desde la invitada se crearan con el usuario y grupo\/<em><strong>libvirt-qemu<\/strong><\/em> de la anfitriona, al directorio que compartamos le deber\u00edamos dar los siguientes permisos.<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">setfacl -m u:libvirt-qemu:rwx &lt;directorio&gt;\nsetfacl -m g:libvirt-qemu:rwx &lt;directorio&gt;<\/pre>\n\n\n\n<p>Los ficheros que creemos desde la anfitriona deberemos cambiarles al grupo y el usuario a <strong>libvirt-qemu<\/strong>, para que la invitada continu\u00e9 teniendo permisos sobre ellos.<\/p>\n\n\n\n<p>Para evitar problema en el anfitri\u00f3n con la creaci\u00f3n de ficheros y directorios creados en la invitada debemos tocar el XML, las opciones:<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li><strong>fmode<\/strong> damos el modo de creaci\u00f3n de ficheros<\/li><li><strong>dmode<\/strong> definimos el modo de creaci\u00f3n de directorios.<\/li><\/ul>\n\n\n\n<pre class=\"wp-block-preformatted\">&lt;filesystem type='mount' accessmode='mapped' fmode='600' dmode='700'&gt; Por defecto solo usuario\n&lt;!-- wp:paragraph --&gt;\n&lt;p&gt;&amp;lt;filesystem type='mount' accessmode='mapped' fmode='660' dmode='770'&amp;gt; Para darle tambi\u00e9n al grupo&lt;\/p&gt;\n&lt;!-- \/wp:paragraph --&gt;\n\n&lt;!-- wp:paragraph --&gt;\n&lt;p&gt;&amp;lt;filesystem type='mount' accessmode='mapped' fmode='664' dmode='755'&amp;gt; Otra opcion&lt;\/p&gt;\n&lt;!-- \/wp:paragraph --&gt;<\/pre>\n\n\n\n<p><\/p>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>En la consola de la maquina podremos acceder al hardware de la maquina virtual con la opci\u00f3n \u201cVista\u2192Detalles\u201d. Al pulsar el bot\u00f3n \u201cAgregar Hardware\u201d podremos a\u00f1adir nuevos dispositivos, como discos, y otras opciones a nuestra maquina. Por regla general usaremos los modelos de dispositivo virtio en Windows y linux al tener drivers para ellos y [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":856,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"site-container-style":"default","site-container-layout":"default","site-sidebar-layout":"default","disable-article-header":"default","disable-site-header":"default","disable-site-footer":"default","disable-content-area-spacing":"default","footnotes":""},"categories":[7,155,1,64,18,65],"tags":[168,163,167,96,164,169,166,165],"class_list":["post-816","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-linux","category-qemu-kvm-virtualizacion","category-sin-categoria","category-sistemas-operativos","category-virtualbox","category-virtualizacion","tag-9p","tag-cdrom","tag-qxl","tag-samba","tag-scsi","tag-smb","tag-spice","tag-usb"],"_links":{"self":[{"href":"https:\/\/www.pinguytaz.net\/index.php\/wp-json\/wp\/v2\/posts\/816","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.pinguytaz.net\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.pinguytaz.net\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.pinguytaz.net\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.pinguytaz.net\/index.php\/wp-json\/wp\/v2\/comments?post=816"}],"version-history":[{"count":4,"href":"https:\/\/www.pinguytaz.net\/index.php\/wp-json\/wp\/v2\/posts\/816\/revisions"}],"predecessor-version":[{"id":867,"href":"https:\/\/www.pinguytaz.net\/index.php\/wp-json\/wp\/v2\/posts\/816\/revisions\/867"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.pinguytaz.net\/index.php\/wp-json\/wp\/v2\/media\/856"}],"wp:attachment":[{"href":"https:\/\/www.pinguytaz.net\/index.php\/wp-json\/wp\/v2\/media?parent=816"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.pinguytaz.net\/index.php\/wp-json\/wp\/v2\/categories?post=816"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.pinguytaz.net\/index.php\/wp-json\/wp\/v2\/tags?post=816"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}