xen虚拟机的启动(引导)方式
有几种不同的方式来引导虚拟机,各有利弊。

1.BIOS bootloader

适用于全虚拟化,loader模拟了BIOS

原文:

Booting via the BIOS is available for hypervisors supporting full virtualization. In this case the BIOS has a boot order priority (floppy, harddisk, cdrom, network) determining where to obtain/find the boot image.
  ...
  <os>
    <type>hvm</type>
    <loader>/usr/lib/xen/boot/hvmloader</loader>
    <boot dev='hd'/>
    <boot dev='cdrom'/>
    <bootmenu enable='yes'/>
    <smbios mode='sysinfo'/>
  </os>
  ...
type
The content of the type element specifies the type of operating system to be booted in the virtual machine. hvm indicates that the OS is one designed to run on bare metal, so requires full virtualization. linux (badly named!) refers to an OS that supports the Xen 3 hypervisor guest ABI. There are also two optional attributes, arch specifying the CPU architecture to virtualization, and machine referring to the machine type. The Capabilities XML provides details on allowed values for these. Since 0.0.1
loader
The optional loader tag refers to a firmware blob used to assist the domain creation process. At this time, it is only needed by Xen fully virtualized domains. Since 0.1.0
boot
The dev attribute takes one of the values "fd", "hd", "cdrom" or "network" and is used to specify the next boot device to consider. The boot element can be repeated multiple times to setup a priority list of boot devices to try in turn. The boot element cannot be used if per-device boot elements are used (see disks, network interfaces, and USB and PCI devices sections below). Since 0.1.3, per-device boot since 0.8.8
bootmenu
Whether or not to enable an interactive boot menu prompt on guest startup. The enable attribute can be either "yes" or "no". If not specified, the hypervisor default is used.  Since 0.8.3
smbios
How to populate SMBIOS information visible in the guest. The mode attribute must be specified, and is either "emulate" (let the hypervisor generate all values), "host" (copy all of Block 0 and Block 1, except for the UUID, from the host's SMBIOS values; the virConnectGetSysinfo call can be used to see what values are copied), or "sysinfo" (use the values in the sysinfo element). If not specified, the hypervisor default is used.  Since 0.8.7
2.Host bootloader

适用于半虚拟化, Hypersisor没有模拟BIOS,由Host的pseudo-bootloader来引导,它会为guest提供一个接口来选择一个kernel(不懂)

原文:

Hypervisors employing paravirtualization do not usually emulate a BIOS, and instead the host is responsible to kicking off the operating system boot. This may use a pseudo-bootloader in the host to provide an interface to choose a kernel for the guest. An example is pygrub with Xen.
  ...
  <bootloader>/usr/bin/pygrub</bootloader>
  <bootloader_args>--append single</bootloader_args>
  ...
bootloader
The content of the bootloader element provides a fully qualified path to the bootloader executable in the host OS. This bootloader will be run to choose which kernel to boot. The required output of the bootloader is dependent on the hypervisor in use. Since 0.1.0
bootloader_args
The optional bootloader_args element allows command line arguments to be passed to the bootloader. Since 0.2.3
3.Direct kernel boot

适用于全虚拟与半虚拟化,使用host的kernel与initrd(init ram disk)的引导

When installing a new guest OS it is often useful to boot directly from a kernel and initrd stored in the host OS, allowing command line arguments to be passed directly to the installer. This capability is usually available for both para and full virtualized guests.
  ...
  <os>
    <type>hvm</type>
    <loader>/usr/lib/xen/boot/hvmloader</loader>
    <kernel>/root/f8-i386-vmlinuz</kernel>
    <initrd>/root/f8-i386-initrd</initrd>
    <cmdline>console=ttyS0 ks=http://example.com/f8-i386/os/</cmdline>
  </os>
  ...
type
This element has the same semantics as described earlier in the BIOS boot section
loader
This element has the same semantics as described earlier in the BIOS boot section
kernel
The contents of this element specify the fully-qualified path to the kernel image in the host OS.
initrd
The contents of this element specify the fully-qualified path to the (optional) ramdisk image in the host OS.
cmdline
The contents of this element specify arguments to be passed to the kernel (or installer) at boottime. This is often used to specify an alternate primary console (eg serial port), or the installation media source / kickstart file

xen虚拟机的启动(引导)方式相关推荐

  1. 计算机的两种启动引导方式,硬盘的两种分区和对应启动引导方式

    硬盘的两种分区格式 常见的硬盘分区格式有两种:MBR和GPT MBR(Master Boot Record)"主引导记录": 它有自己的启动器,也就是启动代码,一旦启动代码被破坏, ...

  2. Boot Option开机开机启动引导方式

    GPT也称GUID分区 UEFI引导比较新,部分老旧主板不支持

  3. win8关闭uefi+linux,UEFI启动是什么?Win8关闭UEFI引导方式的方法

    UEFI启动是什么?不少新电脑都给用户直接预装了Win8系统,后来使用又非常不习惯,因此想改成Win7系统,但是在换系统之前,需要在BIOS下关闭UEFI引导方式,可能很多朋友都不懂该如何关闭UEFI ...

  4. win8关闭uefi+linux,UEFI启动是什么意思?Win8关闭UEFI引导方式的方法

    很多用户电脑买来后就直接预装了Win8系统,后来使用又非常不习惯,因此想改成Win7系统,但是在换系统之前,需要在BIOS下关闭UEFI引导方式,可能很多朋友都不懂该如何关闭UEFI启动项,所以今天小 ...

  5. installer启动类型是灰色_联想电脑BIOS下引导方式无法修改或BOOT MODE选项为灰色解决方法...

    第一种情况:bios中开启了安全启动(secure boot),需要在bios中关闭安全启动才能修改引导模式. 解决办法一:关闭安全启动方法: 1.关闭安全启动:Secury boot-选择Disab ...

  6. kubernetes的TLS 启动引导(二进制方式、kubeadm)

    在一个 Kubernetes 集群中,工作节点上的组件(kubelet 和 kube-proxy)需要与 Kubernetes 控制平面组件通信,尤其是 kube-apiserver. 为了确保通信本 ...

  7. VMware启动虚拟机蓝屏解决方式

    VMware启动虚拟机蓝屏解决方式 症状:蓝屏好喝的钙. 解决方式一: ​ 检查虚拟化是否开启. 若未开启进入BIOS进行开启 解决方式二:检查VMware版本 据了解14的某些版本会出现问题. 找到 ...

  8. 2、xen虚拟机的安装

    将centos的镜像文件通过ftp上传到/data目录下 可以在本机上搭建一个ftp服务器 在VM虚拟机上下载镜像 也可以使用vmtools工具 开始安装xen虚拟主机准备工作(利用命令行安装xen虚 ...

  9. RHCE课程-RH131Linux管理笔记八-安装和管理XEN虚拟机

    安装需要用到NFS,所以今天我们会简单说说NFS的. 虚拟化大家应该都知道吧,现在炒的比较热门的东西,linux的虚拟化软件只有这三种:virtualbox 开源免费的:xen 开源免费的:VMwar ...

最新文章

  1. pythons_pythons是什么
  2. SpringBoot启动项目时提示:Error:(3, 32) java: 程序包org.springframework.boot不存在
  3. 浅析MongoDB数据库的海量数据存储应用
  4. 自定义URL Scheme完全指南
  5. jQuery.fn.load调用时给url加selector之后执行脚本的方法
  6. 线段树——操作格子(蓝桥杯试题集)
  7. 吐槽Javascript系列三:数组的陷阱
  8. 放弃Dubbo,选择最流行的Spring Cloud微服务架构实践与经验总结
  9. python自动化办公要学多久-深圳用python进行办公自动化都需要学习什么知识呢,谁来说下...
  10. 主子表对应的字段_Power Pivot针对表筛选的函数及差异
  11. linux的forx函数-进程控制
  12. python数字字母识别_字符图像识别——数字字母混合
  13. 艾肯micu声卡调试安装教程
  14. 疯狂原始人手游怎么用电脑玩 疯狂原始人手游PC电脑版教程
  15. 【媒体】黑灰产横行,金融行业如何“数智化”反欺诈?
  16. E. 新旧身份证(继承)
  17. js实现点击图片在屏幕中放大
  18. C语言-用π/4=1-1/3+1/5-1/7+1/9-...公式求π的近似值求π的近似值,直到最后一项的绝对值小于10^6为止。
  19. .Net Core 源码解析
  20. VLDB 2023 | 北大河图发布分布式训练神器Galvatron, 一键实现大模型高效自动并行...

热门文章

  1. CYQ.Data V5 分布式自动化缓存设计介绍(二)
  2. Jenkins 安装简记录
  3. WINDOWS渗透与提权总结(1)
  4. 关于异常处理的解决方案
  5. 写了一个在线流程设计器,效果很炫[Siverlight版本]
  6. 百个JavaScript函数以及基础写法汇总
  7. 实现框架页面iframe的背景透明方法
  8. Learn from mistake, i.e. 和 e.g. 是不同的
  9. Selenium2学习(八)-- 操作元素(键盘和鼠标事件)
  10. 快速开发基于 HTML5 网络拓扑图应用--入门篇(二)