X图形环境、虚拟控制台和用户会话
Linux系统中,用户的会话是从用户登录(login)开始的。
Red Hat Linux企业版为用户提供了6个虚拟控制台(virtual console)。可以使用ctrl+alt+F1~F6组合键在这些虚拟控制台之间进行切换。系统还提供了图形环境,可以使用组合键ctrl+alt+F7切换到图形环境。
我在Fedora系统下进行实验的时候,我的系统被配置为引导到图形环境下进行登录,在使用组合键ctrl+alt+F2~F6时,会切换到虚拟控制台状态;使用ctrl+alt+F1会切换到图形环境;使用组合键ctrl+alt+F7,系统只是显示黑屏,并且光标在左上角闪烁。企业版环境下我还没试。
登录成功后,系统会显示一个欢迎用户登录的shell提示。
登录到一个虚拟控制台后,如果想结束它可以通过执行exit命令来结束会话,返回原登录屏幕。
我们使用虚拟控制台登录,而不是使用图形环境,主要出于以下四种原因:
1、 没有足够的内存和硬件来运行图形环境,或者是我们希望节省系统的资源以便使关键应用得到更多的资源配给;
2、 使用虚拟控制台迅速而有效;
3、 虚拟控制台是在Linux内核中直接实现,在调试系统时非常有效;
4、 图形环境有时使系统管理更复杂。
X服务器(X Server)是Linux系统下的一个底层程序,为用户运行的图形程序提供一个图形环境,但是用户并不是直接和X服务器会话。X服务器通常是作为系统启动序列的一部分来启动的,并使用第七个虚拟控制台来运行,可以使用组合键ctrl+alt+F7来切换到X图形环境。
在图形环境下登录时,用户会见到登录管理器(login manager)。
在图形环境下,最常用的终端程序是:gnome-terminal。在终端程序中执行exit命令可以退出终端程序。
通过执行命令who,我们可以参看有谁登录到系统中,以及登录的方式。
我们可以使用ssh命令来远程登录到一个系统。
内核、程序和进程
Linux内核是一个操作系统,为其他的程序提供运行的环境,为程序和计算机硬件之间的交互作用提供机制。计算机的底层只会执行少量的任务,即256个任务。
进程是在内存中运行的程序的副本,一个程序可以多次装入内存并运行,因此,内核中可能包含一个程序的多个进程。内核以时间片为单位来运行进程,通常每个时间片是50毫秒。
Linux用户通常使用shell程序与内核进行交互。shell通常被称为命令行界面,几乎可以执行系统中所有的任务。
执行ps命令可以查看系统中正在运行的进程,包括进程的ID,执行进程的位置,消耗的CPU的时间。执行ps aux可以显示系统中正在运行的所有进程。
文件系统
目录树是一种包含多层次目录的目录结构。
目录树的根部称为根目录,用来表示
我们可以使用当前工作目录的概念来简化命令的执行。
文件的引用可以分为两种:一种叫作绝对引用,一种叫作相对引用。
通过执行ls命令,可以显示目录下面的内容。通过执行cat命令,可以显示一个文件的内容。
Linux系统中,大部分文本文本输出的命令都会使用一个概念:标准输出流。在默认情况下,这个数据流指向终端。Bash shell允许将标准输出流重定向到其他的位置,可以使用“>”将标准输出重定向到文件中。
每个用户都有主目录,当用户登录的时候,系统会将他的主目录作为他的当前工作目录。默认情况下,Redhat Linux系统的用户主目录是\home\uesrname。用户通常只能在自己的主目录里创建文件。
运行命令
shell进程是执行其它进程的进程,但在执行一个命令时,shell进程会指示内核把指定的程序作为另一个进程分开执行,并将输出写到终端。
通过命令选项,我们可以修改命令执行的行为。命令行选项可以分为短命令行选项和长命令行选项两种。短命令行选项是由字母组成,长命令行选项是由单词组成。短命令行选项在选项前使用单横杠“-”,长命令行选项前使用双横杠“--”。如果选项后面需要输入选项的参数,短命令行选项和参数之间使用空格分隔,而长命令行选项使用等号“=”连接选项和参数。
通过在命令后面添加选项“--help”、“-h”或“-?”,我们可以获得一个命令的帮助信息。