Linux虚拟机在使用过程中,硬盘空间不够使用。由于前期没有做LVM,所以只能手动添加新的硬盘。
给虚拟机添加硬盘有两种方法:
1、通过virsh attach-disk命令添加一块硬盘到系统中,即时生效,但系统重启后新硬盘会消失。
2、通过修改虚拟机配置文件进行添加,永久生效。
现在我来一一介绍方法一和方法二。
方法一、通过virsh attach-disk命令添加硬盘
首先看看在未添加新硬盘系统的分区情况。
fdisk –l
df –h
从上图我们可以看到目前系统中只有一块硬盘vda,而且被分成3个分区,其中vda1为系统启动分区。
下面开始添加硬盘:
先使用 qemu-img添加一块新的硬盘
qemu-img create -f qcow2 /vhost/testdisk.img 20G
现在开始使用virsh attach-disk命令把新硬盘添加到虚拟机上。
virsh attach-disk ilanni01 /vhost/testdisk.img vdb
该命令的意思是把/vhost/testdisk.img硬盘添加到虚拟机ilanni01中,并且该硬盘在虚拟机系统中显示的硬盘名称为vdb。
现在在系统中查看是否已经挂载该硬盘,使用fdisk命令,如下图:
以上操作是在虚拟机运行是,进行操作的。
现在我们把虚拟机关闭然后,再添加看看。
virsh destroy ilanni01
virsh list --all
再次使用virsh attach-disk添加新的硬盘vdc,如下命令:
virsh attach-disk ilanni01 /vhost/test1.img vdc
通过上图我们可以发现,通过virsh attach-disk添加硬盘时,只能是虚拟机运行时才能添加,而且是即时生效的。
现在我们重新启动虚拟机看看,如下图:
fdisk –l
通过上图,我们可以看到通过virsh attach-disk命令添加的硬盘在重启系统后,添加的新硬盘失效。
那么现在我们来看第二种方法通过修改配置文件来添加新硬盘。
要通过修改配置文件来添加硬盘,我们首先要关闭虚拟机,否则无法正常添加。
关闭虚拟机,然后使用virsh edit命令修改虚拟机的主配置文件。
虚拟机的所有配置文件都存放在/etc/libvirt/qemu,如下图:
编辑虚拟机配置文件,如下图:
配置文件中,我们找到有关硬盘的代码:
<disk type='file' device='disk'>
<driver name='qemu' type='qcow2' cache='none'/>
<source file='/vhost/ilanni01.img'/>
<target dev='vda' bus='virtio'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x0'/>
</disk>
现在我们在</disk>这之后,添加如下的代码
<disk type='file' device='disk'>
<driver name='qemu' type='qcow2' cache='none'/>
<source file='/vhost/testdisk.img'/>
<target dev='vdb' bus='virtio'/>
</disk>
注意其中type表示硬盘的格式
file表示硬盘所在的路径
dev表示硬盘在系统中显示的硬盘名称
bus表示硬盘的接线类型,如果是windows系统一般是ide。
添加完毕后,我们来启动虚拟机看看实际的效果。
可以看到硬盘已经被添加进来了。
第一种方法和第二种方法的区别,以上两种方法都能添加硬盘。
但是如果是使用第一种方法添加的硬盘,使用virsh edit ilanni01编辑时,是无法看到第一种方法添加的硬盘的,同时在系统重启添加的硬盘会消失。也就是说使用第一种方法添加的硬盘是在ilanni01.xml这个配置文件中看不到的。
除此之外,如果是卸载硬盘,通过第一种方法添加的一定要在虚拟机运行时卸载。否则会报错,但是还会把该磁盘卸载掉。而且在此之前对硬盘的操作、分区,等都还存在。
卸载硬盘我们可以使用virsh detach-disk命令,如下图:
virsh detach-disk ilanni01 --target vdb
使用virsh detach-disk ilanni01 --target vdb 也可以卸载通过virsh edit ilanni01添加的硬盘。但是此时配置文件ilanni01.xml中还是有此信息的。使用 virsh attach-disk ilanni01 /vhost/testdisk.img vdb命令可以再增加,系统重启后还是存在的。
综上所述,在我们添加硬盘时,建议还是使用第二种方法。
相关推荐
下面我们将详细介绍KVM虚拟机的基本使用和安装系统的过程。 **一、KVM环境准备** 1. **硬件需求**:KVM虚拟化对硬件要求较高,至少需要支持虚拟化的CPU(如Intel VT或AMD-V),足够的内存和磁盘空间。 2. **操作...
以下将详细介绍如何在Linux环境下配置和安装KVM虚拟机,以及相关的网络配置。 首先,确保你的Linux宿主机支持硬件虚拟化。在CentOS 6.8 64位系统中,你可以通过`cat /proc/cpuinfo | egrep '(vmx|svm)' | wc -l`...
kvm虚拟机扩展硬盘操作,克隆,扩展硬盘等
安装KVM虚拟机通常涉及以下步骤:首先,确保主机系统满足硬件需求,如支持虚拟化的CPU和足够的内存。然后,安装必要的KVM组件,如libvirt、qemu-kvm、virsh等。接着,创建虚拟机配置文件,并指定CPU、内存、网络、...
在安装KVM虚拟机之前,需要确保以下条件得到满足: 1. **操作系统**: 使用支持KVM的Linux发行版,如CentOS、Red Hat Enterprise Linux (RHEL)或Ubuntu Server等。 2. **硬件支持**: 确保CPU支持硬件虚拟化技术,...
### KVM虚拟机分析与I/O效率提升 #### 一、KVM虚拟机概述 KVM(Kernel-based Virtual Machine)是一种新兴的虚拟机管理软件,它基于Linux内核,利用了现代CPU提供的硬件虚拟化技术(如Intel VT-x)。与传统虚拟化...
QEMU则是KVM的重要伙伴,它提供了丰富的硬件模拟,包括网络设备、存储设备等,使得KVM虚拟机能够运行各种操作系统,甚至那些不支持硬件虚拟化的系统。QEMU还能在没有KVM的情况下作为纯软件模拟器运行,但性能会有所...
安装KVM虚拟机前,你需要确保以下几点: 1. 检查CPU是否支持硬件虚拟化:通过运行`grep vmx /proc/cpuinfo`(Intel芯片)或`grep svm /proc/cpuinfo`(AMD芯片),若返回信息包含"vmx"或"svm",则表明CPU支持VT技术...
KVM是Linux内核中的一个模块,它允许Linux系统作为宿主机运行多个虚拟机,每个虚拟机都具有独立的操作系统。 KVM(Kernel-based Virtual Machine)是基于内核的虚拟机,它是Linux操作系统内核的一个模块,提供了一...
而KVM是Linux内核中的模块,将硬件虚拟化功能直接集成到操作系统内核中,提供高性能的虚拟机支持。两者结合,QEMU-KVM能够在硬件层面上实现高效的虚拟化,使得每个虚拟桌面都可以像独立的物理机器一样运行,具有良好...
Linux virsh KVM虚机扩容硬盘
在Linux系统中,扩大硬盘容量通常涉及到几个关键步骤,包括扩展...以上就是通过DOS命令在Linux系统中扩大虚拟机硬盘容量的详细步骤。每个步骤都需要根据你的具体环境进行调整,确保遵循最佳实践,避免不必要的风险。
至此,KVM虚拟机已经成功配置了基于OVS的网络连接,可以进行正常的网络通信。 总结起来,KVM和QEMU结合OVS网桥,为云计算环境提供了强大的虚拟化基础设施。通过这种方式,可以高效地创建和管理虚拟机,同时保持良好...
实验环境为双路Intel Xeon E5520处理器、8 GB内存、167 GB磁盘和双网卡的服务器,运行Openstack搭建的私有云环境,并创建配置为2个CPU、2 GB内存、20 GB硬盘和1个网卡的KVM虚拟机。 在网卡I/O性能测试中,虚拟机与...
在IT行业中,虚拟化技术是不可或缺的一部分,尤其在服务器管理和开发测试环境中,Linux虚拟机的安装扮演着重要的角色。本文将详细阐述如何安装Linux虚拟机,重点围绕“源码”和“工具”这两个标签展开。 首先,让...
Linux虚拟机,特别是CentOS,是一个广泛使用的开源操作系统,因其稳定性、安全性及与企业的良好兼容性而受到青睐。本文将深入探讨如何在虚拟环境中安装CentOS 6.5。 首先,新建虚拟机是安装过程的第一步。这通常是...
KVM(Kernel-based Virtual Machine)是Linux内核的一个虚拟化模块,它能够支持Linux和Windows等操作系统在x86硬件平台上作为虚拟机运行。virsh是libvirt提供的一个命令行工具,用于管理虚拟机。通过virsh命令,可以...
- **设置虚拟机参数**:安装完成后,可以通过Virsh命令行工具或VNC界面调整虚拟机的硬件配置,如增加内存、添加硬盘、设置共享文件夹等。 通过以上步骤,您应该能在麒麟系统上成功安装并配置一个虚拟机,运行麒麟...