动态扩容

参考:https://cloud-atlas.readthedocs.io/zh_CN/latest/kvm/kvm_vdisk_live.html

  • 未关闭虚拟机,直接在宿主机器上qemu-img resize 命令调整磁盘大小会提示不可操作
# qemu-img resize 192.168.130.33.qcow2 +50G
qemu-img: Could not open '192.168.130.33.qcow2': Failed to get "write" lock
  • 检查虚拟机块设备列表
virsh domblklist <domain>
  • 可以使用virsh blockresize在线调整qcow2镜像,底层是通过QEMU Monitor管理虚拟机指令实现
# virsh blockresize <domain> vdc --size 200G
Block device 'vdc' is resized # 此时虚拟机中看到如下信息,查看vdc大小,看到已经变成200G [1869817.201326] virtio_blk virtio4: new size: 419430400 512-byte logical blocks (215 GB/200 GiB)
[1869817.205828] vdc: detected capacity change from 144955146240 to 214748364800
[1869819.943750] VFS: busy inodes on changed media or resized disk vdc # 注意
对于 virtio-blk 设备,最新的Guest内核,大小是自动更新的,所以会马上看到容量改变,旧内核需要重启guest系统;
对于 SCSI 设备,需要在guest操作系统中触发一次扫描: echo > /sys/class/scsi_device/0:0:0:0/device/rescan;
对于 IDE 设备,则需要重启一次guest操作系统才能刷新。
  • 后续操作根据虚拟机情况来

    如果更新文件系统,使用下面的命令:

    resize2fs 命令 :针对的是ext2、ext3、ext4文件系统

    xfs_growfs 命令 :针对的是xfs文件系统

动态卸载硬盘(硬盘未在使用)

  • 检查虚拟机块设备列表
virsh domblklist <domain>
  • 虚拟机中确认未挂载使用

  • virsh detach-disk 命令支持在先卸载硬盘

# virsh detach-disk <domain> vdb
命令执行后,虚拟机中就看不到那块硬盘,但配置文件中仍然存在 # virsh detach-disk <domain> vdb --live --config
该命令会同时修改虚拟机的运行配置和文件配置 # 注意
卸载硬盘比如vdb,会使后面的硬盘在下次重启后盘符变化,比如原来的vdc变成vdb
注意检查/etc/fstab文件

For compatibility purposes, --persistent behaves like --config for an offline domain, and like --live --config for a running domain.

