XenServer内核模块编译过程详解

Citrix提供了DDK(Driver Development Kit)来支持在XenServer中要构建自定义的内核模块或硬件驱动。DDK是一个OVA格式的虚拟机镜像,包含了内核头文件和编译器等开发工具。

下面介绍使用DDK构建内核模块的步骤。

首先从官方下载相应版本DDK,这里选择6.5: http://downloadns.citrix.com.edgesuite.net/10106/XenServer-6.5.0-DDK.iso

将下载的ISO文件上传到XenServer宿主机上

挂载ISO

mkdir /mnt/tmp
mount <path_to_DDK>/ddk.iso /mnt/tmp -o loop

使用DDK镜像创建虚拟机

xe vm-import filename=/mnt/tmp/ova.xml
xe vm-import 命令会用该镜像创建一个虚拟机,并会输出该虚拟机的UUID,如:

[root@xenserver-iryatlxz ~]# xe vm-import filename=/mnt/tmp/ddk/ova.xml
69a2356e-5f7f-0fd8-a609-234a28b59fc5

接下来找到eth0关联的网络UUID。 首先列出所有网络:

xe network-list

输出如下:

uuid ( RO)        : e0f9ba3d-f27b-7380-413a-0491db9e0ec4
     name-label ( RW): Pool-wide network associated with eth1
  name-description ( RW):
       bridge ( RO): xenbr1

uuid ( RO)        : 46fb28dd-4c35-5755-160b-f6389e09c54a
     name-label ( RW): Pool-wide network associated with eth0
  name-description ( RW):
       bridge ( RO): xenbr0

uuid ( RO)        : 0ecf8369-5469-1327-2195-f3cc28a1b3bd
     name-label ( RW): Host internal management network
  name-description ( RW): Network on which guests will be assigned a private link-local IP address which can be used to talk XenAPI
       bridge ( RO): xenapi

从中找到eth0关联的网络UUID,为:

46fb28dd-4c35-5755-160b-f6389e09c54a

使用上面得到的网络UUID和虚拟机UUID创建虚拟接口:

xe vif-create network-uuid=46fb28dd-4c35-5755-160b-f6389e09c54a  vm-uuid=69a2356e-5f7f-0fd8-a609-234a28b59fc5 device=0

启动虚拟机

xe vm-start uuid=69a2356e-5f7f-0fd8-a609-234a28b59fc5

可以使用XenCenter的控制台来访问DDK虚拟机,也可以直接在命令行使用xenconsole来访问。

使用xenconsole访问的步骤如下:

获取domain ID

[root@xenserver-iryatlxz ~]# xe vm-list params=dom-id uuid=69a2356e-5f7f-0fd8-a609-234a28b59fc5 --minimal
14
从console连接该虚拟机 /usr/lib64/xen/bin/xenconsole 14

登录到DDK VM后,就可以在该虚拟机中构建自定义的内核模块或硬件驱动了。内核开发包位于 /usr/src/kernels/3.10.0+2-x86_64/ 。

需要退出时,按 CTRL-] 退出。

(0)

