一. linux 用户和组的基本介绍

1.linux下 有三种用户:

 1. root: 权限最大的。

 2. 系统用户: UID小于1000的。系统服务管理用户,一般是不允许登录系统的。(比如mysql用户)

 3. 普通用户:(UID大于999的,权限比较小,可以登录,只能使用bin目录下的命令)

2. linux 组

  组: 一个用来保存用户的容器。用来装不同的用户的,没有其他意义(win中 组可能涉及到权限)

  在默认的情况下,新建用户的同时,系统会创建一个同名组,装载这个用户。

  在linux中每个用户必须要 属于一个组, 绝对不能够独立于组外。

  在linux中,每个文件都有所有者,所在组,其他组的概念。

二。用户管理

su - user01  切换到user01用户

1. useradd 新建用户   - create a new user or update default new user infomation

  语法: useradd [option] username

  -c, --comment 描述

  -d, --home HOME_DIR 家目录   (家目录放在哪里)

  -e, expiredate EXPIPE_DATE 过期时间。

  -f, --inactice INACTIVE 是否启用过期机制

  -g, --gid GROUP 指定组的ID号  (不建同名组,进入到其他组里面)

  -G, --groups GROUP1,[GROUP2,...[GROUPN]]] 附加组 (及创建同名组,还附加一些其他组。)

  -m, --create-home  建立家目录

  -M, 不建立家目录

  -N, --no-user-group  不指定用户同名组

  -r, --system  指定该账号是 系统账号

  -s, --shell SHELL 指定登录shell   (-s /sbin/nologin    这个shell就是非交互式的,不允许登录的shell)

  -u, --uid UID 指定用户ID

  -U, --user-group 指定用户创建用户同名组

  -o, 创建用户时可以uid 重复

  密码的设置: passwd -update user's authtications tokens

    passwd [option] username

    -l  lock   锁定用户(不准登录了)

    -u unlock (解锁)

    -d delete a passwd for an account  (删除一个用户的密码,就是无密码)

    -S this will output a short information about the status of the password given account.(显示给定帐户密码状态的简短信息)

    --stdin (标准输入,方式设置密码。)(echo "123" | passwd --stdin user01)

    需要注意一点的就是,在对自己进行修改密码时,就不需要 username 的后缀了。直接写passwd就好了

2. userdel 删除用户  --delete a user account and related files(删除用户以及相关的文件,比如家目录和邮箱等,  /home/user05      /var/mail/usero5)

  userdel [option] username

  -f, --force  强制

  -r, --remove  删除主目录以及邮箱

3. usermod 修改用户属性

  usermod -modify a user acccount

  语法:  usermod [option] username

  -a,  --append

  -L,  --local     锁定

  -U, --unlock   解锁

  -m, --move-home with -d    移动家目录 ( usermod -m -d /home/user01) 指定家目录到/home/user01   。  这种的有一个要求就是 user01  这个目录不能在登录状态,否则是不准使用的。

其他:

查看用户密码的一些信息。

[root@python ~]# passwd -S python_web
python_web PS 1969-12-31 0 99999 7 -1 (密码已设置,使用 SHA512 算法。)

使用change 可以交互的进行设置这些内容。

[root@python ~]# chage python_web
正在为 python_web 修改年龄信息
请输入新值,或直接敲回车键以使用默认值 最小密码年龄 []: 0 # 设置几天之内不能修改代码
最大密码年龄 []: 99999 # 密码的有效期,99999天
最近一次密码修改时间 (YYYY-MM-DD) [-]: 2019-7-02 # 最后一次修改密码的时间
密码过期警告 []: 2 # 过期前2天给与警告
密码失效 [-]: 5 # 密码失效之后,还可以使用几天
帐户过期时间 (YYYY-MM-DD) [-]: --5 # 账号的过期时间。
[root@python ~]# passwd -S python_web
python_web PS 2019-07-02 0 99999 2 5 (密码已设置,使用 SHA512 算法。)

或者不想使用交互式的,可以使用一条命令搞定:

  chage [option] username

  -h, --help display this help message and exit

  -m, 密码可更改的最小天数, 为0时代表任何时候都可以更改密码

  -M, 密码保持有效的最大天数。

  -W, 用户密码到期前,提前收到警告信息的天数。

  -E, 账号到期的日期。

  -d, 上一次更改的日期

  -I,(这是 i ) 停滞时期, 如果一个密码已过期之后,还可以使用几天。

  -l, (这是 L)列出当前的设置。

如果想要一个用户在登录某个账户时,强制的让他修改密码。
只需要将最后一次密码的更改时间修改为 0   也就是 -d 这个命令。这样用户在登录时就会强制行的让他修改密码。

4. /etc/passwd 密码文件

  [username]:[password]:[UID]:[GID]:[身份描述]:[主目录]:[登录shell]

