linux基础知识-8

linux用户

登录linux系统时,首先通过特定的用户名(username)登录来标识自己。系统上运行的每个进程都有一个相关的用户名,系统上每个文件被标明由某个特定用户所拥有。系统上每个用户有唯一的用户名,用户名会对应一个ID,称为用户ID(userid),经常缩写为uid。人们喜欢用文字来思考,而linux内核使用数字(用户ID)更简单,内核操作的是用户ID,而不是用户名。只有当输出显示时用户ID才转换为用户名。

存放用户的数据库

系统有一个数据库存放用户名与用户ID的对应关系,这个数据库就是/etc/passwd。这个数据库大部分用户可以读取,但不能修改。

列号 说明
1 用户名
2 密码,在旧的unix上存放用户加密密码,出于安全原因现在不使用这个字段
3 用户ID(uid),linux内核用这个整数识别用户
4 主要组ID(gid),linux内核用这个整数识别用户的主要组。
5 用于存放简单的文本,如用户全名,电话号码等
6 主目录, 用户登录时,他登录的shell将用这个目录作为当前工作目录,通常为用户私有
7 登录shell,默认是/bin/bash

我们很少通过修改这个文件来修改用户,一般用命令进行修改。

存放密码的数据库

在/etc/passwd中有用户的各种信息,但没有密码,密码存放在/etc/shadow文件中。由于这个配置文件存放密码,所以不允许用户查看。

修改密码

对于普通用户可以用passwd修改密码,对于管理员可以用passwd username的方法来修改密码,也就是说管理员可以修改任意用户的密码。

用户的类型

linux用户分为三类:

  • 普通用户
  • 根用户
  • 系统用户

普通用户

普通用户就是使用系统的真实用户,比如老陌的用户是cclove。普通用户通常把 /bin/bash 作为登录shell,把 /home/用户名 作为主目录。

一般情况下,普通用户只在自己的主目录和临时目录中有权力创建文件,普通用户的ID数通常大于等于1000。

根用户

就是超级用户,uid的值是0。 根用户在系统上有全部权限,可以修改和删除任何文件,可以运行任何命令,可以取消任何进程。根用户主入目录是 /root

系统用户

linux系统保留着低UID的值作用系统用户,系统用户不代表人,而代表系统的组成部分。比如处理电子邮件的进程经常以用户mail来运行。

系统用户通常没有登录shell(无法像普通用户那样登录),因为它们不代表实际登录的用户。系统用户的主目录不在/home中,通常在属于相关应用的系统目录中。

示例:

查看进程用户,可以发现有root根用户,还有普通用户,还有一部分是系统用户正在运行进程(截图太大,没有截取系统用户)。

查看文件所有者(文件是哪个用户的)。 ls -l 显示详细信息,以用户名的方式显示了文件所有者,ls -ln则以数字的方式显示。

posted @ 2018-07-14 11:42  老陌  阅读(549)  评论(0编辑  收藏  举报