实验环境

ubuntu-14.04.1-desktop-amd64.iso

Recommended reference:

https://help.ubuntu.com/community/Xen

http://www.xenproject.org/downloads/xen-archives.html
http://www.xenproject.org/downloads/xen-archives/xen-44-series/xen-441.html

Xen的安装

sudo apt-get install xen-hypervisor

apt-get将提示选择合适的版本,如在本次实验的64位ubuntu-14.04.1上,则应安装xen-hypervisor-4.4-amd64。If you do this on a 32-bits Ubuntu14.04, it can only get amd64-version too. So it is recommended to install a 64-bits Ubuntu.

由于现在Linux内核完全支持Xen以及安装Xen的时候自动修改启动菜单,所以用上面的命令安装完成之后重启即可,不需要像以前那样去下载内核、手动更改启动菜单等。

重启之后,在启动菜单上将会显示多了2个启动项,是从原来的Ubuntu正常启动和修复启动两个模式上增加Xen得到的,我们选择带有Xen hypervisor的正常启动模式,进入系统后在终端输入sudo xl list,如果能看到Domain-0则说明Xen安装成功并能正常运行。另外,使用以下命令将后续需要的工具一并安装。

sudo apt-get install virtinst virt-viewer virt-manager 

xl list #查看各个域状态
xl shutdown xentest #关闭xentest这个虚拟机
xl start xentest #启动xentest这个虚拟机
xl console xentest 连接xentest控制台,连接到虚拟机上面可以用组合键 ctrl + ] 键切换到物理机
xl destroy - Stop a virtual machine immediately without shutting it down. It's as if you switch off the power button.

网络配置

网络配置容易忽略,起初就因此而造成安装客户机失败。配置过程比较简单,就是做一个桥接。

sudo stop network-manager
sudo gedit /etc/network/interfaces

将其中的内容修改为如下:

auto lo
iface lo inet loopback auto xenbr0
iface xenbr0 inet dhcp
bridge_ports eth0 auto eth0
iface eth0 inet manual

修改完成以后,用以下命令停用、启用网卡使得刚才的配置立即生效。

sudo start network-manager
sudo ifdown eth0 && sudo ifup xenbr0 && sudo ifup eth0

命令brctl show 可以查看所有网桥状态

本地Http站点搭建和系统安装镜像的挂载

在Ubuntu上搭建Http站点只需要一条命令:sudo apt-get install apache2,安装完成后即可访问localhost。

要挂载系统安装镜像,使用以下命令,然后访问localhost/os即可看到所挂载的镜像内的文件。

sudo mkdir /var/www/os
sudo mount -o loop '/media/manhua/Backup/OS/Ubuntu/CentOS-6.5-x86_64-bin-DVD1.iso' /var/www/html/os/

创建客户机

1. 使用配置文件和已有镜像创建

http://stacklet.com/ or http://jailtime.org/上提供了多种虚拟器的操作系统镜像,比如我下载了ubuntu.10-04.x86-64.20141003.img.tar.bz2,解压后可以得到两个文件,一个是img镜像文件,另一个是cfg启动配置文件:

将配置文件复制到/etc/xen下,并进行修改,指定bootloader和disk文件所在位置

配置好配置文件以后就可以创建客户机create -f ***.cfg,创建成功后将会自动启动,在xl list下可以看到除了Domain-0外还列出了新创建的客户机,而客户机的状态是b,即正在启动。使用xl console <客户机名>可以接入客户机。

启动完成后,就可以看到熟悉的登录提示,成功登录后就可以进行操作,比如列出文件、查看当前操作系统等。

从 http://stacklet.com/ 下载的镜像文件的初始用户名和密码为:root/passwords

当客户机使用完毕后,可以直接在客户机使用poweroff命令关机,也可以通过Xen来控制

#再次启动则使用下面的代码
sudo xl create -f /etc/xen/ubuntu10..cfg
sudo xl list
sudo xl console ubuntu.-.x86-64.20141003

