热门标签 | HotTags
当前位置:  开发笔记 > 运维 > 正文

Linux系统安装使用qemu虚拟机

一,为什么要装虚拟机,为什么选择qemu我的系统里面有3个linux系统,这些系统都是独立的,有的时候,我想一台电脑,能更真实的模拟二台,这个时候我们就可以装个虚拟机。其实如果真的很有钱的话,可能考虑在买一台电脑,这样就不用模拟了。能模拟二台服务器

一,为什么要装虚拟机,为什么选择qemu

我的系统里面有3个linux系统,这些系统都是独立的,有的时候,我想一台电脑,能更真实的模拟二台,这个时候我们就可以装个虚拟机。其实如果真的很有钱的话,可能考虑在买一台电脑,这样就不用模拟了。能模拟二台服务器可以做很多事情,比如测试heartbeat等

为什么要选择qemu呢?我的cpu(奔腾系列)不支持完全虚拟化,所以装不了KVM等,先前试着装了xen,但是安装过于复杂,一直没有装成功。qemu安装比较简单,尽量不要把时间放在装机上,或者装虚拟机,浪费时间


二,安装kqemu加速工具


安装的时候,你可以通过系统自带的yum ,apt-get , pacman软件管理工具来安装,如果下载源里面没有话,在选择自己编译,因为自己编译的程序,更新系统时,不会自动更新的,这些依赖关系就没办法维持,到时提示这个.so文件找不到,那个.so文件找不到,就挺郁闷的,最好还是用自带的管理工具来安装。

tar zxvf kqemu-1.3.0pre9.tar.gz
cd kqemu-1.3.0pre9
sudo su
./configure
make
make install

三,安装qemu

安装qemu的时候,要注意,如果是源码安装的话,qemu默认安装的gcc是3系列的,而现在一般都是gcc4了,所以安装的时候要注意,因为我用yum search了一下是有下载源的,我就直接安装了

yum install qemu

四,安装虚拟机系统

1,要启动kqemu,如果不启动,会慢的让你抓狂的,启动后,勉强可以接受

modprobe kqemu

2,创建一个虚拟机系统镜像文件.img

mkdir qemu
cd qemu
qemu-img create ubuntu.img 4G

3,准备安装盘或者安装源

不管是通过光盘安装,还是通过硬盘来安装虚拟机系统,都要准备安装程序。你可以从网上把.iso文件下载下来,刻录到光盘中

qemu -hda /home/zhangy/qemu/ubuntu.img  -cdrom /dev/cdrom -boot d -m 256

-hda是指定将要使用的img文件,安装ubuntu的系统盘,你把它当成一个盘子就行了
-cdrom 是准备给cdrom的驱动器,在这里是安装系统的程序所在,可以在光盘,我想也可以在硬盘上,在硬盘上没有试,有兴趣的朋友可以试一下
-boot d ,就是指定系统从光盘启动,-boot c 本地启动
-m 256,指定分配组虚拟机的内存

如果是从硬盘启动安装的话,个人感觉应当会这样qemu -hda /home/zhangy/qemu/ubuntu.img  -cdrom /路径 -boot c -m 256

这样就可以一步一步的安装了,还有一点就是,用这种方式安装虚拟机的时候分区可以随便分,不要担心硬盘会被误格掉,不会的。所有的操作都是针对你创建的.img镜像文件进行操作的。

五,准备网络联接

虚拟机的网络协议走的是tun/tap模式,是要内核支持的,查看一下你的内核是不是支持

[zhangy@localhost ~]$ ls /lib/modules/2.6.18-194.26.1.el5/kernel/drivers/net/tun.ko
/lib/modules/2.6.18-194.26.1.el5/kernel/drivers/net/tun.ko

如果你的/lib/modules下有很多内核,你不确定你的系统到底用的是哪个内核的话,可以用uname -a来查看一下

modprobe tun
lsmod |grep tun

如果有内容的话说明成功了。然后在制作/etc/qemu-ifup

vim /etc/qemu-ifup

sudo /sbin/ifconfig $1 192.168.18.1
sudo route add -host 192.168.18.6 dev $1

chmod a+x /etc/qemu-ifup

别忘了给它可执行的权限

