用户和用户组

usermod -a -G groupname username   // 将已有用户添加到已有用户组

/etc/passwd

michael:x:500:500:CentOS:/home/michael:/bin/bash
字段序号 说明
1 用户名
2 文件中的x如果不写,就代表没有密码,但是只能在本机登录。
3 uid 0表示超级用户,1-499系统用户(伪用户),500和以后为普通用户
4 gid 初始组和附加组,初始组不建议修改
5 介绍说明
6 家目录
7 指定shell,不是/bin/bash 就是/sbin/nologin,尽量别修改。

/etc/shadow

michael:$1$UUurzUPh$Y6679rU4I9pBlZhg/V0fM0:17095:0:99999:7:::
字段序号 说明
1 用户名
2 sha512算法生成(如果是!!或者*,则不可登录)
3 密码最后一次修改日期(距离1970年多少天)
4 密码生效时间
5 密码到期提醒时间
6 到期以后几天内还可以登录,即失效时间
7 密码可以用的时间,一般不写,即使你密码生效时间是100天,这边写3天就3天。用时间戳表示
8 保留字段

时间戳换算为日期

date -d '1970-01-02 18 days'

日期转化为时间戳

echo $(($(date --date='2014/01/06' +%s)/86400+1))

/etc/group

组名:组密码标志:GID:组中附加用户

/etc/gshadow

组名:组密码:组管理员用户名:组中附加用户

/home/ , /root

普通用户的家目录权限为700

root家目录目录权限为550,(root无视权限的限制)

普通用户设置成超级用户,将uid设置为0,而不是设置gid。

看提示符判断是不是根用户:# $

/etc/skel

用户模版目录

在这里面添加文件以后,在home/用户名下也会出现对应的文件。

/var/spool/mail/

用户的邮箱

要发送也需要邮件服务器,但是如果发给linux里的用户直接用内存。

/etc/default/useradd

用户默认值文件

/etc/login.defs



用户默认值文件

命令

useradd useradd [选项] 用户名
-u UID 添加用户时候指定用户id
-d 目录 添加用户时候指定用户家目录,必须是绝对目录
-c 说明
-g 组名 添加用户时候指定用户初始组
-G 组名 添加用户时候指定用户附加组
-s shell 添加用户时候指定用户登录shell 。默认是/bin/shell

passwd passwd [选项] 用户名
-S 查询用户密码的密码状态,仅root可用
-l 锁定用户,仅root可用
-u 解锁用户,仅root可用
--stdin 可以通过管道符将输出的数据作为用户密码


passwd -S jack
# 输出:jack PS 2016-10-29 0 99999 7 -1 (Password set, MD5 crypt.)
# 2016-10-29 密码最后一次修改时间
# 0 密码修改必须间隔0天
# 99999 密码有效期
# 7 密码失效前第几天进行提醒
# -1 密码不失效

usermod usermod [选项] 用户名
-u UID 修改用户id
-c 说明
-G 组名
-L 用户名 锁定密码
-U 用户名 解锁密码

chage chage [选项] 用户名 (用vi直接编辑shadow文件更直接)
-l 列出用户的详细密码状态
-d 日期 修改密码最后一次修改时间,shadow文件的第三个字段
-m 天数 两次密码修改间隔,shadow文件第四个字段
-M 天数 密码有效期,shadow文件的第五个字段
-W 天数 密码到期前警告天数,shadow文件的第六个字段
-I 天数 密码过期后宽限天数,shadow文件的第七个字段
-E 日期 帐号失效时间,shadow文件的第八个字段
	chage -d 0 michael #将密码修改日期归0了,用户只要一登陆就需要修改密码

userdel 用户名       #删除用户
userdel -r 用户名 #删除用户和家目录
su - 用户名 #连同环境一起切换
id 用户名 #查看用户id

groupadd groupadd [选项] 组名
-g GID 添加组时候指定组id

groupmod groupmod [选项] 组名
-g GID 修改组id
-n 新组名 修改组名
groupdel  组名  		#要想删除组,组一定不能是某用户的初始组。

gpasswd gpasswd [选项] 组名
-a 用户名 把用户加入附加组
-d 用户名 将用户从附加组删除