2. 使用命令创建

创建镜像文件 dd if=/dev/zero of=test.img bs=1M count=10(if/of=input/output file bs一次读写多大 count多少次)

首先要挂载系统安装镜像,接着就可以使用命令进行安装

sudo mount -o loop '/media/manhua/Backup/OS/Ubuntu/CentOS-6.5-x86_64-bin-DVD1.iso'  /var/www/html/os/

sudo virt-install -n cent65-min2 -r  --vcpus  -f cent65-min.img -s   -l http://localhost/os

-n 指定创建虚拟机的名称
-f 作为磁盘映像使用的文件
-s 磁盘映像的大小,单位为G
-r 指定内存的大小,单位为M
--nographics 表示不安装图形控制台
-l 安装的源

系统安装完成后,其他内容和用挂载方式创建的客户机类似,不再叙述。

3. 使用virt-manager创建


虚拟客户机关闭后内存不能自动回收
sudo xl mem-set 0 mem-value #其中mem-value为大于或等于实际空余内存的值,此时,系统将回收全部可用的内存

 

something: 
1、耐心阅读官方文档
2、有条件尽量要用真机,虚拟机性能太低
3、记得要配置好网桥,这是一个容易忽略的步骤,因为一般习惯装好系统再配置网络
4、不要盲目追求最新版本,次新版本由于经历了一段时间的磨练会更易使用 
 
 

a little about xen on cent
install:

http://mirrors.163.com/centos/6.5/isos/x86_64/
http://www.vpsee.com/2009/07/install-xen-on-centos/
http://www.centoscn.com/image-text/install/2014/0914/3744.html

加入 CentOS 官方 Xen 源: yum install centos-release-xen

安装Xen: yum install xen

执行在/usr/bin/目录下的 “/usr/bin/grub-bootxen.sh”命令,将新条目加到grub.conf中,以便系统能默认启动带有Xen的Linux内核,然后重启系统

cp /etc/sysconfig/network-scripts/ifcfg-eth0 /etc/sysconfig/network-scripts/ifcfg-br0
vi /etc/sysconfig/network-scripts/ifcfg-br0
DEVICE="xen-br0"
NM_CONTROLLED="yes"
ONBOOT="yes"
TYPE="Bridge"
BOOTPROTO="none"
IPADDR="192.168.0.50" # Inherited from your current active interface.
PREFIX="24"
GATEWAY="192.168.0.1" # Inherited from your current active interface.
DNS1="8.8.8.8"
DNS2="8.8.4.4"
DEFROUTE="yes"
NAME="Bridge Network br0"

service network restart

[root@localhost xen]# yum install httpd

[root@localhost ~]# service httpd start
[root@localhost xen]# cd /var/www/html/
[root@localhost html]# mkdir tree
[root@localhost ~]# mkdir /data

$ sudo dd if=/dev/zero of=CentOS.img oflag=direct bs=1M count=10240

