基于虚拟机的Linux课程教学环境构建

2022-12-31

目前, 主流的互联网应用都基于Linux平台, 如网站、数据库、网络游戏等;主流的软件开发环境都建立在Linux系统之上, 如Java、嵌入式C++等。Linux系统以其强大的可移植性、高安全性和稳定性等优点, 得到广大用户的喜爱和业界的认同。特别是随着云计算时代的到来, 许多基于云平台的Linux应用得到迅猛发展, 在IT界也掀起一股学习Linux的潮流。

基于以上原因, 现在许多大学IT类专业一般都会开设Linux相关的课程。如何利用现有的教学资源教好这门课程也是我们高校教师追求的目标。文章主要结合本人几年的Linux课程的教学经验介绍如何利用现有的先进技术构建高效的Linux课程教学环境, 便于同行共同提升业务水平, 同时对广大Linux学习者有很大帮助。

一、虚拟机技术及应用

(一) 虚拟机概述

虚拟化技术已在很多领域应用, 如虚拟内存、VPN等, 虚拟机 (Virtual Machine) 技术是虚拟化技术的一种。虚拟机是使用软件来仿真硬件实现的一个运行在完全隔离环境下的计算机系统。目前常用的虚拟机软件有多种, 如VMwareWorkstation、VirtualBox等。其中, VMware Workstation是一款基于主机的虚拟机软件, 面向个人用户, 构建虚拟桌面系统、小型网络环境[3]。

(二) 虚拟机在教学中的应用

虚拟机系统在功能以及使用上与物理计算机系统没什么两样, 同时还可以在一台PC机上运行多个计算机系统。使用Vmware Workstation, 你可以同时运行Linux各种发行版、Windows各种版本以及Unix等, 并且安装这些系统也变得非常方便, 可以省去传统系统安装的烦恼, 如物理分区、格式化等, 对物理磁盘上数据也不会造成影响。常用于《Linux技术》、《局域网组建》等课程的教学。

在Linux课程教学过程中, 教师对Linux命令讲解、服务配置以及学生练习, 都需要有Linux上机环境。现在机房的PC机上一般安装都是WindowsXP或windows7系统, 所以使用虚拟机安装Linux系统是一个非常好的选择, 同时也不会破坏原有的机房环境。当然你也可以继续在虚拟机上安装其他的系统用于其他课程的教学。

二、Linux课程教学环境构建

Linux课程教学主要涉及两部分, 一部分是常用命令教学;另一部分是应用服务配置教学。所以下面从这两方面来介绍如何构建用于shell命令教学的基础环境和用于各种服务配置的高级应用环境。

(一) 构建基于虚拟机的Linux课程教学基础环境

构建基于虚拟机的Linux课程教学基础环境, 最主要的工作就是安装虚拟机软件, 在此基础上再安装Linux系统。这个工作比较简单, 只需在安装前准备好相应的虚拟机软件 (如VMware Workstation9) 和Linux系统的镜像文件 (如Centos5.iso) , 按软件安装提示适当选择参数就能安装成功。安装成功了也就构建好了Linux课程教学基础环境, 即可用于Linux常用命令等内容的教学。

(二) 构建基于虚拟机的Linux课程教学高级应用环境

1. 使用YUM与RPM构建软件包安装环境比较

Linux课程教学的重点是在Linux系统中进行服务的配置, 所以需要另外再安装相关服务的软件包。Linux中需要介绍的服务有很多 (大约10多种) , 如FTP、NFS、Samba、Bind、Apache等。老师在教学演示及学生在操作过程中都要频繁安装这些软件包。一般安装软件包有两种方法, 下面以Centos5为例介绍这两种方法。

方法一:通过网络下载相关服务所需的rpm包, 然后使用rpm命令进行安装。例如, 在Centos5中安装FTP服务, 先要通过网络下载vsftpd-2.0.5-16.el5_4.rpm包, 然后使用命令:rpm-ivhvsftpd-2.0.5-16.el5_4.rpm进行安装。教师在上课前可以先下载好, 上课时直接安装, 学生需要时可能通过教学软件发给学生。

方法二:使用yum命令进行安装, 如在Centos5中安装FTP服务, 直接使用命令:yuminstallvsftpd进行安装, 但前提条件是必须配置好相应数据源, 这也是本文所要探讨的重点。

