Windows 10 Openstack 镜像制作

//****************************************************************************/

环境:Openstack镜像制作

VMware Workstation Pro 10 下虚拟机,

操作系统,CentOS7.2版

驱动文件:virtio-win-0.1.141.iso

说明: //****************************************************************************/

一、环境准备

1、在VMware Workstation Pro 10上测试,采用CentOS7.0作为宿主机。要求有图形界面。

2、VMware Workstation设置:

选择这个选项后,安装的速度会提高。

3、如果Virtual Machine Management环境不具备,安装以下包

### 安装kvm内核

# yum install -y qemu-kvm.x86_64 qemu-kvm-tools.x86_64

####安装virt管理工具

# yum install libvirt.x86_64 libvirt-cim.x86_64

# yum install libvirt-client.x86_64 libvirt-java.noarch libvirt-python.x86_64

安装图形界面管理虚拟机(对于远程的被管理主机,可以不安装)

#yum install virt-manager

yum install guestfish libguestfs-tools

检查服务状态、启动服务

# service libvirtd status

# service libvirtd start

二、制作镜像

1、在系统工具中打开虚拟系统管理器

2、点击该按钮创建虚拟机

3、选择本地安装介质

4、选择virtio-win-0.1.141.iso驱动文件作为ISO image

5、系统的类型和版本选择win10

6、网络连接就默认。

7、选择虚拟机的配置,(这里的配置仅影响马上要新建的虚拟机,之后做成镜像上传后新建云虚拟机和他无关)一般2G内存 ,2个cpu够用了

8、选择存放虚拟机的地方。Virt-manager给的默认位置是/var/lib/libvirt/images下。

点击“加号”创建新的存储卷

9、创建虚拟机文件的名字和容器格式,(一定要选择qcow2格式)空间20G,点击完成

选择刚创建的存储卷,点击“选择卷”

10、自定义虚拟机的名字,勾选安装前自定义配置,选择网络NAT

11、选择增加硬件,选择win10系统iso镜像的路径(注意之前一开始新建虚拟机用的iso镜像是驱动镜像)

12、设备类型选择CDROW设备,总线类型选择IDE

13、网卡(NIC)部分,网络源NAT,设备型号选择virtio,点击应用

14、IDE磁盘,磁盘总线选择VirtIO,存储格式qcow2,点击应用

15、调整引导选项优先级,把系统镜像的cdrow调到最上面。点击应用。

16、记得前面配置硬件的对每个硬件的操作完成都要点击“应用”,检查配置无误后,点击左上角“开始安装”,开始装虚拟机系统

17、进入安装系统界面,一路点击“下一步”

18、这里系统没有发现磁盘,因为之前磁盘选的是virtio格式,而windows并不自带虚拟磁盘驱动,所以前面所述的virtio-win-0.1.141.iso文件派上用场。点击“加载驱动程序”

19、点击“浏览”

20、选择驱动安装位置,CD驱动器 --> viostor --> W8.1 --> amd64 (64位系统对应的是amd64,32位系统对应x86)

21、安装驱动 “Red HatVirtIO SCSI ...”(磁盘驱动)

22、发现驱动装好,磁盘被正确识别。点击“下一步”

23、系统开始安装

24、设置用户名、密码等一系列系统信息

25、安装完系统后,由于网卡驱动还没装,所以不能上网。右键计算机->属性->进入设备管理器。选择带有黄色警告标示的网卡(图中名为“以太网控制器”)。右键属性,选择“更新驱动程序”。

25、驱动成功安装,看到虚拟机能联网就大功告成,按照相同方法安装剩余的两个PCI驱动

26、驱动安装完成,镜像制作完成,关机进行镜像文件的压缩处理

三、镜像处理

(文件所显示的大小,与实际的占用空间不一致,实际占用小,但是拷贝到windows中占用空间为文件大小)

压缩镜像

用图形界面的虚拟机管理器制作的Windows镜像,文件大小即为新建虚拟机定义的磁盘大小,如果要c盘40G的话,生成的镜像文件就是40G大小,需要压缩后再上传。40G大小压缩后3G。

#virt-sparsify --compress --convert qcow2 /var/lib/libvirt/images/ Windows10.qcow2 /var/lib/libvirt/images/ Windows10.qcow2

(该命令包含在包里guestfish libguestfs-tools)

上面命令压缩未成功,使用下面命令压缩

qemu-img convert -c -O qcow2 /var/lib/libvirt/images/win10.qcow2 /var/lib/libvirt/images/Windows10.qcow2

附录:

改变镜像文件大小

1、qemu-img resize命令

这个命令需要注意数据的备份,下面是转化的例子。

(该命令增加了D盘,并未将C盘增大)

# qemu-img resize Windows10. qcow2 +5GB

查询调整情况

# qemu-img info Windows10. qcow2

2、virt-resize命令

(通过该命令实现 镜像文件大小的调整,注意:针对根分区或c盘分区的扩大,解决不同C盘大小,多次安装操作系统做镜像的问题;)

查看分区情况(也许和你想的不一样)

[root@localhost ~]# virt-filesystems --long -h --all -a /root/ Windows10-imange.qcow2

Name       Type        VFS   Label         MBR  Size  Parent

/dev/sda1  filesystem  ntfs  系统保留  -    100M  -

/dev/sda2  filesystem  ntfs  -             -    20G   -

/dev/sda1  partition   -     -             07   100M  /dev/sda

/dev/sda2  partition   -     -             07   20G   /dev/sda

/dev/sda   device      -     -             -    20G   -

把qcow2格式的磁盘镜像转成raw

qemu-img convert -f qcow2 -O raw Windows10-imange.qcow2 Windows10-imange.raw