Linux学习--第七天--用户和用户组的更多相关文章

  1. Linux学习笔记06—系统用户及用户组的管理

    一.认识/etc/passwd和/etc/shadow 1./etc/passwd 由 ‘:’ 分割成7个字段,每个字段的具体含义是: 用户名 存放账号的口令:现在存放在/etc/shadow下,在这 ...

  2. linux学习(十一)用户和用户组管理

    一.用户文件 文件:/etc/passwd 这个文件记录了用户了用户名,用户id,所属组,家目录,shell信息: [root@iZ25lzba47vZ ~]# tail -n3 /etc/passw ...

  3. Linux基础学习(7)--用户和用户组管理

    第七章——用户和用户组管理 一.用户配置文件 1.用户信息文件/etc/passwd: (1)用户管理简介:所以越是对服务器安全性要求高的服务器,越需要建立合理的用户权限等级制度和服务器操作规范.   ...

  4. Linux学习笔记(七) 查询系统

    1.查看命令 (1)man 可以使用 man 命令名称 命令查看某个命令的详细用法,其显示的内容如下: NAME:命令名称 SYNOPSIS:语法 DESCRIPTION:说明 OPTIONS:选项 ...

  5. Linux学习总结(十三)—— CentOS用户组管理:创建用户组、修改用户组、删除用户组

    文章首发于[博客园-陈树义],请尊重原创保留原文链接. 在Linux系统里,有两个系统文件与用户组密切相关,它们分别是:/etc/group./etc/gshadow. /etc/group:存储了用 ...

  6. Linux 的基本操作(系统用户及用户组的管理)

    [认识/etc/passwd和/etc/shadow] 这两个文件可以说是linux系统中最重要的文件之一.如果没有这两个文件或者这两个文件出问题,则你是无法正常登录linux系统的. /etc/pa ...

  7. linux学习(五)用户与组管理命令,以及用户信息文件解释

    目录 (1)/etc/passwd文件 (2)/etc/shadow passwd命令 userdel命令 usermod命令 groupadd @(用户与组管理命令) linux是一个多用户多任务的 ...

  8. linux学习笔记七

    #文件权限很重要,有些时候删除和新建文件没有权限根本操作不了,linux一切皆是文件,所以必须得了解下权限了. 文件的一般权限 简单的ls -ld 命令就能看到权限,dr-xr-x---补全应该是dr ...

  9. 在 Linux 上为特定的用户或用户组启用或禁用 SSH

    由于你的公司标准规定,你可能只能允许部分人访问 Linux 系统.或者你可能只能够允许几个用户组中的用户访问 Linux 系统.那么如何实现这样的要求呢?最好的方法是什么呢?如何使用一个简单的方法去实 ...

随机推荐

  1. Mybatis 自动生成mapper文件

    在pom.xml下的<build>内加入: <build> <plugins> <plugin> <groupId>org.mybatis. ...

  2. 【机器学习速成宝典】模型篇04k近邻法【kNN】(Python版)

    目录 什么是k近邻算法 模型的三个基本要素 构造kd树 kd树的最近邻搜索 kd树的k近邻搜索 Python代码(sklearn库) 什么是K近邻算法(k-Nearest Neighbor,kNN) ...

  3. Windows Server系统定时任务备份ORACLE数据库

    Windows Server系统定时任务备份ORACLE数据库 一.编辑备份脚本 RMAN备份数据库 1.在备份脚本目录下,创建bat文件db_rman.bat set ORACLE_SID=orcl ...

  4. 五、python中MD5加密

    import hashlib '''用于加密相关的操作,代替了md5模块和sha模块,主要提供 SHA1, SHA224, SHA256, SHA384, SHA512 ,MD5 算法'''##### ...

  5. CircleCI 前端自动部署

    概述 现在很多前端库都用到了 CircleCI 进行自动部署,比如Vue,React,作为一个前端我觉得还是有必要实操一下 CircleCI 的,总体来说还是挺简单的,我把过程和体会记录下来,供以后开 ...

  6. 【工具使用】kali 安装后要做的事情

    日期:2019-07-17 10:43:40 介绍:修改分辨率.修改时区.修改源 0x01. 修改分辨率 kali 在安装完成之后,分辨率过低,需要修改分辨率.  然后依次选择 [settings] ...

  7. 读取数据库 生成Xml节点

    foreach (DataColumn v in dt.Columns) { sb.Append("sb.Append(\"<" + v.ColumnName.To ...

  8. WebMvcConfigurerAdapter详解和过时后的替代方案

    一.什么是WebMvcConfigurerAdapter Spring内部的一种配置方式采用JavaBean的形式来代替传统的xml配置文件形式进行针对框架个性化定制 二.WebMvcConfigur ...

  9. C语言的指针和数组

    指针和内存 指针变量也是个变量,不过保存的是另一个变量的地址.另外编译器还会记住指针所指向变量的类型,从而在指针运算时根据变量类型采取不同操作. 例如,char * a 定义了char 类型的指针变量 ...

  10. HTML CSS JS 特殊字符(转义)表

    HTML有许多特殊的字符,您对此有多少了解?平时在WEB制作中,您又有用到多少?或者说你在平时使用之时,是否也会碰到,有许多特殊字符要如何打印出来?比如说“笑脸”,比如说“版权号”.要是你用时忘记了这 ...