linux学习--从虚拟机讲起

作者:liguisen

bloghttp://blog.csdn.net/liguisen/

 

1.  什么是虚拟机?

什么是虚拟机?请好好利用搜索引擎,它会告诉我们答案,在这里我给出一个简单的解释:虚拟机(有些地方也叫模拟器)就是在一台计算机上虚拟出另一台计算机,就好像多出来一台完全独立的计算机一样。为什么使用虚拟机而不安装多操作系统?使用虚拟机其实只有一个原因或者说好处:就是在一台计算机上同时运行多个操作系统。主要是两个应用,一是利用一台计算机构建一个虚拟的网络,二是在多个操作系统之间快速切换。

举例:在win XP上虚拟了一个win 2K,那么他们就可以组成一个虚拟的局域网,我们可以利用它来学习相关网络知识。又或者在win XP上虚拟了一个linux,我们可以在linux进行C++编程,在win XP上临时处理word文档(毕竟在linux不能做到完全兼容)。但如果你经常一打开机器,就进入虚拟的操作系统直至关机,那么你不如安装多操作系统。

 

2.  虚拟机都有哪些?该选择哪一个?

虚拟机软件好像还不少,例如:

Plex86User-Mode-LinuxVMware Virtual PCwin4lin9X)、wineXenQemubochs

我也不知道该选哪个,不过就从网上搜索的结果来看:使用较多的是VMware Virtual PCQemu。下面就网上收集的资料分别简单介绍一下:

vmware稳定、功能强大、对资源要求比较高,需要比较多的内存。性能较好的系统可以选择这个。该软件是不开源的商业软件,如果想长期使用需要获得正式的license,不过现在有了免费的vmware-player,可以运行已经安装好的虚拟机,这基本上就解决了问题。vmware对网络的支持也是最好的,有多种模拟网络设备的模式,还可以添加多个虚拟网卡。vmware的虚拟磁盘可以是真实的物理磁盘分区,而那个分区上可能真的有一个window的安装,vmware虽然支持以这种方式引导虚拟系统,但是并不推荐。如果你有一个空闲的分区专门给vmware使用,那么可能这是最理想的方式了,无论是从哪一点考虑,性能或者安全。当然,用主操作系统里面的文件作为虚拟机的磁盘空间是比较常见的方式,相比较前面一种,可能性能上有稍稍的降低,但是你往往是感觉不到的。

Virtual PC常被简称为VPCvirtual pc相比vmware 在占用资源上更少,操作更加简单上手,十分适合新手的使用。采用了动态分配内存和磁盘的技术,使得占用资源上更少。新发布的Virtual PC 2004已不再明确支持LinuxFreeBSDNetWareSolaris等操作系统,只保留了OS/2,如果要虚拟一台Linux计算机,只能自己手工设置。

Qemu这是一个开源的虚拟机系统。近几年发展比较迅速。原来最大的问题是比较慢,而它在得到不开源但是可免费使用的kqemu的加速后,速度也得到比较大的提高。

下面转载一个帖子(部分):

