用户分类

1 root 超级管理员

2 系统用户 就是 某一个服务中 自动产生的用户 不是认为创建的,不能用于登录计算机 只是保证某一个服务的正常运行 比如数据库

3 普通用户

用户必须属于一个且只有一个主组     -g 选项

一个用户可以属于零个或多个辅助组    -G选项

Linux用户和组的主要配置文件:

/etc/passwd:用户及其属性信息(名称、UID、主组ID等)

/etc/group:组及其属性信息

/etc/shadow:用户密码及其相关属性   文件格式意义如下:

  • 登录用名
  • 用户密码:一般用sha512加密
  • 从1970年1月1日起到密码最近一次被更改的时间 
  • 密码再过几天可以被变更(0表示随时可被变更) 必须要等多久才能运行改口令
  • 密码再过几天必须被变更(99999表示永不过期) 最长使用时间
  • 密码过期前几天系统提醒用户(默认为一周) 提前几天通知你
  • 密码过期几天后帐号会被锁定 
  • 从1970年1月1日算起,多少天后帐号失效

密码过期时间 图解:

/etc/gshadow:组密码及其相关属性

创建用户时,如果什么都不指定,就会根据默认设置创建用户 如家目录的位置,shell类型,家目录的文件,默认设置就是/etc/default/useradd 这个文件就是默认的设置文件

/etc/skel/ 这里面就是用户家目录的模板文件,这里面有什么 新创建的用户家目录就有什么。所以我们创建的用户家目录里的文件,就是从这个拷贝过去的。
/etc/login.defs 用户创建的默认其他设置,如ID号,,创建用户默认的密码时间等,密码策略,权限等

创建用户时,没有设定密码 那么shadow文件的密码列 就是!!,!!代表禁止登陆系统,在shadow文件中把!! 删掉就可以空口令登陆了。或者在Passwd文件中把密码的x删掉,x代表了密码放在shadow文件中,没有了x就没有了密码,也可以空口令登陆。也就是shadow和passwd中的密码栏只要有一个有!,就不允许登陆

用户管理命令 useradd

useradd [options] LOGIN

  • -u UID
  • -o 配合-u 选项,不检查UID的唯一性
  • -g GID 指明用户所属基本组,可为组名,也可以GID
  • -c "COMMENT“ 用户的注释信息
  • -d HOME_DIR 以指定的路径(不存在)为家目录
  • -s SHELL 指明用户的默认shell程序,可用列表在/etc/shells文件中
  • -G GROUP1[,GROUP2,...] 为用户指明附加组,组须事先存在
  • -N 不创建私用组做主组,使用users组做主组
  • -r 创建系统用户 CentOS 6: ID<500,CentOS 7: ID<1000
  • -m 创建家目录,用于系统用户
  • -M 不创建家目录,用于非系统用户

一些命令参考

  创建用户指定了 shell类型

  指定了附加组

  指定uid,主组 与附加组

  指定了家目录的位置

useradd  -r -s /sbin/nologin mysql   //创建  -r指定创建系统用户(id<1000) -s指定用户的shell   系统用户默认不会创建家目录,可以使用-m 选项进行创建家目录

-------------------------------------------------------------------------------------------------------------------------------------------------------------

usermod [OPTION] login

  • -u UID: 新UID
  • -g GID: 新主组
  • -G GROUP1[,GROUP2,...[,GROUPN]]]:新附加组,原来的附加组将会被 覆盖;若保留原有,则要同时使用-a选项
  • -s SHELL:新的默认SHELL  -c 'COMMENT':新的注释信息
  • -d HOME: 新家目录不会自动创建;若要创建新家目录并移动原家数据, 同时使用-m选项
  • -l login_name: 新的名字
  • -L: lock指定用户,在/etc/shadow 密码栏的增加 !
  • -U: unlock指定用户,将 /etc/shadow 密码栏的 ! 拿掉
  • -e YYYY-MM-DD: 指明用户账号过期日期
  • -f INACTIVE: 设定非活动期限、

    这个是 移动用户的家目录 –d 是要移动的地方(目标) 如果没有这个目录就会创建他,-m是把 原家目录文件也移动过去,移动过去之后 原来的家目录就没有了

    G 是 重新指定 用户的附加组  g是 重新指定 用户的 默认组  这种方式是重新指定的 之前的就会没有

    修改用户的名字 新名字  旧名字

    更换用户的主组

----------------------------------------------------------------------------------------------------------------------------------------------

userdel  -r: 删除用户家目录

批量创建用户

切换用户 su - wang 完整切换。root切换到普通用户不需要密码,普通用户切换root用户需要密码。
切换到root su -

