ESXi以及WorkStation缩减thin provision模式Linux虚拟机磁盘的方法
1. 公司的服务器采用ESXi 进行管理. 有时候为了灵活性,需要将虚拟机从ESXi服务器上面导出来. 放置到不同的客户机器上面去.
2. 但是发现,比如我在linux里面安装了Oracle数据库, 里面还有Oracle数据库的安装文件, 虚拟机df -h 提示占用空间 55G以上, 我删除了所有的垃圾文件, 看到占用文件信息变成了35G左右.
我将虚拟机导出成为 ovf文件,然后使用workstation导入.发现磁盘文件还是接近60G没有大的变化 如下图示:

虚拟机实际的磁盘占用信息

3. 最简单的解决办法:
. 将导出的ovf文件 在workstation 执行导入
就是第一个张图里面的结果.
并且执行开机操作.ESXi虚拟机里面删除完文件之后执行导出,在workstation里面执行导入,并且开机.
执行如下两个命令
dd if=/dev/zero of=/zero.file bs=2M
rm -rf /zero.file
#注意 dd 命令非常缓慢.根据不同机器的性能执行时间不一样.
#方法来源: https://blog.csdn.net/weixin_42741271/article/details/97256803
#注意这个命令 我在ESXi上面的虚拟机执行,直接导致磁盘文件变成了df -h 里面的容量大小(200G), 但是在Workstation虚拟机里面执行,文件仅仅增长了不到1G. . 将 workstation的安装目录放到 环境变量里面去
#注意这一边我就是偷懒,不想输入老长一堆的路径用的.
#比如默认安装我这边的目录如图示
虚拟机内文件的信息


. 进入workstation vmdk 所在的目录执行命令进行shrink
最简单的办法如下:
在地址栏里面输入 cmd 打开命令行就精确定位到当前目录了.

4. 执行命令
vmware-vdiskmanager.exe -k xxxx.vmdk #注意 一定要保证宿主机的磁盘剩余空间大于 vmdk的文件大小.
#shrink的速度比较慢.
#虽然有一个GUI的界面可以shrink磁盘文件,但是我发现linux的情况下或者某一些极端情况shrink是无效的
#使用命令行反而就有效果.
#需要注意一下shrink的速度是比较慢的. 有百分比的进度显示可以参考.
#我这边接近60G的硬盘, 如果不执行 dd 命令的话 shrink无效.并且shrink的时间大约是20分钟. 如果执行了dd命令, shrink的时间大概是15分钟. 硬盘性能差不多 一分钟读取加写入3G左右. 之后的文件是35G大小.

执行shrink命令的最终文件大小

ESXi以及WorkStation缩减thin provision模式Linux虚拟机磁盘的方法的更多相关文章
- Vmware Linux虚拟机磁盘扩容方法
我的LINUX版本是ubuntu12.04 32bit.今天在下载android源代码的时候发现自己最初给这个虚拟机分配的磁盘空间不足了(只有20G).所以就需要给磁盘扩容.网上大致搜索了一下,主要有 ...
- 最简单的Linux虚拟机磁盘扩容方法
思路:1.虚拟机增加磁盘容量: 2.将增加的磁盘容量增加到系统分区中: 准备阶段: 下载Gparted软件:https://sourceforge.net/projects/gparted/files ...
- linux虚拟机磁盘扩展与分区大小调整
有段时间觉得linux虚拟机上的磁盘不太够用,研究了下其磁盘扩展 1.linux虚拟机磁盘扩展 step1. 先关机在编辑虚拟机中,找到硬盘选项增加空间,进行扩展step2. 进入root fdisk ...
- vmware 因误删Linux 虚拟机磁盘,无法启动处理方法
有可能我们在做了以下误操作,导致Linux系统无法启动: 1). 磁盘损坏或虚拟机磁盘被我们删除了,而fstab文件没有更新: 2). 由于误操作或其它原因使动态库错误. 1. 首先准备好系统安装盘, ...
- linux虚拟机网络配制方法及遇到问题的解决方法
linux虚拟机网络问题 刚安装一个vmware虚拟机.并在上面安装了一个redhat linux操作系统. 安装完后配制了下网络. 首先观察windows上的网络配制. ip:192.168.1.1 ...
- 如何解决 Linux 虚拟机磁盘设备名不一致的问题
问题描述 在 Linux 虚拟机内,将附加的多块数据磁盘以设备名(/dev/sdxx)的方式创建文件系统,并将之写入 /etc/fstab 文件中实现启动自动挂载功能.但是在虚拟机重启之后,会随机出现 ...
- linux 测试磁盘iops 方法详解
一.FIO安装 wget http://brick.kernel.dk/snaps/fio-2.0.7.tar.gz yum -y install libaio-devel tar -zxvf ...
- linux虚拟机磁盘不够用以及进行扩容时遇到的问题
我使用的是:gparted live cd工具 系统是centOS6.2 使用gparted live cd工具进行无损分区,方法很简单,下载iso文件都在VMware对应的linux系统上设置CD ...
- linux 虚拟机 磁盘空间压缩
/usr/bin/vmware-toolbox-cmd disk list /usr/bin/vmware-toolbox-cmd disk shrink / init 0
随机推荐
- Redis内存碎片清理
当Redis中清理了大量的Key之后原先Redis申请的内存(used_memory_rss)将继续持有而不会释放,此时查看内存信息将会看到存在大量的内存碎片.那么,Redis的内存碎片可以清理么,该 ...
- 低副瓣阵列天线综合2 matlab HFSS
接着继续研究阵列天线设计,得到了电流幅度分布或功率分布之后,就可以进行阵列设计或馈电网络设计了,之前利用HFSS仿真过单列的串馈天线,后面会继续复习熟悉一下,本次我找了一篇硕士论文利用威尔金森功分器来 ...
- Ubuntu1804下安装Gitab
部署gitlab 1.配置仓库源 # vim /etc/apt/sources.listdeb http://mirrors.aliyun.com/ubuntu/ bionic main restri ...
- 原生javascript 基础动画原理
一.实现原理: 1.开定时器前先清除定时器 2.设置定时器 3.当前元素的位置 + 每一步的长度 4.当元素当前位置超过目标点时,把当前位置==目标点 5.设置元素位置,开始运动 6.判断当前位置如果 ...
- XSS基础学习
XSS基础学习 By:Mirror王宇阳 什么是XSS XSS攻击是指在网页中嵌入一段恶意的客户端Js脚本代码片段,JS脚本恶意代码可以获取用户的Cookie.URL跳转.内容篡改.会话劫持--等. ...
- Anaconda的CondaHTTPError问题
在Anaconda+Spyder配置Opencv的过程中遇到了缺乏cv2的问题,当时我在cmd的窗口(管理员身份)中输入了如下命令 conda install --channel https://co ...
- Iaas/paas/saas 三种模式分别都是做什么?
任何一个在互联网上提供其服务的公司都可以叫做云计算公司.其实云计算分几层的,分别是Infrastructure(基础设施)-as-a- Service,Platform(平台)-as-a-Servic ...
- $.fn.serializeObject对为disabled属性的失效
问题现象: 在查生产tomcat下的localhost日志时,发现今天的记录有不少次都报org.apache.ibatis.exceptions.TooManyResultsException: Ex ...
- 鉴于崔庆才大大的对于 beautifulsoup 的再理解
源地址看 soups = BeautifulSoup(html) soup = BeautifulSoup(open('index.html')) print soup.prettify() Tag通 ...
- scrapy在存储数据到json文件中时,中文变成为\u开头的字符串的处理方法
在settings.py文件中添加 FEED_EXPORT_ENCODING = 'utf-8'