作者:Aspirant,原帖地址:http://bbs.wedsh.com/viewthread.php?tid=8995

 (注:后来顺藤摸瓜,找到了该作者的blog:http://blog.dream4ever.org/aspirant/,该帖地址:http://blog.dream4ever.org/aspirant/archive/2005/12/22/80513.aspx

一:介绍一下QEMU

相信不少朋友玩过虚拟机,比如VMWAREMS VPC。现在我给大家介绍一下基于GPL协议的开放源代码并且跨平台的虚拟机软件:QEMUQEMU的好处是不用安装庞大的虚拟机系统。并且介于它的免安装(zuilang:??后面的安装好像就是一个解压缩而已)、绿色、小巧的特点,我们有理由选择它,当然它不能完全取代VMWARE之类的虚拟机软件(由于QEMU是完全虚拟了一个真实的CPU,故CPU占用率较高)。QEMU适用于Linux ,Windows, FreeBSD and MaxOS X这几个平台,由于本人水平有限,仅仅介绍一下WINDOWS平台下的QEMU。经我测试对有些系统支持的不够好,比如网友们自己定制出来的WINDOWS系统维护光盘不能够良好运行。不过瑕不掩瑜,QEMULINUX支持的比较好,对于一些LINUX新手来说,如果不想破坏硬盘上已有的Windows系统,就可以用QEMU来试试。请到这里下载QEMU FOR WINDOWS的最新版本

http://free.oszoo.org/ftp/qemu/win32/daily/

下载http://free.oszoo.org/ftp/qemu/win32/daily/QemuInstall-20051120.exe完毕之后安装之。安装目录中QEMU.exe便是主程序了,它是基于命令行界面的32位程序,其余的诸如bios.binvgabios.bin之类看名称就知道是虚拟机的主板BIOS程序还有显卡BIOS了。QEMU并不提供BIOS设置的相关内容(好象是由于版权问题),作为一个小巧的虚拟机软件,它也没有必要对这方面提供支持。因为在后面看到QEMU里用强大的参数,照样可以实现BIOS启动选择的功能。具体就是从虚拟磁盘启动还是从可引导光盘镜像启动,当然也包括了软盘启动。
二:如何启动QEMU
1
运行批处理文件
新建一文本文件,在其中输入如下语句

REM Start qemu on windows.
@ECHO OFF

START qemu.exe -L . -m 128 -hda linux.img -enable-audio -localtime

CLS
EXIT

并且另存为*.bat批处理文件。
简单说明一下语句中的linux.img就是默认启动的Linux磁盘镜像,-L设置的是BIOS目录,-hda是设置硬盘硬盘镜像,磁盘镜像文件可以由qemu-img.exe生成,并且可以设置磁盘空间大小。例如要设置一个10MB的虚拟硬盘空间,在命令行中键入以下命令:qemu-img.exe create harddisk.img 10M,这样就会在当前目录建立了一个10MB大小,名称为harddisk.img的虚拟磁盘。-enable-audio参数表示开启了声音,-locoltime则表示使用主机设置的时间。在运行虚拟机的时候,如果鼠标丢失(在虚拟机的运行窗口出不来时,只要同时按CTRLALT键就可以将鼠标释放到主机,这点和VMWARE一样)
2
使用快捷方式启动
建立一个指向QEMU.exe的快捷方式,在快捷方式的属性里设置QEMU相应的运行参数(参数如上述),然后双击这个快捷方式即可
3
运行安装目录中的QEMUMenu.bat(推荐)
这个是我最常用的运行QEMU的批处理了,可以在此完成大部分的操作,比如设置光盘镜像路径,生成虚拟磁盘文件等。
例如:

QEMU_BIOS_DIR=/tools/burning/OperatingSystem/QEMU/bios
=== QEMU Menu (v20041121) ===
   QEMU Menu (C) 2004 Garth Dahlstrom (ironstorm@users.sf.net)
   QEMU (C) 2004 Fabrice Bellard

QEMU Settings:
Memory (256MB)  BIOS DIR (/tools/burning/OperatingSystem/QEMU/bios)
ISO/CD (-cdrom "C:/Documents and Settings/Administrator/
桌面/SUSE-10.0-LiveDVD.
iso" -boot d)
Network ()

Boot QEMU using image:
[1] harddisk

Settings/Toggles:
[C]reate image file  [M]emory  [I]SO/CD  [N]etwork  [Q]uit

Enter your choice now []:


在光标处键入C即可创建磁盘镜像,键入M即可设置内存大小,键入I即可设置光盘镜像,键入N设置网卡,键入Q退出,很方便
4
GUI来操作QEMU(推荐)
想必在图形界面下习惯了的用户都不太适应命令行界面了,这里推荐QEMU MANAGER(也是GNU软件),个人认为这个是最好的QEMU前端工具了(可惜不支持UNICODE,请设置路径和文件名为英文名称),其最新版下载链接为:http://www.davereyn.co.uk/qem/qman20.zip,它照顾了习惯使用VMWARE用户,其向导很不错。
三:如何测试光盘镜像
最后简单介绍一下命令行测试光盘镜像的例子
README-en.txt文件中我们看到了具体参数的使用方法:
以说明文件中自带的例子为例:
qemu.exe -L . -m 128 -boot a -fda floppy.img -hda harddisk.img -cdrom cdimage.iso
参数的定义如下
-L : BIOS
位置,上面的“.”表示当前目录
-m :
内存大小 (单位:MB
-boot :
引导设备 软盘启动为(a), 虚拟硬盘启动为©, 虚拟光盘引导为(d)
-fda :
软盘镜像
-hda :
硬盘镜像
-cdrom :
光盘镜像
现在我们开始测试一个Linux LIVECDDamn Small Linux,这是个小巧的Linux可引导光盘镜像,我们就拿它做试验。
下载地址为http://gulus.usherbrooke.ca/pub/distro/Dam...t/dsl-0.9.2.iso
将下载得到的dsl-0.9.2.iso镜像文件放到QEMU程序目录,编辑批处理文件如下:

REM Start qemu on windows.
@ECHO OFF

START qemu.exe -L . -m 128 -boot d -hda linux.img -cdrom dsl-0.9.2.iso -enable-audio -localtime

CLS
EXIT

这里设置的是从光盘引导(字母d表示光盘引导,前面已有说明),并且这里所虚拟的是一台磁盘镜像为linux.img,内存容量为128MB大小的虚拟机。
下面存盘退出,运行这个编辑好的批处理文件,如果编辑没错的话,就能看到系统已经正常启动了。

本贴纯属抛砖引玉,在官方还看到更深层次的东西,希望高手研究出来奉献给大家。

四:综述:

在使用QEMU有段时间之后,偶发现QEMU用来安装系统不太可取,因为其过程相当漫长(未使用加速模块,据说加速模块能加快5倍虚拟系统安装速度,无奈需要编译,我一直没有尝试编译它。

注:Aspirant现在已经编译了一个使用kqemu加速的QEMU,qemu-0.8.0_builtin_with_kqemu-0.7.2,大家可以到他的blog下载。

 
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值