用户、组的创建和管理

用户的创建

useradd usermod userdel

useradd:创建用户 create a new user or update default new user information

    useradd [options]… LOGIN

         -u,–uid:指定新用户的UID

         -o,配合-u使用,不检测用户UID的唯一性(可创建2个相同UID的帐号)

         -g,–gid:指定新建用户的GID

         -G,–group:指定新建用户的附加组,若指定多个组可用,分割

         -d,–home:指定用户的家目录

             但是其指定目录的父目录必须存在,否则无法创建其家目录

             每个用户家目录都有其配置文件,所有新建用户的家目录中的文件均来自/etc/skel/文件中

             若其指定的家目录已经存在,则不会复制/etc/skel/文件中的内容

         -s,–shell;指定用户的默认shell

             当前系统所有可用shell保存在/etc/shells文件中

         -c,指定用户信息的注释信息

         -r,–system:指定其创建的用户为系统用户,系统用户不会为其创建家目录

         -N,不为用户创建同名的组作为用户基本组,而是使用users作为基本组


    [root@CentOS6 ~]# id gao

    uid=500(gao) gid=500(gao) groups=500(gao),0(root)

    [root@CentOS6 ~]# useradd -ou 500 gaomeng1

    [root@CentOS6 ~]# id gaomeng1

    uid=500(gao) gid=5004(gaomeng1) groups=500(gao)

    [root@CentOS6 ~]# useradd -g gao -G gaomeng1 gaomeng2

    [root@CentOS6 ~]# id gaomeng2

    uid=4015(gaomeng2) gid=500(gao) groups=500(gao),5004(gaomeng1)

    [root@CentOS6 ~]# useradd -d /testdir/gaomeng3 -s /bin/csh -c "This is haha" gaomeng3

    [root@CentOS6 ~]# getent passwd gaomeng3

    gaomeng3:x:4016:4016:This is haha:/testdir/gaomeng3:/bin/csh

    [root@CentOS6 ~]# useradd -r gaomeng4

    [root@CentOS6 ~]# getent passwd gaomeng4

    gaomeng4:x:496:492::/home/gaomeng4:/bin/bash

    [root@CentOS6 ~]# ls -d /home/gao*

    /home/gao  /home/gao1  /home/gao4  /home/gaomeng1  /home/gaomeng2

    [root@CentOS6 ~]# useradd -N gaomeng5

    [root@CentOS6 ~]# getent passwd gaomeng5

    gaomeng5:x:4017:100::/home/gaomeng5:/bin/bash

    [root@CentOS6 ~]# groups gaomeng5

    gaomeng5 : users

    useradd -D

        显示创建用户的默认信息

         useradd -D [options]

             修改创建用户的默认信息,其本质是修改的/etc/default/useradd文件的内容

    [root@CentOS6 testdir]# useradd -D

    GROUP=100

    HOME=/home

    INACTIVE=-1

    EXPIRE=

    SHELL=/bin/bash

    SKEL=/etc/skel

    CREATE_MAIL_SPOOL=yes

    [root@CentOS6 testdir]# useradd -D -s /bin/csh

    [root@CentOS6 testdir]# cat /etc/default/useradd

    # useradd defaults file

    GROUP=100

    HOME=/home

    INACTIVE=-1

    EXPIRE=

    SHELL=/bin/csh

    SKEL=/etc/skel

    CREATE_MAIL_SPOOL=yes


