Linux系统下C程序开发详解
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

第一部分 Linux基础篇

第1章 Linux编程平台

1.1 Linux发行版的介绍

所谓Linux发行版,指的是以Linux内核为中心,集成各种系统管理软件或应用软件,组成一套完整的操作系统。这种在内核上开发出的可供用户使用的Linux系统就是Linux发行版。Linux内核指的是可提供硬件抽象层、磁盘及文件系统控制、多任务等功能的系统软件。内核不是一套完整的操作系统,计算机上还无法使用,需要发行版上的软件支持。

1.1.1 Red Hat Linux

Red Hat是最成熟的一种Linux发行版,在服务器和个人桌面、嵌入式开发方面有着广泛的应用。Red Hat的第一个版本发布于1994年,到现在为止已经发布了数十个版本。本书进行开发和讲解时使用的是Red Hat Linux 9.0。

在使用上,Red Hat Linux有着非常友好的界面,Linux系统不再是字符界面的操作,而是和Windows一样有着非常便捷的图形操作。在应用软件和开发工具等方面,Red Hat Linux 9.0提供了OpenOffice.org办公软件、Mozilla浏览器、网站和数据库服务器、QT开发平台等开源工具。

Red Hat Linux在安装系统时允许用户根据自己的不同需求进行自主选择安装环境。例如可以安装家庭台式机、工作站、服务器以及自定义等不同的应用环境。在个人台式电脑学习和开发时,需要选择安装开发编程环境。

1.1.2 Debian Linux

Debian是一套自由开发的Linux操作系统,在个人计算机和商业领域有着广泛的应用。Debian最大的特点是集成了数万个软件包,用户可以在网络中非常方便地管理和升级所需要的软件。Debian的软件管理有着良好的集成程度,所有的软件都是由官方编译成deb包,然后发布到升级服务器中。deb的软件管理方式很好地解决了复杂的软件依赖性问题,使Debian Linux更加稳定强健。apt-get这种软件管理方式,使得软件的下载和安装非常简单,只需要一个简单的命令就可以完成软件下载与安装的全部操作。

1.2 Linux的安装

Linux系统安装与Windows系统安装是相似的,用安装光盘可以方便地安装Linux系统。与Windows系统安装不同的是,需要注意系统的引导与分区。特别是与Windows一起安装双系统时,更需要注意分区和引导的问题。本章将讲解Linux分区、Linux安装等问题。

1.2.1 Linux的分区格式

Linux的分区格式与Windows是完全不相同的。Windows使用的是FAT32或NTFS格式的分区系统,而Linux使用Ext2或Ext3格式的分区系统。除了文件分区以外,Linux还需要一个Swap交换分区。

● Ext2:Ext2是Linux系统中标准的文件系统,也是Linux中使用最多的一种文件系统。Ext2是专门为Linux设计的分区格式,有极快的访问速度和极小的CPU占用率。Ext2既可以应用于硬盘,也可以应用在软盘、移动硬盘、闪存等移动存储设备上。

● Ext3:Ext3是一种日志式文件系统(Journal File System),是Ext2的下一代分区格式,在Ext2的格式上再加上日志功能。Ext3的最大的特点是将整个磁盘的写入动作以日志的形式完整地记录在磁盘的某个区域上,以便在需要时回溯追踪。当文件分区中的某个操作过程出现异常时,可以根据所记录的日志直接找回被中断的部分。这种日志式的分区格式使文件的存储非常稳定,被广泛应用在Linux系统中。

● Swap:Swap是Linux系统专门用于内存交换的硬盘分区,相当于Windows系统中的虚拟内存。Swap交换区的大小一般是内存的二倍。在内存不够时,Linux会将不活动的内存数据存储在交换分区中。

1.2.2 在Windows系统中划分Linux分区

在安装Linux时,一般需要将Linux与Windows系统安装在同一个计算机中。这就需要在已经安装好的Windows系统中,为Linux划分分区。使用Norton PartitionMagic分区软件,可以方便地在Windows系统中的图形界面上对硬盘进行分区。下面的步骤是使用Norton PartitionMagic在硬盘中划分Linux分区以供Linux安装。

[1]在网络上下载“Norton PartitionMagic”分区软件并且安装。打开Norton PartitionMagic进行硬盘分区。Norton PartitionMagic的界面如图1-1所示。在进行硬盘分区时,需要关闭其他正在运行的软件。

图1-1 使用Norton PartitionMagic进行硬盘分区

[2]查看计算机中的分区。在Norton PartitionMagic的分区列表中,显示了计算机中的硬盘分区情况和分区使用情况,如图1-2所示。

图1-2 在Norton PartitionMagic查看计算机的分区

[3]删除最后一个分区。在删除分区之前,需要将最后一个分区中的文件备份。例如,图1-2显示的最后一个分区是“F:”盘,需要将“F:”盘中的数据转移到其他分区。

