前言:
前几天在ghost中恢复windows8.1系统,恢复到99%的时候迟迟没有动静,手贱把电脑强行关机,导致硬盘差点被搞挂了,bios进不去,pe也进不去,系统也进不去,事实上硬盘没有坏透,因为如果我把硬盘拔了,开机会提示没有hdsk,证明还是可以检测到硬盘的,在google之后,还是选择进入winpe,一直持续了一个多小时最后终于进去,用分区软件一看,分区全乱了。
我这人有个坏毛病,对有些事情有点完美主义,总觉得乱成这样还不如把整个硬盘全部格式化了,最后忍痛把李宗瑞、苍老师、陈老师 都删除了到现在还一直有种心疼的感觉,感觉像是初恋被人夺走了。最近快播、云播相继倒下......以后再看就难了。
修复的过程花了几个小时,主要是扫描硬盘有没有坏道,一切搞定之后重新装了个fedora20系统,只是硬盘里什么都没有了,以前放了很多iso文件格式的系统,所幸u盘里面有gho文件格式的xp系统,但是虚拟机不支持这种格式,所以必须得让虚拟机能够引导才能装系统,由于我的u盘以前就被制作成了一个可启动u盘,里面自带了有装机工具箱,那么如果引导成功就可以直接安装系统了。
一般来说如果虚拟机支持u盘启动的话,安装系统会非常的简单,跟实机没有任何区别,但是virtualbox并不支持,所以有了这篇文章,virtualbox连对u盘的支持都不够友好,好不容易能支持u盘了,但是开机没有u盘启动项,没见过这么坑人的!
这次主要是利用的virtualbox自带的命令来完成,把u盘映射成vmdk的磁盘文件。
好,说了很多废话,坏习惯之一,下面直接开始,我也是研究了几个小时才成功,所以在欣喜之余把折腾的过程分享出来。
过程:
1、用virtualbox建立一个windows xp的虚拟机不要启动,不是必须的!取决于你要安装什么系统。
2、然后插上有装机工具箱的u盘,打开fedora自带的disks工具 看看u盘的设备编号,这里我的u盘设备编号是:/dev/sdb,记住它待会儿用
3、在终端里面输入:sudo VBoxManage internalcommands createrawvmdk -filename /home/iansiu/"VirtualBox VMs"/"windows xp"/usb.vmdk -rawdisk /dev/sdb 这个是virtualbox自带的命令,这里只要清楚其中/home/iansiu/"VirtualBoxVMs"/"windowsxp"/usb.vmdk是映射u盘的vmdk的路径和名称,/dev/sdb是刚刚说的u盘的设备编号。/home/iansiu/"VirtualBoxVMs"/"windows xp"/usb.vmdk和/dev/sdb要根据自己的实际情况改动,要把usb.vmdk映射在虚拟机目录下不然可能出现问题,usb.vmdk不要改扩展名,还有要注意如果目录中有空格要用英文格式的双引号给括起来。如果返回结果:RAWhost disk access VMDK file /home/iansiu/VirtualBox VMs/windowsxp/usb.vmdk created successfully.就代表已经成功了,此时在/home/iansiu/VirtualBoxVMs/windows xp/目录下已经生成了一个usb.vmdk的文件,但是我们并不能直接使用它,因为现在还没有权限。让我们用ls-l命令来看一下。可以看见:-rw-------.1 root root 537 May 3 00:46 usb.vmdk说明usb.vmdk是属于root的只有root权限才可以运行,我试过用chmod777把usb.vmdk权限改过来,但还是一样报错,只能用sudo virtualbox的方式来加载usb.vmdk才不会出错,所以这里我的办法就是先用sudo virtualbox的方式加载usb.vmdk装系统然后再改回来。
4、 终端里面输入:sudo virtualbox 然后按ctrl+a添加第一步建立的windows xp 接着点击 settings ----storage----点+号添加一个新的磁盘像。
5、开机按F12,然后选择第二项 Primary Slave 一般来说 没有意外的话就可以进入装机工具箱了,装系统大家应该很熟悉了,这里就不过多的介绍了。要注意的是:系统没安装完之前u盘都不要拔出来。
6、 系统安装之后,关掉virtualbox 进入/home/iansiu/VirtualBox VMs/windows xp/文件夹会发现所有的文件都被上锁了,这时候如果用普通用户打开virtualbox会报错,提示权限不够,因为用root身份运行了之后权限已经变了,不信你输入:ls -l 看看,所以我们要改回来只需要进入终端在/home/iansiu/VirtualBox VMs目录下执行以下命令:chmod和chown 分别是把权限转移到iansiu用户和iansiu用户组,这里可以按自己的情况来改变。
sudo chown -R :iansiu "windows xp"
sudo chown -R iansiu "windows xp"