前言:
高高兴兴的在vmware9.0中安装了mac10.8系统,然后学习iphone开发,但是发现下载的pdf都是基于xcode3.2.5的,又在10.8上面安装3.2.5,出现“五国”无法解决,最终放弃了10.8的系统,转向了10.7,终于把xcode3.2.5装上了,并装上了xcode4.2。
很高兴,但是问题又来了,两个软件装上后,在windows中我看到的我的虚拟机硬盘:Mac OS X 10.7 64-bit.vmdk大小已经从10多个G变为35G了,这个也没什么奇怪,因为xcode4.2xxx.dmg:1.6g,xcode3.2.5xxx.dmg:4.3g(在安装xcode3.2.5的时候还要用磁盘工具抓换成可读写,有多出来了4个多G),都放在虚拟机种,当然要变大了。
当时问题是我把那几个大的镜像删除了,至少应该减去10几个G吧(从mac下看的话,磁盘确实是减去了10多个G),但是从windos下面看,仍然是35G。
这个怎么办呢,网上搜了一把:“vmware tools磁盘压缩方法”,发现都是基于安装windows或者linux的虚拟机的方法,只有一个是基于安装mac os的压缩方法,网址如下:
从上面我发现了一个工具:vmware-tools-cli,虽然上面博主没有使用这个工具成功,但是告诉了我mac下面vmware安装到了哪里?(因为我在mac系统下找了半天就是找不到装哪了。。),路径是:/Library/Application Support/VMware Tools,终于找到了,但是网上搜了把vmware-tools-cli的使用方法,没有,这个郁闷呀我。。经过我的不断摸索,最终成功使用这个工具把原来我的35G的硬盘压缩成了19G(注意,这个压缩后的文件和原磁盘同名,只是把它的大小变了),后来在windows中使用rar工具重新压缩成了10G(不过这个是.tar.gz包,我用来上传到网上或者备份使用的)。
 
下面是操作方法,由于本人有2年的linux的工作经验,因此shell的一些命令还是没忘,下面的每一条命令我都会在后面解释一下。
 
zyfmatoMac:~ zyf$ pwd  /*显示当前的路径*/
/Users/zyf
zyfmatoMac:~ zyf$ cd /   /*切换到根目录*/
zyfmatoMac:/ zyf$ cd Library/           /* 切换到Library目录 */
zyfmatoMac:Library zyf$ cd Application\ Support/                /* 切换到 Application\ Support/ 目录 */
zyfmatoMac:Application Support zyf$ cd VMware\ Tools/         /* 切换到 VMware\ Tools/ 目录 */
zyfmatoMac:VMware Tools zyf$ ls -l           /* 显示目录下文件的详细信息 */
total 1328
drwxr-xr-x 11 root wheel 374 4 12 2012 Frameworks
drwxr-xr-x 5 root wheel 170 4 12 2012 Plugins
drwxr-xr-x 3 root wheel 102 12 28 08:58 Uninstall VMware Tools.app
-rwxr-xr-x 1 root wheel 9539 4 12 2012 VMware Tools Problem Reporter.tool
-r-xr-xr-x 1 root wheel 3726 4 12 2012 poweroff-vm-default
-r-xr-xr-x 1 root wheel 3726 4 12 2012 poweron-vm-default
-r-xr-xr-x 1 root wheel 3726 4 12 2012 resume-vm-default
drwxr-xr-x 3 root wheel 102 4 12 2012 scripts
-rwxr-xr-x 1 root wheel 3855 4 12 2012 services.sh
-rw-rw-r-- 1 root wheel 840 4 12 2012 statechange.subr
-r-xr-xr-x 1 root wheel 3726 4 12 2012 suspend-vm-default
drwxr-xr-x 3 root wheel 102 4 12 2012 vmhgfs.kext
-rwxr-xr-x 1 root wheel 524408 4 12 2012 vmmemctl
drwxr-xr-x 3 root wheel 102 4 12 2012 vmmemctl.kext
-rwxr-xr-x 1 root wheel 9052 4 12 2012 vmware-softpowerop-helper
-rwxr-xr-x 1 root wheel 42936 4 12 2012 vmware-tools-cli             /*这个就是我们要用到的工具*/
-rwxr-xr-x 1 root wheel 55516 4 12 2012 vmware-tools-daemon
zyfmatoMac:VMware Tools zyf$ sudo ./vmware-tools-cli help      /*sudo是获取执行后面命令的权限, ./vmware-tools-cli help是查看 ./vmware-tools-cli命令的帮助信息*/
Password:                  /*输入用户的口令,也就是你登陆时的密码*/
Usage: ./vmware-tools-cli <command> [options] [subcommand]         /*下面这两条是命令的使用格式*/
Type './vmware-tools-cli help <command>' for help on a specific command.            /*查看子命令的帮助信息提示*/
Type './vmware-tools-cli -v' to see the VMware Tools version.
Use '-q' option to suppress stdout output.
Most commands take a subcommand.
Available commands:
   device
   disk                   /*子命令的disk(硬盘)选项*/
   script
   stat
   timesync
   upgrade (not available on all operating systems)
 