[4]在分区列表中,单击选择最后一个分区。在如图1-1所示的界面中,单击“分区操作”标签中的“删除分区”工具,弹出“删除分区”对话框如图1-3所示。

图1-3 “删除分区”对话框

[5]单击“确定”按钮确定删除分区。需要注意的是,对分区的操作,会删除一个分区的所有数据。分区以后的数据是不能再恢复的。所有的操作需要谨慎,不可以出现错误。

[6]如图1-4所示,删除一个分区以后,硬盘中有了15GB的未分配空间。

图1-4 硬盘删除分区以后的分区列表

[7]新建一个swap交换分区。在分区列表中,单击选择未分区的硬盘空间。在如图1-1所示的界面中,单击“分区操作”标签中的“创建分区”工具,弹出“创建分区”对话框如图1-5所示。

图1-5 新建一个swap分区

[8]在“创建为”下拉菜单中,单击选择“逻辑分区”选项。在“分区类型”下拉菜单中,单击选择“Linux Swap”选项。在“大小”文本框中输入分区的大小1024(swap交互分区的大小应该是内存大小的二倍)。然后单击“确定”按钮完成设置。

[9]创建一个引导区。在Linux系统中,需要有引导程序来引导系统。引导程序常常存放在一个独立的分区中,大小一般是100MB~200MB。如步骤7,新建一个分区,“创建分区”对话框如图1-6所示。

图1-6 创建一个引导分区

[10]如图1-6所示,在“创建为”下拉菜单中,单击选择“逻辑分区”选项。在“分区类型”下拉菜单中,单击选择“Linux Ext3”选项。在“卷标”文本框中输入卷标“boot”。卷标是在文件管理中可以看到的分区名称。在“大小”文本框中输入这个分区的大小128。然后单击“确定”按钮完成设置。

[11]用上面的两个步骤,新建一个主分区。分区的类型为“Linux Ext3”,卷标为“linux”。分区大小为硬盘中的所有剩余空间。

[12]在Norton PartitionMagic的分区列表中,创建的Linux分区如图1-7所示。这样,硬盘的前三个分区是Windows分区,后三个分区是Linux分区,实现了同一个硬盘安装Windows分区与Linux分区双系统。

图1-7 分区列表

[13]上面步骤中的分区操作,只是进行分区设置,并没有执行分区。在Norton PartitionMagic左下角的操作列表中有已经设置的操作列表,如图1-8所示。单击“应用”按钮,完成分区的操作。

图1-8 分区的操作列区

[14]Norton PartitionMagic会自动把所有的操作应用到硬盘,并自动格式化分区,然后Norton PartitionMagic会提示重启计算机。经过这些步骤,就在已经安装Windows系统的硬盘中划分了三个Linux分区。

1.2.3 Red Hat 9.0的安装

Red Hat Linux是使用最广泛的Linux发行版。可以将Red Hat Linux与Windows一起以双系统的形式安装到计算机中。本节将讲述用安装光盘进行Linux的安装与设置。

[1]进行上一节的分区操作,在硬盘中划分三个分区以供Linux安装。

[2]将Red Hat Linux的安装光盘装入光驱。重启计算机,在启动时按“Delete”键进入“BIOS”,设置计算机从光盘启动。然后保存设置,重启计算机。

[3]计算机会从光盘启动,进行Rad Hat Linux的安装。如图1-9所示是Rad Hat Linux 9.0的安装启动界面。

图1-9 Rad Hat Linux 9.0的安装启动界面

[4]安装会停在如下所示的一个提示上面。提示用户如果要安装系统则按“Enter”键。这时,需要按“Enter”键以确认继续Linux的安装。

    To install or upgrade Red Hat Linux in Graphical mode,
    Press the <ENTER> key.

[5]检查光盘的完整性。在Red Hat Linux 9.0安装之前,为了防止光盘错误而导致中断安装,需要对光盘的完整性进行检查。安装过程会停止在如图1-10所示的界面上。这时用“Tab”键可以在按钮之间移动,按“Enter”键确认。在图1-10所示的界面中,“OK”按钮是进行光盘完整性检查,“Skip”按钮是跳过完整性检查。按“Tab”键将光标移动到“OK”按钮上,然后按“Enter”键确认。

图1-10 光盘完整性检查

[6]完成光盘完整性检查以后,Red Hat Linux 9.0的图形安装界面如图1-11所示。然后单击“NEXT”(下一步)按钮。在这一步以后的步骤都可以用鼠标来操作。如果还没有正常加载鼠标,可以用“Tab”键在窗口上移动选择的内容,按“Enter”键激活选择的内容,按“空格”键选择单选框或复选框。

图1-11 Red Hat Linux 9.0的图形安装界面

