三、用户和组

1、概念

(1)、用户概念:

用户是用来运行某一些进程、拥有某一些文件或目录。

在Linux里面,用户分成三大类:root用户、系统用户、普通用户。

用户是用UID来唯一标识身份的,且root用户UID为0,系统用户UID范围为1-999,普通用户UID从1000开始默认依次往后累加。

(2)、什么是系统用户?

一般运行的进程属于系统内核进程,那么运行这些进程的用户都是系统用户,通常不会到系统前台,也就是命令解释器shell里面去登录。

(3)、主要组的概念:

当系统创建一个用户的时候,会单独给这个用户分配一个组。

在/etc/passwd文件中的第四个字段GID定义。

特点1:默认情况下,组名与用户名同名

特点2:默认情况下,GID与UID同号

特点3:默认情况下,该组里面只有该成员本身一人

特点4:每个用户有且仅有一个主要组,是1:1的数量关系。
(4)、从属组(附加组)的概念:

某个用户被人为添加到某个额外的组,获取了这个组的权限,那么这个组就叫做从属组,或者附加组,它是非主要组。

在/etc/group文件中的最后一个字段定义。

特点1:每个用户的从属组可以有多个,是1:n的数量关系。

特点2:反过来,一个组可以有多个用户成员,即可以是多个用户的从属组。

2、管理用户的常用命令:

id 命令——查看当前登录用户的UID、GID和groups等信息

ll 命令——查看用户对某个文件的访问权限,或查看三类用户对某个文件的访问权限

ps -au 命令——查看当前终端下运行的所有进程并显示与之相关联的用户。

useradd命令——创建新用户

usermod命令——修改用户属性

-G修改用户的从属组

-g修改用户的主要组

-c修改用户的注释字段

-u修改用户的UID

groupdel 用户名 命令—— 删除组

3、长文件形式详情:

ls -l 或 ll

第一列:文件的访问权限,共3组

是对谁而言的:文件所属用户、文件所属组、除了所属用户和组以外的其他用户

第一列第1位:

l->link  ->  链接文件

d->directory  ->  文件夹

横杠-  -> 普通文件

第一列后9位:

第一组代表所属用户对文件的访问权限

第二组代表所属组对文件的访问权限

第三组代表其他用户对文件的访问权限

权限包括以下三种:

r  ->  read  -> 可读

w  ->  write  ->  可写

x   ->  execute  ->  可执行

只读:r--

可读可写:rw-

可读可写可执行:rwx

第三列root -> 文件所属用户是root

第四列root -> 文件所属组是root组

4、存放信息的位置:

/etc/passwd -> 存放本地用户的信息

格式 -> 用户名:密码:UID:GID:注释:宿主目录:命令环境

密码:用X代替保存在影子文件中

GID:新建用户后系统默认一个同名组

注释:可空

宿主目录:/root或者/home/dir

命令环境:/bin/bash或者/sbin/nologin

/bin/bash -> 用户可以使用shell登陆系统

/sbin/nologin -> 用户不能登陆系统,但可以运行某个程序,如果哪个用户属于不安全用户,就可以将该用户设置为nologin

锁定账户:Vim /etc/passwd -> luna : /sbin/nologin

解锁账户:Vim /etc/passwd -> luna : /bin/bash

/etc/group -> 存放本地组信息

格式 -> 组名称:组密码:GID:从属组用户

组密码:用X代替,密码存放在/etc/gshadow文件中

从属组用户:即有哪些用户从属于这个组

/etc/shadow -> 存放本地用户的密码

格式 -> 用户名:密码:最后更改密码日期:密码最短使用期限:密码最多使用期限:密码到期警告期:密码到期后还可使用时间:密码到期日:预留空白字段

密码:  *  ->  代表没有密码,是空的

!->  代表该用户被禁用

密码最短使用期限:0  ->  表示无限期使用

5、用户和组的命令:

sudo 命令——以root身份运行命令

root用户 -> 系统超级用户 -> 具有系统全部权限的用户

useradd命令——创建用户,通常新建完一个用户后紧接着给他分配一个密码

usermod命令——修改用户属性

-g  ->  为用户指定主要组 

-G ->  为用户指定从属组

-c  ->  为用户添加一个注释字段

-u  ->  为用户指定一个UID

-L  ->  锁定用户,使用户密码不可用,例如连续输错密码。

-U ->  解锁用户,使用户密码恢复可用

userdel命令——删除用户

userdel 用户名 -> 非彻底删除,宿主目录被保留

userdel -r 用户名 -> 彻底删除,宿主目录被删除

groupadd命令——创建组

-g  ->  给新建的组分配一个GID

groupmod命令——修改现有的组 -modify

-g  ->  指定新的GID(主组)

-G  ->  指定附加组

-n  ->  指定新的groupname

groupdel命令——删除组 (不能删除属于其他用户的主组)

chage -用户名 命令——设置账户到期时间

-d  ->  设置最后一次修改用户密码的时间,以距离1970年1月1日开始算起

-E  ->  设置账户到期日期

-I   ->  设置账户到期后能继续登陆系统的时间

-m ->  设置账户可以修改密码的最少天数

-M ->  设置账户必须更改密码前的最多天数

