您的位置:首页 > 其它

mac中vmware tools进行磁盘压缩和vmware-tools-cli的使用方法

2013-12-28 20:35 453 查看
前言:
高高兴兴的在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的压缩方法,网址如下:
http://bbs.pcbeta.com/viewthread-924283-1-1.html
从上面我发现了一个工具: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
如果你感觉到这个方法帮助了你,请在下面给我留个言,给个评论什么的,写这个东西也不容易呀,呵呵
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: