1 用户配置文件

  1.1 用户信息文件 /etc/passwd

    查看帮助 man 5 passwd

      -- account:password:UID:GID:GECOS:directory:shell

      -account 用户名 注意规范

      -passwd 密码标志 x表示有密码 具体密码在shadow中

      -UID user ID    0:超级用户, 由UID决定,不由用户名决定

               1-499:系统用户(伪用户),不能登录,不能删,由系统服务或命令调用

               500-65535:普通用户

      -GID group ID 初始组ID 用户创建时产生的组,每个用户只能有一个初始组,不建议更改,具体属于哪个组看/etc/group

                   附加组:一个用户还可以加入多个其他的用户组

      -GECOS 用户说明

      -directory 用户家目录 超级用户: /root/   普通用户: /hoshme/用户名/

      -shell 登录之后的Shell 就是Linux的命令解释器  标准shell:/bin/bash  之外还有/sbin/nologin 不能登录

  1.2 影子文件 /etc/shadow

    -1 用户名

    -2 加密密码 SHA512散列加密算法 "!!"或"*"表示没有密码,不能登录

    -3 密码最后一次修改的日期  Linux的时间戳 1970-1-1后的第n天

    -4 两次密码修改的时间间隔

    -5 密码有效期

    -6 密码修改到期前的警告天数

    -7 密码过期后的宽限天数  0或不写:到期立即失效  -1:用不失效

    -8 账号失效时间  时间戳表示

      时间戳 --> 日期:date -d "1970-01-01 16066 days"

      日期 --> 时间戳:echo $(($(date --date="2015/10/13" +%s)/86400+1))

    -9 保留字段

  1.3.1  组信息文件 /etc/group

    -1 组名

    -2 组密码标志  具体密码在/etc/gshadow中  不推荐使用

    -3 GID  组ID 和 UID类似

    -4 组中附加用户  和passwd对照看才能知道初始用户

  1.3.2 组密码文件 /etc/gshadow

     -1 组名

     -2 组密码

     -3 组管理员用户名

     -4 组中附加用户


2 用户管理相关文件    添加用户时自动建立的

  2.1 用户的家目录

    $ 普通用户 /home/用户名/ 权限700

    # 超级用户 /root/ 权限550

  2.2 用户的邮箱

    /var/spool/mail/用户名

  2.3 用户模板目录

    /etc/skel/


3 用户管理命令

  useradd [选项] 用户名

    -u UID: 手工指定UID

    -d 家目录: 手工指定家目录

    -c 用户说明: 手工指定用户的说明

    -g 组名: 手工指定初始组

    -G 组名: 指定用户的附加组 逗号分隔

    -s shell: 手工指定用户的登录shell。默认/bin/bash

    

    用户默认值文件 /etc/default/useradd

            /etc/login.defs

  

  passwd [选项] [用户名]

    只有超级用户才能加[用户名],普通用户直接passwd

      -S  查询用户密码的状态 仅限超级用户

      -l 锁定用户  实际上是更改shadow中密码位前加了双感叹号

      -u 解锁用户

      --stdin  使用字符串作为用户的密码

        echo "123" | passwd --stdin zoro   可以用户shell编程中,批量添加

  

  usermod 修改已存在用户信息

    -u  -g  -G  -c -d

    -L  lock

    -U unlock

  chage 修改用户密码状态

    -l   list

    -d  shadow 3

    -m              4 

    -M              5

    -W       6

    -I       7

    -E      8

      唯一有用的是-d,其他都可以通过修改shadow文件实现

      chage -d 0 xxx   结果:xxx一登录就要修改密码

  userdel [-r] 用户名

    -r 同时删除家目录

  

  id 查看用户ID

  su [选项] 用户名  切换用户身份

    -: 连带用户的环境变量一起切换    - 注意不要省!!!

    -c:仅执行一次,而不切换用户身份  eg. $su - root -c "useradd user3"


4 用户组管理命令

  groupadd [选项] 组名

    -g GID

  groupmod [选项] 组名    不如删了重建

    -g GID

    -n 新组名

  groupdel 组名      

    组里若有初始用户,则不能删除组

    附加用户不影响

  gpasswd 选项 组名

    -a  用户加入组

    -d  用户从组中删除

  

  

  

  

