前言:
高高兴兴的在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 中显示资源库(Library)文件夹目录的几种方法
Mac中Library目录在10.6.7系统之后默认隐藏的,要想找到此文件夹有如下几种方法: 1. 用命令可以使其显示: 在终端中执行命令: chflags nohidden ~/Library ...
- java中ant包中的org.apache.tools.zip实现压缩和解压缩
其实apache中的ant包(请自行GOOGLE之ant.jar)中有一个更好的类,已经支持中文了,我们就不重复制造轮子了,拿来用吧,这里最主要的功能是实现了 可以指定多个文件 到同一个压缩包的功能 ...
- Linux中VMware虚拟机增加磁盘空间的扩容操作
用VMwareware虚拟机安装的Red Hat Enterprise Linux系统剩余空间不足,造成软件无法正常安装.如果重新装一遍系统就需要重新配置好开发环境和软件的安装配置.通过上网搜集的资料 ...
- 两种方式教你搞定在mac中格式化磁盘的问题
mac怎么格式化u盘?想必这是大部分苹果用户都会关心的一个问题.格式化u盘在我们日常工作中算是一个比较常规的操作了.但是在mac中随着系统版本不一样,格式化的方式也略有差别.今天,小编将以Mac OS ...
- 苹果MAC中安装并搭建Android开发环境的详细步骤
Android的开发平台搭建主要需要的工具有:Java虚拟机JDK.Eclipse.Eclipse插件ADT(Android Developer Tool)和Android开发包SDK,以下是具体的安 ...
- Mac中编译安装Qt 4.4
解压下载到的.gz源码:gunzip xxx.tar.gztar xvf xxx.tar, 其实在Mac中可以直接双击解压的.然后定位到解压后的目录下:./configuremakesudo make ...
- VMware ESXi CentOS Linux虚拟机安装VMware Tools教
转自VMware ESXi CentOS Linux虚拟机安装VMware Tools教程 | 一米居 http://www.yimiju.com/articles/548.html 最近一周在学习和 ...
- Mac中如何写NTFS的移动硬盘
Mac中如何写NTFS的移动硬盘 按 照网上的说法,简单的就是购买Paragon NTFS或者Tuxera NTFS之类的收费软件,不想花钱的就用NTFS-3G.作为一个开发人员,既然能够自己解决,当 ...
- 虚拟机vmware centos7 扩展磁盘空间
0.思路 创建一个新的逻辑分区,将新的逻辑分区格式化ext3(或其他类型)的文件系统,mount到磁盘空间不够的文件系统,就跟原来的分区/文件系统一样的使用 1.准备 1.1 注意使用VMware自带 ...
随机推荐
- CDN-内容推送网络
前段时间介绍了浏览器缓存机制,通过浏览器缓存一方面可以改善用户的体验,而不用漫长地等待从服务器下载资源:另一方面减轻服务器压力.节省流量.CDN是另一种可以大幅度优化用户体验,且减轻服务器压力的技术. ...
- angularjs filter 详解
系统的学习了一下angularjs,发现angularjs的有些思想根php的模块smarty很像,例如数据绑定,filter.如果对smarty比较熟悉的话,学习angularjs会比较容易一点.这 ...
- Hibernate之HQL介绍
Hibernate中提供了多种检索对象的方式,主要包括以下种类: 导航对象图检索方式:根据已经加载的对象导航到其他对象 OID检索方式:根据对象的OID来检索对象 HQL检索方式:使用面向对象的HQL ...
- oracle 问题若干 提醒注意
1.Powerdesigner 里生成sql,在oracle中运行时报错:ORA-00907: 缺失右括号 解决:这样的问题很多时候是因为用了不正确的数据类型造成的.比如写作nvarchar(n),但 ...
- VBScript Sample:遍历文件夹并获取XML文件中指定内容
案例: 我有一个文件夹,里面有很多子文件夹,每个子文件夹中都存在一个相同名字的XML文件,XML文件里面的标签结构相同,只是内容不同,XML文件中包含ID,Name等标签. 文件夹及文件结构如下图: ...
- 1351 topcoder 吃点心
https://www.51nod.com/onlineJudge/questionCode.html#!problemId=1351 先按low从大到小贪心再high从小到大贪心 #pragma c ...
- MapReduce 支持的部分数据挖掘算法
MapReduce 支持的部分数据挖掘算法 MapReduce 能够解决的问题有一个共同特点:任务可以被分解为多个子问题,且这些子问题相对独立,彼此之间不会有牵制,待并行处理完这些子问题后,任务便被解 ...
- Python读取文件内容的三种方式并比较
本次实验的文件是一个60M的文件,共计392660行内容. 程序一: def one(): start = time.clock() fo = open(file,'r') fc = fo.readl ...
- OpenCV2.3.1中tbb_debug.dll is missing的解决办法
方法1: 将\opencv\build\common\tbb\ia32目录下的tbb.dll复制改名为tbb_debug.dll 方法2: 若方法1失效,请将\openc ...
- MapReduce计算模型
MapReduce计算模型 MapReduce两个重要角色:JobTracker和TaskTracker. MapReduce Job 每个任务初始化一个Job,没个Job划分为两个阶段:Map和 ...