姚 坚
(海南软件职业技术学院 数码设计系, 海南 琼海 571400)
1999年,VMware虚拟机软件出现,通过一台微型计算机可以虚拟出一台或数台的计算机,同时运行多个不同类型的操作系统,并可通过这些虚拟出来的计算机组建局域网或进行一些多操作系统产生破坏性的实验.如果能将VMware虚拟机软件广泛应用于计算机教学,则可提高计算机教学成效,甚至能提高授课效率并节约成本.随着高职院校办学条件不断提升,这也为VMware虚拟机的应用创造了硬件条件[1].特别是在Uinux及Linux的教学中,系统平台的受限,要求计算机实验教学能够提供专用的实验平台,让学生不断进行各种设置实验.目前通常用下面三种方法构建实验平台:① 安装专业的实验平台,这样会导致实验室的利用率下降;② 在学生的计算机上装有两个或多个操作系统,构成双系统平台,在启动的时候选择进入所需系统,但是导致系统维护出现问题;③ 利用虚拟机,在每个学生主机Windows XP操作系统上通过虚拟机安装多个实验用操作系统,这样对维护与教学都有好处.
VMware目前的最新版本是VMware Workstation 8,对PC的配置要求不高,目前的PC基本都能安装.为了保证其顺利运行,CPU最好采用双核,内存容量2 GB以上,可用硬盘空间10 GB以上.这里使用稳定的VMware Workstation 6来创建虚拟机,以Windows XP为宿主机.
以安装Red Hat Enterprise Linux Server 5.5为例说明VMware的配置和使用,下载软件及安装过程简略.通过VMware安装一个新的操作系统,则需要创建一个新的虚拟空间,VMware自带有安装向导,单击“文件->新建->虚拟机”,打开“新建虚拟机向导”, 根据该向导提示,用户可以创建一个新的PC系统,包括新的PC系统所需的硬件环境如硬盘、内存大小、光驱等.选择虚拟机配置“自定义”方式可以有更详细的配置细则由用户选择.选择“硬件兼容性”选项默认“Workstation 6”即可.选择需要安装的操作系统为“Linux”并指出它的版本.给现在正在安装的系统命名及指出安装产生的文件存放路径.再选择虚拟机网络类型对话框[2],如图1所示.根据需求选择“使用网络地址翻译(NAT)”方式,也可以“使用桥接网络”等方式.如果安装虚拟机时采用NAT模式,客户机经宿主机间接连接外部网络,所有客户机构成一个内部私有网络,使用私有IP地址,除宿主机和同一虚拟网络内其他客户机外,其他外部主机一般不能访问客户机.可用ping命令进行宿主机和客户机的网络连通情况测试.如果安装虚拟机时采用桥接(bridged)模式,客户机通过网桥直接连接外部物理网络,客户机和宿主机地位相同,都是本地网络的一个独立主机,客户机与宿主机处于同一网段内,使用本地网络的不同IP地址.在使用默认的“I/O适配器类型”,可以为该虚拟机指定磁盘空间,指定该虚拟机操作系统的磁盘空间,一般预定义10 GB即可.下一步骤点击“完成”就可以完成虚拟机的向导配置过程.
虚拟机创建完毕后,将Linux安装光盘放入光驱或安装镜像文件(.iso)放入指定目录,单击“启动该虚拟机”虚拟机开始安装.系统安装完毕,登录Linux后,首先要进行网络配置,可用setup或if config命令进行配置,如果使用NAT模式,虚拟机的操作系统会自动获取一个随机的IP地址,虚拟机中的IP地址要求与宿主机的IP地址要求必须在同一网段内,即共用同一网关.如图2所示,虚拟机在挂起状态.
图1 网络类型选择 图2 虚拟机上安装多个操作系统
虚拟机中的Linux系统应用跟真实机器完全相同,学生在学习初期阶段可以利用虚拟机在Windows和Linux系统之间互相切换、比较学习.
在Linux系统中的目录查看命令(ls)、建立目录命令(mkdir)、删除目录命令(rmdir),在Linux系统中操作如图3所示.在Windows系统中的目录查看命令(dir)、建立目录命令(md)、删除目录命令(del),在Windows系统中操作如图4所示[4].
利用比较法让学生接触新的Linux系统,Linux系统默认使用颜色来区分文件类型.默认蓝色代表目录.绿色代表可执行文件,红色代表压缩文件,浅蓝色代表连接文件,灰色代表其他文件.
如图5、图6所示,显示结果中每行各部分的组成是文件类型和文件权限、链接数、文件拥有者、文件所属组、文件大小、文件创建或修改时间、文件名.文件类型和文件权限中第一个字符代表类型,“d”代表目录,“-”代表普通文件,“l”代表连接文件,“c”代表字符设备,“b”代表块设备;其余2~10个字符代表文件对不同用户的权限,“r”代表对文件拥有读取的权利,“w”代表对文件拥有写的权利,“x”代表对文件拥有执行的权利[3].
图3 Linux命令 图4 Windows命令
图5 ls-a命令 图6 ls-l命令
在此类型的实验中,服务器在虚拟机内完成操作,利用客户端登陆测试,其中客户端可以使用宿主机的XP充当,这样在Linux教学中学生在概念上就对服务器——客户端有充分的理解,给学生创造了真实的情景学习环境.甚至可以在虚拟机中安装多台Linux系统进行更复杂的服务配置实验[5].以两个技能培训模块举例说明.
1) 修改apache主配置文件httpd.conf,启用apache个人主页功能
确认主配置文件中有参数[6]:
LoadModule userdir_module modules/mod_userdir.so
设置参数:
UserDir public_html
AllowOverride FileInfo AuthConfig Limit
Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec
Order allow,deny
Allow from all
Order deny,allow
Deny from all
2) 建立系统用户,并建立个人主页测试文件
创建测试用户usera和userb
[root@www named]JHJ su-usera
[usera@www ~]MYM mkdir public_html
[usera@www ~]MYM echo "UserA's Home Page" > public_html/index.html
[usera@www ~]MYM chmod o+x /home/usera
[root@www named]JHJ su-userb
[userb@www ~]MYM mkdir public_html
[userb@www ~]MYM echo "UserB's Home Page" > public_html/index.html
[userb@www ~]MYM chmod o+x /home/userb
3) 重新启动httpd服务
service httpd restart
4) 在客户端浏览器中访问个人主页
http://www.net.com/~usera/
http://www.net.com/~userb/
1) 实现基于用户的访问控制
查看apache主配置文件httpd.conf,确认已经编译了基本认证和摘要认证的模块[7]
LoadModule auth_basic_module modules/mod_auth_basic.so
LoadModule auth_digest_module modules/mod_auth_digest.so
2) 修改主配置文件httpd.conf,实现对awstats目录区域的访问控制
Options None
AllowOverride None
Order allow,deny
Allow from all
authname "AWSTATS"
authtype basic
authuserfile /etc/httpd/conf/.htpasswd
require valid-user
3) 创建存储认证用户帐号及口令文件
[root@www /]JHJ useradd awuser
[root@www /]JHJ htpasswd-c /etc/httpd/conf/.htpasswd awuser
4) 重新启动httpd服务
service httpd restart
把虚拟机应用到教学中,能够实现某些实验由于硬件条件受限而无法完成的操作,不必因为某实验室的功能受限而不能承担一些特殊课程的实验课,若把VMware虚拟机软件安装到普通计算机房,则每个学生都可以得到充分的训练,从而解决计算机分配不足的矛盾.给学生创造有利的实践环境,降低了教学成本,其优势也逐渐显示.利用虚拟机安装Unix/Linux,对开展Linux类实验提供了良好的实验平台,比如网络的服务器配置WWW、DNS、DHCP、FTP、Samba、Sendmail、防火墙等,都可以在一台计算机上使用多个虚拟机完成服务器配置和测试方案.
参考文献:
[1] 刘恩博.虚拟机应用软件VMware在计算机辅助教学中的应用[J].兵团教育学院学报,2005,15(3):53-54.
[2] 陈忠文. Linux操作系统实训教程[M].北京:中国电力出版社, 2006.
[3] 冯昊. Linux服务器配置与管理[M]. 北京:清华大学出版社, 2009.
[4] 何文华, 梁竞敏. Linux操作系统实验与实训[M]. 北京:人民邮电出版社, 2007.
[5] 刘树密.浅谈案例教学的准备工作[J].天津成人高等学校联合学报,2005(4):61-63.
[6] 骆耀祖. Linux网络服务器管理教程[M]. 北京:电子工业出版社, 2007.
[7] 易著梁, 邓志龙. Linux操作系统教程与实训[M]. 北京:北京大学出版社, 2008.