相关推荐

  • Citrix XenServer 6.1 安装图解教程

    本次为使用VirtualBox虚拟机过安装测试机过程,我们在使用Vm(无论是Vbox还是VMware等)我们的CPU都必须可支持Intel-V或AMD-V,并且在VM软件设置和BIOS设置开启虚拟化支持. Vm基本要求:CPU两核,RAM 1G,系统设置为Linux_x86-64 XenServer 6.1下载地址:http://www.jb51.net/softs/391983.html 一.选择键盘类型:US. 二.这个是欢迎界面,选择"OK"即可. 三.这个是使用协议,我们必须得

  • XenServer 虚拟机扩容LVM磁盘分区的方法

    说明:XenServer里面安装的虚拟机,分区的时候采用的是LVM磁盘分区 需求:现在需要扩容虚拟机根分区/ 具体操作: 一.使用XenCenter增大虚拟机磁盘容量,如下图所示 增大当前磁盘到50GB 注意:必须在虚拟机关机状态下进行 二.查看硬盘容量 df -h #可以看到此时根分区还是12G,没有变化 fdisk -l #已经可以看到整个磁盘容量变为53.6GB了 三.创建新的磁盘分区 fdisk /dev/xvda #对磁盘/dev/xvda进行操作 p #查看当前分区 n #创建新分区

  • XenServer使用ISO安装虚拟机系统的方法

    要在VM开始安装作业系统,虽然XenServer已包含多个范本,例如RedHat AS 4+5.CentOS.SuSE.Oracle Enterprise Linux等等,在这些列表内的,安装时都不须额外下载原始安装光碟;若未在列表内,例如RedHat AS 3,就必须使用光碟方式安装.这里说明如何在新增VM时以iso档方式来安装所需的作业系统. 首先,登入console,执行以下指令,建立iso档型式的储存库(SR – Storage Repositories) mkdir /boot-iso

  • linux XenServer 6.2安装图解教程

    Citrix Xenserver,思杰基于Linux的虚拟化服务器.Citrix XenServer是一种全面而易于管理的服务器虚拟化平台,基于强大的 Xen Hypervisor 程序之上.Xen技术被广泛看作是业界最快速.最安全的虚拟化软件.XenServer 是为了高效地管理 Windows(R) 和 Linux(R)虚拟服务器而设计的,可提供经济高效的服务器整合和业务连续性. 安装说明: 安装XenServer 6.2的服务器CPU必须支持虚拟化,Intel (VT-X) 或者AMD (

  • Citrix XenServer 6.1 的安装与配置方法

    一.XenServer 6.1简介 Citrix XenServer服务器虚拟化系统通过更快的应用交付,更高的IT 资源可用性和利用率,让数据中心变得更加灵活.高效.XenServer 在提供了关键工作负载(操作系统.应用和配置)所需的先进功能的同时,不会牺牲大规模部署必需的易于操作的特点.利用独特的流技术,XenServer可通过虚拟或物理服务器快速交付各种工作负载,成为企业每台服务器的理想虚拟化平台. 而在2012年10月17日,北京--思杰公司日前宣布推出业界领先的企业级虚拟化平台XenS

  • xenserver虚拟机实时性能查看方法

    登陆服务器,执行脚本/opt/tools/real_time_status.sh:(该脚本的相关数据都是从xentop命令中提取的) #!/bin/bash # Program: # Real-time Performance # History: # 2014/09/29 caishunzhi First release DIR="/opt/tools" HOSTNAME=`/bin/hostname` SORT=${1:-4} NUM=${2:-6} function get_pe

  • XenServer 6.5 安装配置图文教程

    废话少说,直接上马 首先下载好xenserver6.5的iso镜像文件,物理机就刻盘安装,虚拟机就直接使用iso镜像安装 XenServer6.5下载地址:http://www.jb51.net/softs/391981.html 1.安装界面 2.键盘模式选择默认-美式,ok 3.这里提醒你安装将清除磁盘信息,做好备份,ok 4.想什么呢,当然是Accept了 5.服务器的CPU没有开启虚拟化,请开启虚拟化后继续 6.选择安装在本地硬盘,第一项,ok 7.安装介质选择本地光盘,第一项,ok 8

  • XenServer内核模块编译过程详解

    Citrix提供了DDK(Driver Development Kit)来支持在XenServer中要构建自定义的内核模块或硬件驱动.DDK是一个OVA格式的虚拟机镜像,包含了内核头文件和编译器等开发工具. 下面介绍使用DDK构建内核模块的步骤. 首先从官方下载相应版本DDK,这里选择6.5: http://downloadns.citrix.com.edgesuite.net/10106/XenServer-6.5.0-DDK.iso 将下载的ISO文件上传到XenServer宿主机上 挂载I

  • Spring-boot 2.3.x源码基于Gradle编译过程详解

    spring Boot源码编译 1. git上下拉最新版的spring Boot 下载:git clone git@github.com:spring-projects/spring-boot.git,建议下载release版本,不会出现奇奇怪怪的错误 2.修改下载源, gradle\wrapper中的配置文件 gradle-wrapper.properties distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists #d

  • C语言从编译到运行过程详解

    目录 C语言从编译到运行 一.前言 二.C程序编译过程 三.阶段过程 1.预处理阶段 2.编译阶段 3.汇编阶段 4.链接阶段 C语言从编译到运行 一.前言 最近在看CSAPP(深入理解计算机系统)然后以前也学过C语言,但是从来没有深究写好的C代码是怎么编译再到执行的. 所以现在自己学习,然后记录下来. 以最常用的hello world!程序为例 程序名: main.c #include <stdio.h> int main() { printf("Hello world!\n&qu

  • 基于vue cli重构多页面脚手架过程详解

    官方提供的项目生成工具vue-cli没有对多页面webApp的支持,但是在实际的项目中,我们需要这样的脚手架,参考了很多大牛的方法,这里提供了一种我的单页面脚手架转换为多页面脚手架的方案,供大家参考.不好的地方也请大家指正. 准备 使用vue-cli生成一个你需要的单页面项目脚手架,然后我们就要开始我们的改装工程了. 重构过程 步骤一 改变目录结构 step1 在src目录下面新建views文件夹,然后再views文件夹下新建index文件夹 step2 将src目录下的main.js和App.

  • vue-cli3.0 脚手架搭建项目的过程详解

    1.安装vue-cli 3.0 npm install -g @vue/cli # or yarn global add @vue/cli 安装成功后查看版本:vue -V(大写的V) 2.命令变化 vue create --help 用法:create [options] <app-name> 创建一个由 `vue-cli-service` 提供支持的新项目 选项: -p, --preset <presetName>       忽略提示符并使用已保存的或远程的预设选项   -d

  • JavaScript代码异常监控实现过程详解

    这篇文章主要介绍了JavaScript代码异常监控实现过程详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 JavaScript异常一般有两方面:语法错误和运行时错误.两种错误的捕获和处理方式不同,从而影响具体的方案选型.通常来说,处理JS异常的方案有两种:try...catch捕获 和 window.onerror捕获.以下就两种方案分别分析各自的优劣. 虽然语法错误本应该在开发构建阶段使用测试工具避免,但难免会有马失前蹄部署到线上的时候.

  • 使用vue cli4.x搭建vue项目的过程详解

    cli-4.x已经发布好久了,斟酌了好久,还是决定将原来的cli-2.x升级到4.x,详细的升级过程可以戳这里 1.创建项目 vue create vuetest 2.选择配置方式 ? Please pick a preset: (Use arrow keys) ☜(使用箭头键) > default (babel, eslint) ☜(使用默认的配置,会安装babel和eslint) Manually select features ☜(手动配置) 这里我选择的是手动配置(使用↑ ↓箭头切换,E

  • Android Studio3.2中导出jar包的过程详解

    1.)说明. 本项目是来自github上的一个项目roottools (https://github.com/Stericson/RootTools),这里只是想本地编译后输出下jar包供自己进行使用. 2.)操作步骤. 步骤1)按之前你熟悉的方式进行开发待输出为jar的项目. 步骤2) 一般的gradle设置,比如gradle版本,android sdk的编译,目标,最小要求版本..还有compileOptions的jdk版本设置等. 步骤3)gradle中的apply plugin设置: a

  • C++ boost库的安装过程详解

    Windows安装boost库 下载链接:https://www.boost.org/ 学习链接:https://theboostcpplibraries.com/ 1,下载解压,我的目录"C:\Program Files (x86)\Microsoft Visual Studio\2017" 2,以管理员身份运行"适用于 VS 2017 的 x64 本机工具命令提示" 3,执行以下命令进行编译: cd /d "C:\Program Files (x86)

  • Windows下Goland的环境搭建过程详解

    1.安装包下载 进入Go官方下载界面 下载并安装,安装时注意最好不要将其安装在C盘,我这里将它安装在D盘: 2.环境变量配置 安装包会自动添加环境变量,但是默认的Go工作空间C盘,而我们一般不在C盘放自己的文件,这里以我的工作空间为例我的Go项目文件放在D盘的GoFiles文件夹中,所以这里演示重新配置: 主要是配置两个环境变量:GOROOT和GOPATH: GOROOT指GO的安装目录 GOPATH是作为编译后二进制的存放目的地和import包时的搜索路径,不要设置为GO的安装目录,我们一般用

随机推荐