linux--用户管理--useradd的更多相关文章

  1. Linux用户管理——useradd

    除了useradd还有一个命令adduser,两者是链接关系 [root@51cto ~]# which adduser /usr/sbin/adduser [root@51cto ~]# which ...

  2. linux 用户管理

    linux 用户管理 创建一个用户 foo 这个用户只能在/home/foo 上面增加删除文件, foo 不能在其他目录加减文件 useradd -d /home/foo -m foo [root@] ...

  3. linux用户管理,linux用户口令管理,linux用户组管理,linux用户权限管理详解

    linux用户管理 http://www.qq210.com/shoutu/android 用户账号的添加(新加用户需添加用户口令) :增加用户账号就是在/etc/passwd文件中为新用户增加一条记 ...

  4. 11.Linux用户管理

    本笔记说的Linux用户管理主要包括以下内容: 1.用户配置文件(/etc/passwd  /etc/shadow) 2.组配置文件(/etc/group  /etc/gshadow) 3.用户缺省配 ...

  5. Linux用户管理的复习时间

    所谓三天不练手生,你还记得关于Linux用户管理的所有知识吗?现在就来跟我一起复习一下吧! 1.常用配置文件 用户信息文件: /etc/password 密码文件: /etc/shadow 用户组文件 ...

  6. linux 用户管理,用户权限管理,用户组管理

    linux 用户管理,用户权限管理,用户组管理 一:ls -l 命令 解释 第个d表示是目录,如果是文件是-,如果是连接是l 第2到4个 rwx 表示创建者的操作权限 r 读,w 写,x 执行 第5到 ...

  7. 第七天 Linux用户管理、RHEL6.5及RHEL7.2 root密码破解、RHEL6.5安装vmware tools

    1.Linux用户管理 Linux系统中,存在三种用户 A.超级用户:root 最高权限,至高无上 在windows中 administrator是可以登录的最高权限,但是,system权限最高,不能 ...

  8. linux用户管理和文件权限

    linux用户管理和文件权限 新建用户:useradd ftpuser      useradd -g gxx userxx修改密码:passwd ftpuser新增用户组:# groupadd gr ...

  9. Linux学习之十六-Linux用户管理

    Linux用户管理 Linux系统跟Windows系统一样,可以创建不同的用户,不同的用户组.在不同用户下使用系统具有相应的权限 创建一个普通用户时,会修改几个文件,拷贝一些初始文件到用户家目录中 修 ...

  10. Linux 用户管理(2)

    Linux 用户管理2 添加修改和删除用户,必须是超级管理员root账号才可以进行的操作,所以当当前账号不是超级管理员root账号时,首先要先切换为root账号. 如图,ylq为普通用户,执行添加用户 ...

随机推荐

  1. Atcoder Beginner Contest153E(完全背包)

    完全背包,价值取题意代价的最小值 #define HAVE_STRUCT_TIMESPEC #include<bits/stdc++.h> using namespace std; ],b ...

  2. js和jsp中怎么去获取后台 model.addAttribute()存入的list<。。。>对象

    java 后台List productionGroupList =getProductionGroupList(); model.addAttribute("productionGroupL ...

  3. C# Socket通信DEMO

    一.套接字(socket)概念 套接字(socket)是通信的基石,是支持TCP/IP协议的网络通信的基本操作单元.它是网络通信过程中端点的抽象表示,包含进行网络通信必须的五种信息:连接使用的协议,本 ...

  4. 刷题70. Climbing Stairs

    一.题目说明 题目70. Climbing Stairs,爬台阶(楼梯),一次可以爬1.2个台阶,n层的台阶有几种爬法.难度是Easy! 二.我的解答 类似的题目做过,问题就变得非常简单.首先用递归方 ...

  5. C++记录(一)

    1 extern 符表示该变量不是当前作用域定义的,用于声明. 如extern i;表示i不是当前作用域里的,是其他某个include的cpp文件里的变量. 2 int *p=0;相当于初始化p为空指 ...

  6. Spring IoC 源码分析 (基于注解) 之 包扫描

    在上篇文章Spring IoC 源码分析 (基于注解) 一我们分析到,我们通过AnnotationConfigApplicationContext类传入一个包路径启动Spring之后,会首先初始化包扫 ...

  7. Linux02——解压和压缩

    压缩文件①(tar)(zip) tar -zcvf (压缩名字).tar.gz (要压缩的内容,中间可用空格表示) -c 创建一个新归档 -v 显示详细信息 -f 指定压缩后的文件名 -z 通过gzi ...

  8. Mybatis 元素类型为 "resultMap" 的内容必须匹配 "(constructor?,id*,result*,association*,collection*,discriminat

    <resultMap id="BaseResultMap" type="com.youotech.tl_cons_credit_rating.entity.TL_C ...

  9. 【C语言】输入一个年份和月份,输出该月的天数

    分析: 三种类型, A.2月比较特殊,平年的2月只有28天,而闰年的2月有 29 天: B.4.6.9.11月: C.其他1.3.5.7.8.10.12月. 代码: /*输入一个年份和月份,输出该月的 ...

  10. svn的安装和备份

    svn的安装: yum install subversion -y mkdir /svn 创建用来存放svn版本库的目录 svnadmin create /svn/first  创建一个svn的版本库 ...