zyfmatoMac:VMware Tools zyf$ sudo ./vmware-tools-cli help disk           /*查看硬盘选项的帮助信息*/
disk: perform disk shrink operations
Usage: ./vmware-tools-cli disk <subcommand> [args]                  /*命令格式*/
 
Subcommands:                /*显示有两条子命令参数,第一个列出可用的挂载点,第二条:对制定的挂载点进行压缩,明显的,我们要使用这个命令的*/
   list: list available mountpoints                      
   shrink <mount-point>: shrinks a file system at the given mountpoint             
 
zyfmatoMac:VMware Tools zyf$ sudo ./vmware-tools-cli disk list           /* 列出可用的挂载点 */
/                    /*根挂载点,根绝下面的df命令我们发现这个挂载点就是我们需要的虚拟硬盘的挂载点*/
/Volumes/Mac OS X Install ESD                   /* 另一个挂载点,根绝下面的df命令我们发现这个挂载点为mac系统的挂载点 */
 
zyfmatoMac:VMware Tools zyf$ df                
Filesystem 512-blocks Used Available Capacity Mounted on
/dev/disk1s2 82206864 38453864 43241000 48% /                       /*可以看到/dev/disk1s2 文件系统挂在到了根目录"/",并且大43G,已经*/
devfs 373 373 0 100% /dev
map -hosts 0 0 0 100% /net
map auto_home 0 0 0 100% /home
/dev/disk0s3 8155368 7424856 730512 92% /Volumes/Mac OS X Install ESD
 
/*注,下面这个df -h执行的是我操作成功后的信息,原来的信息已经不记得了*/
zyfmatoMac:~ zyf$ df -h      /*显示当前的分区,挂载点等信息*/
Filesystem Size Used Avail Capacity Mounted on
/dev/disk1s2 39Gi 18Gi 21Gi 48% /               /*可以看到/dev/disk1s2 文件系统挂在到了根目录"/",并且大39G,已经使用了18G,可以使用21G,使用率是48%*/
devfs 188Ki 188Ki 0Bi 100% /dev
map -hosts 0Bi 0Bi 0Bi 100% /net
map auto_home 0Bi 0Bi 0Bi 100% /home
/dev/disk0s3 3.9Gi 3.5Gi 357Mi 92% /Volumes/Mac OS X Install ESD  /*这个是系统的挂在情况*/
 
zyfmatoMac:VMware Tools zyf$ sudo ./vmware-tools-cli disk shrink /                  /*执行压缩命令*/
 
注:上面很多文件名中间有个\,这个东西是mac系统下特有的,我的理解应该是一旦文件名中间有个空格,mac中的shell命令自动会在其中加一个”\“ 
 
上面是整个过程中执行命令的详细过程和解释为什么这么做,如果看不懂没关系,你只需要打开终端(方法:应用程序->使用工具->终端)
1.输入:cd /Library/Application\ Support/VMware\ Tools/     然后回车
2.输入:sudo ./vmware-tools-cli  disk shrink /            然后回车
3.上一步估计会提示你输入密码,那么就输入你的登陆密码,之后回车
 
上面操作完成之后,mac系统内部执行一段时间后,vmware软件会出来一个进度条(感觉好奇妙),对应的你的windows下面的虚拟机硬盘对应的目录中会多出来一个问题件:Mac OS X 10.7 64-bit.vmdk.xxxxxxx(好奇怪的命令,这个是我的硬盘的名字,其实这个只是转换过程中的临时文件,会大到19个G,也就是我最后的磁盘文件大小(只有到最后才会把原来的磁盘文件替换掉,所以,你要流出足够的空间用来让压缩程序使用,如我的是35G的虚拟磁盘,我就留出了35G(为了保险),很恐怖吧))
 
其实上面的这个过程和linux已经window下面的类似,只是在mac下面木人尝试过
 
关于mac10.7安装xcode3.2.5 xcode4.2 中出现的问题,我会把相关内容写在我的相关博文中,最终的这个虚拟机镜像(就是最终我压缩虚拟磁盘成功的),我已经压缩成.zip,我会放到百度云上面,希望mac新手可以直接下载使用,免掉安装的痛苦。
如果你在运行上面过程中有问题,可以联系我,我的qq号为:117838621
如果你感觉到这个方法帮助了你,请在下面给我留个言,给个评论什么的,写这个东西也不容易呀,呵呵
 
 
 
 
 
 
 
 
 
 