[7]选择系统语言。Red Hat Linux 9.0的默认安装语言是英文安装。在这以前的步骤都是英文界面。如图1-12所示是“Language Selection”窗口。在语言列表中单击选择“Chinese (Simplified)(简体中文)”选项。然后单击“Next”按钮。后面的安装会在中文界面中完成。

图1-12 选择安装语言

[8]选择键盘。如图1-13所示,是选择键盘界面。Red Hat Linux 9.0是一个支持多种语言的系统,在不同国家中可能使用不同的键盘。在列表中单击选择“U.S. English”选项,然后单击“下一步”按钮。

图1-13 选择键盘类型

[9]选择鼠标。Red Hat Linux 9.0在安装时,可能不能正确检测到用户使用的鼠标类型,这时就需要选择自己的鼠标类型。如图1-14所示,选择正在使用的鼠标类型。鼠标可能是串口、USB、PS/2等接口,可能有多个键,需要对这些类型进行选择。然后单击“下一步”按钮。

图1-14 选择鼠标类型

[10]选择安装环境。Red Hat Linux 9.0可以安装个人桌面、服务器、工作站等不同的环境。如图1-15所示,单击“定制”单选按钮,在安装时需要选择开发环境的软件。然后单击“下一步”按钮。

图1-15 选择安装环境

[11]选择分区方式。在上一节中已经为Linux划分了三个分区,在安装时需要手动挂载已经划分的Linux分区。如图1-16所示,单击选择“用Disk Druid手工分区”单选按钮,然后单击“下一步”按钮。

图1-16 选择分区方法

[12]如图1-17所示是硬盘的分区列表。上方以列表的方式显示各个硬盘的分区情况,下方显示分区的列表。

图1-17 分区列表

[13]在分区列表中,单击选择“/dev/hda1”分区,然后单击“编辑”按钮,挂载这一个分区。如图1-18所示是“编辑分区”对话框,在“挂载点”下拉列表中,单击选择挂载点“/boot”,在“文件系统类型”下拉列表中,单击选择“ext3”选项。然后单击“确定”按钮完成设置。

图1-18 挂载引导分区

注意:在Linux系统中,分区并不像Windows系统一样排列成C盘、D盘等,而是挂载到同一个挂载点上。最高一级挂载点为“/”。可以把一个分区挂载到任何一个文件夹下。

[14]用上一步骤同样的方法,将Swap分区的文件系统类型设置为“swap”,不设置挂载点,如图1-19所示。将最大分区的文件系统类型设置为“ext3”,挂载点设置为“/”。

图1-19 挂载swap交换分区

[15]设置GRUB引导。Red Hat Linux 9.0安装以后在引导时,需要一个软件来进行引导。GRUB是一个系统启动引导软件。如图1-20所示是GRUB的引导设置,在引导列表中单击“默认”复选框中的一个系统作为默认启动的系统,然后单击“下一步”按钮。

图1-20 设置GRUB引导

[16] 设置网络。“网络设备”列表的选项是计算机中可以使用的网卡。单击这个网卡,设置网络属性,如图1-21所示。如果网络支持“DHCP”自动获取IP,可以选择“通过DHCP自动被设置”单选按钮。否则需要单击选择“手工设置”单选按钮,在IP列表中分别设置可以使用的IP地址、网关、DNS等信息,然后单击“下一步”按钮。

图1-21 设置网络

[17] 配置防火墙。如图1-22所示,在“选择系统的安全级别”单选按钮中单击选择“中级”选项,在“允许进入”列表中单击选择系统中允许访问的服务,然后单击“下一步”按钮。

图1-22 配置防火墙

[18] 选择系统默认语言。Red Hat Linux 9.0在系统安装时,可以安装多种可供选择的语言。在如图1-23所示的语言列表中,单击选择“Chinese (P.R. of China)”选项作为系统的默认语言,然后单击“下一步”按钮。

图1-23 选择系统默认语言

[19] 选择所在的时区。Linux系统中使用了UTC时间,需要设置当地的时区转换成本地时间。如图1-24所示,在位置列表中单击选择“亚洲/上海”选项,然后单击“下一步”按钮。

图1-24 选择所在的时区

注意:UTC时间(Universal Time Coordinated)是协调世界时间,以英国格林威治平均时作为零时区,北京时间比UTC时间早8小时(在编程时常用到UTC时间)。

[20] 设置根用户口令。在Linux系统中,“root”用户是最高权限用户,被称为根用户。如图1-25所示,在“根口令”文本框中输入一个密码,在“确认”文本框中再次输入相同的密码,然后单击“下一步”按钮。

图1-25 设置根用户口令

[21] 选择软件包组。如图1-26所示,根据需要选择需要安装的软件包组。在Red Hat Linux 9.0中需要使用的软件包组如下所示。

图1-26 设置需要安装的工具

