Linux概述

Linux(UNIX)系统是一种通用的多用户操作系统,它可以出色地完成一般单用户、多用户操作系统所能实现的功能,为用户提供较好的应用界面和软件开发环境。

控制台和终端机 

在UNIX系统中,可以支持控制台与用户终端这两种前端机同时工作。  控制台是永远与主机相连的前端机,供系统管理员使用,主要显示系统运行信息,如系统错误、提示信息等等。  普通用户用一台用户终端机与主机系统进行信息交互,终端机可以是一台具有处理能力的计算机,也可以是不具备处理能力的图形终端。Linux还使用虚拟终端。 

用户的注册与注销 

在多用户分时系统中,为了满足多个用户在系统中的管理工作,需要实现系统资源的共享和保护功能 。

帐号的概念

用户进入系统之前必须向系统管理员申请一个账户,用下列方式注册登录到系统中:

    Login:用户注册名

    Password:用户登录口令

用户登录时的用户口令一般由6-8个字符构成,可包括字母、数字及其他字符。UNIX系统中shell的默认命令行提示符,允许用户修改。

用户的口令在用户注册时由系统管理员指定,在以后的工作中允许用户自行修改,例如键入passwd命令可以修改用户口令:

#passwd New Password:****** /键入新的登录的口令/ Retype New Password:******/重复新的口令/

以上过程是超级用户修改口令的过程,对于普通用户:

%passwd current password:*****/键入原有的登录的口令/ New Password:******/*键入新的口令*/ Retype New Password:.******/*再键入以上新口令,供系统确定*/

用户离开Linux(UNIX)系统时,应进行注销(logout )操作。注销后的用户终端可提供给其他用户使用。 “注销”也通知了正在进行中的系统记账程序停止对该用户的记账工作。有多种方式完成用户注销,如:

%logout /在命令行输入logout表示退出登录*/

%exit /*用终止当前进程执行的方式退出用户登录的进程/

% Ctrl-d /*用退出shell主进程的方式注销用户*/

用户注销后系统回到“Login”提示符下等待下一次用户的登录。通常在用户下次进行登录时,系统会提供一些报告给用户查阅,例如用户最近一次注册的时间和使用的终端信息。

账户的管理

由于Linux(UNIX)系统是多用户系统,系统中每个用户并不能随心所欲地占用计算机系统资源。用户程序的执行是由操作系统按照一定的内部管理规范和策略统一进行调配的。

     系统中记录的用户“账户”信息是系统为用户占用系统资源而进行资源调配的基本数据,同时也是记录和组织用户在操作系统中活动的基础信息。

    Linux(UNIX)系统主要使用四个文件,用来存放用户账户管理有关的数据信息,即:/etc/passwd, /etc/shadow, /etc/group,/etc/gshadow。 

◆/etc/passwd:系统中所有被授权的用户都在该文件中占有一个记录项

 username:*:uid:gid:comment:homedir:loginshell 

      ①       ②③  ④        ⑤          ⑥           ⑦ 

①—用户名,指用户注册时输入的名字。  ②—口令,用户注册的口令以加密码方式保存,允许用户修改。  ③—用户标识符uid,系统管理中使用的用户标识。  ④—用户的组标识gid,用户所属组的惟一标识,一个用户可以属于一个或多个用户组。  ⑤—对注册用户的描述文本,是用户情况的基本简介,文本长度有一定的要求,也可以省略此项。  ⑥—用户注册目录或用户主目录,此目录是用户进入系统后首先进入的当前工作目录。  ⑦—进入系统后第一步完成的内容,表示当用户进入系统后,首先要执行的程序名。一般都将此项定义为用户进入系统后选择执行的shell程序。  

例如:对某一确定的注册用户zhang,此项记录中的内容可以是:

Zhang:*:103: 100:Zhang HongLi:/home/zhang: /bin/csh

在Linux(UNIX)系统中,系统程序根据记录中用户的‘账户’信息进行用户身份鉴别和资源使用权的分配。在账户管理中有两大类型,一种是超级用户账户,另一种是普通用户账户。
超级用户账户拥有系统的高级管理权,可读、写、处理系统中任意的一个文件,或者完成系统的各种特定操作。超级用户账户一般只分配给系统管理员,使用特定的“root”超级用户名和设定的特定口令进入系统。

对于自己私有的保密性很强的应用数据和信息,可以使用编程手段对系统管理员进行屏蔽。例如财务管理、人事管理中的有关信息,即便是系统管理员也不应该有访问这些信息的权限,这些限制应该在应用系统的设计中完成。

◆在文件/etc/shadow中,存放着用户加密后的口令及口令管理信息,该文件中每一个信息项的内容包括:

  username:password:lastchy:min:max:wam:inachive:expire 

        ①           ②          ③      ④    ⑤    ⑥       ⑦       ⑧ 

其中的各项表述的内容是:     ①—用户名。     ②—加密后的用户口令。     ③—口令的最后修改日期,从1970年1月1日开始到最后一次修改密码的天数。     ④—可修改口令的最少天数。     ⑤—可修改口令的最多天数,表示必须修改口令的期限。     ⑥—口令到期时,提前几天给出提示警告。     ⑦—允许用户几天不登录系统,此项也可默认,表示没有限制。     ⑧—口令到期的确切日期,从1970年1月1日开始。     这些信息通常由系统管理员进行查阅和维护。 

◆用户组信息:为了便于管理,Linux(UNIX)系统中的用户通常被归属于某个用户组。因为将用户按不同的类型进行分组管理可以减少系统管理的工作量,并使管理工作更加规范。用户组信息存放在文件/etc/group中,其格式为:

    groupname:password : gid: user-list 

           ①                ②         ③       ④ 

其中: ①—用户组名。        ②— 用户组的口令,也可默认。        ③— 用户组的标识。        ④— 该组中的用户列表。      以上描述的这些特定文件,在系统引导与用户“账户”建立过程中自动生成,生成以后在日常的管理中允许系统管理员对其内容进行修订。这些文件内容的正确性是系统管理用户的前提,修改时应慎重对待。

◆用户组口令信息:/etc/gshadow 组名称:组密码:组管理员账号:组用户列表