利用truncate创建一个新的文件,大小比centos2.raw大5G

truncate -r Windows10-imange.raw Windows10-imange30g.raw

truncate -s +5G Windows10-imange30g.raw

开始调整

virt-resize --expand /dev/sda2 Windows10-imange.raw Windows10-imange30g.raw

virt-resize --expand /dev/sda2 Windows10-imange.raw Windows10-imange30g.raw

调整完后转回qcow2格式

qemu-img convert -f raw -O qcow2 Windows10-imange30g.raw Windows10-imange30g.qcow2

系统管理中c盘增大了,但资源管理器中c盘没变。

登录windows 10 系统;

Cmd:>chkdsk c:/f

转换文件格式

---Convert disk image to disk image

#virt-v2v -i disk disk.img -o local -os /var/tmp

Openstack window 10 镜像制作的更多相关文章

  1. openstack windows 2008镜像 制作

    openstack windows 2008镜像 制作 openstack centos6 centos7 kvm 镜像制作 http://www.cnblogs.com/elvi/p/7922421 ...

  2. Openstack kvm win7镜像制作

    本文地址http://www.cnblogs.com/tcicy/p/7790956.html 网上找了很多为openstack制作win7镜像的文章,总是不成功 自己写一下,以便大家查看. 我使用c ...

  3. openstack windows2012r2 glance镜像制作

    镜像实现: 密码注入 修改密码 根分区扩展 1.下载windows iso镜像 下载地址:http://imsdn.com/MSDN-1.html 例如:cn_windows_server_2012_ ...

  4. #openstack centos6 centos7 kvm镜像制作

    #openstack centos6 centos7 kvm 镜像制作 openstack windows 2008镜像 制作 http://www.cnblogs.com/elvi/p/800129 ...

  5. 安装Window 10系统------计算机经验

    为什么这次安装window10系统呢?不是和window7系统的安装方法一样么?如果你是这样的想的话,是不完全对的,因为window10系统的安装有些繁杂,需要耐心.下面我就准备了官方原版的windo ...

  6. openStack镜像制作

    参考链接: https://www.ibm.com/developerworks/community/wikis/home?lang=en#!/wiki/OpenStack/page/Creating ...

  7. openstack私有云布署实践【16.3 Windows Server2008 R2 只有C盘分区镜像制作】

    之所以要只有C盘分区镜像,是因为在创建VM或者调整云主机的硬盘大小时,它能自动扩容.无需人工介入   参考http://www.iyunv.com/thread-45149-1-1.html的灵感   ...

  8. openstack私有云布署实践【16.2 Ubuntu1404 只有根分区镜像制作】

    之所以要只有根分区镜像,是因为在创建VM或者调整云主机的硬盘大小时,它能自动扩容.无需人工介入   在原来的物理机10.40.41.1的CentOS 6.7上制作镜像. 宿主机坱要安装KVM相关软件: ...

  9. openstack私有云布署实践【16.1 CentOS7.1 只有根分区镜像制作】

    之所以要只有根分区镜像,是因为在创建VM或者调整云主机的硬盘大小时,它能自动扩容.无需人工介入   在原来的物理机10.40.41.1的CentOS 6.7上制作镜像.(当然如果你的制作镜像的宿主机是 ...

随机推荐

  1. 提取Chrome插件为crx文件

    在Chrome浏览器输入 chrome://extensions/,点开右上角开发者模式 记录上图中的ID:gidgenkbbabolejbgbpnhbimgjbffefm 在资源管理器中找到Chro ...

  2. 9.并发_EJ

    第66条: 同步访问共享可变的数据 所谓同步指的发出一个调用时,如果没有得到结果就不返回,直到有结果后再返回.另外相对应的是异步,指的是发出一个调用时就立即返回而不在乎此时有没有结果. 同步和异步关注 ...

  3. 通过css改变svg img的颜色

    需求如下图,hover的时候改变图标颜色,图标为引入的svg img 一般的解决办法有:1.字体图标改变css的color属性:2.js在hover事件中切换图片:3.老一点的方案是hover切换背景 ...

  4. mybatis 自动生成文件配置

    maven 依赖配置: <!-- sql server --><dependency> <groupId>com.microsoft.sqlserver</g ...

  5. iOS------自动查找项目中不用的图片资源

    注意:删除的时候要谨慎!别什么图都删了,看看对项目有没有作用.这个插件有时也会有一定的误差. 具体操作步骤: 1.去github上下载LSUnusedResources(下载地址:https://gi ...

  6. Visual Stuido Online:如何禁止多人同时签出同一文件

    这里只说操作步骤,不讨论为什么要禁止同时多个签出同一文件. 版权声明:转载请保留原文链接. 友情链接:http://www.zhoumy.cn

  7. uni-app 父组件引用子组件时怎么调用子组件的方法

    1.写一个简单的子组件main/index.vue: <template> <view> </view> </template> <script& ...

  8. Wu反走样算法绘制直线段

    Wu反走样算法 原理:在我看来,Wu反走样算法是在Bresenham算法基础上改进了一番,它给最靠近理想直线/曲线的两个点以不同的亮度值,以达到模糊锯齿的效果.因为人眼看到的是线附近亮度的平均值. M ...

  9. (python)数据结构---元组

    一.描述 一个有序的元素组成的集合 元组是不可变的线性数据结构 二.元组的相关操作 1.元组元素的访问 索引不可超界,否则抛异常IndexError 支持正负索引 t = (2, 3) print(t ...

  10. C#委托(转载)

    C#委托的介绍(delegate.Action.Func.predicate) from:http://www.cnblogs.com/akwwl/p/3232679.html 委托是一个类,它定义了 ...