● X窗口系统:Linux系统的图形桌面是一个应用软件,如果不安装X窗口系统则不能进入桌面。

● GNOME桌面环境:Linux系统中,桌面、任务栏、开始菜单等工具都是桌面环境软件。GNOME是一个桌面管理软件。

● KDE桌面环境:KDE是一个同GNOME类似的桌面管理软件。

● 编辑器:如文本编辑器、记事本等文本编辑工具。

● 图形化互联网:包括浏览器、聊天工具、FTP工具、Email工具等网络常用软件。

[22] 选择软件包组中的软件。安装一个软件包组时,会默认安装需要的工具,可以根据使用的需要选择安装的软件。在图1-26 所示的窗口中,在“编辑器”软件包组中单击“细节”按钮选择需要安装的软件。如图1-27所示,在软件列表中选择所有的编辑器软件,然后单击“确定”按钮。

图1-27 详细选择一组工具中的软件

[23] 在图1-26中向下拖动滚动条,在软件包组列表中,单击选择编程开发所需要的“开发工具”、“X软件开发”、“GNOME软件开发”、“KDE软件开发”等软件包组,如图1-28所示,然后单击“下一步”按钮。

图1-28 选择需要使用编程开发工具

[24] 经过这些设置以后,Red Hat Linux 9.0会自动安装已经选择的软件。如图1-29所示,进度条和进度列表显示了当前的安装进度和所需的时间,“正在安装的软件包”标签中显示当前正在安装的软件包信息,这一过程大约需要10分钟。

图1-29 Red Hat Linux 9.0正在安装系统

[25] 设置引导盘。Red Hat Linux 9.0安装完毕以后,会提示制作引导盘。引导盘是在一张软盘上写入Red Hat Linux 9.0的引导信息,当系统无法引导时可以使用引导盘来启动系统。如果计算机中没有软驱,可以单击选择“否,我不想创建引导盘”单选按钮,如图1-30所示,然后单击“下一步”按钮。

图1-30 选择是否创建启动盘

[26] 选择和设置显卡。Linux系统在安装时,可能无法正确检测到显卡。如图1-31所示,在显卡列表中单击选择计算机的显卡类型,在“视频卡内存”下拉列表中单击选择显卡显存的大小,然后单击“下一步”按钮。

图1-31 选择和设置显卡

[27] 设置显示器类型。如图1-32所示,在显示器列表中单击选择显示器的品牌和型号,然后单击“下一步”按钮。

图1-32 选择和设置显示器

[28] 设置显示器的分辨率。如图1-33所示,在“色彩深度”下拉列表中,单击选择“高色(16 位)”选项,在“屏幕分辨率”下拉列表中单击选择适合自己显示器的分辨率,然后单击“下一步”按钮。

图1-33 设置显示器的分辨率

[29] 完成安装。系统完成安装的界面如图1-34所示。这时单击“退出”按钮,会自动重启计算机启动Red Hat Linux 9.0系统。

图1-34 完成Red Hat Linux 9.0的安装

[30] 选择需要启动的系统。安装了GRUB来引导双系统的计算机,会在启动时等待几秒时间,让用户选择需要启动的系统,如图1-35所示。按“向上”或“向下”键可以选择系统,然后按“Enter”键启动选择的系统。

图1-35 GRUB引导系统

[31] Linux系统在启动时,会详细显示硬件和软件的启动情况。图1-36是Red Hat Linux 9.0的启动界面。

图1-36 Red Hat Linux 9.0正在启动

[32] 在第一次登录时,Red Hat Linux 9.0需要设置一个用户,如图1-37所示。在“用户名”和“全名”文本框中输入一个用户名,在“口令”和“确认口令”文本框中两次输入相同的密码,然后单击“前进”按钮。这时提示设置“声卡”、“用户信息”等内容,使用默认设置并单击“前进”按钮即可。

图1-37 设置用户账号

[33] 完成用户设置以后,就可以登录系统了。图1-38是Red Hat Linux 9.0的登录界面。在“用户名”文本框中输入用户名“root”,然后按“Enter”键。再在口令窗口中输入这个用户的口令,然后按“Enter”键进入系统。

图1-38 用户登录界面

[34] 图1-39是Red Hat Linux 9.0的用户桌面。在Red Hat Linux 9.0中,常用的操作和Windows是相似的,都可以用鼠标来完成。

图1-39 Red Hat Linux 9.0的桌面

1.2.4 GRUB 在 Windows 分 区 中 引 导 Linux

安装完成Windows与Linux双系统以后,GRUB软件可以实现系统启动时两个系统的选择和引导。但重新安装Windows系统以后,会删除硬盘中的引导信息。这时只能默认启动Windows系统,而无法对Linux系统进行引导,需要在Windows系统中重新安装GRUB对Linux系统进行引导。

