虚拟机压缩虚拟磁盘的方法
虚拟机删除文件后,虚拟磁盘占用空间并不会缩小,甚至在外面手动压缩都无法缩小,这是因为虚拟机并不能感知到客户系统删除了文件
实际上虚拟机虚拟磁盘压缩需要两步,需要首先在内部填0,然后在外面压缩才能缩小占用空间
下面是vmware和virtualbox下的虚拟机压缩虚拟磁盘的方法
【vmware】
在linux虚拟机内执行下列命令:
sudo vmware-toolbox-cmd disk wipe /
sudo vmware-toolbox-cmd disk wipe /home
sudo vmware-toolbox-cmd disk wipe /boot
sudo vmware-toolbox-cmd disk shrinkonly
# sudo vmware-toolbox-cmd disk list : 列出可用<mountpoint>
# sudo vmware-toolbox-cmd disk wipe <mountpoint> : 擦除<mountpoint>未使用空间
# sudo vmware-toolbox-cmd disk shrinkonly : 压缩磁盘
# sudo vmware-toolbox-cmd disk shrink <mountpoint> : 擦除<mountpoint>未使用空间并压缩磁盘
在windows虚拟机内执行下列命令(需要管理员命令提示符):
"C:\Program Files\VMware\VMware Tools\VMwareToolboxCmd" disk shrink c:\
命令会首先对未使用空间填0, 然后会弹出vmware的压缩虚拟磁盘进度条,进度条走完以后就压缩成功了
【virtualbox】
windows虚拟机首先需要在虚拟机内下载sysinternals的sdelete(假设放到了c:\):
SDelete - Sysinternals | Microsoft Learn
然后在虚拟机内执行下列命令(需要管理员命令提示符),对未使用的空间填0:
c:\sdelete c: -z
linux虚拟机首先需要在虚拟机内执行下列命令,对未使用空间填0:
sudo su -c 'dd if=/dev/zero of=/zero bs=512; rm -v /empty'
sudo su -c 'dd if=/dev/zero of=/home/zero bs=512; rm -v /home/empty'
sudo su -c 'dd if=/dev/zero of=/boot/zero bs=512; rm -v /boot/empty'
# 写全0文件不会导致虚拟磁盘体积膨胀
# empty文件一定要显示已删除后再重启,否则可能因为磁盘空间不足而无法登录
然后需要关闭虚拟机,在windows主机命令行下执行下面的命令压缩虚拟磁盘:
"C:\Program Files\Oracle\VirtualBox\vboxmanage" modifyhd "%USERPROFILE%\VirtualBox VMs\ubuntu\ubuntu.vdi" --compact
linux主机的命令:
vboxmanage modifyhd ~/VirtualBox\ VMs/ubuntu/ubuntu.vdi --compact
虚拟机压缩虚拟磁盘的方法相关推荐
- vmware虚拟机添加虚拟磁盘的方法
1. 为VMware虚拟机添加虚拟磁盘 打开虚拟机-> 虚拟机设置 -> 磁盘 -> add -> hard disk -> next -> next -> ...
- linux 虚拟机 不休眠,不重启VMWare虚拟机添加虚拟磁盘的方法
最近由于业务需要在不重启系统的前提下对系统进行扩容,前提是该系统做过lvm,但是没有足够的物理卷(硬盘),所以引出了改文,本文共分为上下两部分,这是第一部分. 目录 添加磁盘 做LVM 添加硬盘 为了 ...
- 11.JDK8内存模型、本地方法栈、虚拟机栈、栈帧结构(局部变量表、操作数栈、方法出口、虚拟机栈与本地方法栈的关系、寄存器、方法区、堆(Heap)、jvm中的常量池、Metaspace(元空间))
11.JDK8内存模型 11.1.本地方法栈(Native Method Stacks) 11.2.虚拟机栈(Java Virtual Machine Stacks) 11.3.栈帧结构 11.3.1 ...
- 如何有效的压缩虚拟磁盘
如何有效的压缩虚拟磁盘 在使用虚拟机时,可能虚拟硬盘文件占用了主机上的大量硬盘空间让你很头痛吧,那么如何有效的减少虚拟硬盘文件所占用的硬盘空间呢? 首先介绍一下VPC中虚拟硬盘压缩的原理,虚拟 ...
- Java虚拟机(九)——方法区
文章目录 堆.栈.方法区的交互关系 线程是否共享: 三者的交互关系: 方法区的理解 方法区的位置 基本理解: 设置方法区大小 JDK7以前 JDK8及以后: 方法区的内部结构 方法区存储什么 类型信息 ...
- java虚拟机结构图解(堆栈方法区)
目录: java虚拟机汇总 class文件结构分析 1).class文件常量池中的常量项结构 2). 常用的属性表的集合 类加载过程 1).类加载器的原理以及实现 虚拟机结构分析<<== ...
- 虚拟机启功失败解决方法
由于没有正常的关闭虚拟机(如断电.关机等因素),导致下一次打开虚拟机的时候出现如下错误(虚拟机启动失败): 图片错误是由于管理员未授权虚拟机服务导致的,只需要在开始菜单输入msconfig,在系统配置 ...
- Ubuntu+Xen+Virt-manager创建全虚拟机化虚拟机(HVM)方法大合集 | CSDN 创作打卡
Ubuntu+Xen+Virt-manager创建全虚拟机化虚拟机(HVM)方法大合集 环境 安装Xen 使用virt-manager安装Xen虚拟机 检查libvirtd服务状态 安装其他工具 安装 ...
- 虚拟机忘记密码解决方法
虚拟机忘记密码解决方法 参考文章: (1)虚拟机忘记密码解决方法 (2)https://www.cnblogs.com/pinpin/p/10937152.html 备忘一下.
最新文章
- 前端常见跨域问题解决方案
- mybatis中${}和#{}的区别
- MAC下载JDK及安装AndroidStudio
- console对象的方法log()、info()、warn()、error()区别及几个实用的方法
- 面向对象并不是必要的
- [软件工程-设计模式] GRASP软件设计的模式和原则
- IT人终于把自己熬成了民工
- 网页百度云盘服务器有点忙,百度网盘使用提示网络异常,建议使用三种解决方法...
- LBP算法,空间金字塔 文献阅读报告《基于差分量化局部二值模式的人脸反欺诈算法研究》
- netstat 的10个基本用法
- Brackets - (HTML/CSS/JavaScript 前端 WEB IDE) 使用技巧
- livox_camera_calib的使用
- [人工智能-深度学习-32]:卷积神经网络CNN - 常见分类网络- AlexNet网络结构分析与详解
- 王道2023数据结构笔记
- 2022小美赛认证杯数学建模D题完整原创成品来啦!
- Python中的GPS轨迹聚类
- ffmpeg学习笔记
- 干货|6个牛逼的基于Vue.js的后台控制面板,接私活必备
- 为什么要做用户行为分析,怎么做好用户行为分析?
- python 3d图形库_PythonOCC 3D图形库学习—导入STEP模型
热门文章
- 基于matlab人眼虹膜检测,基于matlab虹膜识别源程序
- JVM 、JRE 、JDK 和SDK之间的关系
- 美团前端二面必会面试题(附答案)
- 自己动手在阿里云服务器上搭建一套zabbix+grafana监控系统
- FPGA时序约束篇之时序分析与时序约束的作用
- excel图表中,饼形图,色块颜色改变要倒一下色
- html blank.gif 1x1,Base64 Encode 1x1px透明GIF图片
- 计算机主机什么硬件组成,一台计算机电脑由什么组成,电脑的基础硬件有哪些!-电脑自学网...
- linux如何查看DMS的进程id,​linux启动进程的方式
- 2020.04.01愚人节与大家见面啦!