linux系统及编程基础习题答案
第 1 章 Linux 基础及安装 1. 什么是 Linux ? Linux 是一款优秀的计算机操作系统,支持多用户、多进程、多线程,实时性好,功能强大且稳定。 同时,它又具有良好的兼容性和可移植性,被广泛应用于各种计算机平台上。作为 Internet 的产物, Linux 操作系统由全世界的许多计算机爱好者共同合作开发,是一个自由的操作系统。 2. Linux 的主要特点是什么? Linux 具有 UNIX 的所有特性并且具有自己独特的魅力,主要表现在以下几个方面: (1)开放性 (2)多用户 (3)多任务 (4)出色的稳定性能 (5)良好的用户界面:Linux 向用户提供了两种界面:用户界面和系统调用界面。 (6)设备独立性:设备独立性是指操作系统把所有外部设备统一当作文件来看,只要安装它们的 驱动程序,任何用户都可以像使用文件那样操作并使用这些设备,而不必知道它们的具体存在形式。 (7)丰富的网络功能:完善的内置网络是 Linux 的一大特点,Linux 在通信和网络功能方面优于 其他操作系统。其他操作系统不包含如此紧密的内核结合在一起的联接网络的能力,也没有内置这些 联网特性的灵活性。而 Linux 为用户提供了完善的、强大的网络功能。 (8)可靠的安全性 (9)良好的可移植性:可移植性是指将操作系统从一个平台转移到另一个平台,使它仍然能按其 自身的方式运行的能力。 3. Linux 的主要组成包括什么? (1)Linux 内核(Kernel) :内核(Kernel) 是系统的心脏,是运行程序和管理硬件设备的内核程序, 决定着系统的性能和稳定性,实现操作系统的基本功能。 (2)Linux 的 Shell:Shell 是系统的用户界面,提供用户与内核进行交互操作的一种接口。Shell 是一个命令解释器,它解释由用户输入的命令并且把他们送到内核执行。Shell 编程语言具有普通编程 语言的很多特点,用这种编程语言编写 shell 程序与其他应用程序具有同样的效果。 (3)Linux 文件系统:文件系统是文件存放在磁盘等存储设备上的组织方法。通常是按照目录层 次的方式进行组织,用户能够从一个目录切换到另一个目录,而且可以设置目录和文件的权限、文件 的共享程度。 (4)Linux 实用程序(utilities)和应用程序(Applications) :标准的 Linux 系统都有一套成为应用程 序的程序集,包括文本编辑器、编程语言、X Window 、办公套件、Internet 工具、数据库等。 4. Linux 与 Windows 的主要区别是什么? (1)Linux 的应用目标是网络:Linux 的设计定位于网络操作系统。虽然现在已经实现 Linux 操作 系统的图形界面,但仍然没有舍弃文本命令行。由于纯文本可以非常好地跨越网络进行工作,所以 Linux 配置文件和数据都以文本为基础。 (2)可选的 GUI :目前,许多版本的 Linux 操作系统具有非常精美的图形界面。Linux 支持高端 的图形适配器和显示器,完全胜任与图形相关的工作。但是,图形环境并没有集成到 Linux 中,而是 运行于系统之上的单独一层。这意味着用户可以只运行 GUI,或者在需要时使用图形窗口运行 GUI。 (3)文件名扩展:Linux 不使用文件名扩展来识别文件的类型,这与 Windows 操作系统不同。 Linux 操作系统是根据文件的头内容来识别其类型。为了提高用户的可读性,Linux 仍可以使用文件名 扩 展,这对 Linux 系统来说没有任何影响。Linux 通过文件访问权限来判断文件是否为可执行文件,任何 一个文件都可以赋予可执行权限,程序和脚本的创建者或管理员可以将它们识别为可执行文件,这样 做有利于安全,使得保存到系统上的可执行文件不能自动执行,可以防止许多脚本病毒。 (4)重新引导:在使用 Windows 系统时,也许已经习惯出于各种原因而重新引导系统(即重新启 动) ,但在 Linux 系统中这一习惯需要改变。一旦开始运行,它将保持运行状态,直到受到外来因素的影响,比如硬件故障。实际上,Linux 系统的设计使得应用程序不会导致内核的崩溃,因此不必经常重 新引导,所以除了 Linux 内核之外,其他软件的安装、启动、停止和重新配置都不用重新引导系统。 如果用户确实重新引导了 Linux 系统,问题很可能得不到解决,甚至还会使问题更加恶化,因此在学 习 Linux 操作系统时,要克服重新引导系统的习惯。 另外,可以远程地完成 Linux 中的很多工作,只要有一些基本的网络服务在运行,就可以进入到那 个系统。而且,如果系统中一个特定的服务出现了问题,用户还可以在进行故障诊断的同时让其他服 务继续运行。当用户在一个系统上同时运行多个服务的时候,这种管理方式更为重要。 (5)命令区分大小写:所有的 Linux 命令和选项都区分大小写。 5. 什么是 Linux 的内核版本和发行版本? Linux 的内核版本是指在 Linus Torvalds 领导下开发小组开发出的系统内核的版本号。内核版本号 由 3 个数字组成,形式如下:major.minor.patchlevel (1)major:目前发布的 Kernel 主版本号。 (2)minor:为次版本号,一般来说 minor 位为偶数的版本标明这是一个可以使用的稳定版本,如 2.6.4;minor 位为奇数的版本一般加入了一些新的内容,不一定很稳定,是测试版本,如 2.5.11 。 (3)patchlevel:表示对当前版本的修补次数 发行版本是一些组织或厂家将 Linux 系统内核与应用软件和文档封装起来,并提供一些安装界面 和系统设定管理工具的一个软件包的集合。目前已经有了几百种发行版本。 6. Linux 系统的用户有哪些? Linux 是多用户系统,用户分为根用户(系统管理员)和普通用户两大类。 每个用户在系统中都有唯一的用户名称,该用户名称为用户账号,使用户使用系统的凭证。根用 户( 系统管理用) 又称为超级用户,用户账号为 root ,在系统中拥有最高权限,主要负责系统的管理工作。 普通用户账号有根用户创建,命名时不能以数字和下划线作为第一个字符。普通用户是系统的使用者, 只在自己的目录下工作,没有系统管理权限。 7. 什么是运行级别?Linux 有哪些运行级别? 所谓运行级别就是操作系统当前正在运行的功能级别。这个级别从 0 到 6,具有不同的功能,在 /etc/inittab 文件中定义。七个运行级别为: (1)0----关机( 千万不要把 initdefault 设置为 0 ) (2)1---- 单用户模式 (3)2----多用户模式,但是没有 NFS (4)3----完全多用户模式 (5)4----没有用到 (6)5----X11 (7)6----重启( 千万不要把 initdefault 设置为 6 ) 8. 如何更改默认的运行级别? 运行级别可以由超级用户通过 telinit 命令来转换,此命令可以将转换信号传递给 init ,告诉它切