[1]在Windows系统中安装GRUB。GRUB是一个DOS下的系统引导软件,很多常用的系统备份工具中包含有GRUB引导工具。例如一键GHOST、矮人DOS工具箱等软件中的GRUB都可以用来引导Linux系统。从网络上下载一键GHOST软件,并且按照默认的方式进行安装。

[2]查看Red Hat Linux 9.0的引导信息。启动Red Hat Linux 9.0,在如图1-39所示的桌面上,双击打开“root的主目录”图标。如图1-40所示是Red Hat Linux 9.0的文件管理,在“位置”文本框中输入GRUB的目录“/boot/grub”,然后按“Enter”键进入。

图1-40 在Red Hat Linux 9.0中打开GRUB的文件夹

[3]双击打开文件“grub.conf”,查看GRUB的引导信息。如下面的代码所示,GRUB分别标记了每个系统所在的分区和启动方式。

    default=0                                       #注释:默认启动的信息。
    timeout=10
    splashimage=(hd0,0)/grub/splash.xpm/gz          #注释:GRUB的安装目录。
    title Red Hat Linx (2.4.20-8)                   #注释:下面是Red Hat Linux 9.0
的启动信息。
      root (hd0,5)
      kernel /vmlinuxz-2.4.20-8 ro root=LABEL=/
      initrd /initrd-2.4.20-8.img
    title XP                                        #注释:下面是 Windows XP 系统的
启动信息。
      rootnoverify (hd0,0)
      chainloader +1

[4]打开一键GHOST的菜单文件。进入Windows系统,打开“C:\”盘下面的“dosh”文件夹,再双击打开“ghos”文件夹。

[5]用记事本打开文件“menu.lst”,查看GRUB引导信息。可以发现,Windows下面的GRUB有着与Red Hat Linux 9.0中GRUB相似的引导信息。找到“menu.lst”文件中的引导信息,代码如下所示。

    title 1KEY GHOST                                #注释:这是一键GHOST的启动信息。
    map --mem /dosh/ghos/ghost.img (fd0)
    map --hook
    chainloader (fd0)+1
    rootnoverify (fd0)

[6]在打开的“menu.lst”文件中找到的一键GHOST启动项并将Red Hat Linux 9.0的引导信息加入到启动项的下面。需要添加的代码如下所示。

    title Red Hat Linx (2.4.20-8)
      root (hd0,5)
      kernel /vmlinuxz-2.4.20-8 ro root=LABEL=/
      initrd /initrd-2.4.20-8.img

[7]在记事本中,单击“文件”|“保存”菜单命令保存文件。

[8]重启计算机。当进入Window系统和启动菜单时,按向下方向键进入一键GHOST,然后再按向下方向键选择需要启动的系统。选择“Red Hat Linx (2.4.20-8)”菜单,然后按“Enter”键,即可启动Red Hat Linux 9.0系统。

用这种方式,可以实现Windows系统下Linux系统的引导。Windows重装系统以后,可以用这种方式恢复对Linux的引导。

1.3 VMware虚拟机安装Linux系统

VMware是一个多系统安装软件,可以在一台电脑上虚拟若干个计算机,每个计算机可以运行单独的操作系统而互不干扰。因为所有的硬件都是虚拟的,所以在虚拟机上进行分区、格式化、安装系统等操作不会对原有的系统产生任何影响。在学习安装Linux系统时,可以在VMware虚拟计算机上操作。

1.3.1 VMware软件安装

使用VMware虚拟机可以在Windows系统下安装其他的操作系统,而不会对原有的操作系统造成任何影响。本节将讲述如何在Windows XP上安装VMware虚拟软件。

[1]获取VMware安装包。可以购买光盘或通过网络下载获得安装包。本节中使用的是VMware Workstation 5.5.3版本的安装包。

[2]双击打开安装包开始VMware的安装。如图1-41所示,单击“Next”按钮。

图1-41 VMware的安装界面

[3]选择安装目录。VMware的默认安装目录是“C:\Program Files\VMware-workstation-5.5.3”。如图1-42所示,单击“Change”按钮,选择一个文件夹,然后单击“Next”按钮。

图1-42 设置VMware的安装文件夹

[4]设置快捷方式。如图1-43所示,VMware在安装时,会默认创建快捷方式。这些快捷方式的设置含义如下所示。

图1-43 设置快捷方式

● Desktop:将在桌面创建快捷方式。

● Start Menu Programs folder:将在“开始”菜单中创建快捷方式。

● Quick Launch toolbar:将在任务栏的快速启动中创建快捷方式。

[5]单击“Next”按钮。如图1-44所示,“Yes disable autorun”复选框表示取消光驱的自动运行,如果光驱自动运行,虚拟机会无法加载光驱。在安装时默认取消光驱自动运行,然后单击“Next”按钮。

