kvm学习小计

1.Kvm安装

安装方法两种方式,一种是直接下载源码编译安装,一种是直接使用yum install kvm/apt-get install kvm,这部分就不详细说明了,我使用的是第二种方法,待后

续需要研究源码的时候再下载源码,当前没有此部分的需求

2.Kvm镜像创建

使用一下命令可以创建一个指定类型和指定大小的空镜像,镜像文件类型参加下面说明,不同类型的文件具有不同的效果,此处我没有一一尝试,直接使用系统推荐的默认类型qcow2,因为qcow2具有copy and write属性方便拷贝使用。

Image types

QEMU supports several image types. The "native" and most flexible type is qcow2, which supports copy on write, encryption, compression, and VM snapshots.

QEMU currently can use these image types or formats:

raw
    (default) the raw format is a plain binary image of the disc image, and is very portable. On filesystems that support sparse files, images in this format only use the space actually used by the data recorded in them.
cloop
    Compressed Loop format, mainly used for reading Knoppix and similar live CD image formats
cow
    copy-on-write format, supported for historical reasons only and not available to QEMU on Windows
qcow
    the old QEMU copy-on-write format, supported for historical reasons and superseded by qcow2
qcow2
    QEMU copy-on-write format with a range of special features, including the ability to take multiple snapshots, smaller images on filesystems that don‘t support sparse files, optional AES encryption, and optional zlib compression
vmdk
    VMware 3 & 4, or 6 image format, for exchanging images with that product
vdi
    VirtualBox 1.1 compatible image format, for exchanging images with VirtualBox. 
qemu-img create -f qcow2 wi7.img 10G

从IOS安装系统

下面有个部分可能和网上其他的不同,网上很多资料都现实使用qemu但是我这里qemu显示无法使用,kvm相当于qemu的别名了,这部分具体的原因暂时就不去深究了,后续文章中再进行补充

以下两种方式是通过iso镜像或者光驱来向指定的镜像安装系统

kvm -m 256 -hda win7.img -cdrom win7sp2.iso -boot d
kvm -m 256 -hda winxp.img -cdrom /dev/cdrom -boot d

3.Kvm镜像克隆(创建)

 这部分说是创建其实就是克隆,把已经安装好的系统克隆出一个可用镜像,后续创建可以直接使用该镜像进行创建

qcow2格式支持copy and write 我们可以使用qemu-img命令把已经安装配置好的系统创建成镜像后续可以直接使用该镜像进行虚拟机的创建方便快捷

  qemu-img create -f qcow2 -o backing_file=win7.img test01.img

创建后我们目录下就会多出来一个test01.img,就可以直接使用命令来启动机器

kvm -m 1024 -hda test01.img

参考:https://en.wikibooks.org/wiki/QEMU/Images

时间: 2024-10-22 12:54:37

kvm学习小计的相关文章

Docker学习小计

1.自动下载并且创建容器 Now verify that the installation has worked by downloading the ubuntu image and launching a container. sudo docker run -i -t ubuntu /bin/bash 参考地址:http://docker-doc.readthedocs.org/zh_CN/latest/installation/ubuntulinux.html

kvm学习笔记

http://blog.opskumu.com/ http://blog.csdn.net/kumu_Linux http://blog.opskumu.com/kvm-notes.html#kvm- KVM十年 virtio-gpu介绍 Linode 从 Xen 升级到 KVM qemu2.7编译实战 SPICE协议的理解 海量"小文件"优化秘籍:GlusterFS 让KVM虚拟机支持console功能 利用KVMGT-kernel,实现 KVM GPU虚拟化 让KVM虚机能使用音箱

traits技法小计

在学习算法导论的时候,对于各数据结构,自然是实现一个才算掌握,工具当然是template编程,但是自己的demo经常存在很多问题,比如没有给出迭代器啊,操作符重载不够啊等等设计上的问题,而某些问题实际上是从设计之初就该考虑的大框架,而非小细节.对于C++而言,STL无疑是最佳的参考资料,侯捷先生的STL源码剖析一书给我们良好的示范,而直接从第四章开始看会云里雾里,无法得其精髓,因此在学习算法之余决定尾随侯捷先生脚步,学习STL traits技法,从而可以从STL中学到更多的数据结构实现. 收获自

汽车仪表是如何计算总计里程和小计里程的?

现在汽车仪表大部分的总计里程和小计里程都是显示在屏幕上的,这包括段码屏.点阵屏.TFT彩屏等,虽然显示形式不一样,但是从业务需求和软件应用层的实现策略来讲,原理应该都是通用的.本文不涉及具体车型,仅对一般的业务逻辑作介绍,一是为了自己总结记录,二是期望吸引同行或爱好者交流. 1.总计里程 ODO(Total Odometer )即总计里程,顾名思义,主要作用是记录汽车总的行驶里程,一般来讲,在用户使用过程中是无法对其修改或清零的,因为它是对二手汽车价值评估的一项重要数值,当然随意篡改这一数据也是

[学习笔记]iphone学习小技巧

1. 版本控制 -- 是否响应某个方法 .查看当前系统版本. eg: [self respondsToSelector:@Selector(presentModalViewController:animated:)]//Yes:表示响应这个方法 [[UIDevice currentDevice].systemVersion floatValue] < 7.0 //判断当前系统是否小于7.0 2. 模态视图动画设置 eg: ModalViewController *modalVC = [[Moda

Android学习小Demo(20)关于Fragment的应用

Android在3.0之后引入了Fragment的概念,我猜测其想法可能只是想更好地兼容大屏幕或者平板的开发,因为大屏幕可以展示更多的内容,而内容一多,逻辑有可能就乱,而利用Fragment,则可以将不同的逻辑封装进不同的Fragment中,但是展现呢,还是在同一个Activity中,在同一个屏幕上显示.而对于屏幕并不大的手机来说,如果一个页面展示的东西并不多,那么其实将逻辑直接写在Activity,利用多个Activity实现多个页面的展示,我觉得也是可以接受的,毕竟用Activity还是用F

设计模式小计——23种设计模式3

责任链模式Chain of Responsibility 使多个对象都有机会处理请求,从而避免请求的发送者和接受者间的耦合关系,并沿着这条链传递请求,直到有对象处理它为止 责任链模式关键是建立链接关系,在链中决定谁来处理请求 //抽象处理者 public abstract class Handle{ private Handle nextHandle;//链的下一个节点 public final Response handleMessage(Request request){ Response

设计模式小计——23种设计模式1

单例模式Singleton Pattern 确保类只有一个实例,而且自行实例化并向整个系统提供这个实例 public class Singleton{ private static final Singleton singleton = new Singleton(); private Singleton(){} public static Singleton getSingleton(){ return singleton; } } 节省内存开支,减少性能开销,应用启动产生单例对象,永久驻留内

设计模式小计——23种设计模式2

模板方法模式Template Method Pattern 定义一个操作的算法的框架,是的子类可以不改变算法结构即可重定义该算法一些特定步骤 public abstract class AbstractClass{//抽象模板类 protected abstract void method1();//算法步骤1 protected abstract void method2();//算法步骤2 public void templateMethod(){//模板方法,定义算法结构 this.met