-W ->  设置密码即将到期的警告天数

Linux基础三:用户和组的更多相关文章

  1. 【原创】Linux基础之用户和组

    1 添加.删除用户 # useradd $user# userdel $user 2 设置用户密码 # passwd $user /etc/passwd 3 查看$user的用户和组信息 # id $ ...

  2. linux基础之用户和组管理及权限

    一.用户和组管理 相关配置文件 /etc/passwd: 用户名 : 密码占位符 : UID : GID : COMMENTS : 家目录 :默认shell /etc/group: 组名 : 组密码占 ...

  3. linux基础_用户和组的三个文件

    1./etc/passwd文件 用户(user)的配置文件,记录用户的各种信息 每行的含义:用户名:口令:用户标识号:组标识号:注释性描述:主目录:登录shell 2./etc/shadow文件 口令 ...

  4. Linux系统下用户与组的管理

    Linux系统下用户与组的管理 一.用户及组基本概述 Linux 系统上,用户管理是基于用户名和密码的方式进行资源的分配. 1.uid(用户身份标识) (1)root用户 uid为0 (2)普通用户: ...

  5. Linux学习--4.用户和组的管理

    用户和组的管理 前言 本篇文章主要讲Linux系统下用户和组的概念,还有添加用户和组,修改用户和组的基本操作,会涉及不少与之相关的配置文件与命令的介绍,几乎所有 正文 首先,简单提下概念,用户是操作系 ...

  6. 管理Linux服务器的用户和组

    管理Linux服务器的用户和组 Linux操作系统是一个多用户多任务的操作系统,允许多个用户同时登录到系统,使用系统资源. 为了使所有用户的工作顺利进行,保护每个用户的文件和进程,规范每个用户的权限, ...

  7. linux下创建用户及组

    linux下创建用户及组: 1.创建组 groupadd  组名 2.创建用户,并将用户添加到组 useradd  用户名  -g  组名 3.更改用户的密码 password  用户名 4.修改目录 ...

  8. Linux基础-3.用户、群组和权限

    1.用户及passwd文件 1)掌握/etc/passwd文件的功能:存储所有用户的相关信息,每一个用户占用一行记录,该文件也被称为用户信息数据库(Database) 2)/etc/passwd文件中 ...

  9. linux(centOS7)的基本操作(三) 用户、组、权限管理

    用户和组 1.用户.组.家目录的概念 linux系统支持多用户,除了管理员,其他用户一般不应该使用root,而是应该向管理员申请一个账号.组类似于角色,系统可以通过组对有共性的用户进行统一管理.每个用 ...

随机推荐

  1. 测试用例 setup 和 和 teardown

    前言 学过unittest的都知道里面用前置和后置setup呾teardown非常好用,在每次用例开始前呾结束后都去执行一次.当然迓有更高级一点的 setupClass 呾 teardownClass ...

  2. Markdown 编写技巧汇总(一)

    编写文档,有很多格式选择,也有不同平台选择.下面就自己接触到的MarkDown编写文档的各种技巧做简单梳理,供自己参阅,也希望帮到网友. [1]添加空格 ①   这种写法比较老土,但是,很实用!注意都 ...

  3. 洛谷P6075题解

    题面 首先这 \(n\) 个数是互相独立的,所以我们不需要统一的去考虑,只需要考虑其中一个数即可. 我们以 \(k=5\) 的情况举例. 我设 \(f_i\) 为最后一行只填前 \(i\) 个点的情况 ...

  4. DCI架构是如何解决DDD战术建模缺点的?

    摘要:将DCI架构总结成一句话就是:领域对象(Object)在不同的场景(Context)中扮演(Cast)不同的角色(Role),角色之间通过交互(Interactive)来完成具体的业务逻辑. 本 ...

  5. FFT&原根&NTT&MTT

    FFT bilibili 3b1b视频讲解 核心过程: 原根 Definition 若 \(a\) 模 \(m\) 的阶等于 \(\varphi(m)\),则称 \(a\) 为模 \(m\) 的一个原 ...

  6. NX屏蔽窗口的按钮

    有时候在激活一个命令按钮的时候,需要同时禁止掉另外一个或多个命令按钮 ''' <summary> ''' 取按钮是否敏感 ''' </summary> ''' <para ...

  7. sqlmap--tamper使用技巧

    apostrophemask.py 适用数据库:ALL 作用:将引号替换为utf-8,用于过滤单引号 使用脚本前: tamper("1 AND '1'='1") 使用脚本后: 1A ...

  8. Coursera Deep Learning笔记 逻辑回归典型的训练过程

    Deep Learning 用逻辑回归训练图片的典型步骤. 笔记摘自:https://xienaoban.github.io/posts/59595.html 1. 处理数据 1.1 向量化(Vect ...

  9. kiyv Button参数属性

    from kivy.uix.button import Button from kivy.uix.floatlayout import FloatLayout from kivy.app import ...

  10. 【二食堂】Beta - Scrum Meeting 1

    Scrum Meeting 1 例会时间:5.13 18:30~18:50 进度情况 组员 当前进度 今日任务 李健 1. 查阅资料,解决划词勾选和右键菜单的问题issue2. 修复了Alpha阶段的 ...