图1-44 设置光驱的快速启动

[6]完成了这些设置以后,单击“Install”按钮开始软件的安装,如图1-45所示。

图1-45 完成安装设置

[7]VMware会自动完成安装,进度条会显示安装的进度,如图1-46所示。

图1-46 VMware正在安装

[8]安装结束以后,单击“Finish”按钮完成安装。

[9]汉化VMware。这里安装的VMware是英文版的,读者对英文软件的操作可能有些不方便,可以安装一个汉化包。汉化包可以从网络上下载。

[10]双击运行汉化包,单击“下一步”按钮。如图1-47所示是选择VMware目录的界面。单击“浏览”按钮,在“浏览”对话框中选择VMware的安装目录“D:\vmware”,然后单击“下一步”按钮。

图1-47 汉化包的安装

[11]汉化包安装以后,单击“确定”按钮结束。

1.3.2 新建虚拟计算机

安装好VMvare软件以后,可以使用VMware建立一个虚拟计算机。在建立虚拟机时,需要注意虚拟硬件的设置。通过下面的步骤可以建立一个虚拟机。

[1]在“开始”菜单中单击“VMware Workstation”命令打开VMware软件。VMware的工作界面如图1-48所示。其中主要工具的作用如下所示。

图1-48 VMware的工作界面

● 收藏夹:常用的虚拟机或组可以添加到收藏夹中。单击收藏夹中的虚拟机或组可以方便地打开。

● 新建虚拟机:可以新建一个虚拟机。

● 新建组:可以新建一个组。虚拟机可以放到一个组中,一个组中的虚拟机可以设置成虚拟局域网。

● 打开已存在的虚拟机或组:打开硬盘中已经存在的虚拟机或组。

[2]新建虚拟机。单击“文件”|“新建”|“虚拟机”菜单命令,“新建虚拟机向导”如图1-49所示。单击“下一步”按钮。

图1-49 “新建虚拟机向导”对话框

[3]选择虚拟机配置。如图1-50所示,虚拟机可以选择“典型”配置和“自定义”配置。其中,“典型”配置是创建一个有普通设备和配置选项的虚拟机。单击“典型”单选按钮,然后单击“下一步”按钮。

图1-50 选择“虚拟机配置”

[4]选择用户操作系统。在VMware虚拟机中,可以安装多种操作系统。如图1-51所示,在“用户操作系统”单选按钮中,单击选择“Linux”选项,然后在“版本”下拉列表中单击选择“Red Hat Linux”(在本书中,使用的Linux发行版是Red Hat Linux 9.0),然后单击“下一步”按钮。

图1-51 选择用户操作系统

[5]设置虚拟机的名称和存储位置。如图1-52所示,在“虚拟机名称”文本框中输入虚拟机的名称“Red Hat Linux”,单击“位置”文本框后面的“浏览”按钮,选择一个文件夹存储虚拟机的文件,然后单击“下一步”按钮。

图1-52 设置虚拟机的名称和存储位置

[6]设置虚拟机的网络类型。如图1-53所示,在“网络连接”单选按钮中单击“使用桥接网络”。这时虚拟机可以通过客户机的操作系统直接访问网络,然后单击“下一步”按钮。

图1-53 设置网络连接

[7]设置“磁盘”容量。如图1-54所示,可以设置虚拟机的最大磁盘容量。在“磁盘大小”文本框中输入“8”,表示为虚拟机分配8GB硬盘容量。这时,只是对虚拟机最大可以占用的硬盘容量进行设置,并没有马上分配这些硬盘空间,只有当虚拟机中存储数据时,才会实际占用硬盘空间。最后单击“完成”按钮。

图1-54 设置虚拟机的硬盘容量

[8]新建的虚拟机会显示在“收藏夹”中,如图1-55所示。

图1-55 虚拟机收藏夹

[9]设置虚拟机。在“收藏夹”中单击选择一个虚拟机,在主界面中会显示这个虚拟机的信息和工具,如图1-56所示。

图1-56 虚拟机的信息

[10]在虚拟机窗口中,单击“编辑虚拟机设置”工具,可以对一个虚拟机进行配置。如图1-57所示,在“虚拟机设置”对话框中设置虚拟机的内存大小。在“此虚拟机的内存”文本框中输入“308”,表示虚拟机最多可以占用主机中的308MB内存。如果主机的内存配置较高,可以为虚拟机分配较多的内存,以提高虚拟机的性能。

图1-57 设置虚拟机的内存大小

[11]配置光驱。在“虚拟机设置”对话框中,单击“设备”列表中的“CD-ROM1”选项。如图1-58所示,在“连接”单选按钮中,“使用物理驱动器”表示使用主机的物理光驱,“使用ISO镜像”表示用一个ISO文件作为虚拟机的光驱。ISO文件是光盘的镜像,可以从网络上下载Linux系统的ISO镜像,在虚拟机上安装系统。单击“使用ISO镜像”文本框后的“浏览”按钮,选择一个从网络上下载的“ISO”镜像。“虚拟设备节点”中可以选择虚拟机光驱的总线。