RPM是一个开放的软件的包管理系统, 使用RPM最大的好处在于提供安装功能, 减少了编译安装的侦错困扰[1]。但是rpm软件包之间的依赖性问题往往会很繁琐, 特别是如果软件是由多个rpm包组成时, 你不仅要下载多个包, 还要考虑包与包之间的依赖关系, 如果处理不好, 安装就会失败, 这对于初学者来说有一定的难度。

YUM一个RPM包的前端管理工具, 它能从指定的地方 (相关网站的rpm包地址或本地的rpm路径) 自动下载RPM包并且安装, 可以自动处理依赖性关系, 并且一次安装所有依赖的软体包, 无须繁琐地一次次下载、安装, 这对初学者来说更为方便。

通过上面对Linux课程教学环境的分析, 笔者认为在Linux课程教学中, 使用YUM工具来快速安装rpm包是最佳的选择。但使用YUM命令安装软件包时要依赖数据源, 而安装Linux时默认使用外网的数据源 (如163网的数据源) , 这就要求教学机房所有机器都能访问外网, 这些条件不是每个机房都具备的。所以我们通常的做法是建立一个本地数据源, 在封闭的局域网环境下支持YUM对软件包的管理, 这也是下文要讨论的重点内容。

2. 建立YUM依赖的本地数据源

在封闭的局域网环境下, 要构建理想的Linux课程教学环境, 必须要建立本地数据源。首先要考虑本地数据源的rpm路径, 是用光盘还是用镜像文件, 接下来就是挂载光盘或镜像文件, 最后是修改相关配置文件。下面以镜像文件centos5.iso作为rpm包的来源, 介绍如何建立YUM的本地数据源。具体方法如下:

(1) 在centos文件系统根下新建一文件夹 (如:/centossource) , 把centos5.iso镜像文件复制到该文件夹中。另外在“/media”中新建一文件夹 (如/media/centos-mount) , 作为镜像文件挂载点。

(2) 使用命令“mount-oloop/centos-source/centos5.iso/media/centos-mount”对镜像文件进行挂载。但这种方法在系统重新启动后必须重新挂载, 为了能在系统启动时就挂载该镜像文件, 就必须修改“/etc/fstab”文件, 在该文件中插入一行内容, 如图1所示, 其中, “/centos-source/centos5.iso”是在启动时需挂载的资源, “/media/centos-mount”是挂载点, iso9660代表挂载的文件类型是光盘镜像, loop用于挂载.iso文件, 以ro只读方式挂载, 其他一些选项采用缺省配置defaults。

(3) 在“/etc/yum.repos.d”文件夹中有两个配置文件, 它们是“CentOS-Base.repo”和“CentOS-Media.repo”。“CentOS-Base.repo”文件中包含外网数据源的路径, 需要禁用, 把它改名为“CentOS-Base.repo.bak”[2]就达到禁用的目的。修改“CentOS-Media.repo”文件为如图2中的内容即可。其中最主要是“baseurl=file:///media/centos-mount”把数据源基准地址指向上面配置好的挂载点, 即数据仓库地址。使用yum命令安装vsftpd软件包进行验证成功。这样本地数据源也就配置完成, Linux课程的教学活动就能顺利进行了。

三、结论

虚拟机作为可以安装多种操作系统的工具在各个领域得到广泛应用, 高校Linux课程教学大多也使用虚拟机这个平台。Linux课程教学过程中经常要安装软件包, 在局域网环境下配置好本地数据源, 使用YUM工具来安装各类软件包是个很好的选择, 从而为Linux课程教学提供了一个高效的教学环境。

摘要:本文分析了高校Linux课程教学环境的特点, 从便于教师“教”和学生“学”的角度介绍如何搭建高效的Linux课程教学环境。阐述了使用虚拟机安装各种操作系统的优越性, 对Linux教学过程中需要安装软件包的方法进行了深入探讨。就局域网环境下, 使用yum工具安装rpm包所需的本地数据源如何建立提供了可行的解决方案。

关键词:虚拟机,Linux,本地数据源,教学环境

参考文献

[1] 梁如军.Linux应用基础教程[M].机械工业出版社, 2013.13-16.

[2] 杨明.CentOSYUM源服务器搭建方式分析比较与搭建[J].电子技术与软件工程, 2016 (23) :162-163.

[3] 王太成, 蔡勇.利用虚拟机技术完成复杂网络实验[J].计算机技术与发展, 2009, 19 (4) :246-249.

上一篇:中国顾客巧克力消费动机研究下一篇:新形势下高校廉洁文化建设的几点思考——基于系统论的视角