六,启动虚拟机

qemu -hda /home/zhangy/qemu/ubuntu.img -boot c -localtime -m 256 -net nic -net tun

看一下效果图

qemu

在这里鼠标点一下QEMU窗口就能进入到虚拟机,如果想退出,就按ctrl + alt


推荐阅读
  • MySQL 数据库迁移指南:从本地到远程及磁盘间迁移
    本文详细介绍了如何在不同场景下进行 MySQL 数据库的迁移,包括从一个硬盘迁移到另一个硬盘、从一台计算机迁移到另一台计算机,以及解决迁移过程中可能遇到的问题。 ... [详细]
  • PostgreSQL 10 离线安装指南
    本文详细介绍了如何在无法联网的服务器上进行 PostgreSQL 10 的离线安装,并涵盖了从下载安装包到配置远程访问的完整步骤。 ... [详细]
  • 通过Web界面管理Linux日志的解决方案
    本指南介绍了一种利用rsyslog、MariaDB和LogAnalyzer搭建集中式日志管理平台的方法,使用户可以通过Web界面查看和分析Linux系统的日志记录。此方案不仅适用于服务器环境,还提供了详细的步骤来确保系统的稳定性和安全性。 ... [详细]
  • 嵌入式开发环境搭建与文件传输指南
    本文详细介绍了如何为嵌入式应用开发搭建必要的软硬件环境,并提供了通过串口和网线两种方式将文件传输到开发板的具体步骤。适合Linux开发初学者参考。 ... [详细]
  • 本文详细介绍了如何在云服务器上配置Nginx、Tomcat、JDK和MySQL。涵盖从下载、安装到配置的完整步骤,帮助读者快速搭建Java Web开发环境。 ... [详细]
  • 本文详细介绍如何使用Samba软件配置CIFS文件共享服务,涵盖安装、配置、权限管理及多用户挂载等关键步骤。通过具体示例和命令行操作,帮助读者快速搭建并优化Samba服务器。 ... [详细]
  • 本文介绍了Linux系统中的文件IO操作,包括文件描述符、基本文件操作函数以及目录操作。详细解释了各个函数的参数和返回值,并提供了代码示例。 ... [详细]
  • 本文详细介绍了如何在预装Ubuntu系统的笔记本电脑上安装Windows 7。针对没有光驱的情况,提供了通过USB安装的具体方法,并解决了分区、驱动器无法识别等问题。 ... [详细]
  • Nginx 反向代理与负载均衡实验
    本实验旨在通过配置 Nginx 实现反向代理和负载均衡,确保从北京本地代理服务器访问上海的 Web 服务器时,能够依次显示红、黄、绿三种颜色页面以验证负载均衡效果。 ... [详细]
  • 本文详细介绍了如何在PHP中进行数组删除、清空等操作,并提供了在Visual Studio Code中创建PHP文件的步骤。 ... [详细]
  • 本文探讨了为何相同的HTTP请求在两台不同操作系统(Windows与Ubuntu)的机器上会分别返回200 OK和429 Too Many Requests的状态码。我们将分析代码、环境差异及可能的影响因素。 ... [详细]
  • 2012年7月30日,语言岛团队宣布其智能记单词软件V0.3.4.554版本正式开源。该版本不仅支持跨平台使用,还引入了多项创新功能,旨在帮助用户更高效地记忆单词。 ... [详细]
  • 在编译BSP包过程中,遇到了一个与 'gets' 函数相关的编译错误。该问题通常发生在较新的编译环境中,由于 'gets' 函数已被弃用并视为安全漏洞。本文将详细介绍如何通过修改源代码和配置文件来解决这一问题。 ... [详细]
  • 使用JS、HTML5和C3创建自定义弹出窗口
    本文介绍如何结合JavaScript、HTML5和C3.js来实现一个功能丰富的自定义弹出窗口。通过具体的代码示例,详细讲解了实现过程中的关键步骤和技术要点。 ... [详细]
  • 本文详细介绍了如何在Ubuntu的Enlightenment (E17) 桌面环境中管理和优化桌面图标及根菜单。通过本文,您将了解这些功能的作用及其配置方法。 ... [详细]
author-avatar
愿今夜不再孤单
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有