图1-58 设置虚拟机的光驱

[12]配置网络。单击“设备”列表中的“以太网”选项,可以对虚拟机的网络进行设置,如图1-59所示。虚拟机的网络可以设置成下面这些网络类型。

图1-59 设置虚拟机的网络

● 桥接:直接使用主机的物理网卡,这时虚拟机并没有虚拟网卡。

● NAT:可以共享主机的IP地址,在虚拟机安装以后的系统中,需要将网络IP地址设置成虚拟机相同的IP地址。

● 仅主机:虚拟机和主机共享一个本地连接,虚拟机的网络功能是通过主机的本地连接实现的。

● 自定义:可以在计算机中设置虚拟路由和虚拟局域网,虚拟机通过虚拟局域网连接到网络中。

[13]设置虚拟机的声卡。如图1-60所示,单击“设备”列表中的“音频”选项,可以对虚拟机指定一个声卡。最后单击“确定”按钮完成虚拟机的设置。

图1-60 设置虚拟机的声卡

1.3.3 VMware的使用

新建虚拟机以后,需要注意VMware使用方法。本节将介绍VMware中常用工具的使用方法。常用工具提供了虚拟机的管理功能。启动虚拟机系统以后,在虚拟机中的操作与本地计算机的操作是相似的。

[1]在“开始”菜单中单击“VMware Workstation”命令,启动VMware软件。

[2]在VMware的收藏夹中,单击选择上一节新建的虚拟机“Red Hat Linux”,VMware中显示的虚拟机信息如图1-61所示。

图1-61 虚拟信息界面

[3]使用虚拟机工具控制虚拟机。VMware的常用工具栏如图1-62所示。

图1-62 VMware的常用工具栏

[4]常用工具栏中的工具和使用方法如下所示。

● 关闭电源 :启动虚拟机以后,可以用这个工具关闭虚拟机。相当于强制关闭计算机的电源。

● 挂起 :暂停虚拟机的运行。相当于使计算机处于待机状态。

● 打开电源 :运行虚拟机。相当于按下计算机的电源键。

● 重启 :重启虚拟机。相当于按下计算机的重启键。

● 制作虚拟机快照 :将虚拟机的当前状态保存,以后可以恢复到这个保存的状态。

● 恢复虚拟机到父快照 :将虚拟机恢复到最后一次保存的快照。

● 管理快照 :当虚拟机有多个快照时,单击这个工具可以对虚拟机的快照进行管理。

● 全屏 :以全屏的状态显示一个虚拟机。这时在虚拟机中操作和在真正安装的系统中是相同的。

● 快速切换 :当VMware启动了多个虚拟机时,单击这个工具可以快速切换工作的虚拟机。

[5]启动虚拟机。在收藏夹中单击选择已经建立的虚拟机“Red Hat Linux”,然后单击工具栏中的“打开电源” 工具,即可启动这个虚拟机。虚拟机的启动界面如图1-63所示。

图1-63 虚拟机的启动界面

[6]单击“制作虚拟机快照” 工具,为虚拟机的当前运行状态制作一个快照。用同样的方法,再次制作一个快照。

[7]管理和恢复快照。单击“管理快照” 工具。弹出对话框如图1-64所示,在列表中单击选择一个快照,在“名称”文本框中输入一个名称可以对这个快照进行重命名。单击“删除”按钮可以删除一个快照,单击“转到”按钮可以恢复到这一个快照。

图1-64 管理虚拟机的快照

[8]单击“关闭电源” 工具,可以关闭已经启动虚拟机的电源。

1.3.4 在VMware虚拟机中安装Linux系统

在VMware安装Linux系统时,对硬盘的分区、格式化操作,都是在虚拟硬盘上进行的,对硬盘上的数据没有任何影响。在学习Linux安装时,可以使用VMware虚拟机进行练习。本节将在VMware虚拟机上安装Red Hat Linux 9.0系统。

[1]打开本章1.3.2节中创建的Red Hat Linux虚拟机。

[2]设置光驱。如果是已经有Red Hat Linux 9.0的安装光盘,将光盘插入光驱中,然后在虚拟机界面中单击“编辑虚拟机设置”工具。在“虚拟机设置”对话框中,单击“设备”列表的“CD-ROM1”工具,设置虚拟机的光驱。如图1-65所示,在“连接”单选按钮中,单击选择“使用物理驱动器”选项,然后单击“确定”按钮。这时,系统在启动时会使用光驱中的光盘进行系统安装。

图1-65 将光驱设置成物理光驱

