Ubuntu 11.10中用xen-tools安装虚拟机(UbuntuCentOS)

2023-11-09 10:40

本文主要是介绍Ubuntu 11.10中用xen-tools安装虚拟机(UbuntuCentOS),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Ubuntu 11.10中可以通过apt-get安装xen-tools,其版本为4.1版本:

# apt-get install -y xen-tools

由于xen-tools是xen的半虚拟化管理工具,所以需要安装修改过的、支持半虚拟化的kernel。在ubuutu 11.10中,只需要通过apt安装linux-image-3.0.0-1x-virtual的kernel即可:

# apt-get install -y linux-image-3.0.0-12-virtual

安装完后就会在/boot下找到vmlinuz-3.0.0-12-virtual和initrd.img-3.0.0-13-virtual,这是之后半虚拟化的DomU所要使用的kernel。

接下来修改xen-tools的配置文件,配置文件中的值只在创建实例过程中没有指定某个选项时提供默认值:

# vi /etc/xen-tools/xen-tools.conf

需要修改如下几项:

[...]

dir=/home/xen   #用于放置img文件的位置

[...]

lvm=vg0     #如果使用lvm的逻辑卷来做存储,则制定卷组名

[...]

#指定实例的系统版本,xt-guess-suite-and-mirror --suite返回的是宿主机的系统版本

dist=`xt-guess-suite-and-mirror --suite`

[...]

# 指定实例所在网段

gateway =192.168.0.1

netmask =255.255.255.0

broadcast=192.168.0.255

[...]

# 指定实例使用的kernel,这里就使用之前安装的、支持半虚拟化的kernel

kernel= /boot/vmlinuz-3.0.0-12-virtual

initrd=/boot/initrd.img-3.0.0-12-virtual

[...]

serial_device=hvc0   # 指定console名称,使用默认值即可

disk_device=xvda #指定实例的磁盘名称,使用默认值即可

[...]

# 这里指定安装实例的镜像源,xt-guess-suite-and-mirror --mirror返回的是宿主机的镜像源

mirrors=`xt-guess-suite-and-mirror--mirror`

[...]

修改好xen-tools.conf后,就需要创建刚才指定的放置img文件的目录位置:

# mkdir /home/xen

========================创建ubuntu实例=====================

xen-tools创建ubuntu实例采用的是debootstrap,xen-tools.conf中默认采用这种方法。

xen-tools默认支持的最新ubuntu版本是maverick,而11.10的版本是oneiric(现在的12.04是precise),这样我们就要先让xen-tools支持到我们需要的版本。由于所有的ubuntu版本都是karmic.d的符号连接,所以我们只需要再创建一个符号连接即可:

# cd /usr/lib/xen-tools/

# ln -s karmic.d oneiric.d (for ubuntu 11.10)

或者

# ln -s karmic.d precise.d (for ubuntu 12.04)

接下来就可以创建实例了:

# xen-create-image --hostname=ubuntu.example.com --size=4G --swap=1G --memory=1G --ip=192.168.0.101 --arch=amd64 --role=udev

若按照之前所配置的xen-tools.conf,这条命令将创建一个与宿主机系统版本相同的虚拟机实例。

当然,我们也可以修改系统版本,或者修改安装源,或者修改磁盘的类型,只需要增加一些选项和参数,例如:

# xen-create-image --hostname=ubuntu.example.com --size=4G --swap=1G --memory=1G --ip=192.168.0.101 --arch=amd64 --role=udev --scsi --dist maverick --mirror=http://mirrors.163.com/ubuntu

注意:千万别忘记--role=udev

具体有哪些参数可以参见xen-create-image的man page:

# man xen-create-image

执行上述命令后,就会进入实例创建过程。过程中会提示输入密码,作为虚拟机实例的root账户密码。创建完成后,会在之前指定的目录中生成img文件,作为虚拟机实例的存储,并在/etc/xen下生成.cfg文件,作为虚拟机实例启动的配置文件。

接下来,通过xm命令启动实例:

xm create -c ubuntu.example.com.cfg

成功进入实例系统。

==========================创建CentOS实例======================

xen-tools创建CentOS实例采用的是rinse。

在创建CentOS实例之前,需要安装一些依赖包:

#apt-get install -y debootstrap libbeecrypt7 libc6-xen libconfig-inifiles-perl libexpect-perl libio-pty-perl libio-stty-perl librpm2 libterm-readline-gnu-perl libterm-size-perl libtext-template-perl reiserfsprogs rinse rpm screen vnstat

rinse创建实例过程中会下载安装一些rpm包。rinse配置文件中默认的包可能导致实例创建的失败,所以需要加入一些包:

# vi /etc/rinse/centos-x.packages

[...]

#在最后加入以下内容

nss

nspr

python-iniparsel

authconfig

此外,还可以更换CentOS实例的安装源,rinse默认使用的是一个英国的源,比较慢。

# vi /etc/rinse/rinse.conf

[...]

mirror = http://mirrors.163.com/centos/6.2/os/i386/Packages

mirror.amd64 = http://mirrors.163.com/centos/6.2/os/x86_64/Packages