usermod:修改用户属性 modify a user account

    usermod [options]… LOGIN

         -u,修改用户的ID,为用户指定行的UID

         -g,修改用户的基本组

         -G,修改用户的附加组,若指定多个组可用,分割

         -a,与-G结合使用,追加用户的附加组,可以在修改附加组的时候,不覆盖当前用户附加组

         -d,修改用户的家目录,但不会负责当前目录文件在指定目录中

         -m,与-d结合使用,在修改用户家目录时候,会转移家目录下的文件,-md其实完成的工作是移动和重命名

         -c,修改用户的注释信息

         -s,修改用户的默认shell

         -l,修改当前用户的用户名

        

         -L:–lock:锁定用户密码,被锁定用户,cat /etc/shadow查看密码时,其密码前面有一个!

         -U:–unlock:解锁用户密码

         -c:YYYY-mm-dd:指定用户帐号过期时间

         -f day:指定用户非活动时间

    [root@CentOS6 testdir]# usermod -g gentoo -aG gaomeng3,gaomeng4 gaomeng1

    [root@CentOS6 testdir]# id gaomeng1

    uid=500(gao) gid=4006(gentoo) groups=500(gao),4016(gaomeng3),492(gaomeng4)

    [root@CentOS6 testdir]# usermod -u 3000 -md /testdir/gaomeng2 -s /bin/csh gaomeng2

    [root@CentOS6 testdir]# id gaomeng2

    uid=3000(gaomeng2) gid=500(gao) groups=500(gao),5004(gaomeng1)

    [root@CentOS6 testdir]# getent passwd gaomeng2

    gaomeng2:x:3000:500::/testdir/gaomeng2:/bin/csh

    [root@CentOS6 testdir]# ls -a /testdir/gaomeng2

    .  ..  .bash_logout  .bash_profile  .bashrc  .gnome2  .mozilla

    [root@CentOS6 testdir]# usermod -c "big smile" -l gm3 gaomeng3

    [root@CentOS6 testdir]# getent passwd gm3

    gm3:x:4016:4016:big smile:/testdir/gaomeng3:/bin/csh

    [root@CentOS6 testdir]# usermod -L gao

    [root@CentOS6 testdir]# getent shadow gao

    gao:!$6$13tm7S5i$22vbEKEMLPu6zr.Egl8yH/eA78lCk.tnxAw5AQZ2dEVZAXRiukgLXGw62euhDQM5zVDLgZWXw8nYiOkWixVAT1:17011:0:99999:7:3::

    [root@CentOS6 testdir]# usermod -U gao

    [root@CentOS6 testdir]# getent shadow gao

    gao:$6$13tm7S5i$22vbEKEMLPu6zr.Egl8yH/eA78lCk.tnxAw5AQZ2dEVZAXRiukgLXGw62euhDQM5zVDLgZWXw8nYiOkWixVAT1:17011:0:99999:7:3::


userdel:delete a user account and related files 删除用户

    userdel [options] LOGIN

    -r:删除用户时一并删除其家目录

    [root@CentOS6 testdir]# userdel -r gaomeng2

    [root@CentOS6 testdir]# id gaomeng2

    id: gaomeng2: No such user

    [root@CentOS6 testdir]# ls -d /home/gaomeng*

    /home/gaomeng1  /home/gaomeng5

id:显示用户的真实有效的UID和GID

    id [OPTION]… [USERNAME]

         -u:仅显示用户的UID

         -g:仅显示用户的GID

         -G:仅显示用户的附加组ID

         -n:与-u  -g  -G结合使用,不显示用户的ID信息,而显示ID所对于的用户名或组名

    [root@CentOS6 ~]# id -u gao

    500

    [root@CentOS6 ~]# id -nu gao

    gao

    [root@CentOS6 ~]# id -g gao

    500

    [root@CentOS6 ~]# id -ng gao

    gao

    [root@CentOS6 ~]# id -G gao

    500 0

    [root@CentOS6 ~]# id -nG gao

    gao root


su:切换用户或以其他用户身份执行命令

    su [OPTION]… [-] [USER [ARG]…]

     非登录式切换,即不会读取目标用户的配置文件,不改变当前工作目录

            su username

     登录式切换,会读取目标用户的配置文件,模拟重新登录,切换至家目录,完全切换

         su – username

         su -l username

     -c 'COMMAND' :不切换用户的前提下,以su命令后面的用户的身份-c后面的命令

passwd:修改用户的密码,仅root用户有权限运行此命令

    id [OPTION]… [USERNAME]

         -l,-u:锁定和解锁用户,用passwd给用户家的锁,其密码前面有2个!!

         -d:清除用户密码串,并且强制用户下次登录时修改密码

         -e:强制用户下次登录修改密密码

         -n:指定最短使用期限

         -x:指定最多使用期限

         -w:指定警告期限

         -i:指定非活动期限(密码过期后必须修改密码才能登录的时间)

         -uf:可以强制新创建的无密码的用户中的锁强制消除,即该用户可以直接登录

         –stdin:从标准接收用户的密码

            #echo "centos" | passwd –stdin username

组的创建

groupadd groupmod groupdel

groupadd:添加组

    -g:指定新建组的GID

    -r:指定新建组为系统组

    [root@CentOS6 ~]# groupadd -g 3500 test

    [root@CentOS6 ~]# getent group test

    test:x:3500:

    [root@CentOS6 ~]# groupadd -r test1

    [root@CentOS6 ~]# getent group test1

    test1:x:491:

groupmod:修改组属性

    -g:修改组的GID

    -n new_name:修改组的名字

    [root@CentOS6 ~]# groupmod -g 3600 -n txt test

    [root@CentOS6 ~]# getent group txt

    txt:x:3600:


groupdel:删除组

    [root@CentOS6 ~]# groups txt

    [root@CentOS6 ~]# groupmems -l -g txt

    groupmems: group 'txt' does not exist in /etc/group


gpasswd:修改组密码

    gpasswd [OPTION] GROUP

    gpasswd GROUP :给GROUP组设置密码,不能像passwd可以从标准输入捕捉数据,避免交互

    -A user1,user2,…:设置GROUP组的管理者

    -a user :把user添加进入GROUP组

    -d user:把user从组GROUP中移除

newgrp 命令:

临时切换基本组;

如果用户本不属于此组,则需要组密码

groupmems:更改和查看组成员

    groupmems [options] [action]

         -a, –add username 指定用户加入组

         -d, –delete username 从组中删除用户

         -p, –purge 从组中清除所有成员

         -l, –list 显示组成员列表

         -g, –group groupname 更改为指定组,与-p-l选择组合使用完成特定组的操作(只有root)

groupmems -l -g GROUPNAME   查看组所属的用户列表

groups  [OPTION].[USERNAME]…  查看用户所属组列表

原创文章,作者:megedugao,如若转载,请注明出处:http://www.178linux.com/27501

(0)
megedugaomegedugao
上一篇 2016-08-03
下一篇 2016-08-03

相关推荐

  • N25_第二周作业_leon

    第二周博客作业_leon 1.       Linux上的文件管理类命令有哪些?其常用的使用方法及其相关示例演示 常用文件管理类命令有: mkdir、touch、rmdir、cp、rm、mv   mkdir—-创建目录 -m  直接设置权限(非默认权限) -v&nbs…

    Linux干货 2016-12-23
  • Net25-第9周作业

    1、写一个脚本,判断当前系统上所有用户的shell是否为可登录shell(即用户的shell不是/sbin/nologin);分别这两类用户的个数;通过字符串比较来实现; #!/bin/bash for line in `cat /etc/passwd`;do if [[ `echo $line | awk -F: ‘{print $7}’` == ‘/sb…

    Linux干货 2017-03-15
  • 第一周博客作业-Linux发行版历史、哲学思想、FHS、命令格式、帮助等

    All + All – 第一周作业 1.计算机组成及功能 计算机组成 硬件 冯诺依曼体系 CPU 运算器 对数据做算暖苏运算和逻辑运算 控制器 寄存器等 程序的运行,是CPU通过调用硬盘中的程序至内存中执行来实现的 存储器 内存 ROM RAM 外存 硬盘 光盘 输入设备 鼠标、麦克风等 实现指令和参数的输入 输出设备 显示器、打印机等 实现结果…

    Linux干货 2017-07-02
  • DNS简单概念 一

    DNS简单概念 一 DNS简单概念 一 1 §·主机角色 1 §·DNS服务器的类型: 1 §·DNS中简单术语 2 §·DNS中资源记录及其类型 2 §·DNS域与区域 4 §·BIND安全设置 5 §·BIND高级设置BIND VIEW 6   §·主机角色 在网络上不同的主机有不同的角色, 比如: DNS解析角色,邮件角色,网页服务器 §·D…

    Linux干货 2016-09-26
  • awk学习笔记

    一、linux的文本处理器三剑客   文本过滤器:grep、egrep、fgrep   行编辑器:sed(模式空间;保持空间)   报表生成器:awk(格式化文本输出)gawk awk的工作流程: 从文本中读取一行内容,根据指定的分隔符;将读入的一行内容分隔成字段,然后格式化输出指定的字段 二、awk的命令相关的参数及用法 &n…

    Linux干货 2015-06-23
  • 计算机的组成介绍

    一,什么是计算机?     计算机(computer)俗称电脑,是现代一种用于高速计算的电子计算机器,可以进行数值计算,又可以进行逻辑计算,还具有存储记忆功能。是能够按照程序运行,自动、高速处理海量数据的现代化智能电子设备。 二,发展历史 阶段 时期(年) 主要器件 特征 应用领域发展 第一代 1946—1958 电子管数字机 电子管,机…

    2016-10-29