[3]设置ISO镜像作为VMware的光驱。如果没有安装光盘,可以从网络上下载Red Hat Linux 9.0的ISO光盘镜像。在图1-65所示的对话框中,单击选择“连接”单选按钮中的“使用ISO镜像”选项。然后单击“浏览”按钮,选择已经下载的Red Hat Linux 9.0光盘ISO镜像文件,如图1-66所示。然后单击“确定”按钮。

图1-66 设置ISO光盘镜像作为光驱

[4]在工具栏中,单击“打开电源” 工具,启动虚拟机。虚拟机会自动从ISO光盘镜像启动,进入Red Hat Linux 9.0的安装,如图1-67所示。

图1-67 在虚拟机中安装Red Hat Linux 9.0系统

[5]在虚拟机的显示窗口中单击鼠标,虚拟机就会捕获鼠标和键盘的操作。这时鼠标只能在虚拟机的显示窗口中移动,键盘的输入对原有系统不再有效。按“Ctrl”+“Alt”组合键可以将鼠标和键盘切换到原来的系统。

[6]按“Ctrl”+“Alt”+“Enter”组合键可以使虚拟机进入全屏操作。再次按“Ctrl”+“Alt”+“Enter”组合键可恢复以前的窗口。

[7]在虚拟机中,按“Ctrl”+“Alt”+“Delete”组合键,将只对原系统有效。如果需要重启虚拟机需要按“Ctrl”+“Alt”+“Insert”组合键。

[8]用本章1.2.3节中的步骤在虚拟机中完成Red Hat Linux 9.0的安装。然后启动Red Hat Linux 9.0系统,界面如图1-39所示。

1.4 第一个C程序

本章将讲解在Linux系统中编写C程序的一般方法。一个C程序包括编写代码与编译代码两个步骤,编译以后的程序是可执行程序,可以在系统上直接运行。

1.4.1 在Linux中编写C程序代码

C程序是由代码构成的。C程序的代码就是普通的二进制文本。编写C程序就是在文本编辑器中编写源代码。本节将使用Red Hat Linux 9.0系统中的文本编辑器编写一个C程序代码。

[1]打开文本编辑器。在Red Hat Linux 9.0的桌面上,单击“开始”菜单,在弹出的开始菜单中单击“附件”,然后在弹出的“附件”菜单中单击“文本编辑器”命令。Linux的文本编辑器如图1-68所示。

图1-68 Red Hat Linux 9.0中的文本编辑器

[2]在文本编辑器中编写如下代码,实现“Hello,Linux .”的文本输出功能。需要注意代码的大小写,C程序是严格区分代码的大小写的。

    int main()
    {
      printf("Hello , Linux .\n");
    }

[3]保存文件。在文本编辑器中,单击“文件”|“另存为”菜单命令,“另存为”对话框如图1-69所示。文本编辑器会自动选择用户的根目录“/root”作为文本保存的默认目录。在“选中”下面的文本框中输入文件名“hello.c”,然后单击“确定”按钮保存文件。

图1-69 保存代码

[4]查看代码文件。在桌面上双击“root的主目录”图标,打开root用户的主目录,可以发现目录中有一个文件“hello.c”,如图1-70所示。这个文件就是已经编写的文件。

图1-70 root根目录中的代码文件

1.4.2 编译程序

所谓编译,就是把高级语言编写的程序代码,翻译成计算机可以执行的二进制代码。上一小节中编写的C程序代码是不能被计算机执行的,需要用编译程序编译成为可执行文件。gcc是Red Hat Linux 9.0中的C程序编译器,本节将用GCC编译上一节的程序代码。

[1]单击“开始”菜单,在“开始菜单”中单击“系统工具”,在“系统工具”的菜单中单击“终端”命令,打开Linux的命令行。Linux命令行界面如图1-71所示,可以在命令行中输入系统命令。

图1-71 Linux的命令行

[2]编译程序。在Linux命令行中输入下面的命令,然后按“Enter”键。

    gcc hello.c

这时,gcc编译器会自动对程序hello.c进行编译,在同一目录下生成可执行文件a.out。

注意:Linux系统与Windows系统的扩展名是不同的。Linux系统下的可执行文件可以是任何扩展名,而Windows系统下面的可执行文件是“exe”,“com”等扩展名。

[3]运行可执行程序。在命令行中输入下面的代码,然后按“Enter”键。

    ./a.out

这个程序只输出了一句文本,运行结果如下所示。

    Hello , Linux .

1.5 小结

本章讲述了Red Hat Linux 9.0的安装、VMware虚拟机的使用、简单C程序的编写等问题。其中需要重点理解的是Linux系统分区的问题。在分区时需要正确设置各个分区的格式,正确将分区挂载到系统中,并处理好与Windows系统的引导问题。通过C程序实例的练习,可以初步了解Linux系统下C程序的编程过程。