和ubuntu一样,xen-tools支持CentOS的最新版本是5.x版本,如果需要安装6.x的CentOS,则需要创建相应的安装流程。由于无论哪个版本安装流程都相似,所以可以直接复制5.x的安装流程。

# cd /usr/lib/xen-tools/

# cp -a centos-5.d centos-6.d

接下来就可以创建CentOS的实例了,由于更改了安装方法,所以需要在命令中增加相应的选项和参数,同时,--role=udev的参数就不需要了:

# xen-create-image --hostname=centos.example.com --size=4G --swap=1G --memory=1G --ip=192.168.0.102 --dist=centos-6 --install-method=rinse --arch=amd64

创建过程与ubuntu实例类似,创建完成后启动实例:

# xm create -c centos.example.com.cfg

这样就能成功登录CentOS的虚拟机实例。

===========================其他=========================

1. 创建CentOS实例过程中会遇到错误,大概原因是不能读取镜像源,这种情况下要更换有效的镜像源。

2. 在创建和启动虚拟机的过程中可能会遇到没有空余loop的问题,主要原因是开机加载loop内核模块时默认只加载了8个loop,我们可以通过修改/etc/modules来指定开机加载loop的最大数量:

#  vi /etc/modules

[...]

loop max_loop=64

3. xen-tools的log文件在/var/log/xen-tools中,log文件以实例主机名命名,整个创建过程可以通过监控log文件来观察,也可以通过查看log文件来排除相应的错误。

这篇关于Ubuntu 11.10中用xen-tools安装虚拟机(UbuntuCentOS)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/375620

相关文章

Python中win32包的安装及常见用途介绍

《Python中win32包的安装及常见用途介绍》在Windows环境下,PythonWin32模块通常随Python安装包一起安装,:本文主要介绍Python中win32包的安装及常见用途的相关... 目录前言主要组件安装方法常见用途1. 操作Windows注册表2. 操作Windows服务3. 窗口操作

gitlab安装及邮箱配置和常用使用方式

《gitlab安装及邮箱配置和常用使用方式》:本文主要介绍gitlab安装及邮箱配置和常用使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1.安装GitLab2.配置GitLab邮件服务3.GitLab的账号注册邮箱验证及其分组4.gitlab分支和标签的

MySQL MCP 服务器安装配置最佳实践

《MySQLMCP服务器安装配置最佳实践》本文介绍MySQLMCP服务器的安装配置方法,本文结合实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下... 目录mysql MCP 服务器安装配置指南简介功能特点安装方法数据库配置使用MCP Inspector进行调试开发指

在Windows上使用qemu安装ubuntu24.04服务器的详细指南

《在Windows上使用qemu安装ubuntu24.04服务器的详细指南》本文介绍了在Windows上使用QEMU安装Ubuntu24.04的全流程:安装QEMU、准备ISO镜像、创建虚拟磁盘、配置... 目录1. 安装QEMU环境2. 准备Ubuntu 24.04镜像3. 启动QEMU安装Ubuntu4

Python UV安装、升级、卸载详细步骤记录

《PythonUV安装、升级、卸载详细步骤记录》:本文主要介绍PythonUV安装、升级、卸载的详细步骤,uv是Astral推出的下一代Python包与项目管理器,主打单一可执行文件、极致性能... 目录安装检查升级设置自动补全卸载UV 命令总结 官方文档详见:https://docs.astral.sh/

Nexus安装和启动的实现教程

《Nexus安装和启动的实现教程》:本文主要介绍Nexus安装和启动的实现教程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、Nexus下载二、Nexus安装和启动三、关闭Nexus总结一、Nexus下载官方下载链接:DownloadWindows系统根

Java SWT库详解与安装指南(最新推荐)

《JavaSWT库详解与安装指南(最新推荐)》:本文主要介绍JavaSWT库详解与安装指南,在本章中,我们介绍了如何下载、安装SWTJAR包,并详述了在Eclipse以及命令行环境中配置Java... 目录1. Java SWT类库概述2. SWT与AWT和Swing的区别2.1 历史背景与设计理念2.1.

安装centos8设置基础软件仓库时出错的解决方案

《安装centos8设置基础软件仓库时出错的解决方案》:本文主要介绍安装centos8设置基础软件仓库时出错的解决方案,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐... 目录安装Centos8设置基础软件仓库时出错版本 8版本 8.2.200android4版本 javas

Ubuntu设置程序开机自启动的操作步骤

《Ubuntu设置程序开机自启动的操作步骤》在部署程序到边缘端时,我们总希望可以通电即启动我们写好的程序,本篇博客用以记录如何在ubuntu开机执行某条命令或者某个可执行程序,需要的朋友可以参考下... 目录1、概述2、图形界面设置3、设置为Systemd服务1、概述测试环境:Ubuntu22.04 带图

Pytorch介绍与安装过程

《Pytorch介绍与安装过程》PyTorch因其直观的设计、卓越的灵活性以及强大的动态计算图功能,迅速在学术界和工业界获得了广泛认可,成为当前深度学习研究和开发的主流工具之一,本文给大家介绍Pyto... 目录1、Pytorch介绍1.1、核心理念1.2、核心组件与功能1.3、适用场景与优势总结1.4、优