5. /etc/shadow  影子文件

  用户名:这是用户登陆时使用的用户名,在系统中是唯一的

  口令:存放加密的口令

  最后一次修改的时间:表示从某一时刻开始到用户最后一次修改口令的天数

  最小时间间隔:两次修改口令之间的最小天数

  最大时间间隔:口令保持有效的最多天数,就是多少天之后必须修改口令

  警告时间:从系统开始警告到正式失效的天数

  不活动时间:口令过期多少天后,该账号被禁用

  失效时间:指口令失效的绝对天数(从1970.1.1开始算起)

这俩文件 最好不要修改。

linux用户和组 之 用户管理的更多相关文章

  1. Linux系统用户、组和权限管理

    一.用户与组 1.用户与组的概念 在linux系统中,根据系统管理需要将用户分为三种类型: 1.超级用户:root是linux系统的超级用户,对系统拥有绝对权限.由于root用户权限太大,只有在进行系 ...

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

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

  3. 2017.2.28 activiti实战--第五章--用户与组及部署管理(三)部署流程及资源读取

    学习资料:<Activiti实战> 第五章 用户与组及部署管理(三)部署流程及资源读取 内容概览:如何利用API读取已经部署的资源,比如读取流程定义的XML文件,或流程对应的图片文件. 以 ...

  4. 2017.2.28 activiti实战--第五章--用户与组及部署管理(二)部署流程资源

    学习资料:<Activiti实战> 第五章 用户与组及部署管理(二)部署流程资源 内容概览:讲解流程资源的读取与部署. 5.2 部署流程资源 5.2.1 流程资源 流程资源常用的有以下几种 ...

  5. 2017.2.20 activiti实战--第五章--用户与组及部署管理(一)用户与组

    学习资料:<Activiti实战> 第五章 用户与组及部署管理(一)用户与组 内容概览:讲解activiti中内置的一套用户.组的关系,以及如何通过API添加.删除.查询. 5.1 用户与 ...

  6. LINUX用户、组、权限管理和归档压缩、时间、Ping

    一.用户与用户组管理.权限 1.用户文件/etc/passwd 2.用户密码/etc/shadow 3.组文件/etc/group 4.查看用户和组信息命令id 5.添加用户 useradd [-u ...

  7. 【Linux】【Basis】用户、组和权限管理

    1. 概念: 1.1. 每个使用者都有,用户标识UID和密码:并且有身份(Authentication),授权(Authorization),审计(Audition):组(用户组,用户容器) 1.2. ...

  8. 用户和组的权限管理/特殊权限和ACL(个人笔记)

    个人学习笔记总结 内容包括解释Linux的安全模型解释用户帐号和组群帐号的目的用户和组管理命令理解并设置文件权限默认权限特殊权限ACL介绍安全3A资源分派:Authentication:认证Auth ...

  9. Windows中的用户和组以及用户密码处理

    目录 用户帐户 Windows 默认账户 Windows 内置用户账户 查看.创建和删除账户 组账户 内置组账户 组的查看.创建和删除 Windows中对用户密码的处理 LM-hash NTLM-ha ...

随机推荐

  1. vue-element-admin登录逻辑,以及动态添加路由,显示侧边栏

    这段时间在研究element-admin,感觉这个库有许多值得学习的地方,我学习这个库的方法是,先看它的路由,顺着路由,摸清它的逻辑,有点像顺藤摸瓜. 这个库分的模块非常清晰,适合多人合作开发项目,但 ...

  2. codeforces555E

    Case of Computer Network CodeForces - 555E Andrewid the Android is a galaxy-known detective. Now he ...

  3. Go程序的一生是怎样的?

    Go 程序是怎样跑起来的 原创: 饶全成 码农桃花源  刚开始写这篇文章的时候,目标非常大,想要探索 Go 程序的一生:编码.编译.汇编.链接.运行.退出.它的每一步具体如何进行,力图弄清 Go 程序 ...

  4. Web安全(白帽子讲)之第一章

    安全问题的本质是信任的问题,并是一个持续的过程. 安全三要素 Confidentiality:机密性-----要求保护数据内容不能泄密 Integrity:完整性-----要求保护数据内容的完整,没有 ...

  5. 0 - Visualizing and Understanding Convolutional Networks(阅读翻译)

    卷积神经网络的可视化理解(Visualizing and Understanding Convolutional Networks) 摘要(Abstract) 近来,大型的卷积神经网络模型在Image ...

  6. POJ2513:Colored Sticks(字典树+欧拉路径+并查集)

    http://poj.org/problem?id=2513 Description You are given a bunch of wooden sticks. Each endpoint of ...

  7. Kbengine游戏引擎-【4】demo-kbengine_unity3d_demo 在容器docker上安装测试

    git地址:https://github.com/kbengine/kbengine_unity3d_demo Demo中文地址:https://github.com/kbengine/kbengin ...

  8. Linux下 安装jdk8

    一.文件准备 1.1 文件名称 jdk-8u121-linux-x64.tar.gz 1.2 下载地址 http://www.oracle.com/technetwork/java/javase/do ...

  9. 理解MyCat分库分表

    1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18.

  10. UDDI:百科

    ylbtech-UDDI:百科 UDDI是一种用于描述.发现.集成Web Service的技术,它是Web Service协议栈的一个重要部分.通过UDDI,企业可以根据自己的需要动态查找并使用Web ...