• How to shrink disk for KVM


    如何expand虚拟机磁盘分区相对于shrink比较简单:

    1.  创建一个要扩展size大小的目标img文件

    2.  选择要扩展的分区

    3.  virt-resize --expand /dev/sda1 source.img target.img

    要保证target比source的文件大。

    shrink稍微复杂一些,因为考虑到内部文件系统的使用量,如果过度缩小会破坏文件系统。

    首先要查看确定文件系统的使用量,和将要缩小的size

    1.  virt-df source.img

    使用guestfish 读取source.img (不要加-i 自动挂载,对文件系统做操作,不要保持这个设备在使用)

    2.  guestfish -a source.img

    输入run,正式加载磁盘文件

    3.  run

    下面和bash下的操作类似,扫描分区

    4.  e2fsck-f /dev/vda1

    调整分区大小,一定要保证调整后的大小要比内部文件系统的使用量大,否则会出错。

    5.  resize2fs-size /dev/vda1 5G

    调整完成,退出

    6.  exit

    创建shrink的目标文件,因为缩小了分区,但是磁盘的大小还是原先的,占用量并没有变化。

    7.  qemu-img create -f raw target.img 5G

    使用guestfish的工具virt-resize 缩减磁盘文件的大小,原理相当于同时挂载两个镜像,然后将一个磁盘文件的全部内容和修改的部分拷贝到另一个磁盘中。(不过此方法不适用与直接缩减分区,如果有进展会将新的进度更新)

    8.  virt-resize --shrink /dev/sda1 source.img target.img

    查看新的磁盘文件的状态。

    9.  qemu-img info target.img

    查看调整后的磁盘内部文件系统的使用量。

    10.  virt-df target.img

  • 相关阅读:
    《计算机网络 自顶向下方法》 第3章 运输层 Part1
    Java 字符串截取问题
    Java 字符排序问题
    Linux 下实时查看日志
    Java项目 打war包方法
    Linux 下 安装jdk 1.7
    Linux 下安装jetty服务器
    Linux 系统下安装 rz/sz 命令及使用说明
    Xshell
    Linux 常用命令大全
  • 原文地址:https://www.cnblogs.com/fengrenzw/p/3339915.html
Copyright © 2020-2023  润新知