mac中vmware tools进行磁盘压缩和vmware-tools-cli的使用方法的更多相关文章

  1. Mac 中显示资源库(Library)文件夹目录的几种方法

    Mac中Library目录在10.6.7系统之后默认隐藏的,要想找到此文件夹有如下几种方法:   1. 用命令可以使其显示: 在终端中执行命令: chflags nohidden ~/Library ...

  2. java中ant包中的org.apache.tools.zip实现压缩和解压缩

    其实apache中的ant包(请自行GOOGLE之ant.jar)中有一个更好的类,已经支持中文了,我们就不重复制造轮子了,拿来用吧,这里最主要的功能是实现了 可以指定多个文件 到同一个压缩包的功能 ...

  3. Linux中VMware虚拟机增加磁盘空间的扩容操作

    用VMwareware虚拟机安装的Red Hat Enterprise Linux系统剩余空间不足,造成软件无法正常安装.如果重新装一遍系统就需要重新配置好开发环境和软件的安装配置.通过上网搜集的资料 ...

  4. 两种方式教你搞定在mac中格式化磁盘的问题

    mac怎么格式化u盘?想必这是大部分苹果用户都会关心的一个问题.格式化u盘在我们日常工作中算是一个比较常规的操作了.但是在mac中随着系统版本不一样,格式化的方式也略有差别.今天,小编将以Mac OS ...

  5. 苹果MAC中安装并搭建Android开发环境的详细步骤

    Android的开发平台搭建主要需要的工具有:Java虚拟机JDK.Eclipse.Eclipse插件ADT(Android Developer Tool)和Android开发包SDK,以下是具体的安 ...

  6. Mac中编译安装Qt 4.4

    解压下载到的.gz源码:gunzip xxx.tar.gztar xvf xxx.tar, 其实在Mac中可以直接双击解压的.然后定位到解压后的目录下:./configuremakesudo make ...

  7. VMware ESXi CentOS Linux虚拟机安装VMware Tools教

    转自VMware ESXi CentOS Linux虚拟机安装VMware Tools教程 | 一米居 http://www.yimiju.com/articles/548.html 最近一周在学习和 ...

  8. Mac中如何写NTFS的移动硬盘

    Mac中如何写NTFS的移动硬盘 按 照网上的说法,简单的就是购买Paragon NTFS或者Tuxera NTFS之类的收费软件,不想花钱的就用NTFS-3G.作为一个开发人员,既然能够自己解决,当 ...

  9. 虚拟机vmware centos7 扩展磁盘空间

    0.思路 创建一个新的逻辑分区,将新的逻辑分区格式化ext3(或其他类型)的文件系统,mount到磁盘空间不够的文件系统,就跟原来的分区/文件系统一样的使用 1.准备 1.1 注意使用VMware自带 ...

随机推荐

  1. Java [Leetcode 39]Combination Sum

    题目描述: Given a set of candidate numbers (C) and a target number (T), find all unique combinations in  ...

  2. 学习面试题Day08

    1.TCP/IP协议的理解.     TCP/IP定义了电子设备(如计算机)连入因特网的标准,以及数据如何在它们之间传输的标准.它既是互联网中的基本通信语言或协议,也是局域网的通信协议.     TC ...

  3. SVN - 主干/分支

    一个大项目在开发中可能会拆分成几个小项目,分别分去,同时共通的部分再由人做,做完后再统一合并.同时,在开发中,共通的部分修改后,其它人要保持同步. 这种情况反应到SVN的分支/合并功能上,再贴切不过了 ...

  4. C# 中 string.Empty、""、null的区别

    原文C# 中 string.Empty."".null的区别 一.string.Empty 和 "" 1.Empty是string类中的一个静态的只读字段,它是 ...

  5. 《深入Java虚拟机学习笔记》- 第5章 Java虚拟机

    一.JVM的生命周期 当启动一个Java程序时,一个Java虚拟机实例就诞生了:当该程序关闭退出时,这个Java虚拟机也就随之消亡: JVM实例通过调用某个初始类的main方法来运行一个Java程序: ...

  6. “菜单”(menubar)和“工具栏”(toolbars)

    "菜单"(menubar)和"工具栏"(toolbars) "菜单" (menubar)和"工具栏"(toolbars) ...

  7. 【暑假】[深入动态规划]UVa 1628 Pizza Delivery

    UVa 1628 Pizza Delivery 题目: http://acm.hust.edu.cn/vjudge/problem/viewProblem.action?id=51189 思路:    ...

  8. 深入浅出 JavaScript 数组 v0.5

    有一段时间不更新博客了,今天分享给大家的是一篇关于JS数组的,数组其实比较简单,但是用法非常灵活,在工作学习中应该多学,多用,这样才能领会数组的真谛. 以下知识主要参考<JS 精粹>和&l ...

  9. P2158 [SDOI2008]仪仗队 线性筛(欧拉函数和素数表)

    上三角行恰好是[1,n-1]的欧拉函数 http://www.luogu.org/problem/show?pid=2158#sub //#pragma comment(linker, "/ ...

  10. [转]Hadoop YARN任务提交流程

    Yarn是随着hadoop发展而催生的新框架,全称是Yet Another Resource Negotiator,可以翻译为“另一个资源管理器”.yarn取代了以前hadoop中jobtracker ...