Linux学习 -- 用户和用户组管理的更多相关文章

  1. Linux命令——用户和用户组管理

    Linux命令--用户和用户组管理 命令groupadd 作用:新增组 格式:groupadd [-g GID] groupname 参数:-g,指定GID,一般从500开始 说明:一般不必加-g参数 ...

  2. 2019/12/11学习内容摘要(Linux系统用户与用户组管理①)

    一,认识/etc/passwd和/etc/shadow 1. /etc/passwd :文件中保存系统中所有的用户和用户的主要信息. 在命令行输入 cat /etc/passwd  | head  ( ...

  3. Linux 学习笔记04丨Linux的用户和用户组管理

    Chapter 3. 用户和用户组管理 由于Linux系统是一个多用户多任务的分时操作系统,任何一个要使用系统资源的用户,都必须首先向系统管理员申请一个账号,然后以该账号身份进入系统. 3.0 用户与 ...

  4. linux之用户和用户组管理详解

    #############用户和用户组管理###################linux只认识UID和GID #可在/etc/passwd 和/etc/group中找到 ##/etc/passwd ...

  5. linux系统用户以及用户组管理

    本系列的博客来自于:http://www.92csz.com/study/linux/ 在此,感谢原作者提供的入门知识 这个系列的博客的目的在于将比较常用的liunx命令从作者的文章中摘录下来,供自己 ...

  6. Linux 操作系统的用户和用户组管理

    Linux系统是一个多用户多任务的分时操作系统,任何一个要使用系统资源的用户,都必须首先向系统管理员申请一个账号,然后以这个账号的身份进入 系统.用户的账号一方面可以帮助系统管理员对使用系统的用户进行 ...

  7. linux入门教程(七) linux系统用户以及用户组管理

    关于这部分内容,笔者在日常的linux系统管理工作中用到的并不多,但这并不代表该内容不重要.毕竟linux系统是一个多用户的系统,每个账号都干什么用,你必须了如指掌.因为这涉及到一个安全的问题. [认 ...

  8. Linux的用户和用户组管理

      Linux是个多用户多任务的分时操作系统,所有一个要使用系统资源的用户都必须先向系统管理员申请一个账号,然后以这个账号的身份进入系统.用户的账号一方面能帮助系统管理员对使用系统的用户进行跟踪,并控 ...

  9. (转)Linux的用户和用户组管理

    原文 Linux是个多用户多任务的分时操作系统,所有一个要使用系统资源的用户都必须先向系统管理员申请一个账号,然后以这个账号的身份进入系统.用户的账号一方面能帮助系统管理员对使用系统的用户进行跟踪,并 ...

随机推荐

  1. 团队项目(spring会议)

    [例会时间]2014/4/11 [例会地点]一教213课堂上 [例会形式]小组讨论 [例会主持]马翔 [例会记录]兰梦 在这次会议上,我们针对我们的项目进行了分割,并分别认领各自的任务 下面是任务的认 ...

  2. ubuntu切换到超级管理员权限

    默认情况下是无法切换的,需要给root用户设置上密码 mars@mars-LIFEBOOK-LH531:~$ sudo passwd root[sudo] password for mars: 输入新 ...

  3. 【第一篇】Python基础

    Python学习 学习站点:https://www.shiyanlou.com/ 1 hello world code如下: $ python [15:50:40] Python2.7.6(defau ...

  4. storage size of 'xxx' isn't known问题出现的可能原因之一

    storage size of 'value' isn't known问题出现的可能原因之一 有可能是头文件没有包含起来,所以会出现这种问题可以从以下几个方面来查找原因:1.若是结构体类型,类型是否写 ...

  5. OpenCV成长之路:图像直方图

    http://ronny.blog.51cto.com/8801997/1394115 2014-04-11 13:47:27 标签:opencv 直方图 统计表 原创作品,允许转载,转载时请务必以超 ...

  6. Java語言

    Java编程语言是个简单.完全面向对象.分布式.解释性.健壮.安全与系统无关.可移植.高性能.多线程和动态的编程语言. Java可以撰写跨平台应用软件,是有Sun Microsystems公司于199 ...

  7. PHP 5 数据类型

    本页内容来自http://www.runoob.com/php/php-datatypes.html String(字符串), Integer(整型), Float(浮点型), Boolean(布尔型 ...

  8. IE10以下的placeholder不兼容问题

    $(function(){ if(!placeholderSupport()){   // 判断浏览器是否支持 placeholder     $('[placeholder]').focus(fun ...

  9. fatal error: gst/gst.h

    ln命令使用 ln -s  源文件(src)  目标文件(dest) 进到这个文件:~/LowDA/sysroots/mx6q/usr/include$ ln -s gstreamer-0.10/gs ...

  10. 使用composer命令创建laravel项目命令详解

    composer命令创建laravel项目的命令是: composer create-project --prefer-dist laravel/laravel blog "5.2.*&qu ...