Xen on Ubuntu的更多相关文章

  1. Xen的源码安装及dom0,domU的设置

    Xen作为一种应用广泛的虚拟机方案,无论是在工业还是教育领域都发挥着巨大的作用.Xen不仅有其引以为豪的Paravirtualization实现,还有基于硬件支持的HVM实现.对于Xen,Ubuntu ...

  2. openstack学习(二)虚拟机XML文件

    1 , XML文件 <domain type='kvm'> //如果是Xen,则type=‘xen’ <name>ubuntu</name> //虚拟机名称,同一物 ...

  3. libvirt命令行文档

    Libvirt有两种控制方式,命令行和图形界面 图形界面: 通过执行名virt-manager,启动libvirt的图形界面,在图形界面下可以一步一步的创建虚拟机,管理虚拟机,还可以直接控制虚拟机的桌 ...

  4. Citrix XenServer

    Citrix XenServer xenserver-test cpu特性码:77fafbff-bfebfbff-00000021-2c100800 xe snapshot-list xen还原快照 ...

  5. Ubuntu系统下Xen虚拟机的基本安装方法(代码创建)

    Ubuntu上Xen安装虚拟机方法一dd一个空的磁盘sudo dd if=/dev/zero of=/home/vm1.img bs=1G count=8 下载Xen VM通用配置文件 sudo wg ...

  6. ubuntu下安装使用vmware、kvm、xen

    一. 概念介绍: (1)全虚拟化(Full Virtulization) 简介:主要是在客户操作系统和硬件之间捕捉和处理那些对虚拟化敏感的特权指令,使客户操作系统无需修改就能运行, 速度会根据不同的实 ...

  7. Cannot install ubuntu or other linux flavours on citrix Xen server

    Citrix Xen sucks! When u try to install linux stuff on its Xen servers, u will get an error complain ...

  8. 虚拟机体验之 Xen 篇 —— 令人脑洞大开的奇异架构

    这一篇我要体验的虚拟机系统是 Xen.在虚拟机领域,Xen 具有非常高的知名度,其名字经常在各类文章中出现.同时 Xen 也具有非常高的难度,别说玩转,就算仅仅只是理解它,都不是那么容易.之所以如此, ...

  9. CENTOS/UBUNTU一键安装IPSEC/IKEV2 VPN服务器

    1.在azure上创建ubuntu虚拟机 选择v15.04 server 版本 2.添加端口号 3.远程桌面到ubuntu 命令行 输入 sudo su  输入创建 ubuntu虚拟机 时候的 密码 ...

随机推荐

  1. The following signatures couldn't be verified because the public key is not available 解决方法

    今天试图把 deepin 的软件源加到我到 Ubuntu 16.04 中去. 在 deepin wiki 上看到一个教程. 在 /etc/apt/sources.list 中加上 deepin 的软件 ...

  2. 控制cxGrid 主从表的明细只展开一个

    procedure TForm.ADetailDataControllerCollapsing( ADataController: TcxCustomDataController; ARecordIn ...

  3. sql语句like的用法 有些正则表达式可以通过like实现

    原文发布时间为:2010-10-28 -- 来源于本人的百度文章 [由搬家工具导入] 在SQL结构化查询语言中,LIKE语句有着至关重要的作用。LIKE语句的语法格式是:select * from 表 ...

  4. js7:表单的学习,Forms对象

    原文发布时间为:2008-11-09 -- 来源于本人的百度文章 [由搬家工具导入] dreamveawer中,选择插入——表单——然后后面的几个选项进行学习: 大体上这么些类型: <html& ...

  5. Using MEF to Set Up Dependency Injection

    The Managed Extensibility Framework (MEF) is a built-in set of elements that allows you to “export” ...

  6. echarts中关于merge的代码

    function merge(target, source, overwrite) { // We should escapse that source is string // and enter ...

  7. 利用linux信号机制调试段错误(Segment fault)【转】

    转自:http://blog.csdn.net/ab198604/article/details/6164517 版权声明:本文为博主原创文章,未经博主允许不得转载. 在实际开发过程中,大家可能会遇到 ...

  8. flashcache 介绍

    rpm: flashcache-utils-0.0-4.1.el6.x86_64 kmod-flashcache-0.0-3.el6.x86_64 基本介绍: Flashcache是Facebook技 ...

  9. LeetCode OJ--Linked List Cycle **

    https://oj.leetcode.com/problems/linked-list-cycle/ 判断一个链表是否为循环链表(这个链表可能是 1 2 3 4 然后4指向2) 巧妙的方法:设置两个 ...

  10. 牛客网 Wannafly挑战赛8 B.LBJX的三角形

    B-LBJX的三角形 链接:https://www.nowcoder.com/acm/contest/57/B来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒空间限制:C/C++ 32768K, ...