KVM 动态调整 qcow2 硬盘的更多相关文章

  1. VMware 11安装Mac OS X 10.10 及安装Mac Vmware Tools(超详细),以及动态调整虚拟机硬盘大小

    先上一张效果图兴奋一下,博主穷屌丝一个,只能通过虚拟黑苹果体验下高富帅的生活,感觉超爽的,废话不多说的,直接上图了! 目录: 1.安装所需软件下载: 2.Mac OS X10.10 安装基本步骤: 3 ...

  2. kvm 动态挂载硬盘

    根据最新需求需要动态的给kvm下的windows虚拟机挂载硬盘,网上查看了很多资料终于试通了,在这里记录下方便自己回忆,同事可以给大家做做参考,如果有问题欢迎吐槽 环境:先说说我使用的环境,环境是使用 ...

  3. Hyper-V在线调整虚拟硬盘大小

    从Windows Server 2012 R2 开始,可以在线调整虚拟硬盘的大小了,这意味着当虚拟硬盘不够用时,我们在虚拟机运行的情况下直接扩展虚拟硬盘容量了.有人说这个有什么用?当然,实验室情况下, ...

  4. 如何实现可动态调整隐藏header的listview

    (转自:http://blog.sina.com.cn/s/blog_70b9730f01014sgm.html) 需求:根据某种需要,可能需要动态调整listview的页眉页脚,譬如将header作 ...

  5. Android - 动态调整ListView高度

    布局中,如果设计ListView的高度为包裹内容,那么ListView的高度是随着它的子条目的数量的变化而改变的, 这就可能会导致ListView下面的一些控件的位置也会随着ListView的高度的变 ...

  6. Javascript动态调整文章的行距、字体、颜色,及打印页面和关闭窗口功能

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  7. 优雅的实现Activiti动态调整流程(自由跳转、前进、后退、分裂、前加签、后加签等),含范例代码!

    最近对Activiti做了一些深入的研究,对Activiti的流程机制有了些理解,对动态调整流程也有了一些实践方法. 现在好好总结一下,一来是对这段时间自己辛苦探索的一个记录,二来也是为后来者指指路~ ...

  8. Linux下动态调整LVM文件系统大小

    LINUX下可以通过LVM动态调整一个已挂载的文件系统大小 LV可以根据需求增大或减小,但是LV改变大小以后,在LV中的文件系统也需要相应的改变大小.这个概念非常重要,如果没有相应的调整LV中文件系统 ...

  9. [转] iOS TableViewCell 动态调整高度

    原文: http://blog.csdn.net/crayondeng/article/details/8899577 最近遇到了一个cell高度变化的问题,在找解决办法的时候,参考了这篇文章,觉得不 ...

  10. CFormView动态调整对话框的尺寸和调整比例控制的部署

    基于单个文件CFormView动态调整对话框的尺寸和调整比例控制的部署 假设你正在开发一个程序基于单个文件,使用CFormView基类来实现多种形式展示,那么,这个文件可能会给你一点帮助. 一.实现对 ...

随机推荐

  1. gradle下载

    gradle下载:https://services.gradle.org/distributions/src.zip源码 .bin.zip安装文件.all.zip源码+安装文件 配置环境变量.

  2. KMP字符串匹配问题

    KMP算法 本文参考资料:https://www.zhihu.com/question/21923021 KMP算法是一种字符串匹配算法,可以在 \(O(n+m)\) 的时间复杂度内实现两个字符串的匹 ...

  3. 使用 Semantic Kernel 实现 Microsoft 365 Copilot 分析

    3月16日,微软发布了微软365 Copilot[1]. Microsoft 365 Copilot 将您现有的 Word.Excel.PowerPoint.Outlook 和 Teams 与大型语言 ...

  4. 2022-05-08:给你一个下标从 0 开始的字符串数组 words 。每个字符串都只包含 小写英文字母 。words 中任意一个子串中,每个字母都至多只出现一次。 如果通过以下操作之一,我们可以

    2022-05-08:给你一个下标从 0 开始的字符串数组 words .每个字符串都只包含 小写英文字母 .words 中任意一个子串中,每个字母都至多只出现一次. 如果通过以下操作之一,我们可以从 ...

  5. LeetCode 双周赛 104(2023/05/13)流水的动态规划,铁打的结构化思考

    本文已收录到 AndroidFamily,技术和职场问题,请关注公众号 [彭旭锐] 提问. 往期回顾:LeetCode 单周赛第 344 场 · 手写递归函数的通用套路 T1. 老人的数目(Easy) ...

  6. ModuleNotFoundError: No module named 'flask_sqlalchemy'

    ModuleNotFoundError: No module named 'flask_sqlalchemy' 解决: pip install flask_sqlalchemy

  7. 【GiraKoo】夜神模拟器提示“当前设备未开启VT”

    [解决]夜神模拟器提示"当前设备未开启VT" 环境 Windows 11 夜神模拟器64位 现象 启动夜神模拟器时,提示"检测到当前设备未开启VT,请先开启VT后再运行6 ...

  8. 大三ACM第一次开会

    现在是2020.9.12,单说时间的话可能感知不太强,那么换个时间, 现在是大三上.按照设想,我应该已经退役. 会上,老李的语气不再激昂,满含着无奈与沧桑.面对围在桌前的大三们,终究还是提出了那个问题 ...

  9. 二次封装Element UI Table实现动态列

    开发中是否会遇见在一个页面中加载的table的列是不固定的,列名需要根据后台数据而动态加载:so element ui 的table 已经不再满足需求,我们得在他的基础上再次封装 增加 refacto ...

  10. qq飞车端游最全按键指法教学

    目录 起步篇 超级起步 弹射起步 段位起步 基础篇 点飘 撞墙漂移 撞墙点喷 进阶篇 双喷 叠喷 断位漂移 段位双喷 侧身漂移 快速出弯 CW WCW CWW 牵引 甩尾点飘 甩尾漂移 右侧卡 左侧卡 ...