{"id":66609,"date":"2026-03-16T18:51:22","date_gmt":"2026-03-16T15:51:22","guid":{"rendered":"https:\/\/cloudspinx.com\/?p=66609"},"modified":"2026-03-16T18:51:22","modified_gmt":"2026-03-16T15:51:22","slug":"install-and-use-kvm-virtualization-on-oracle-linux","status":"publish","type":"post","link":"https:\/\/computingforgeeks.com\/install-and-use-kvm-virtualization-on-oracle-linux\/","title":{"rendered":"Install and Use KVM Virtualization on Oracle Linux 9"},"content":{"rendered":"\n<h3 class=\"wp-block-heading\">KVM Virtualization<\/h3>\n\n\n\n<p>Known as<b> <\/b>a Kernel-based Virtual machine, KVM is an open-source virtualization technology built into Linux. The specific purpose of KVM is to turn Linux into a type-1 hypervisor(bare-metal) that allows a host machine to run multiple virtual machines. Avi Kivity developed KVM in the year 2006, the following year, it was merged into the Linux Kernel mainline in kernel version 2.6.20.<\/p>\n\n\n\n<p>KVM is well known because of the advantages it possesses over other virtualization technologies. The first advantage is:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>KVM can be used in various Operating Systems including Linux or Windows, unlike others that rely on a specific OS.<\/li>\n\n\n\n<li>KVM allows you to have your own RAM and CPU separately where you can not share your resources with other users.<\/li>\n\n\n\n<li>KVM is able to accommodate websites with very high traffics, this is because the dedicated resources cannot be affected by the performance of other servers.<\/li>\n\n\n\n<li>Since KVM runs on the Linux Kernel, it is considered more efficient because it already has the features needed by the hypervisor.&nbsp;<\/li>\n<\/ul>\n\n\n\n<p>With its prominent features, KVM has been adopted and put into action by top cloud companies worldwide.&nbsp;Amazon has lately been issuing its offerings mainly based on KVM technology. Google on the other hand also uses KVM technology as the bottom rock for its Google Container Products.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Install&nbsp;and Use KVM&nbsp;Virtualization&nbsp;on&nbsp;Oracle Linux 9<\/h3>\n\n\n\n<p>The<strong> <\/strong>installation of KVM on oracle Linux includes configuring the engine on the host, configuring KVM hosts, networks, and storage, and finally creating virtual machines.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Step 1: Enable hardware\/Nested virtualization<\/h3>\n\n\n\n<p>You have to ensure your hardware virtualization from your BIOS is enabled. To check the type of processor for your processor, run:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>$ <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-luminous-vivid-amber-color\">sudo  grep -e 'vendor_id' \/proc\/cpuinfo<\/mark>\nvendor_id\t: GenuineIntel\nvendor_id\t: GenuineIntel<\/code><\/pre>\n\n\n\n<p>Once the hardware virtualization is enabled in the BIOS, verify whether VT-x\/VT-d or AMD-v extension is enabled by running the following command:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>grep --color --perl-regexp 'vmx|svm' \/proc\/cpuinfo<\/code><\/pre>\n\n\n\n<p>Your output should show you the flag available, either <strong>svm <\/strong>or <strong>vmx. <\/strong>For my case, am using a vmx flag since my processor is intel.<\/p>\n\n\n\n<p>You can as well use the <strong>lscpu <\/strong>command to do the above task:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>$ <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-luminous-vivid-amber-color\">lscpu | grep Virtualization<\/mark>\nVirtualization:                  VT-x\nVirtualization type:             full<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">Step 2: Update and upgrade the system<\/h3>\n\n\n\n<p>Make sure your Oracle Linux 9 is fully upgraded to its packages. Let\u2019s first update the DNF package repository cache of your oracle Linux 9 machine by running the following command.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>$ <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-luminous-vivid-amber-color\">sudo dnf makecache<\/mark>\nOracle Linux 9 BaseOS Latest  (x86_64)                                                                                4.5 kB\/s | 3.6 kB     00:00    \nOracle Linux 9 Application Stream Packages (x86_64)                                                                   4.7 kB\/s | 3.6 kB     00:00    \nOracle Linux 9 UEK Release 7 (x86_64)                                                                                 3.7 kB\/s | 3.0 kB     00:00    \nMetadata cache created.<\/code><\/pre>\n\n\n\n<p>Now proceed to upgrade all the existing software packages with the use of the following command:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo dnf update<\/code><\/pre>\n\n\n\n<p>Your system should now be fully updated. Reboot your Oracle Linux 9 system for the changes to take effect:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo reboot<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">Step 3: Set SELinux to permissive mode<\/h3>\n\n\n\n<p>Leaving SELinux in its default&nbsp; (<strong>enforcing<\/strong>) mode will lead to permission denied errors while creating KVM virtual machines. To avoid this error, edit the <strong>etc\/selinux\/config <\/strong>by changing the mode to <strong>permissive<\/strong><\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>$ <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-luminous-vivid-amber-color\">sudo vim \/etc\/selinux\/config<\/mark>\n# This file controls the state of SELinux on the system.\n# SELINUX= can take one of these three values:\n#     enforcing - SELinux security policy is enforced.\n#     permissive - SELinux prints warnings instead of enforcing.\n#     disabled - No SELinux policy is loaded.\n# See also:\n# https:\/\/docs.fedoraproject.org\/en-US\/quick-docs\/getting-started-with-selinux\/#getting-started-with-selinux-selinux-states-and-modes\n#\n# NOTE: In earlier Fedora kernel builds, SELINUX=disabled would also\n# fully disable SELinux during boot. If you need a system with SELinux\n# fully disabled instead of SELinux running with no policy loaded, you\n# need to pass selinux=0 to the kernel command line. You can use grubby\n# to persistently set the bootloader to boot with selinux=0:\n#\n#    grubby --update-kernel ALL --args selinux=0\n#\n# To revert back to SELinux enabled:\n#\n#    grubby --update-kernel ALL --remove-args selinux\n#\nSELINUX=<mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-pale-cyan-blue-color\">permissive<\/mark>\n# SELINUXTYPE= can take one of these three values:\n#     targeted - Targeted processes are protected,\n#     minimum - Modification of targeted policy. Only selected processes are protected.\n#     mls - Multi Level Security protection.\nSELINUXTYPE=targeted<\/code><\/pre>\n\n\n\n<p>Save and exit the file.Reboot your Oracle Linux 9 system for the changes to take effect:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo reboot<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">Step 4: Install KVM in Oracle Linux 9<\/h3>\n\n\n\n<p>Remove any existing virtualization packages that might have been installed before.&nbsp;<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo dnf remove libvirt qemu-kvm edk2<\/code><\/pre>\n\n\n\n<p>Enable yum repositories<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo dnf install -y oraclelinux-release-el9\nsudo dnf config-manager --enable ol9_kvm_utils ol9_UEKR7<\/code><\/pre>\n\n\n\n<p>To install KVM on your machine, we will use the <strong>virtualization host <\/strong>package group<strong> <\/strong>by running the following command:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo dnf groupinstall \"Virtualization Host\"<\/code><\/pre>\n\n\n\n<p>When prompted, press <strong>y<\/strong> and hit <strong>enter <\/strong>to continue with the installation.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>Installing Environment Groups:\n Virtualization Host                                                                                                                                 \nInstalling Groups:\n Base                                                                                                                                                \n Core                                                                                                                                                \n Standard                                                                                                                                            \n Virtualization Hypervisor                                                                                                                           \n Virtualization Tools                                                                                                                                \n\nTransaction Summary\n======================================================================================================================================================\nInstall  91 Packages\n\nTotal download size: 42 M\nInstalled size: 151 M\nIs this ok &#91;y\/N]: <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-luminous-vivid-orange-color\">y<\/mark>\n\nThe process may take a while to complete.\n======================================================================================================================================================<\/code><\/pre>\n\n\n\n<p>KVM should be completely installed. Now verify that Kernel modules are loaded:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>$ <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-pale-pink-color\">lsmod | grep kvm\n<\/mark>\nkvm_intel             385024  0\nkvm                  1118208  1 kvm_intel\nirqbypass              16384  1 kvm<\/code><\/pre>\n\n\n\n<p>Now proceed to the installation of KVM tools like virt manager. <\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>$ <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-luminous-vivid-amber-color\">sudo dnf install qemu-kvm virt-install virt-viewer virt-manager<\/mark>\nTransaction Summary\n===================================================================================================================================================================================================================\nInstall  45 Packages\n\nTotal download size: 30 M\nInstalled size: 68 M\nIs this ok &#91;y\/N]:<strong><mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-vivid-cyan-blue-color\"> <\/mark><\/strong><mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-vivid-cyan-blue-color\">Y<\/mark><\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">Step 5: Start and Enable the KVM daemon<\/h3>\n\n\n\n<p>At this point, start the <strong>libvirtd<\/strong> service by running the following command. Libvirtd is a server-side daemon component of libvirt virtualization management system. Runs on a host server and helps in managing virtualized guests like starting, stopping, migrating guests, and managing network and storage for the host and guests.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo systemctl start libvirtd<\/code><\/pre>\n\n\n\n<p>Proceed to enable <strong>libvirtd <\/strong>service to start on boot with the following command:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo systemctl enable --now libvirtd<\/code><\/pre>\n\n\n\n<p>Finally check service status to check if its running:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>$<mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-pale-pink-color\"> systemctl status libvirtd<\/mark>\n<mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-vivid-green-cyan-color\">\u25cf<\/mark> libvirtd.service - Virtualization daemon\n     Loaded: loaded (\/usr\/lib\/systemd\/system\/libvirtd.service; enabled; vendor preset: disabled)\n     Active: <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-vivid-green-cyan-color\">active (running)<\/mark> since Tue 2022-08-27 09:49:33 EAT; 2s ago\nTriggeredBy: <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-vivid-green-cyan-color\">\u25cf<\/mark> libvirtd-ro.socket\n             \u25cb libvirtd-tls.socket\n             <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-vivid-green-cyan-color\">\u25cf<\/mark> libvirtd-admin.socket\n             \u25cb libvirtd-tcp.socket\n             <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-vivid-green-cyan-color\">\u25cf <\/mark>libvirtd.socket\n       Docs: man:libvirtd(8)\n             https:&#47;&#47;libvirt.org\n   Main PID: 79705 (libvirtd)\n      Tasks: 20 (limit: 32768)\n     Memory: 18.4M\n        CPU: 1.196s\n     CGroup: \/system.slice\/libvirtd.service\n             \u2514\u250079705 \/usr\/sbin\/libvirtd<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">Step 6: Configuring KVM on Oracle Linux 9<\/h3>\n\n\n\n<p>By default, KVM creates its path (\/var\/lib\/libvirt\/images) where it stores virtual machine volumes. To Identify existing storage domains on the host, use virsh command.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>$ <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-pale-pink-color\">virsh pool-list <\/mark>\n Name      State    Autostart\n-------------------------------\n default   active   yes<\/code><\/pre>\n\n\n\n<p>We note there is only one storage pool (default) on the host and is active. This storage pool is created automatically when KVM is installed.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>$ <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-luminous-vivid-amber-color\">sudo virsh pool-dumpxml default | grep -i path<\/mark>\n    &lt;<mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-vivid-red-color\">path<\/mark>&gt;\/var\/lib\/libvirt\/images&lt;\/<mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-vivid-red-color\">path<\/mark>&gt;<\/code><\/pre>\n\n\n\n<p>Create your new storage location path for both VMs and ISOs<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo mkdir -p <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-pale-cyan-blue-color\">\/opt\/kvm\/storage_pool-01<\/mark><\/code><\/pre>\n\n\n\n<p>Stop the &#8220;default&#8221; storage pool to make it inactive.&nbsp;<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>$ <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-luminous-vivid-amber-color\">virsh pool-destroy default<\/mark>\nPool default destroyed<\/code><\/pre>\n\n\n\n<p>Use the virsh command to edit default storage.&nbsp;<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo virsh pool-edit default<\/code><\/pre>\n\n\n\n<p>This will open an XML file where storage variables are defined. Edit the storage path in <em>&lt;<mark class=\"has-inline-color has-vivid-red-color\">path<\/mark>&gt;\/var\/lib\/libvirt\/images&lt;\/<mark class=\"has-inline-color has-vivid-red-color\">path<\/mark>&gt;<\/em> to your storage location. Mine will be as shown below.&nbsp;<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>&lt;pool type='dir'&gt;\n  &lt;name&gt;<mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-vivid-purple-color\">default<\/mark>&lt;\/name&gt;\n  &lt;uuid&gt;c4701ef4-ab81-408c-8f01-ba9086f0c91b&lt;\/uuid&gt;\n  &lt;capacity unit='bytes'&gt;0&lt;\/capacity&gt;\n  &lt;allocation unit='bytes'&gt;0&lt;\/allocation&gt;\n  &lt;available unit='bytes'&gt;0&lt;\/available&gt;\n  &lt;source&gt;\n  &lt;\/source&gt;\n  &lt;target&gt;\n    <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-luminous-vivid-orange-color\">&lt;path&gt;\/opt\/kvm\/storage_pool-01&lt;\/path&gt;<\/mark>\n    &lt;permissions&gt;\n      &lt;mode&gt;0711&lt;\/mode&gt;\n      &lt;owner&gt;0&lt;\/owner&gt;\n      &lt;group&gt;0&lt;\/group&gt;\n      &lt;label&gt;system_u:object_r:virt_image_t:s0&lt;\/label&gt;\n    &lt;\/permissions&gt;\n  &lt;\/target&gt;\n&lt;\/pool&gt;<\/code><\/pre>\n\n\n\n<p>Start default storage pool and enable autostart on system boot.&nbsp;<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>$ <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-luminous-vivid-amber-color\">sudo virsh pool-start default<\/mark>\nPool default started\n\n$ <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-luminous-vivid-amber-color\">sudo virsh pool-autostart default<\/mark>\nPool default marked as autostarted<\/code><\/pre>\n\n\n\n<p>Verify that the storage path is set as expected. <\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>$ <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-luminous-vivid-amber-color\">sudo virsh pool-dumpxml default | grep -i path<\/mark>\n    \t&lt;<mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-vivid-red-color\">path<\/mark>&gt;\/opt\/kvm\/storage_pool-01&lt;\/<mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-vivid-red-color\">path<\/mark>&gt;<\/code><\/pre>\n\n\n\n<p>Restart libvirtd service to apply the changes.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo systemctl restart libvirtd<\/code><\/pre>\n\n\n\n<h4 class=\"wp-block-heading\">Add your user to libvirt and KVM groups. <\/h4>\n\n\n\n<p>By default, libvirtd can only be accessed by the root user or user with root privilege via sudo command. To access it as a normal user, add your user to libvirt group.&nbsp;<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo usermod -a -G libvirt $(whoami)\nsudo usermod -a -G kvm $(whoami)<\/code><\/pre>\n\n\n\n<h4 class=\"wp-block-heading\">Download ISO images in Oracle Linux 9 KVM Host. <\/h4>\n\n\n\n<p>Now navigate to the iso-images directory and start the installation or you can download the image and later move it into the directory.<\/p>\n\n\n\n<p>Once the download is complete, we can now proceed to create a virtual machine.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Step 7: Create VMs With KVM on Oracle Linux 9<\/h3>\n\n\n\n<p>We are going to use ISO downloaded to create our first VM on KVM in Oracle Linux 9. Below script will create a VM called Linuxmint, 2G RAM, using the storage domain we created and the default bridge<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo virt-install \\\n--virt-type kvm \\\n--name=<mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-vivid-cyan-blue-color\">MyLinux<\/mark> \\\n--vcpus=2 \\\n--memory=2048 \\\n--cdrom=<mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-vivid-purple-color\">\/opt\/kvm\/iso-images\/iso-file-name.iso<\/mark> \\\n--disk size=20 \\\n--network network=default \\\n--graphics vnc,listen=0.0.0.0 \\\n--noautoconsole \\\n--os-variant=generic<\/code><\/pre>\n\n\n\n<p>Replace the above to match your server.&nbsp;<\/p>\n\n\n\n<p>You will receive the below output.&nbsp;<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>Starting install...\nAllocating '<mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-vivid-cyan-blue-color\">MyLinux<\/mark>-1.qcow2'                                                                                                                                                              |  20 GB  00:00:00     \n\nDomain is still running. Installation may be in progress.\nYou can reconnect to the console to complete the installation process.<\/code><\/pre>\n\n\n\n<p>Check using virsh command if your VM is up.&nbsp;<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>$ <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-luminous-vivid-amber-color\">virsh list --all<\/mark>\n Id   Name        State\n---------------------------\n 3    Linuxmint   running<\/code><\/pre>\n\n\n\n<p>Connect via virtual machine manager console to complete installation.&nbsp;<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"546\" height=\"236\" src=\"https:\/\/computingforgeeks.com\/wp-content\/uploads\/2025\/01\/complete-installation-of-kvm-vm-via-console-in-oracle-linux-9.webp\" alt=\"\" class=\"wp-image-67317\" title=\"\" srcset=\"https:\/\/computingforgeeks.com\/wp-content\/uploads\/2025\/01\/complete-installation-of-kvm-vm-via-console-in-oracle-linux-9.webp 546w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2025\/01\/complete-installation-of-kvm-vm-via-console-in-oracle-linux-9-300x130.webp 300w\" sizes=\"auto, (max-width: 546px) 100vw, 546px\" \/><\/figure>\n\n\n\n<p>Complete installation via console now. <\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1017\" height=\"629\" src=\"https:\/\/computingforgeeks.com\/wp-content\/uploads\/2025\/01\/finish-kvm-vm-installation-via-console-oracle-linux-9.webp\" alt=\"\" class=\"wp-image-67318\" title=\"\" srcset=\"https:\/\/computingforgeeks.com\/wp-content\/uploads\/2025\/01\/finish-kvm-vm-installation-via-console-oracle-linux-9.webp 1017w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2025\/01\/finish-kvm-vm-installation-via-console-oracle-linux-9-300x186.webp 300w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2025\/01\/finish-kvm-vm-installation-via-console-oracle-linux-9-768x475.webp 768w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2025\/01\/finish-kvm-vm-installation-via-console-oracle-linux-9-679x420.webp 679w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2025\/01\/finish-kvm-vm-installation-via-console-oracle-linux-9-696x430.webp 696w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2025\/01\/finish-kvm-vm-installation-via-console-oracle-linux-9-356x220.webp 356w\" sizes=\"auto, (max-width: 1017px) 100vw, 1017px\" \/><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">Conclusion. <\/h3>\n\n\n\n<p>This step marks the end of our today&#8217;s guide on how to install KVM on Oracle Linux 9, the latest Oracle distro OS. We have also covered how you can configure storage domains, and create VMs using CLI and GUI as well. You can add and manage your host via <a href=\"https:\/\/computingforgeeks.com\/install-webvirtcloud-kvm-web-dashboard-on-ubuntu\/\" target=\"_blank\" rel=\"noreferrer noopener\">WebVirtCloud<\/a>, the KVM web admin console. Follow the links below for more articles;<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/computingforgeeks.com\/using-vagrant-with-virtualbox-and-kvm-on-debian\/\">Using Vagrant with VirtualBox and KVM on Debian 12<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/computingforgeeks.com\/install-kvm-with-cockpit-on-arch-manjaro-endeavouros\/\">Install KVM with Cockpit on Arch \/ Manjaro \/ EndeavourOS<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/computingforgeeks.com\/install-kvm-on-debian-with-virt-manager-and-cockpit\/\">Install KVM on Debian 12 with virt-manager and Cockpit<\/a><\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>KVM Virtualization Known as a Kernel-based Virtual machine, KVM is an open-source virtualization technology built into Linux. The specific purpose of KVM is to turn Linux into a type-1 hypervisor(bare-metal) that allows a host machine to run multiple virtual machines. Avi Kivity developed KVM in the year 2006, the following year, it was merged into &#8230; <a title=\"Install and Use KVM Virtualization on Oracle Linux 9\" class=\"read-more\" href=\"https:\/\/computingforgeeks.com\/install-and-use-kvm-virtualization-on-oracle-linux\/\" aria-label=\"Read more about Install and Use KVM Virtualization on Oracle Linux 9\">Read more<\/a><\/p>\n","protected":false},"author":3,"featured_media":67322,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[299,86],"tags":[39505,39616],"class_list":["post-66609","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-how-to","category-virtualization","tag-kvm-virtualization","tag-oracle-linux-9"],"_links":{"self":[{"href":"https:\/\/computingforgeeks.com\/wp-json\/wp\/v2\/posts\/66609","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/computingforgeeks.com\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/computingforgeeks.com\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/computingforgeeks.com\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/computingforgeeks.com\/wp-json\/wp\/v2\/comments?post=66609"}],"version-history":[{"count":0,"href":"https:\/\/computingforgeeks.com\/wp-json\/wp\/v2\/posts\/66609\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/computingforgeeks.com\/wp-json\/wp\/v2\/media\/67322"}],"wp:attachment":[{"href":"https:\/\/computingforgeeks.com\/wp-json\/wp\/v2\/media?parent=66609"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/computingforgeeks.com\/wp-json\/wp\/v2\/categories?post=66609"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/computingforgeeks.com\/wp-json\/wp\/v2\/tags?post=66609"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}